﻿@charset "utf-8";
/* CSS Document */

#main_v{
	background-color:#f17700;
	margin-bottom:4.5rem;
}
#main_v div{
	width:51.13%;
	padding:0 0 0 5%;
	box-sizing:border-box;
}
#main_v div p.sawarabi {
    font-size: 1.8rem;
    display: inline-block;
    background-color: #FFF;
    line-height: 1;
    padding: 0.3em 1.5em;
    border-radius: 3em;
	margin-top:2em;
	color:#f17700;
}
#main_v div p.sawarabi:nth-of-type(2) {
    color: #3c3c3c;
	margin-top:0.5em;
}
#main_v div h1 {
    font-size: 3rem;
    color: #FFF;
	line-height:1.4;
	margin-top:0.3em;
}
#main_v div h1 span{
	font-size:4rem;
}
#main_v div h1 + p {
	line-height:2;
	color:#FFF;
}
#main_v .img{
	font-size:0px;
	width:48.87%
}
#main_v .img img{
	width:100%
}


#program{
	margin-top:2rem;
}
#program h3{
	font-size:2rem;
	background-color:#f17700;
	text-align:center;
	color:#FFF;
	line-height:1;
	padding:0.5em 0;
	margin-bottom:0.5em;
}
#program .bg{
	background-color:#f7f4ef;
	padding:3rem 4rem;
}
#program .bg .ttl{
	font-size:2rem;
	line-height:1;
	margin-bottom:2em;
	
}
#program .bg .ttl span:nth-of-type(1){
	color:#EB0100;
	background-color:#FFF;
	border:solid 2px;
	border-radius:2em;
	padding:0.2em 1em;
	margin-right:1em;
	font-weight:bold;
}
#program .bg .ttl span:nth-of-type(2){
	font-size:1.6rem;
	margin-left:2em;
}
#program .bg .flex{
	justify-content:flex-start;
	flex-wrap:nowrap;
}
#program .bg .flex div{
	margin-left:2rem;
}
#program .bg .flex div p{
	background-color:#2d9d48;
	padding:0.5em 1em;
	color:#FFF;
	line-height:1;
	margin-bottom:1em;
	display:inline-block;
}
#program .flow{
	padding:3rem 4rem;
}
#program .flow .ttl{
	font-size:2rem;
	margin-bottom:1em;
}
#program .flow .flex{
	flex-wrap:nowrap;
}
#program .flow li{
	width:30%;
}
#program .flow li p{
	align-items:center;
	margin-bottom:1em;
}
#program .flow li p img:nth-of-type(1){
	width:35.2%;
}
#program .flow li p img:nth-of-type(2){
	width:45.8%;
}
#program .arrow{
	text-align:center;
	padding:2rem 0;
}
#program .program3 .flex {
	padding-left:3rem;
}
#program .bg .flex div .caption{
    font-size:1.4rem;
}
#program .bg + .caption{
	font-size:1.4rem;
	padding:2em 0 1em 0;
}
#program .place{
	font-size:1.8rem;
	padding:0.5em 1.5em 1em 1.5em;
	border:solid 1px #d5ceca;
}
#program .place .ttl{
	font-weight:bold;
	margin-top:0.5em;
}
#program .place li{
	font-size:1.8rem;
	padding-left:1em;
	text-indent:-1em;
}
#program .place .caption{
	font-size:1.4rem;
	margin-top:0.5em;
}

#office{
	margin:5rem 0 10rem 0;
}

/*---------------------------------------------------------------
横幅768px～1190pxまでのレイアウト
---------------------------------------------------------------*/
@media screen and (min-width:768px) and (max-width:1150px){
#main_v div p:nth-of-type(1)  {
    font-size: 1.53vw;
}
#main_v div h1 {
    font-size: 2.61vw;
}
#main_v div h1 span{
	font-size:3.36vw;
}
#main_v div h1 + p {
    font-size: 1.35vw;
}


}





/*---------------------------------------------------------------
スマホレイアウト
---------------------------------------------------------------*/
@media screen and (max-width:767px){
#main_v div {
    width: 100%;
    padding: 5%;
}
#main_v .img {
    width: 100%;
}
#main_v div p.sawarabi {
    margin-top: 0em;
}
#main_v div h1 {
    font-size: 2.3rem;
}
#main_v div h1 span {
    font-size: 3rem;
}

#program {
    margin-top: 4rem;
}
#program .bg {
    padding: 2rem;
}
#program .bg .ttl span:nth-of-type(1) {
	display:inline-block;
	padding: 0.4em 1em 0.2em 1em;
	margin-bottom:1em;
}
#program .bg .flex {
	display:block;
	text-align:center;
}
#program .bg .flex img{
	max-width:100%;
	width:auto;
}
#program .bg .flex div {
    margin-left: 0rem;
	text-align:left;
}
#program .bg .flex div p {
    margin-top: 1em;
}
#program .flow {
    padding: 2rem;
}
#program .flow ul.flex {
    flex-wrap: wrap;
}

#program .flow li {
    width: 100%;
	margin-bottom:1.5em;
}
#program .flow li:last-child{
	margin-bottom:0px;
}
#program .bg .ttl {
    text-align: center;
}
#program .program2 .ttl span:nth-of-type(2) {
    margin-left: 0em;
}
#program .arrow img{
	width:20%;
}
#program .program3 .flex {
    padding-left: 0rem;
}
#office {
    margin: 5rem 0 5rem 0;
}


}
