@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&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;} 

/* ------------------------------------------- CSS Information 
 Style Info: 基本設定
----------------------------------------------------------- */
/*A Style*/  
a{text-decoration:underline;color:#333333;}
a:visited{text-decoration:underline;color:#333333;}
a:hover{text-decoration:underline;color:#0e8eb9;}
a:active{text-decoration:underline;color:#333333;}
/*font*/  
.b{font-weight:700;}
.ul{text-decoration:underline;}
.bg{background:linear-gradient(transparent 60%,#ffec47 60%);}
.red{color:#c20e30;}
.big{font-size:20px;}@media only screen and (max-width:750px){.big{font-size:18px;}}
.small{font-size:12px;line-height:20px;}@media only screen and (max-width:750px){}
/*img*/
.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',Sans-Serif;
color:#333333;
font-size:14px;
line-height:0;
text-align:center;
font-weight:400;
letter-spacing:0em;
background:#000000;
width:100%;
}

/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{
position:relative;
margin:0;
padding:0;
width:100%;
background:#f6f6f6 url(../img/header_bg.png) no-repeat center;
background-size:cover;
}
.header01{
position:relative;
width:100%;
margin:0 auto;
padding:0;
z-index:10;
background:url(../img/header01_bg.png) no-repeat center top;
background-size:auto 100%;
}
.header_img{
width:100%;
max-width:1000px;
margin:0 auto;
}
@media only screen and (max-width:750px){
header{background:none;}
.header01{background:none;}
}

/* ----------------------- CSS Information 
 Style Info: CTA
--------------------------------------- */
#cta{
width:100%;
margin:0;
padding:80px 0;
box-sizing:border-box;
text-align:center;
background:#f6f6f6 url(../img/cta_bg_pc.png) no-repeat center;
background-size:cover;
}
.cta_img{
width:100%;
max-width:750px;
margin:0 auto;
}
.cta_deadline{
display:block;
margin:0 0 10px 0;
font-size:24px;
line-height:30px;
font-weight:600;
text-align:center;
}
@media only screen and (max-width:750px){
#cta{padding:40px 0;background:#f6f6f6 url(../img/cta_bg_sp.png) no-repeat center top;background-size:cover;}
.cta_deadline{margin:0 0 5px 0;font-size:14px;line-height:30px;}
}

/* ----------------------- CSS Information 
 Style Info: BTN
--------------------------------------- */
.btn{
width:100%;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
.btn + .btn{margin:30px auto 0 auto;}
.btn_wrapper{
position:relative;
width:100%;
max-width:600px;
margin:0 auto;
padding:0;
background:#ffffff;
overflow:hidden;
border-radius:8px;
box-shadow:2px 2px 4px 0px rgba(0,0,0,0.5);
box-sizing:border-box;
}
.btn_wrapper img{width:100%;}
.btn_wrapper img:hover{opacity:0.5;}
.section .btn{margin:60px auto 0 auto;}
@media only screen and (max-width:750px){
.btn{padding:0 4%;}
.btn + .btn{margin:20px auto 0 auto;}
.section .btn{margin:30px auto 0 auto;}
}

/* ----------------------- CSS Information 
 Style Info: TITLE
--------------------------------------- */
.title{
position:relative;
width:100%;
margin:0 auto 60px auto;
padding:0 30px;
box-sizing:border-box;
}
.title:after{
content:"";
display:block;
margin:0 auto;
padding:0;
width:0;
height:6px;
border-radius:3px;
background:linear-gradient(to right,#234872,#c20e30);
}
.title.scrollin:after{animation:title_hr 0.4s linear both;}
@keyframes title_hr{0%{width:0%;}100%{width:200px;}}
.title h1{
display:block;
width:100%;
max-width:750px;
margin:0 auto 40px auto;
padding:0;
font-size:32px;
line-height:50px;
text-align:center;
font-weight:700;
}
@media only screen and (max-width:750px){
.title{margin:0 auto 30px auto;padding:0 4%;}
.title:after{height:4px;border-radius:2px;}
.title.scrollin:after{}
@keyframes title_hr{0%{width:0%;}100%{width:80px;}}
.title h1{margin:0 auto 20px auto;font-size:20px;line-height:30px;}
}

/* ----------------------- CSS Information 
 Style Info: SECTION
--------------------------------------- */
.section{
margin:0;
padding:120px 0 120px 0;
width:100%;
position:relative;
box-sizing:border-box;
background:#ffffff;
overflow-y:auto;
}
.section_wrapper{
width:100%;
max-width:1000px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
.section_img{
position:relative;
display:block;
float:right;
margin:10px 0 20px 20px;
width:30%;
}
.section_img:before{
content:"";
position:absolute;
top:-10px;
left:-10px;
width:100%;
height:100%;
border:2px solid #234872;
z-index:10;
box-sizing:border-box;
}
.section_img img{display:block;width:100%;}
@media only screen and (max-width:750px){
.section{padding:40px 0 40px 0;}
.section_wrapper{padding:0 4%;}
.section_img{margin:10px 0 20px 20px;}
.section_img:before{top:-5px;left:-5px;border:2px solid #234872;}
}

/* ----------------------- 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;}
.text ul{margin:0 0 30px 0;padding:0;list-style:none;}
.text ul.point li{position:relative;padding:0 0 0 17px;font-weight:600;}
.text ul.point li:before{
content:"";
position:absolute;
top:11px;
left:0;
width:12px;
height:12px;
background:#5a7695;
border-radius:50%;
}
.text dl.arrow{margin:0 0 30px 0;padding:0;font-weight:600;}
.text dl.arrow dt{color:#234872;}
.text dl.arrow dd{position:relative;padding:0 0 0 20px;color:#e83929;}
.text dl.arrow dd:before{content:"\02192";position:absolute;left:0;}
@media only screen and (max-width:750px){
.text{font-size:14px;line-height:24px;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;}
.text ul{margin:0 0 20px 0;padding:0;}
.text ul.point li{position:relative;padding:0 0 0 14px;}
.text ul.point li:before{top:8px;left:0;width:10px;height:10px;}
.text dl.arrow{margin:0 0 20px 0;}
.text dl.arrow dt{}
.text dl.arrow dd{padding:0 0 0 16px;}
.text dl.arrow dd:before{}

/* br */
.text p br{display:none;}
.text p br.sp,.text p br.all{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: PRESENT
--------------------------------------- */
#present{}

/* ----------------------- CSS Information 
 Style Info: PRIORITY
--------------------------------------- */
#priority{}

/* ----------------------- CSS Information 
 Style Info: OUTLINE
--------------------------------------- */
#outline{background:#ffffff;}
.outline_dl{
width:100%;
margin:40px auto;
padding:20px;
border-radius:8px;
background:#f6f6f5;
box-sizing:border-box;
}
.outline_dl dt{
position:relative;
display:flex;
align-items:center;
justify-content:center;
margin:0 0 10px 0;
padding:0 0 0 0;
font-size:18px;
line-height:20px;
font-weight:600;
}
.outline_dl dt:after{
content:"";
flex-grow:1;
margin:0 0 0 10px;
border-top:1px solid #069cb7;
}
.outline_dl dd{
font-size:16px;
line-height:30px;
}
.outline_dl dd p{margin:0;padding:0;}
.outline_dl dd ul{margin:0;padding:0;}
#outline .text ul.point li{font-weight:400;}
.outline_dl dd ul.outline_attention{margin:0;padding:0;}
.outline_dl dd ul.outline_attention li{
position:relative;
margin:0;
padding:0 0 0 16px;
font-size:14px;
line-height:24px;
color:#666666;
}
.outline_dl dd ul.outline_attention li:before{
content:"※";
position:absolute;
top:0;
left:0;
font-size:14px;
line-height:24px;
color:#666666;
}
@media only screen and (max-width:750px){
#outline{}
.outline_dl{margin:30px auto;padding:20px 15px;}
.outline_dl dt{font-size:16px;}
.outline_dl dt:after{margin:0 0 0 5px;}
.outline_dl dd{font-size:14px;line-height:24px;}
.outline_dl dd ul.point li{margin:0;padding:0 0 5px 14px;}
.outline_dl dd ul.outline_attention{margin:10px 0 0 0;padding:0;}
.outline_dl dd ul.outline_attention li{
position:relative;
margin:0;
padding:0 0 5px 16px;
font-size:14px;
line-height:20px;
}
.outline_dl dd ul.outline_attention li:before{
content:"※";
position:absolute;
top:0;
left:0;
font-size:14px;
line-height:20px;
}
}

/* ----------------------- CSS Information 
 Style Info: CONTACT
--------------------------------------- */
#contact{
width:100%;
margin:0;
padding:80px 0;
box-sizing:border-box;
text-align:center;
background:#f6f6f6;
}
.contact_wrapper{
width:100%;
max-width:750px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
.contact_title{
position:relative;
display:flex;
align-items:center;
justify-content:center;
width:100%;
margin:0 auto 30px auto;
padding:0 0 0 0;
font-size:20px;
line-height:30px;
font-weight:600;
}
.contact_title:before,.contact_title:after{
content:"";
flex-grow:1;
margin:0 0 0 10px;
border-top:1px solid #5a7695;
}
.contact_title:before{margin:0 10px 0 0;}
.contact_title:after{margin:0 0 0 10px;}
.contact_mail{
position:relative;
margin:0 0 30px 0;
padding:0;
font-size:18px;
line-height:30px;
font-weight:600;
color:#5a7695;
}
.contact_mail span{
display:inline-block;
margin:0 10px 0 0;
padding:4px 10px 6px 10px;
font-size:16px;
line-height:20px;
font-weight:500;
color:#ffffff;
background:#5a7695;
}
.contact_attention{
width:100%;
margin:0 auto;
padding:20px;
border-radius:8px;
background:#ffffff;
border:1px solid #5a7695;
box-sizing:border-box;
}
.contact_attention li{
position:relative;
margin:0;
padding:0 0 0 16px;
font-size:14px;
line-height:24px;
text-align:justify;
list-style:none;
color:#666666;
}
.contact_attention li:before{
content:"※";
position:absolute;
top:0;
left:0;
font-size:14px;
line-height:24px;
color:#666666;
}
@media only screen and (max-width:750px){
#contact{padding:40px 0;}
.contact_wrapper{padding:0 4%;}
.contact_title{
margin:0 auto 20px auto;
font-size:16px;
line-height:24px;
}
.contact_mail{margin:0 0 20px 0;font-size:16px;line-height:30px;}
.contact_mail span{padding:4px 5px 6px 5px;font-size:13px;}
.contact_attention{padding:15px 10px;}
.contact_attention li{
padding:0 0 0 14px;
font-size:12px;line-height:20px;
}
.contact_attention li:before{font-size:12px;line-height:20px;}
}

/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
width:100%;
margin:0;
padding:40px 0;
color:#d1d1d1;
background:#333333;
}
#fnav a{color:#d1d1d1;text-decoration:none;}
#fnav a:hover{color:#d1d1d1;text-decoration:underline;}
#fnav{margin:0 0 20px 0;}
#fnav ul{list-style-type:none;}
#fnav li{
display:inline-block;
padding:0 20px;
font-size:14px;
line-height:20px;
border-right:1px solid #c20e30;
}
#fnav li:last-child{border-right:none;}
address{
text-align:center;
font-size:14px;
line-height:20px;
padding:0;
}
@media only screen and (max-width:750px){
#fnav{margin:0 0 40px 0;}
#fnav li{display:block;margin:0 0 20px 0;font-size:12px;border-right:0;}
address{font-size:12px;}
.sp_no{display:none;}
}