@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@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:#333333;}
a:visited{text-decoration:none;color:#333333;}
a:hover{text-decoration:underline;color:#666666;}
a:active{text-decoration:none;color:#333333;}
/*font*/
.b{font-weight:bold;}
.ul{text-decoration:underline;}
.bg{background-color:#fff45c;}
.big{font-size:24px;line-height:40px;}@media only screen and (max-width:768px){.big{font-size:16px;line-height:24px;}}
.small{font-size:13px;}
.red{color:#e66700;}
.text_center{text-align:center;}
.text_right{text-align:right;}
/* 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{  
font-family:'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3",Sans-Serif;
color:#333333;
font-size:16px;
line-height:0;
text-align:center;
letter-spacing:0em;
background:#ffffff;
width:100%;
height:100%;
}

/* ----------------------- CSS Information 
 Style Info: TOPBAR
--------------------------------------- */
#topbar{
position:relative;
margin:0;
padding:0;
width:100%;
text-align:center;
background:#ffffff;
}
#topbar .logo{
display:block;
position:absolute;
top:20px;
left:20px;
height:40px;
}
#topbar .btn{
position:relative;
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:nowrap;flex-wrap:nowrap;
-ms-flex-pack:center;justify-content:center;
-ms-flex-align:center;align-items:center;
width:500px;
margin:0 0 0 auto;
padding:10px 0;
text-align:center;
box-sizing:border-box;
}
#topbar .btn li{
display:block;
margin:0 10px 0 0;
padding:0;
width:240px;
height:60px;
}
#topbar .btn li a{
display:block;
margin:0;
padding:10px 0;
width:100%;
color:#ffffff;
background:#e66700;
border-radius:10px;
}
#topbar .btn li a:hover{text-decoration:none;background:#fdad3d;}
#topbar .btn li a img{
display:block;
margin:0 auto;
width:210px;
height:40px;
box-sizing:border-box;
}
@media only screen and (max-width:768px){
#topbar{height:50px;}
#topbar .logo{top:10px;left:10px;height:30px;}
#topbar .btn{display:none;}
}

/* ----------------------- CSS Information 
 Style Info: HEADER_NAV
--------------------------------------- */
.menu-trigger{display:none;}
#header_nav{display:block;margin:0;padding:0;background:#555555;}
#header_nav ul{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:nowrap;flex-wrap:nowrap;
-ms-flex-pack:distribute;justify-content:space-around;
-ms-flex-align:stretch;align-items:stretch;
width:100%;
max-width:1280px;
margin:0 auto;
padding:0;
border-left:1px solid #333333;
box-sizing:border-box;
}
#header_nav li{
display:block;
width:100%;
margin:0;
padding:0;
list-style-type:none;
border-right:1px solid #333333;
box-sizing:border-box;
}
#header_nav li a{
display:block;
margin:0;
padding:10px 0;
width:100%;
height:100%;
font-size:14px;
line-height:20px;
text-align:center;
color:#f6f6f5;
box-sizing:border-box;
}
#header_nav li a:hover{text-decoration:none;color:#ffffff;background:#333333;}
@media only screen and (max-width:768px){
.menu-trigger{
display:inline-block;
z-index:100;
margin:0;
width:40px;
height:40px;
cursor:pointer;
position:absolute;
top:5px;
right:5px;
background:rgba(255,255,255,1);
box-sizing:border-box;
border-radius:6px;
transform:translateX(0);
transition:transform .5s;
}
.menu-trigger.active{transform:translateX(-240px);}
.menu-icon{
margin:0;
display:inline-block;
width:24px;
height:16px;
vertical-align:middle;
position:absolute;
top:11px;
right:7px;
box-sizing:border-box;
}
.menu-icon span{
display:inline-block;
box-sizing:border-box;
position:absolute;
left:0;
width:100%;
height:2px;
background-color:#666666;
}
.menu-trigger.active .menu-icon span{background-color:#666666;}
.menu-trigger .menu-icon span:nth-of-type(1){top: 0;}
.menu-trigger.active .menu-icon span:nth-of-type(1) {transform:translateY(7px) rotate(-45deg);}
.menu-trigger .menu-icon span:nth-of-type(2){top:7px;}
.menu-trigger.active .menu-icon span:nth-of-type(2){opacity:0;}
.menu-trigger .menu-icon span:nth-of-type(3){bottom:0;}
.menu-trigger.active .menu-icon span:nth-of-type(3) {transform:translateY(-7px) rotate(45deg);}
#header_nav{
width:240px;
height:100%;
position:fixed;
top:0;
right:0;
z-index:20;
transform:translate(240px);
transition:all .5s;
box-sizing:border-box;
}
#header_nav.open{transform:translateZ(0);}
#header_nav ul{display:block;border-left:none;}
#header_nav li{
height:40px;
border-right:none;
border-bottom:1px solid #333333;
box-sizing:border-box;
}
#header_nav li a{padding:10px 20px;text-align:left;}
#header_nav li a:hover{text-decoration:none;color:#ffffff;background:#333333;}
.overlay{
display:block;
width:0;
height:0;
position:fixed;
top:0;
left:0;
z-index:10;
opacity:0;
transition:opacity .5s;
background:rgba(255,255,255,0.75);
}
.overlay.open{
width:100%;
height:100%;
opacity:1;
}
}

/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{
position:relative;
margin:0;
padding:0;
width:100%;
box-sizing:border-box;
text-align:center;
background:#ffe1ab url(../img/header_bg.png) no-repeat center;
background-size:cover;
}
header img{
width:100%;
max-width:1260px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
@media only screen and (max-width:960px){header img{padding:0 20px;}}
@media only screen and (max-width:750px){header img{padding:0;}}

/* ----------------------- CSS Information 
 Style Info: CAMPAIGN
--------------------------------------- */
.campaign{
position:relative;
margin:0;
padding:40px 30px;
width:100%;
text-align:center;
background:#eeeeee;
box-sizing:border-box;
}
.campaign_img{
width:100%;
max-width:1200px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
.campaign p{margin:20px 0 0 0;padding:0;font-size:14px;line-height:20px;}
@media only screen and (max-width:960px){.campaign{padding:20px;}}
@media only screen and (max-width:750px){
.campaign{}
.campaign_img{max-width:710px;}
.campaign p{font-size:13px;text-align:justify;}
}

/* ----------------------- CSS Information 
 Style Info: TITLE
--------------------------------------- */
.title{
width:100%;
max-width:1260px;
margin:0 auto 40px auto;
padding:0 30px;
font-size:30px;
line-height:50px;
text-align:center;
font-weight:bold;
color:#e66700;
box-sizing:border-box;
}
.title:after{
content:"";
display:block;
margin:20px auto 0 auto;
padding:0;
width:0;
max-width:120px;
height:4px;
background:#e66700;
}
.title.scrollin:after{
animation:title_hr 0.2s linear 0.5s both;
-webkit-animation:title_hr 0.2s linear 0.5s both;
}
@keyframes title_hr{0%{width:0;}100%{width:100%;}}
@-webkit-keyframes title_hr{0%{width:0;}100%{width:100%;}}
.balloon{
position:relative;
display:block;
margin:0 auto 20px auto;
padding:10px;
width:240px;
height:40px;
color:#333333;
font-size:18px;
line-height:20px;
background:#fdad3d;
border-radius:20px;
box-sizing:border-box;
}
.balloon:before{
content: "";
position:absolute;
top:100%;
left:50%;
margin-left:-10px;
border:10px solid transparent;
border-top:10px solid #fdad3d;
}
@media only screen and (max-width:768px){
.title{
margin:0 auto 20px auto;
padding:0;
font-size:18px;
line-height:30px;
}
.title:after{margin:10px auto 0 auto;max-width:60px;}
.title.scrollin:after{}
.balloon{
padding:5px;
width:240px;
height:30px;
font-size:14px;
line-height:20px;
border-radius:15px;
}
}


/* ----------------------- CSS Information 
 Style Info: 共通設定
--------------------------------------- */
/* -- contents -- */
.contents{
width:100%;
margin:0;
padding:80px 0 80px 0;
position:relative;
background:#ffffff;
}
.contents_box{
width:100%;
max-width:1200px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
.flex{
display:flex;
flex-direction:row;
align-items:stretch;
justify-content:space-between;
}
.flex .text_box{width:60%;box-sizing:border-box;}
.flex .img_box{
width:40%;
padding:0 0 0 20px;
box-sizing:border-box;
}
.flex .img_box img{width:100%;}
@media only screen and (max-width:960px){.contents{padding:40px 0 40px 0;}}
@media only screen and (max-width:750px){
/* -- contents -- */
.contents{padding:40px 0 40px 0;}
.contents_box{padding:0 20px;}
.flex{
flex-direction:column-reverse;
align-items:flex-start;
justify-content:center;
}
.flex .text_box{width:100%;}
.flex .img_box{width:100%;padding:0 0 40px 0;}
.flex .img_box img{width:100%;}
}
/* -- text -- */
.text{
width:100%;
margin:0 auto;
padding:0;
font-size:16px;
line-height:30px;
text-align:left;
box-sizing:border-box;
}
.text p{margin:0 0 30px 0;padding:0;}
.text p:last-child{margin:0;}
/* -- ul -- */
.text ul{margin:0 0 30px 0;}
.text ul li{margin:0;padding:0;}
ul.check{}
ul.check li{
position:relative;
display:block;
margin:0 0 20px 0;
padding:10px 10px 10px 40px;
list-style:none;
text-align:left;
font-size:16px;
line-height:30px;
background:#ffffff;
box-sizing:border-box;
}
ul.check li:before{
content:"";
display:block;
position:absolute;
top:16px;
left:10px;
width:20px;
height:20px;
background:#e66700;
box-sizing:border-box;
}
ul.check li:after{
content:"";
display:block;
position:absolute;
top:16px;
left:15px;
width:6px;
height:12px;
transform:rotate(40deg);
border-bottom:3px solid #ffffff;
border-right:3px solid #ffffff;
}
ul.point{
display:-ms-flexbox;display:flex;
-ms-flex-wrap:wrap;flex-wrap:wrap;
-ms-flex-pack:start;justify-content:flex-start;
align-items:stretch;
width:100%;
margin:0;
padding:20px;
border:1px solid #cccccc;
box-sizing:border-box;
}
ul.point li{
position:relative;
width:50%;
margin:0;
padding:0 10px 0 30px;
list-style:none;
text-align:left;
font-size:16px;
line-height:30px;
box-sizing:border-box;
}
ul.point li:before{
content:"";
display:block;
position:absolute;
top:6px;
left:0;
width:20px;
height:20px;
background:#ffffff;
border:1px solid #555555;
box-sizing:border-box;
}
ul.point li:after{
content:"";
display:block;
position:absolute;
top:6px;
left:5px;
width:6px;
height:12px;
transform:rotate(40deg);
border-bottom:3px solid #e66700;
border-right:3px solid #e66700;
}
@media only screen and (max-width:768px){
.text{font-size:14px;line-height:24px;text-align:justify;}
.text p{margin:0 0 20px 0;}
.text p:last-child{margin:0;}
/* -- ul -- */
.text ul{margin:0 0 20px 0;}
.text ul li{}
ul.check{}
ul.check li{
margin:0 0 10px 0;
padding:10px 10px 10px 30px;
font-size:14px;
line-height:24px;
}
ul.check li:before{top:15px;left:10px;width:16px;height:16px;}
ul.check li:after{top:15px;left:14px;width:5px;height:10px;}
ul.point{padding:10px 15px;}
ul.point li{width:100%;padding:0 0 0 20px;font-size:14px;line-height:30px;}
ul.point li:before{top:7px;left:0;width:16px;height:16px;}
ul.point li:after{top:8px;left:4px;width:4px;height:8px;}
/* -- br -- */
.text br{display:none;}
.text br.sp,.text br.all{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: INQUIRY
--------------------------------------- */
.inquiry{
position:relative;
margin:0;
padding:60px 0;
width:100%;
text-align:center;
background:#333333 url(../img/inquiry_bg.png) no-repeat center right;
background-size:cover;
box-sizing:border-box;
}
.inquiry .title{margin:0 auto 20px auto;color:#ffffff;}
.inquiry .text{text-align:center;color:#ffffff;}
.inquiry .btn{
position:relative;
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:nowrap;flex-wrap:nowrap;
-ms-flex-pack:center;justify-content:center;
-ms-flex-align:center;align-items:center;
width:720px;
margin:40px auto 0 auto;
padding:0;
text-align:center;
box-sizing:border-box;
}
.inquiry .btn li{
display:block;
margin:0 20px;
padding:0;
width:320px;
height:60px;
}
.inquiry .btn li a{
display:block;
margin:0;
padding:10px 0;
width:100%;
color:#ffffff;
background:#e66700;
border-radius:35px;
border-bottom:4px solid #fdad3d;
}
.inquiry .btn li a:hover{text-decoration:none;background:#fdad3d;border-bottom:none;}
.inquiry .btn li a img{
display:block;
margin:0 auto;
width:210px;
height:40px;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
.inquiry{padding:30px 0;}
.inquiry .title{}
.inquiry .text{}
.inquiry .btn{
-ms-flex-direction:column;flex-direction:column;
width:100%;
margin:0 auto;
padding:0 20px;
}
.inquiry .btn li{margin:20px auto 0 auto;width:100%;height:56px;}
.inquiry .btn li a{border-radius:28px;border-bottom:2px solid #fdad3d;}
.inquiry .btn li a:hover{}
.inquiry .btn li a img{width:auto;height:36px;}
}

/* ----------------------- CSS Information 
 Style Info: CAUTION
--------------------------------------- */
#caution{
position:relative;
margin:0;
padding:40px 30px;
width:100%;
text-align:center;
background:#fdad3d;
box-sizing:border-box;
}
#caution .title{margin:0 auto 20px auto;}
#caution .text{text-align:center;color:#333333;}
@media only screen and (max-width:750px){
#caution{padding:20px;}
#caution .title{}
#caution .text{text-align:justify;}
}

/* ----------------------- CSS Information 
 Style Info: ABOUT
--------------------------------------- */
#about{background:#ffffff;}
#about .text{text-align:center;}
/* -- CASE -- */
#case{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:wrap;flex-wrap:wrap;
-ms-flex-pack:start;justify-content:flex-start;
-ms-flex-align:stretch;align-items:stretch;
width:100%;
max-width:1260px;
margin:60px auto 40px auto;
padding:0 10px 0 30px;
box-sizing:border-box;
}
#case .flex_box{
width:31.5%;
width:-webkit-calc((100% / 3) - 20px);
width:calc((100% / 3) - 20px);
margin:0 20px 0 0;
}
.case_img{display:block;width:100%;border:1px solid #555555;box-sizing:border-box;}
#case dl{margin:0 0 20px 0;}
#case dt{
margin:0;
padding:10px 0;
color:#ffffff;
background:#555555;
font-size:16px;
line-height:20px;
}
#case dd{
margin:0;
padding:20px 10px;
font-size:20px;
line-height:30px;
font-weight:bold;
color:#e66700;
background:#ffe1ab;
}
#case dd span{
display:inline-block;
width:100px;
margin:0 10px 0 0;
font-size:16px;
line-height:30px;
text-align:center;
font-weight:normal;
color:#ffffff;
background:#e66700;
}
@media only screen and (max-width:960px){
#about{}
#about .text{}
/* -- CASE -- */
#case{margin:40px auto 20px auto;}
#case .flex_box{}
.case_img{}
#case dl{}
#case dt{font-size:14px;}
#case dd{padding:10px 5px;font-size:18px;}
#case dd span{width:80px;font-size:14px;}
}
@media only screen and (max-width:750px){
#about{}
#about .text{text-align:justify;}
/* -- CASE -- */
#case{
-ms-flex-direction:column;flex-direction:column;
margin:30px auto 0 auto;
padding:0 20px;
}
#case .flex_box{width:100%;margin:0;}
.case_img{}
#case dl{margin:0 0 20px 0;}
#case dt{padding:10px 0;font-size:14px;line-height:20px;}
}

/* ----------------------- CSS Information 
 Style Info: TROUBLE
--------------------------------------- */
#trouble{background:#ffffff;}
.trouble_check{
width:100%;
max-width:1260px;
margin:0 auto 60px auto;
padding:0 30px;
box-sizing:border-box;
}
.trouble_check ul.check{
display:-ms-flexbox;display:flex;
-ms-flex-wrap:wrap;flex-wrap:wrap;
-ms-flex-pack:start;justify-content:flex-start;
align-items:stretch;
width:100%;
padding:20px 10px 10px 20px;
background:#ffe1ab;
box-sizing:border-box;
}
.trouble_check ul.check li{
width:23%;
width:-webkit-calc(25% - 10px) ;
width:calc(25% - 10px) ;
margin:0 10px 10px 0;
}
@media only screen and (max-width:960px){
#trouble{}
.trouble_check{margin:0 auto 40px auto;}
.trouble_check ul.check{}
.trouble_check ul.check li{
width:48%;
width:-webkit-calc(50% - 10px) ;
width:calc(50% - 10px) ;
}
}
@media only screen and (max-width:750px){
#trouble{}
.trouble_check{margin:0 auto 30px auto;padding:0 20px;}
.trouble_check ul.check{
-ms-flex-direction:column;flex-direction:column;
width:100%;
padding:10px 10px 8px 10px;
}
.trouble_check ul.check li{
width:100%;
margin:0 0 2px 0;
}
}

/* ----------------------- CSS Information 
 Style Info: QUESTION
--------------------------------------- */
#question{background:#ffe1ab;}
#response{
width:100%;
max-width:1260px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
#response .flex_box{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row-reverse;flex-direction:row-reverse;
-ms-flex-pack:justify;justify-content:space-between;
-ms-flex-align:stretch;align-items:stretch;
margin:0 0 30px 0;
padding:0;
background:#ffffff;
}
#response .flex_box:last-child{margin:0;}
#response .flex_box dl{
display:block;
width:600px;
padding:40px 30px;
box-sizing:border-box;
}
#response .flex_box dt{
position:relative;
display:flex;
align-items:center;
justify-content:center;
margin:0 0 40px 0;
font-size:24px;
line-height:30px;
font-weight:bold;
text-align:left;
color:#e66700;
}
#response .flex_box dt:after{
content:"";
flex-grow:1;
border-top:1px solid #fdad3d;
margin:0 0 0 10px;
}
#response .flex_box dd{
font-size:16px;
line-height:30px;
color:#333333;
text-align:justify;
}
#response .flex_box dd p{margin:0 0 30px 0;padding:0;}
#response .flex_box dd p.margin0,#response .flex_box dd p:last-child{margin:0;}
#response .flex_box dd ul{margin:0;padding:0;}
#response .flex_box dd li{
position:relative;
margin:0;
padding:0 0 0 16px;
font-weight:bold;
list-style:none;
}
#response .flex_box dd li:before{
content:"";
position:absolute;
top:10px;
left:0;
width:12px;
height:12px;
border-radius:50%;
background:#fdad3d;
}
#response .flex_box .img_box{
flex:1;
background-color:#555555;
background-repeat:no-repeat;
background-size:cover;
}
#response .flex_box.res01 .img_box{background-image:url(../img/res01_img.png);background-position:center;}
#response .flex_box.res02 .img_box{background-image:url(../img/res02_img.png);background-position:center right;}
#response .flex_box .img_box img{width:100%;display:none;}
@media only screen and (max-width:960px){
#response .flex_box dl{width:420px;}
#response .flex_box dt{margin:0 0 20px 0;font-size:18px;}
#response .flex_box dd{font-size:14px;line-height:24px;}
#response .flex_box dd p{margin:0 0 20px 0;}
#response .flex_box dd ul{}
#response .flex_box dd li{padding:0 0 0 14px;}
#response .flex_box dd li:before{top:7px;}
#response .flex_box dd br{display:none;}
}
@media only screen and (max-width:750px){
#question{padding:20px 0;}
#response{padding:0 20px;}
#response .flex_box{-ms-flex-direction:column-reverse;flex-direction:column-reverse;margin:0 0 20px 0;}
#response .flex_box dl{width:100%;padding:20px;}
#response .flex_box dt{font-size:16px;line-height:24px;}
#response .flex_box .img_box{width:100%;}
#response .flex_box .img_box img{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: REASON
--------------------------------------- */
#reason{background:#ffffff;}
/* -- GROUND -- */
#ground{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:nowrap;flex-wrap:nowrap;
-ms-flex-pack:center;justify-content:center;
-ms-flex-align:stretch;align-items:stretch;
width:100%;
max-width:1260px;
margin:60px auto 40px auto;
padding:0 10px 0 30px;
box-sizing:border-box;
}
#ground .flex_box{
width:31.5%;
width:-webkit-calc((100% / 3) - 20px);
width:calc((100% / 3) - 20px);
margin:0 20px 0 0;
}
.ground_img{display:block;width:100%;}
#ground dl{margin:0 0 20px 0;}
#ground dt{
margin:0;
padding:10px 0;
color:#ffffff;
background:#fdad3d;
font-size:16px;
line-height:20px;
}
#ground dd{
margin:0;
padding:20px 20px;
font-size:16px;
line-height:24px;
text-align:justify;
color:#333333;
background:#ffe1ab;
}
@media only screen and (max-width:960px){
#ground dt{padding:5px 0;font-size:14px;}
#ground dd{padding:10px;font-size:14px;line-height:20px;}
}
@media only screen and (max-width:750px){
#ground{
-ms-flex-direction:column;flex-direction:column;
margin:30px auto 20px auto;
padding:0 20px;
}
#ground .flex_box{width:100%;margin:0;}
.ground_img{display:block;width:100%;}
#ground dl{margin:0 0 20px 0;}
}

/* ----------------------- CSS Information 
 Style Info: FLOW
--------------------------------------- */
#flow{background:#fff0d5;}
#flow .contents_box .text{text-align:center;}
#step{
width:100%;
max-width:960px;
margin:40px auto 0 auto;
padding:0 30px;
box-sizing:border-box;
}
#step .flex_box{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row-reverse;flex-direction:row-reverse;
-ms-flex-pack:justify;justify-content:space-between;
-ms-flex-align:stretch;align-items:stretch;
min-height:130px;
margin:0;
padding:0;
background:#ffffff;
}
#step .flex_box.step03{box-shadow:0px 0px 0px 3px #e66700;}
#step .flex_box dl{
display:block;
width:680px;
padding:20px;
box-sizing:border-box;
}
#step .flex_box dt{
margin:0 0 10px 0;
font-size:20px;
line-height:30px;
font-weight:bold;
text-align:left;
vertical-align:middle;
}
#step .flex_box dt span.num{
display:inline-block;
width:100px;
margin:0 10px 0 0;
font-size:15px;
line-height:24px;
font-weight:normal;
text-align:center;
color:#ffffff;
background:#fdad3d;
}
#step .flex_box dd{
font-size:15px;
line-height:24px;
color:#666666;
text-align:justify;
}
#step .flex_box .img_box{
flex:1;
background-color:#555555;
background-repeat:no-repeat;
background-position:center;
background-size:cover;
}
#step .flex_box.step01 .img_box{background-image:url(../img/step01_img.png);}
#step .flex_box.step02 .img_box{background-image:url(../img/step02_img.png);}
#step .flex_box.step03 .img_box{background-image:url(../img/step03_img.png);}
#step .flex_box.step04 .img_box{background-image:url(../img/step04_img.png);}
#step .flex_box.step05 .img_box{background-image:url(../img/step05_img.png);}
#step .flex_box.step06 .img_box{background-image:url(../img/step06_img.png);}
#step .flex_box.step07 .img_box{background-image:url(../img/step07_img.png);}
#step .flex_box .img_box img{width:100%;display:none;}
.arrow{
position:relative;
margin:10px auto 20px auto;
height:16px;
width:16px;
background-color:#d01137;
}
.arrow:before{
position:absolute;
content:"";
border:solid 16px transparent;
border-top:solid 16px #d01137;
bottom:-26px;
left:-8px;
}
@media only screen and (max-width:959px){
#step .flex_box{min-height:152px;}
#step .flex_box dl{width:480px;}
#step .flex_box dt{font-size:16px;}
#step .flex_box dt span.num{font-size:14px;}
#step .flex_box dd{font-size:14px;line-height:24px;}
#step .flex_box.step02 dd br{display:none;}
}
@media only screen and (max-width:750px){
#step{margin:30px auto 0 auto;padding:0 20px;}
#step .flex_box{-ms-flex-direction:column;flex-direction:column;}
#step .flex_box.step03{box-shadow:0px 0px 0px 2px #e66700;}
#step .flex_box dl{width:100%;}
#step .flex_box dt{line-height:24px;}
#step .flex_box dt span.num{display:block;margin:0 0 10px 0;width:90px;}
#step .flex_box dd{}
#step .flex_box .img_box{width:100%;}
#step .flex_box .img_box img{width:100%;display:block;}
}

/* ----------------------- CSS Information 
 Style Info: FAQ
--------------------------------------- */
#faq{background:#ffffff;}
#faq .faq_box{
width:100%;
max-width:960px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
#faq input[type=checkbox]{display:none;}
#faq label{
display:block;
width:100%;
max-width:900px;
margin:0 auto;
padding:20px 20px 20px 70px;
font-size:16px;
line-height:30px;
text-align:justify;
color:#333333;
border-radius:10px;
cursor:pointer;
text-transform:uppercase;
box-sizing:border-box;
background-color:#fff0d5;
background-image:url(../img/faq_q.png);
background-size:30px 30px;
background-repeat:no-repeat;
background-position:20px 20px;
}
#faq label:hover{background-color:#ffe1ab;}
#faq input[type=checkbox]:checked + label{background-color:#ffe1ab;border-radius:10px 10px 0 0;}
.faq_answer{
position:relative;
margin:0 auto 20px auto;
padding:0 20px 0 70px;
width:100%;
max-width:900px;
height:0;
font-size:16px;
line-height:30px;
text-align:justify;
transition:1s;
box-sizing:border-box;
background-color:#fff0d5;
background-image:url(../img/faq_a.png);
background-size:30px 30px;
background-repeat:no-repeat;
background-position:20px 20px;
border-radius:0 0 10px 10px;
overflow:hidden;
opacity:0;
}
.faq_answer:last-child{margin:0 auto 0 auto;}
#faq input[type=checkbox]:checked + label + .faq_answer{
padding:20px 20px 20px 70px;
height:auto;
opacity:1;
}
@media only screen and (max-width:768px){
#faq{}
#faq .faq_box{padding:0 10px;}
#faq label{
padding:10px 10px 10px 40px;
font-size:14px;
line-height:20px;
border-radius:6px;
background-size:20px 20px;
background-position:10px 10px;
}
#faq input[type=checkbox]:checked + label{border-radius:6px 6px 0 0;}
.faq_answer{
margin:0 auto 10px auto;
padding:0 10px 0 40px;
font-size:14px;
line-height:24px;
background-size:20px 20px;
background-position:10px 10px;
border-radius:0 0 6px 6px;
}
#faq input[type=checkbox]:checked + label + .faq_answer{padding:8px 10px 8px 40px;}
}

/* ----------------------- CSS Information 
 Style Info: REQUEST
--------------------------------------- */
#request{
background:#ffe1ab url(../img/request_bg.png) no-repeat center;
background-size:cover;
}
.request_box{
width:100%;
max-width:750px;
margin:0 auto;
padding:0 20px;
box-sizing:border-box;
}
/* -- FORM -- */
.formrun{display:block;width:100%;text-align:left;}
.form-group{width:100%;margin:0 0 20px 0;}
.form-control-label,.col-form-label{
display:inline-block;
width:130px;
margin:0;
padding:5px 0;
font-size:15px;
line-height:30px;
text-align:center;
vertical-align:top;
color:#ffffff;
background:#555555;
box-sizing:border-box;
}
/* -- text -- */
.request_box input[type=text]{
font-family:'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3",Sans-Serif;
font-size:16px;
line-height:30px;
margin:0;
padding:5px 10px;
width:380px;
border:0;
box-sizing:border-box;
border-radius:0;
background:#ffffff;
}
.request_box input[type=text]:focus{outline:1px solid #e66700;}
/* -- select -- */
select.form_area{
font-family:'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3",Sans-Serif;
font-size:16px;
line-height:20px;
margin:0;
padding:7px 10px;
width:380px;
border:0;
outline:0;
box-sizing:border-box;
border-radius:0;
background:#ffffff;
}
select.form_area:focus{outline:1px solid #e66700;}
/* -- radio -- */
.col-xs-9{
display:inline-block;
font-size:16px;
line-height:30px;
margin:0;
padding:5px 2px 5px 10px;
width:380px;
border:0;
box-sizing:border-box;
border-radius:0;
background:#ffffff;
}
.form_present .col-form-label{
display:block;
width:100%;
margin:0;
padding:5px 10px;
font-size:16px;
line-height:30px;
text-align:center;
color:#ffffff;
background:#555555;
}
.form_present .col-xs-9{
display:block;
width:100%;
margin:0;
padding:5px 10px;
font-size:16px;
line-height:30px;
text-align:center;
}
.request_box input[type=radio]{display:none;}
.request_box input[type=radio] + span{position:relative;padding:0 8px 0 18px;}
.request_box input[type=radio] + span:before{
position:absolute;
content:"";
display:block;
top:5px;
left:0;
width:16px;
height:16px;
border:2px solid #cccccc;
border-radius:50%;
box-sizing:border-box;
}
.request_box input[type=radio] + span:hover:before{cursor:pointer;}
.request_box input[type=radio]:checked + span:after{
position:absolute;
content:"";
display:block;
top:8px;
left:3px;
width:10px;
height:10px;
background:#e66700;
border-radius:50%;
}
/* -- buttn -- */
.request_box button{
font-family:'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3",Sans-Serif;
display:block;
width:280px;
margin:0 auto;
padding:10px;
font-size:18px;
line-height:30px;
color:#ffffff;
border:0;
border-radius:10px;
background:#e66700;
}
.request_box button:hover{background:#fdad3d;border:0;}
.request_box button:focus{outline:0;}
/* -- text-danger -- */
.text-danger{font-size:14px;line-height:30px;color:#e66700;}
.form_present .text-danger{display:block;text-align:center;}
/* -- attention -- */
.attention{
width:100%;
margin:40px auto 0 auto;
padding:0 20px 0 20px;
font-size:14px;
line-height:20px;
color:#333333;
text-align:center;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#request{}
.request_box{padding:0 10px;}
/* -- FORM -- */
.formrun{}
.form-group{width:100%;margin:0 0 10px 0;}
.form-control-label,.col-form-label{display:block;width:100%;font-size:14px;line-height:20px;}
/* -- text -- */
.request_box input[type=text]{width:100%;font-size:14px;}
.request_box input[type=text]:focus{outline:1px solid #e66700;}
/* -- select -- */
select.form_area{padding:10px;font-size:14px;width:100%;}
/* -- radio -- */
.col-xs-9{display:block;width:100%;font-size:14px;line-height:24px;padding:10px;}
.form_present .col-form-label{padding:7px 0;font-size:14px;line-height:20px;}
.form_present .col-xs-9{padding:10px;font-size:14px;line-height:24px;text-align:left;}
.request_box input[type=radio]{display:none;}
.request_box input[type=radio] + span{padding:0 0 0 18px;}
.request_box input[type=radio] + span:before{top:3px;}
.request_box input[type=radio] + span:hover:before{cursor:pointer;}
.request_box input[type=radio]:checked + span:after{top:6px;}
.form-check-label{display:block;}
/* -- buttn -- */
.request_box button{width:240px;padding:10px;font-size:14px;line-height:20px;}
/* -- text-danger -- */
.text-danger{display:block;font-size:12px;line-height:20px;text-align:center;}
/* -- attention -- */
.attention{margin:20px auto 0 auto;padding:0 10px;font-size:12px;line-height:20px;text-align:justify;}
}

/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
display:-ms-flexbox;display:flex;
-ms-flex-direction:row;flex-direction:row;
-ms-flex-wrap:nowrap;flex-wrap:nowrap;
-ms-flex-pack:justify;justify-content:space-between;
-ms-flex-align:end;align-items:flex-end;
width:100%;
margin:0;
padding:40px 30px;
background:#ffffff;
box-sizing:border-box;
}
#footer_nav{
display:block;
margin:0;
}
#footer_nav ul{
display:block;
width:100%;
margin:0 auto 0 0;
padding:0;
box-sizing:border-box;
}
#footer_nav li{
list-style-type:none;
display:block;
text-align:left;
font-size:14px;
line-height:20px;
margin:0 0 10px 0;
padding:0 10px 0 3px;
border-left:2px solid #e66700;
box-sizing:border-box;
}
#footer_nav li:last-child{margin:0;}
#footer_info{}
footer .logo{
display:block;
margin:0 0 0 auto;
height:80px;
}
address{
display:block;
width:100%;
margin:0;
padding:20px;
font-size:12px;
line-height:20px;
text-align:center;
color:#ffffff;
background:#555555;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
footer{display:block;padding:30px 20px 20px 20px;}
#footer_nav{}
#footer_nav ul{}
#footer_nav li{margin:0 0 20px 0;}
footer .logo{margin:20px 0 0 auto;height:60px;}
address{padding:10px 0;font-size:11px;}
.sp_no{display:none;}
}


/* ----------------------- CSS Information 
 Style Info: PRIVACY
--------------------------------------- */
#privacy{background:#ffffff;border-bottom:1px solid #cccccc;}
#privacy .title:after{width:100%;}
#privacy .text{text-align:center;}
/*--- dl ---*/
#privacy dl{margin:60px 0 0 0;padding:0;}
#privacy dt{
margin:0 0 10px 0;
padding:10px 0;
font-weight:bold;
font-size:18px;
line-height:30px;
text-align:left;
border-bottom:1px solid #fdad3d;
}
#privacy dd{
margin:0 0 40px 0;
font-size:16px;
line-height:30px;
text-align:justify;
}
#privacy .ol_inner{
margin:0;
padding:0;
}
#privacy .ol_inner li{
margin:0;
padding:0;
list-style:decimal inside;
}
@media only screen and (max-width:768px){
#privacy{border-top:1px solid #cccccc;}
#privacy .text{text-align:justify;}
/*--- dl ---*/
#privacy dl{margin:20px 0 0 0;}
#privacy dt{font-size:14px;line-height:20px;}
#privacy dd{margin:0 0 20px 0;font-size:14px;line-height:24px;}
#privacy .ol_inner{}
#privacy .ol_inner li{}
}

/* ----------------------- CSS Information 
 Style Info: THANKS
--------------------------------------- */
#thanks{min-height:60%;background:#ffe1ab;border-bottom:1px solid #cccccc;}
#thanks .title:after{width:100%;}
#thanks .text{text-align:center;}
@media only screen and (max-width:768px){
#thanks{border-top:1px solid #cccccc;}
}


/* ----------------------- CSS Information 
 Style Info: FADEIN
--------------------------------------- */
.fadein{opacity:0;transition:all ease 1s;}
.fadein.scrollin{opacity:1;}