@charset "utf-8";

/*************** 共通 ***************/
#wrapper{
width: 100%;
}
.container,header,#sec2 .cont1,#sec2 .cont2,#sec2 .cont3,#sec3 .cont2,#sec3 .cont3,#sec3 .cont4,#sec4 .cont2,#sec4 .cont3,#sec4 .cont4,#sec6 .cont1,#sec6 .cont2,#sec6 .cont3,#sec6 .cont4,#sec6 .cont5,#sec6 .cont6,#sec7,#sec8 .cont2,footer .cont1 .flex,footer .cont2,footer .cont3 .sp-flex{
max-width: 1080px;
margin: auto;
}
ul{
list-style-type:none;
}
a{
text-decoration: none;
}
img{
vertical-align: bottom;
max-width:100%;
line-height:0
}
figure{
text-align: center;
}
a:hover,a figure img:hover{
opacity: 0.7;
}
.sp{
display: none;
}
.flex,.sp-flex,.flex-wrap{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.flex-wrap{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}
.left,.left-box,.center{
margin-right: 5%;
}
.bold{
font-weight: bold;
}
.m3{
margin: 3% auto;
}
.mt3{
margin-top: 3%;
}

@media screen and (max-width:1180px){
.container,header,#sec2 .cont1,#sec2 .cont2,#sec2 .cont3,#sec3 .cont1 h2,#sec3 .cont2,#sec3 .cont3,#sec4 .cont1,#sec4 .cont2,#sec4 .cont3,#sec4 .cont4,#sec6 .cont1,#sec6 .cont2,#sec6 .cont3,#sec6 .cont4,#sec6 .cont5,#sec6 .cont6,#sec7,#sec8 .cont2,footer .cont1 .flex,footer .cont2,footer .cont3 .sp-flex{
margin: auto 3%;
}
}

@media screen and (max-width:1080px){
.container,header,#sec2 .cont1,#sec2 .cont2,#sec2 .cont3,#sec3 .cont1 h2,#sec3 .cont2,#sec3 .cont3,#sec4 .cont1,#sec4 .cont2,#sec4 .cont3,#sec4 .cont4,#sec6 .cont1,#sec6 .cont2,#sec6 .cont3,#sec6 .cont4,#sec6 .cont5,#sec6 .cont6,#sec7,#sec8 .cont2,footer .cont1 .flex,footer .cont2,footer .cont3 .sp-flex{
max-width: initial;
}
}

@media screen and (max-width:700px){
.pc{
display: none;
}
.sp,.flex{
display: block;
}
.flex .left,.flex .center{
margin-right: 0;
}
.sp-flex .left{
margin-right: 5%;		
}
figure{
margin: 0 auto 5%;
text-align: center;
}
	}
	
	.bottun_box {
		max-width: 1023px;
		margin: auto;
	}
	@media screen and (max-width:1180px){
		.bottun_box {
			margin: auto 3%;
		}
		.flex {
			justify-content: space-between;
		}
	}
/*************** //共通ここまで ***************/


/*************** 文字 ***************/
body{
font-family: sans-serif;
}
h3,h4,h5,p{
text-align: justify;
}
h2{
font-size: 3.2vw;
margin-bottom: 2%;
text-align: center;
}
h3{
font-size: 2.3vw;
color: #3E3A39;
}
h4{
font-size: 2.1vw;
}
h5{
font-size: 18px;
}
h2,h3{
line-height: 1.3em;
}
h2,h3,h5,span{
font-weight: bold;
}
p{
font-size: 16px;
color: #656464;
}
h4,h5,p{
line-height: 1.5em;
}
small{
font-size: 80%;
}
.mincho{
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

@media screen and (min-width:1080px){
h2{
font-size: 48px;
}
h3{
font-size: 32px;
}
h4{
font-size: 27px;
}
}

@media screen and (max-width:700px){
h2,h3{
font-size: 21px;
}
h4{
font-size: 18px;		
}
p{
font-size: 14px;
}
h2,h3,h4,h5{
text-align: left;		
}
}
/*************** //文字ここまで ***************/





/*************** header ***************/
header{
margin: 1.5% auto;
}
header h1{
margin: auto 3%;
}
header .flex,header .sp-flex{
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
header p{
font-size: 1.28vw;
line-height: 1.3em;
text-align-last: justify;
margin-bottom: 1%;
}

@media screen and (min-width:1080px){
header p{
font-size: 14px;
}
}

@media screen and (max-width:700px){
header{
margin: 7% auto;	
}
h1 figure,header p{
text-align: center;
}
h1 figure{
margin-bottom: 1.5%;		
}
header p{
font-size: 12px;
text-align-last: center;
margin-bottom: 3%;
}
header .sp-flex{
justify-content: center;
}
}
/*************** //headerここまで ***************/





/*************** sec1 ***************/
#sec1{
background-color: #EEEEE8;
margin: 0 auto;
}
#sec1 figure{
text-align: center;
}
/*************** //sec1ここまで ***************/





/*************** sec2 ***************/
#sec2{
margin-bottom: 5%;
}
#sec2 .cont2,#sec2 .cont3{
margin-top: 3%;
margin-bottom: 3%;
}
#sec2 .cont1 h2{
color: #3E3A39;
}
#sec2 .cont1 h2 span,#sec2 .cont3 span{
color: #EA6000;
}
#sec2 h5{
color: #0068B6;
}
#sec2 figure,#sec2 .cont1 p{
text-align: center;
}
#sec2 .cont1{
padding: 2.5% 0;
margin-bottom: 5%;
border: 4px solid #F9BF27;
position: relative;
}
#sec2 .absolute{
position: absolute;
right: 0;
bottom: -5%;
}
#sec2 .cont2 .right{
width: 50%;
}
#sec2 .yajirushi{
margin: 2% auto;
}
#sec2 .cont3 .left{
width: 100%;
}
#sec2 .cont3 h2{
color: #fff;
text-shadow:2px 2px 0 #EA6000, -2px -2px 0 #EA6000,
              -2px 2px 0 #EA6000, 2px -2px 0 #EA6000,
              0px 2px 0 #EA6000,  0 -2px 0 #EA6000,
              -2px 0 0 #EA6000, 2px 0 0 #EA6000;
}
.back_yellow{
background-color: #FDF8CF;
padding: 1.5% 3%;
}
#sec2 .cont3 p{
margin-bottom: 3%;	
}

@media screen and (max-width:850px){
#sec2 .absolute{
display: none;	
}
}

@media screen and (max-width:700px){
#sec2{
margin-bottom: 20%;
}
#sec2 .yajirushi{
margin: 7% auto;
}
#sec2 .cont1{
padding: 5% 0;
margin-bottom: 25%;
}
#sec2 .cont1 h2,#sec2 .cont1 p{
padding: 0 3%;		
}
#sec2 .cont1 p{
text-align: left;		
}
#sec2 .cont2 .left,#sec2 .cont2 .right,#sec2 .cont3 h2,#sec2 .cont3 .left,#sec2 .cont3 .right{
margin-bottom: 7%;		
}
#sec2 .cont2 .right{
margin: 0 auto;		
}
.back_yellow{
padding: 7%;
}
}
/*************** //sec2ここまで ***************/





/*************** sec3 ***************/
#sec3{
margin-bottom: 10%;
}
#sec3 .cont1{
background-color: #EA6000;
}
#sec3 .cont1 h2{
color: #fff;
padding: 1.5% 0;
}
#sec3 .cont2{
border: 4px solid #F9BF27;
padding: 2% 5%;
}
#sec3 .cont2,#sec3 .cont3{
margin-top: 3%;
margin-bottom: 3%;
}
#sec3 .cont2 h3{
text-align: center;
}
#sec3 .cont3 span{
color: #EA6000;
}
#sec3 .cont3 .right{
width: 100%;
	}
	
@media screen and (max-width:700px){
#sec3{
margin-bottom: 25%;
}
#sec3 .cont1 h2,#sec3 .cont2{
margin-bottom: 7%;
}
#sec3 .cont2{
padding: 7%;
}
#sec3 .cont2 h3{
text-align: left;
}
#sec3 .cont3 .left{
margin-bottom: 5%;
}
}

/*************** //sec3ここまで ***************/





/*************** sec4 ***************/
#sec4{
background-color: #FCDE9B;
margin-top: 5%;
padding-bottom: 7%;
}
#sec4 .cont1 h2{
padding-top: 10%;
}
#sec4 .cont1 h2 span{
color: #BF1920;
}
#sec4 .cont1 h2 .large{
font-size: 2em
}
#sec4 .cont2,#sec4 .cont3,#sec4 .cont4{
background-color: #fff;
margin-bottom: 5%;
}
#sec4 .cont2 h2,#sec4 .cont3 h2,#sec4 .cont4 h2{
color: #F3DCE3;
font-size: 9.5vw;
}
#sec4 h3{
color: #EA6000;
margin: 3% 0 2% 0;
}
#sec4 h4{
text-align: center;
margin-bottom: 1.5%;
}
#sec4 p{
line-height: 1.8em;
}
#sec4 p span{
color: #BF1920;
border-bottom: 1px solid #bf1920;
}
#sec4 .contents{
padding: 3% 3% 0 3%;
}
#sec4 .flex,#sec4 p{
margin-bottom: 3%;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
#sec4 .cont2 .flex .right{
width: 100%;
}
#sec4 .cont4 .flex p{
font-size: 13px;
line-height: 1.3em;
margin-top: 5%;
text-align: center;
}

@media screen and (min-width:1080px){
#sec4 .cont2 h2,#sec4 .cont3 h2,#sec4 .cont4 h2{
font-size: 120px;
}
}

@media screen and (max-width:700px){
#sec4 .cont2,#sec4 .cont3,#sec4 .cont4{
margin-bottom: 10%;
}
#sec4 .cont1 h2{
padding-top: 10%;
padding-bottom: 5%;
text-align: center;
}
#sec4 .contents{
padding: 7% 5% 0 5%;
padding-bottom: 7%;
}
#sec4 .cont4 figure{
width: 70%;		
}
#sec4 .flex .right{
margin: 5% auto;
} 
}
/*************** //sec4ここまで ***************/





/*************** sec6 ***************/
#sec6{
background-color: #F3E2D2;
padding-bottom: 10%;
margin-bottom: 10%;
}
#sec6 h2{
border-bottom: 1px solid #EA6000;
color: #421C00;
margin-bottom: 1%;
}
#sec6 h3{
color: #fff;
background-color: #421C00;
padding: 1% 0 1% 3%;
margin-bottom: 3%;
}
.back_white{
background-color: #fff;
padding: 3% 5%;
margin: 2% auto 0;
}
.back_white span{
color: #00469B;
}
.back_white span.red{
color: #FF0000;
font-weight: normal;
}
#sec6 .cont1{
padding-top: 10%;
}
#sec6 .cont1 p{
color: #421C00;
text-align: center;
margin-bottom: 5%;
}
#sec6 .cont1 .left{
margin-right: 3%;
}
#sec6 .flex-wrap,#sec6 .cont1,#sec6 .cont2,#sec6 .cont3,#sec6 .cont4{
margin-bottom: 5%;
}
#sec6 .flex-wrap .left,#sec6 .flex-wrap .right{
width: 22.7%;
}
#sec6 .cont5 .back_white{
margin-bottom: 3%;
}
#sec6 .cont5 figure{
margin: 3% 0;
}


@media screen and (max-width:700px){
#sec6{
margin-bottom: 25%;		
}
#sec6 h2{
text-align: center;
}
#sec6 h3{
margin-bottom: 7%;
}
#sec6 .cont1{
padding-top: 15%;
}
#sec6 .cont2 figure,#sec6 .cont4 figure{
width: 70%;
}
#sec6 .flex-wrap{
width: 70%;
margin: 0 auto 10%;
}
#sec6 .flex-wrap .left,#sec6 .flex-wrap .right{
width: 47%;
}
#sec6 .cont1 .left{
margin-right: 0;
}
#sec6 .cont1 .left,#sec6 .cont1 .right{
text-align: center;
}
#sec6 .flex-wrap,#sec6 .cont1,#sec6 .cont2,#sec6 .cont3,#sec6 .cont4{
margin-bottom: 15%;
}
#sec6 .cont5{
margin-bottom: 5%;		
}
#sec6 .cont5 .back_white{
margin-bottom: 7%;
}
}
/*************** //sec6ここまで ***************/





/*************** sec7 ***************/
#sec7,#sec7 .cont1{
margin-bottom: 10%;
}
#sec7 h2{
border-bottom: solid 1px #EA6000;
}
#sec7 h3,#sec7 .cont2 .flex{
margin-bottom: 5%;
}
#sec7 h3 span{
color: #BF1920;
}
#sec7 .cont1 figure,#sec7 .cont2 p,#sec7 .cont2 figure{
margin-bottom: 7%;
}
#sec7 h2,#sec7 h3,#sec7 h4{
color: #421C00;	
}
#sec7 h3,#sec7 h4,#sec7 .cont2 p{
text-align: center;
}
#sec7 .cont2 .calendar{
width: 100%;
position: relative;
margin-bottom: 10%;
}
#sec7 .cont2 .calendar:before{
content: "";
display: block;
padding-top: 100%;
}
#sec7 .cont2 .calendar iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#sec7 .cont2 h3{
margin-bottom: 1%;
}
#sec7 .cont2 p{
margin-bottom: 3%;
}
#sec7 .cont3 .left{
margin-right: 0;
}
#sec7 .cont3 .left,#sec7 .cont3 .right{
width: 50%;
}
#sec7 .cont3 .right{
vertical-align: middle;
background-color: #FFFBDA;
}
#sec7 .cont3 .right p{
font-size: 2.4vw;
text-align: center;
}
#sec7 .cont3 .right a{
color: #fff;
background-color: #EA6000;
padding: 3% 10%;
display: inline-block;
margin-top: 3%;
margin: 0 auto;
}

@media screen and (max-width:700px){
#sec7{
margin-bottom: 25%;		
}
#sec7 h3{
font-size: 16px; 
}
#sec7 h3,#sec7 .cont2 p{
text-align: left;	
}
#sec7,#sec7 .cont1 figure,#sec7 .cont2{
margin-bottom: 15%;	
}
#sec7 .cont2 .calendar:before{
padding-top: 200%;
}
}
/*************** //sec7ここまで ***************/




/*************** footer ***************/
footer .cont1{
padding: 5% 0;
background: #EEEEE8;
}
footer .cont1 .flex .left-box,footer .cont1 .flex .right-box{
width: 50%;
}
footer .cont1 figure{
margin: 3% auto;
}
footer .logo{
padding-bottom: 3%;
margin-bottom: 5%;
border-bottom: 1.5px solid #EA6000;
}
footer .cont1 .sp-flex{
margin: 1.5% auto;
}
footer .cont1 .left-box .sp-flex .left,footer .cont1 .left-box .sp-flex .right{
width: 30%;
}
footer .cont1 .left-box .sp-flex p{
font-size: 14px;
text-align: center;
padding: 1.5% 0;
border: 1px solid #656464;
border-radius: 0.5em;
}
.map {
margin: 0 auto;
position: relative;
width: 100%;
padding-top: 68%;
}
.map iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
margin-top: 3%;
}
footer .cont2 .flex{
justify-content: space-between;
}
footer .cont2 .left{
margin-right: 1.5%;
}
footer .cont2 p{
font-size: 1.6vw;
margin-bottom: 3%;
}
footer .cont2 p span{
font-size: 2.8vw;
}
footer .cont3{
background: #656464;
}
footer .cont3 p{
color: #fff;
padding: 2.5% 0;
}
footer .cont3 .sp-flex{
justify-content: space-between;
}

@media screen and (min-width:1080px){
footer .cont2 p span{
font-size: 42px;
}
footer .cont2 p{
font-size: 16px;
}
}

@media screen and (max-width:700px){
footer .cont1{
padding: 10% 0;
}
footer .cont1 .flex .left-box,footer .cont1 .flex .right-box{
width: 100%;
margin-bottom: 12%;
}
footer .cont1,footer .cont2{
margin-bottom: 10%;		
}
footer .cont2 .left{
margin-right: 0;
}
footer .cont1 .left-box .sp-flex p{
font-size: 12px;
}
footer .cont2 p span{
font-size: 9vw;
}
footer .cont2 p{
font-size: 16px;
margin-bottom: 1.5%;
}
footer .cont2 figure,footer .cont2 p{
text-align: center;		
}
}

@media screen and (max-width:380px){
footer .cont2 p span{
font-size: 32px;
}
}
/*************** //footerここまで ***************/