@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&family=Noto+Serif+JP:wght@400;600&display=swap');

/* ------------------------------------------- CSS Information 
 Style Info:     ブラウザスタイルのリセット設定
----------------------------------------------------------- */  
html{overflow-y:scroll;} 
body,div,blockquote,pre,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,table,th,td,form,input,textarea,fieldset{margin: 0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}   
img,abbr,acronym,fieldset{border:none;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
hr,legend{display:none;}
object,embed{vertical-align:top;}
li{list-style:none;}

/* ------------------------------------------- CSS Information 
 Style Info:     基本設定
----------------------------------------------------------- */
/*A Style*/  
a:link{text-decoration:none;color:#666666;}
a:visited{text-decoration:none;color:#666666;}
a:hover{text-decoration:underline;color:#999999;}
a:active{text-decoration:none;color:#666666;}
/*font*/
.b{font-weight:700;}
.ul{text-decoration:underline;}
.bg{background-color:#fff45c;}
.big{font-size:20px;line-height:30px;}@media only screen and (max-width:768px){.big{font-size:16px;line-height:24px;}}
.small{font-size:14px;line-height:20px;}@media only screen and (max-width:768px){.small{font-size:12px;line-height:20px;}}
.red{color:#c70003;}
/*----- image -----*/
.pc{display:block;}
.sp{display:none;}
@media only screen and (max-width:750px){
.pc{display:none;}
.sp{display:block;}
}


/* ----------------------- CSS Information 
 Style Info: HTML/BODY
--------------------------------------- */
html,body{
position:relative;
font-family:'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3",Sans-Serif;
font-size:16px;
line-height:0;
letter-spacing:0em;
text-align:center;
font-weight:400;
color:#333333;
background:#c2e1d2;
}

/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{position:relative;width:100%;margin:0;padding:0;}
.header{
position:relative;
width:100%;
margin:0 auto;
padding:0;
background:#c2e1d2;
}
.header img{
width:100%;
max-width:1000px;
margin:0 auto;
}
@media only screen and (max-width:750px){
.header{background:none;}
}


/* ----------------------- CSS Information 
 Style Info: SECTION
--------------------------------------- */
.section{
margin:0;
padding:120px 0 120px 0;
width:100%;
position:relative;
box-sizing:border-box;
overflow-y:auto;
}
.section_wrapper{
position:relative;
display:block;
width:100%;
max-width:1000px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
.section{padding:40px 0 40px 0;}
.section_wrapper{}
}

/* ----------------------- CSS Information 
 Style Info: TEXT
--------------------------------------- */
.text{
font-size:17px;
line-height:32px;
text-align:left;
margin:0;
padding:0;
box-sizing:border-box;
}
.text_center{text-align:center;}
.text_right{text-align:right;}
.text p{margin:0 0 30px 0;padding:0;}
.text p:last-child{margin:0;}
@media only screen and (max-width:750px){
.text{font-size:14px;line-height:30px;text-align:justify;}
.text_center{text-align:center;}
.text_right{text-align:right;}
.text p{margin:0 0 20px 0;padding:0;}
.text p:last-child{margin:0;}
/* br */
.text p br{display:none;}
.text p br.sp,.text p br.all{display:block;}
}


/* ----------------------- CSS Information 
 Style Info: CONTENT
--------------------------------------- */
#content{background:#c2e1d2;}
/*-- TITLE --*/
.title_content{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto 60px auto;
padding:0 4%;
box-sizing:border-box;
}
.title_content h1{
display:block;
width:100%;
margin:0 auto;
padding:0;
font-size:40px;
line-height:60px;
text-align:center;
font-weight:700;
color:#ffffff;
box-sizing:border-box;
}
/*-- BOX --*/
.content_box{
display:flex;
justify-content:flex-start;
align-items:center;
width:100%;
margin:60px auto 0 auto;
padding:0 4%;
box-sizing:border-box;
}
.content_box:nth-child(even){flex-direction:row;}
.content_box:nth-child(odd){flex-direction:row-reverse;}
/*-- TEXT --*/
.content_text{
flex:1;
margin:0;
padding:0;
}
.content_box:nth-child(even) .content_text{padding-right:30px;}
.content_box:nth-child(odd) .content_text{padding-left:30px;}
.content_text h2{
display:block;
margin:0 0 20px 0;
padding:0 0 20px 0;
font-size:24px;
line-height:40px;
font-weight:700;
text-align:left;
}
.content_box:nth-of-type(1) .content_text h2{border-bottom:dotted 10px #ed6d1f;}
.content_box:nth-of-type(2) .content_text h2{border-bottom:dotted 10px #00afcc;}
.content_box:nth-of-type(3) .content_text h2{border-bottom:dotted 10px #a660a3;}
.content_box:nth-of-type(4) .content_text h2{border-bottom:dotted 10px #f2ee86;}
.content_text p{
margin:0;
padding:0;
font-size:17px;
line-height:30px;
text-align:justify;
}
/*-- IMG --*/
.content_img{width:270px;}
.content_img img{
display:block;
width:100%;
border-radius:50%;
}
.content_box:nth-of-type(1) .content_img img{box-shadow:10px 10px 0 0 #ed6d1f;}
.content_box:nth-of-type(2) .content_img img{box-shadow:-10px 10px 0 0 #00afcc;}
.content_box:nth-of-type(3) .content_img img{box-shadow:10px 10px 0 0 #a660a3;}
.content_box:nth-of-type(4) .content_img img{box-shadow:-10px 10px 0 0 #f2ee86;}
@media only screen and (max-width:750px){
#content{}
/*-- TITLE --*/
.title_content{margin:0 auto 40px auto;}
.title_content h1{font-size:20px;line-height:30px;}
/*-- BOX --*/
.content_box{justify-content:flex-start;align-items:flex-start;margin:30px auto 0 auto;}
.content_box:nth-child(even){flex-direction:column-reverse;}
.content_box:nth-child(odd){flex-direction:column-reverse;}
/*-- TEXT --*/
.content_text{width:100%;}
.content_box:nth-child(even) .content_text{padding-right:0;}
.content_box:nth-child(odd) .content_text{padding-left:0;}
.content_text h2{font-size:18px;line-height:30px;text-align:center;}
.content_box:nth-of-type(1) .content_text h2{border-bottom:dotted 6px #ed6d1f;}
.content_box:nth-of-type(2) .content_text h2{border-bottom:dotted 6px #00afcc;}
.content_box:nth-of-type(3) .content_text h2{border-bottom:dotted 6px #a660a3;}
.content_box:nth-of-type(4) .content_text h2{border-bottom:dotted 6px #f2ee86;}
.content_text p{font-size:14px;line-height:30px;}
/*-- IMG --*/
.content_img{width:100px;margin:0 auto 20px auto;}
.content_img img{}
.content_box:nth-of-type(1) .content_img img{box-shadow:5px 5px 0 0 #ed6d1f;}
.content_box:nth-of-type(2) .content_img img{box-shadow:5px 5px 0 0 #00afcc;}
.content_box:nth-of-type(3) .content_img img{box-shadow:5px 5px 0 0 #a660a3;}
.content_box:nth-of-type(4) .content_img img{box-shadow:5px 5px 0 0 #f2ee86;}
}


/* --------------------------------- CSS Information 
 Style Info: HR
------------------------------------------------- */
.hr{
position:relative;
margin:0;
padding:0;
width:100%;
height:500px;
box-sizing:border-box;
background-size:cover;
background-position:center;
}
#hr01{background-image:url(../img/hr01.png);}
#hr01:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:50px;
background:#eef8f3;
border-bottom-left-radius:50% 100%;
border-bottom-right-radius:50% 100%;
z-index:10;
}
#hr01:after{
content:"";
position:absolute;
bottom:0;
left:0;
width:100%;
height:50px;
background:#c2e1d2;
border-top-left-radius:50% 100%;
border-top-right-radius:50% 100%;
z-index:10;
}
@media only screen and (max-width:750px){
.hr{height:180px;}
#hr01{}
#hr01:before{height:30px;}
#hr01:after{height:30px;}
}


/* --------------------------------- CSS Information 
 Style Info: LINE
------------------------------------------------- */
.line{
position:relative;
margin:0;
padding:0 0 60px 0;
box-sizing:border-box;
text-align:center;
background:#eef8f3;
}
/*-- TITLE --*/
.title_line{
position:relative;
width:100%;
margin:0 auto 40px auto;
padding:30px;
background:#45d580;
box-sizing:border-box;
}
.title_line h1{
display:block;
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
font-size:24px;
line-height:30px;
text-align:center;
font-weight:700;
color:#ffffff;
box-sizing:border-box;
}
.title_line:after{
content:"";
position:absolute;
top:100%;
left:50%;
margin:0 0 0 -20px;
border:20px solid transparent;
border-top:20px solid #45d580;
z-index:10;
}
/*-- BOX --*/
.line_box{
display:flex;
justify-content:space-between;
align-items:stretch;
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
position:relative;
}
.line_box dl{
display:block;
width:32%;
margin:0;
padding:0;
box-sizing:border-box;
background:#ffffff;
border-radius:30px;
overflow:hidden;
}
.line_box dl dt{
margin:0;
padding:10px;
font-size:16px;
line-height:20px;
font-weight:bold;
text-align:center;
color:#ffffff;
background:#92d6b4;
}
.line_box dl dd{
margin:0;
padding:20px;
height:180px;
display:flex;
justify-content:center;
align-items:center;
}
.line_box dl dd:last-child{
display:block;
height:auto;
margin:0;
padding:0 20px 20px 20px;
font-size:14px;
line-height:24px;
text-align:justify;
}
.line_btn{
display:block;
width:100%;
margin:0 auto;
padding:10px 0;
font-size:18px;
line-height:30px;
color:#ffffff !important;
font-weight:700;
text-align:center;
background:#06c755;
border:2px solid #06c755;
border-radius:8px;
box-sizing:border-box;
}
.line_btn:hover{color:#06c755 !important;background:#ffffff;text-decoration:none;}
.line_qr{
display:block;
margin:0 auto;
width:100%;
max-width:180px;
}
.line_id{
display:block;
width:100%;
margin:0 auto;
padding:10px 0;
font-size:18px;
line-height:30px;
color:#06c755;
font-weight:700;
text-align:center;
background:#ffffff;
border:2px solid #06c755;
border-radius:8px;
box-sizing:border-box;
}
/*-- LINE_NOTICE --*/
.line_notice{
position:relative;
display:block;
width:100%;
margin:60px auto 0 auto;
padding:0 4%;
box-sizing:border-box;
}
.line_notice h2{
position:relative;
display:block;
margin:0;
padding:20px 0 20px 0;
font-size:16px;
line-height:30px;
color:#666666;
border-top:4px dotted #92d6b4;
}
.line_notice_box{
display:flex;
justify-content:space-between;
align-items:stretch;
width:100%;
max-width:690px;
margin:0 auto;
padding:0;
box-sizing:border-box;
position:relative;
}
.line_notice_box dl{
display:block;
width:49%;
margin:0;
padding:0;
box-sizing:border-box;
}
.line_notice_box dl dt{
margin:0;
padding:0;
font-size:16px;
line-height:30px;
font-weight:700;
text-align:left;
color:#06c755;
}
.line_notice_box dl dd{}
.line_notice_box dl dd img{
display:block;
width:100%;
}
@media only screen and (max-width:750px){
.line{padding:0 0 40px 0;}
/*-- TITLE --*/
.title_line{margin:0 auto 30px auto;padding:10px;}
.title_line h1{font-size:18px;line-height:30px;}
.title_line:after{margin:0 0 0 -15px;border:15px solid transparent;border-top:15px solid #45d580;}
/*-- BOX --*/
.line_box{display:block;}
.line_box dl{width:100%;margin:0 auto 15px auto;border-radius:15px;}
.line_box dl:last-child{margin:0 auto;}
.line_box dl dt{font-size:14px;}
.line_box dl dd{display:block;height:auto;}
.line_box dl dd:last-child{}
.line_btn{font-size:16px;}
.line_btn:hover{}
.line_qr{}
.line_id{font-size:16px;}

/*-- LINE_NOTICE --*/
.line_notice{margin:40px auto 0 auto;}
.line_notice h2{font-size:14px;line-height:20px;}
.line_notice_box{}
.line_notice_box dl{}
.line_notice_box dl dt{font-size:14px;line-height:20px;}
.line_notice_box dl dd{}
.line_notice_box dl dd img{}
}

/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
position:relative;
width:100%;
margin:0;
padding:100px 0 40px 0;
width:100%;
color:#606060;
background:#ffffff;
}
footer:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:50px;
background:#eef8f3;
border-bottom-left-radius:50% 100%;
border-bottom-right-radius:50% 100%;
z-index:10;
}
footer a{color:#606060;text-decoration:none;}
footer a:hover{color:#606060;text-decoration:underline;}
#nav_footer{
display:block;
width:100%;
max-width:750px;
margin:0 auto;
}
#nav_footer ul{
display:flex;
flex-direction:row;
flex-wrap:nowrap;
justify-content:center;
align-items:flex-start;
width:100%;
text-align:center;
list-style-type:none;
}
#nav_footer ul li{
display:block;
font-size:14px;
line-height:20px;
margin:0;
padding:0 20px;
border-right:1px solid #92d6b4;
}
#nav_footer ul li:last-child{border-right:none;}
footer small{
display:block;
margin:20px 0 0 0;
padding:0;
text-align:center;
font-size:14px;
line-height:20px;
}
@media only screen and (max-width:750px){
footer{padding:80px 0 40px 0;}
footer:before{height:30px;}
#nav_footer{}
#nav_footer ul{flex-direction:column;}
#nav_footer ul li{width:100%;margin:0 0 20px 0;padding:0;font-size:12px;border-right:none;}
#nav_footer ul li:last-child{border-right:none;}
footer small{margin:0;font-size:12px;}
.sp_no{display:none;}
}