@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&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;text-align:left;width:auto;}
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:700;}
.ul{text-decoration:underline;}
.bg{background:linear-gradient(transparent 60%,#ffec47 60%);}
.big{font-size:20px;}@media only screen and (max-width:768px){.big{font-size:16px;}}
.small{font-size:13px;}
.red{color:#d9333f;}
.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',"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
font-weight:400;
color:#333333;
font-size:16px;
line-height:0;
text-align:center;
letter-spacing:0em;
background:#ffffff;
background-size:cover;
width:100%;
}

/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{
position:relative;
margin:0;
padding:0 0 40px 0;
width:100%;
background:#ffffff;
overflow:hidden;
}
.video_bg{
position:absolute;
top:50%;
left:50%;
min-width:100%;
min-height:100%;
transform:translateX(-50%) translateY(-50%);
opacity:0.7;
}

.header_bg{
position:absolute;
background-image:url(‘../img/bgimg01.webp’);
top:50%;
left:50%;
min-width:100%;
min-height:100%;
transform:translateX(-50%) translateY(-50%);
opacity:0.7;
}

.header_img{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto;
margin-bottom: 20px;
padding:0;
z-index:10;
}

/* ----------------------- CSS Information 
 Style Info: CTA
--------------------------------------- */
.cta{
position:relative;
margin:0;
padding:120px 0 60px 0;
width:100%;
background:#ffffff;
overflow:hidden;
}
.cta_img{
position:relative;
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
box-sizing:border-box;
z-index:10;
}
@media only screen and (max-width:750px){
.cta{padding:40px 0 40px 0;}
}


/* ----------------------- CSS Information 
 Style Info: form
--------------------------------------- */
.form{
position:relative;
margin:0;
padding:3% 3% 3% 7%;
width:95%;
max-width: 1000px;
overflow:hidden;
margin: auto; 
}

.title_txt{
display:inline-block;
position:relative;
z-index:10;
margin:10px 0 10px 10px;
width:95%;
font-size:16px;
line-height:20px;
font-weight:600;
color:#333333;
vertical-align:middle;
text-aling:left;
}

.form_check{
position:relative;
z-index:10;
width:20px;
height:20px;
margin:20px 0 20px 0;
vertical-align:middle;
}
.form_lavel{
display:inline-block;
position:relative;
z-index:10;
margin:10px 0 10px 1px;
width:90%;
font-size:16px;
line-height:20px;
font-weight:600;
color:#333333;
vertical-align:middle;
text-aling:left;
}


@media only screen and (max-width:750px){
.form{
position:relative;
margin: -40px 0 0 10px;
padding:0;
width:95%;
overflow:hidden;
}

.title_txt{
font-size:14px;
line-height:18px;
}

.form_check{
width:20px;
height:20px;
margin:20px 0 20px 0;
}
.form_lavel{
font-size:14px;
line-height:18px;
}
}




/* ----------------------- CSS Information 
 Style Info: OUTLINE
--------------------------------------- */
.outline{
position:relative;
width:100%;
max-width:750px;
margin:40px auto 80px auto;
padding:0 30px;
box-sizing:border-box;
z-index:10;
}
.outline dl{
width:100%;
margin:0;
padding:0 0 30px 0;
font-size:16px;
line-height:30px;
text-align:justify;
color:#333333;
box-sizing:border-box;
}
.outline dl:last-child{padding:0 0 0 0;}
.outline dt{
position:relative;
display:flex;
align-items:center;
justify-content:center;
font-weight:bold;
}
.outline dt:after{
content:"";
flex-grow:1;
margin:0 0 0 10px;
}
.outline dt:nth-of-type(1):after{border-top:1px solid #ff4500;}
.outline dt:nth-of-type(2):after{border-top:1px solid #c43939;}
.outline dt:nth-of-type(3):after{border-top:1px solid #069cb7;}
.outline dt:nth-of-type(4):after{border-top:1px solid #42d705;}
.outline dt:nth-of-type(5):after{border-top:1px solid #00b096;}
.outline dt:nth-of-type(6):after{border-top:1px solid #ef9c00;}
.outline dd{padding:0 0 20px 0;}
.outline dd:last-child{padding:0;}
.outline dd ol{margin:0;padding:0;counter-reset:li;}
.outline dd ol li{
position:relative;
margin:0;
padding-left:20px;
list-style:none;
}
.outline dd ol li:before{
position:absolute;
top:8px;
left:0;
width:16px;
height:16px;
font-size:14px;
line-height:16px;
font-weight:bold;
text-align:center;
color:#ffffff;
counter-increment:li;
content:counter(li);
}
.outline dd:nth-of-type(1) ol li:before{background:#ff4500;}
.outline dd:nth-of-type(2) ol li:before{background:#c43939;}
.outline dd:nth-of-type(3) ol li:before{background:#069cb7;}
.outline dd:nth-of-type(4) ol li:before{background:#42d705;}
.outline dd:nth-of-type(5) ol li:before{background:#00b096;}
.outline dd:nth-of-type(6) ol li:before{background:#ef9c00;}

@media only screen and (max-width:750px){
.outline{margin:20px auto 60px auto;padding:0 4%;}
.outline dl{padding:0 0 20px 0;font-size:14px;line-height:24px;}
.outline dt{margin:0 0 5px 0;}
.outline dt:after{}
.outline dd{}
.outline dd:last-child{}
.outline dd ol{}
.outline dd ol li{margin:0 0 5px 0;line-height:20px;}
.outline dd ol li:before{top:2px;font-size:12px;}
.outline dd ul{}
.outline dd ul li{margin:0 0 5px 0;line-height:20px;}
.outline dd ul li .item{
display:inline-block;
margin:0 5px 0 0;
width:80px;
height:16px;
font-size:12px;
}
}

/* ----------------------- CSS Information 
 Style Info: TOS
--------------------------------------- */
#tos{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
z-index:10;
}
.tos_wrapper{
display:block;
width:100%;
max-width:920px;
height:100px;
margin:0 auto;
padding:20px;
font-size:12px;
line-height:20px;
text-align:justify;
background:#ffffff;
box-sizing:border-box;
overflow-y:scroll;
}
@media only screen and (max-width:750px){
#tos{padding:0 4%;}
.tos_wrapper{padding:10px;}
}


/* ----------------------- CSS Information 
 Style Info: BTN
--------------------------------------- */
.btn{
width:100%;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
.btn_wrapper{
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
.btn_box{
position:relative;
width:80%;
max-width:600px;
margin:20px auto 20px auto;
padding:0;
border-radius:8px;
box-shadow:2px 2px 4px 0px rgba(0,0,0,0.5);
overflow:hidden;
box-sizing:border-box;
}
.btn_box a{
display:block;
width:100%;
height:100%;
background:#ffffff;
}
.btn_box img{width:100%;}
.btn_box a img:hover{opacity:0.5;}
.btn02{display:block;}
.btn03{display:none;}
input:checked ~ .btn02{display:none;}
input:checked ~ .btn03{display:block;}
.tos_check{
position:relative;
z-index:10;
width:20px;
height:20px;
margin:0 0 0 0;
vertical-align:middle;
display: none;
}
.tos_lavel{
display:inline-block;
position:relative;
z-index:10;
margin:19px 0 21px 10px;
font-size:18px;
line-height:20px;
font-weight:600;
color:#333333;
vertical-align:middle;
}
@media only screen and (max-width:750px){
.tos_check{
width:20px;
height:20px;
margin:50px 0 20px 0;
}
.tos_lavel{
font-size:16px;
line-height:20px;
}
}

/* ----------------------- CSS Information 
 Style Info: TITLE
--------------------------------------- */
.title{
display:block;
width:100%;
margin:0 auto 60px auto;
padding:0;
box-sizing:border-box;
}
.title.scrollin{}
/*-- line --*/
.title_line{display:flex;align-items:center;}
.title_line:before,.title_line:after{content:"";flex-grow:1;border-top:1px solid #069cb7;}
/*-- main --*/
.title_main{
display:block;
width:100%;
max-width:940px;
margin:0 auto;
padding:0;
font-size:30px;
line-height:40px;
text-align:center;
font-weight:bold;
color:#333333;
box-sizing:border-box;
opacity:0;
transform:translateY(20px);
transition:all 0.3s linear 0s;
}
.title.scrollin .title_main{opacity:1;transform:translateY(0);}
.title_main img{width:100%;max-width:750px;margin:0 auto;padding:0;white-space:pre;}
.title_main img.title_result02{margin:80px auto 0 auto;}
/*-- hr --*/
.title_hr{
display:block;
margin:0 auto 60px auto;
height:4px;
background:#069cb7;
background:linear-gradient(to right,#00b096,#0c88d9);
width:0;
transition:all 0.3s linear 0s;
}
.title_hr.scrollin{width:120px;}
@media only screen and (max-width:750px){
.title{margin:0 auto 20px auto;padding:0;}
.title.scrollin{}
/*-- main --*/
.title_main{font-size:20px;line-height:30px;}
.title.scrollin .title_main{}
.title_main img{}
.title_main img.title_result02{margin:40px auto 20px auto;}
/*-- hr --*/
.title_hr{margin:0 auto 40px auto;height:2px;}
.title_hr.scrollin{width:80px;}
}


/* ----------------------- CSS Information 
 Style Info: 共通設定
--------------------------------------- */
.section{
position:relative;
width:100%;
margin:0;
padding:60px 0;
}
.wrapper{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
z-index:10;
}

.wrapper_shira{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
z-index:20;
}

@media only screen and (max-width:750px){
.section{padding:40px 0 40px 0;}
.wrapper{padding:0 4%;}
.wrapper_shira{padding:0;}
}

/* -- text -- */
.text{
width:100%;
margin:0 auto;
padding:0;
font-size:17px;
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;}
/* -- dl -- */
.text dl{margin:0 0 30px 0;padding:0;}
.text dt{
margin:0 0 10px 0;
padding:0 0 0 12px;
line-height:20px;
font-weight:600;
border-left:4px solid #069cb7;
}
.text dd{padding:0 0 0 16px;}
.text dl:last-child{margin:0;}
/* -- ul -- */
ul{margin:30px 0 30px 0;}
ul li{margin:0;padding:0;}
@media only screen and (max-width:750px){
.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{}
/* -- br -- */
/* .text br{display:none;} */
.text br.sp,.text br.all{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: BACKGROUND
--------------------------------------- */
.section_bg{
position:-webkit-sticky;/* Safari */
position:sticky;
top:0;
width:100%;
height:100vh;
}
.section_bg span{
display:block;
width:100%;
height:100%;
padding:0 0 120px 0;
background-position:center;
}
.section_wrapper{position:relative;margin-top:-100vh;padding:120px 0 120px 0;z-index:10;}
@media only screen and (max-width:750px){
.section_bg span{padding:0 0 40px 0;}
.section_wrapper{padding:40px 0;}
}
@media(orientation:landscape){
#main .section_bg span{background:#eeeeee url(../img/main_landscape.webp) no-repeat center;background-size:cover;}
#flow .section_bg span{background:#e5eaeb url(../img/flow_landscape.webp) no-repeat center;background-size:cover;}
#case .section_bg span{background:#069cb7 url(../img/case_landscape.webp) no-repeat center;background-size:cover;}
#support .section_bg span{background:#e5eaeb url(../img/support_landscape.webp) no-repeat center;background-size:cover;}
#present .section_bg span{background:#ef9c00 url(../img/present_landscape.webp) no-repeat center;background-size:cover;}
#manga .section_bg span{background:#ef9c00 url(../img/manga_landscape.webp) no-repeat center;background-size:cover;}
#addition .section_bg span{background:#069cb7 url(../img/addition_landscape.webp) no-repeat center;background-size:cover;}
#specialassist .section_bg span{background:#069cb7 url(../img/addition_landscape.webp) no-repeat center;background-size:cover;}
#guarantee .section_bg span{background:#ffffff url(../img/guarantee_landscape.webp) no-repeat center;background-size:cover;}
#ps .section_bg span{background:#eeeeee url(../img/ps_landscape.webp) no-repeat center bottom;background-size:cover;}
}
@media(orientation:portrait){
#main .section_bg span{background:#eeeeee url(../img/main_portrait.webp) no-repeat center;background-size:cover;}
#flow .section_bg span{background:#e5eaeb url(../img/flow_portrait.webp) no-repeat center;background-size:cover;}
#case .section_bg span{background:#069cb7 url(../img/case_portrait.webp) no-repeat center;background-size:cover;}
#support .section_bg span{background:#e5eaeb url(../img/support_portrait.webp) no-repeat center;background-size:cover;}
#present .section_bg span{background:#ef9c00 url(../img/present_portrait.webp) no-repeat center;background-size:cover;}
#manga .section_bg span{background:#ef9c00 url(../img/manga_portrait.webp) no-repeat center;background-size:cover;}
#addition .section_bg span{background:#069cb7 url(../img/addition_portrait.webp) no-repeat center;background-size:cover;}
#specialassist .section_bg span{background:#069cb7 url(../img/addition_portrait.webp) no-repeat center;background-size:cover;}
#guarantee .section_bg span{background:#ffffff url(../img/guarantee_portrait.webp) no-repeat center;background-size:cover;}
#ps .section_bg span{background:#eeeeee url(../img/ps_portrait.webp) no-repeat center bottom;background-size:cover;}
}

/* ----------------------- CSS Information 
 Style Info: DETAIL
--------------------------------------- */
.detail{}
.detail_box{
width:100%;
margin:0 auto 60px auto;
padding:0;
box-sizing:border-box;
background:rgba(255,255,255,0.9);
box-shadow:0 2px 4px rgba(0,0,0,0.2);
opacity:0;
transition:all 0.5s linear 0s;
}
.detail .detail_box:last-child{margin:0 auto;}
.detail_box.scrollin{opacity:1;}
.detail_img{position:relative;width:30%;margin:0 0 0 20px;padding:0;float:right;z-index:10;}
.detail_img img{width:100%;}
.detail_title{
width:100%;
margin:0 auto;
padding:0;
box-sizing:border-box;
transform:translateY(20px);
opacity:0;
transition:all 0.5s linear 0;
}
.detail_box.scrollin .detail_title{transform:translateY(0);opacity:1;}
.detail_name{
display:block;
margin:0;
padding:0;
text-align:left;
box-sizing:border-box;
background:#069cb7;
}
#main .detail_name{background:#069cb7 url(../img/main_bg.webp) no-repeat right top;background-size:auto 100%;}
#support .detail_name{background:#00b096 url(../img/support_bg.webp) no-repeat right top;background-size:auto 100%;}
#present .detail_name{background:#c43939 url(../img/present_bg.webp) no-repeat right top;background-size:auto 100%;}
#manga .detail_name{background:#c43939 url(../img/manga_pack_bg.webp) no-repeat right top;background-size:auto 100%;}
#addition .detail_name{background:#ef9c00 url(../img/addition_bg.webp) no-repeat right top;background-size:auto 100%;}
#specialassist .detail_name{background:#42d705 url(../img/specialassist_bg.webp) no-repeat right top;background-size:auto 100%;}
.detail_name img{width:100%;max-width:750px;margin:0 auto 0 0;}
.detail_box .text{color:#333333;padding:60px 40px;overflow-y:auto;}
.detail_box .text p img{width:100%;}
@media only screen and (max-width:750px){
.detail{}
.detail_box{margin:0 auto 30px auto;}
.detail_img{}
.detail_img img{}
.detail_title{}
.detail_box.scrollin .detail_title{}
.detail_name{}
.detail_name img{max-width:690px;}
.detail_box .text{padding:30px 4%;}
}

/* ----------------------- CSS Information 
 Style Info: MAIN
--------------------------------------- */
#main{padding:0;}

/* ----------------------- CSS Information 
 Style Info: ADDITION
--------------------------------------- */
#addition{padding:0;}
#addition .text.addition_text{padding:0 0 60px 0;color:#ffffff;}
@media only screen and (max-width:750px){
#addition .text.addition_text{padding:0 0 40px 0;}
}

/* ----------------------- CSS Information 
 Style Info: specialassist
--------------------------------------- */
#specialassist{padding:0;}
#specialassist .text.addition_text{padding:0 0 60px 0;color:#ffffff;}
@media only screen and (max-width:750px){
#specialassist .text.addition_text{padding:0 0 40px 0;}
}

/* ----------------------- CSS Information 
 Style Info: SUPPORT
--------------------------------------- */
#support{padding:0;}

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

/* ----------------------- CSS Information 
 Style Info: INTRO
--------------------------------------- */
#intro{background:#ffffff;}
#intro .wrapper{max-width:750px;}
#intro .wrapper .text{text-align:center;}
@media only screen and (max-width:750px){
#intro .wrapper .text{text-align:justify;}
}

/* ----------------------- CSS Information 
 Style Info: FLOW
--------------------------------------- */
#flow{padding:0;}
.flow_img{width:100%;max-width:750px;margin:0 auto;padding:0;}
@media only screen and (max-width:750px){}

/* ----------------------- CSS Information 
 Style Info: CASE
--------------------------------------- */
#case{padding:0;}
.case_wrapper{
width:100%;
max-width:750px;
margin:0 auto 60px auto;
padding:0 30px;
box-sizing:border-box;
}
.case_box{
display:-ms-flexbox;display:flex;
width:100%;
height:130px;
max-width:690px;
margin:0 auto;
padding:0;
background:#ffffff;
}
.case_period{
display:-ms-flexbox;display:flex;
-ms-flex-align:center;align-items:center;
-ms-flex-pack:center;justify-content:center;
width:130px;
height:130px;
font-size:16px;
line-height:20px;
text-align:center;
font-weight:600;
color:#ffffff;
}
.case01 .case_period{background:#3bc2ae;}
.case02 .case_period{background:#7ad699;}
.case03 .case_period{background:#c1d67a;}
.case04 .case_period{background:#f2b441;}
.case_text{
display:-ms-flexbox;display:flex;
-ms-flex-align:center;align-items:center;
flex:1;
margin:0;
padding:20px;
font-size:16px;
line-height:30px;
text-align:justify;
box-sizing:border-box;
}
.case_arrow{display:block;width:30px;margin:0 auto;}
#case .text{text-align:center;color:#ffffff;}
#case .text .red{color:#ffec47;}
@media only screen and (max-width:750px){
#case{}
.case_wrapper{
margin:0 auto 30px auto;
padding:0 4%;
}
.case_box{
display:-ms-flexbox;display:flex;
-ms-flex-direction:column;flex-direction:column;
width:100%;
height:auto;
max-width:690px;
margin:0 auto;
padding:0;
background:#ffffff;
}
.case_period{
display:block;
width:100%;
height:40px;
padding:10px 0;
font-size:14px;
line-height:20px;
box-sizing:border-box;
}
.case_text{
display:block;
width:100%;
margin:0;
padding:15px 4%;
font-size:14px;
line-height:24px;
}
.case_text br{display:none;}
.case_arrow{width:20px;}
#case .text{text-align:justify;}
}


/* ----------------------- CSS Information 
 Style Info: RESULT
--------------------------------------- */
#result{background:#ffffff;}
.result_img{
width:100%;
max-width:1200px;
margin:40px auto;
padding:0;
box-sizing:border-box;
}
.result_img img{margin:0 auto;width:100%;max-width:1200px;}
#result .text{text-align:left;}
@media only screen and (max-width:750px){
#result{}
.result_img{margin:30px auto;}
#result .text{text-align:justify;}
}



/* ----------------------- CSS Information 
 Style Info: KOUSHI IMG
--------------------------------------- */

.koushi{
width:90%;
margin:40px auto;
padding:0px 5px 20px 5px;
}

.session_info{
width:95%;
margin:0 auto;
padding:5px 30px 5px 30px;
font-size:17px;
line-height:30px;
text-align:left;
box-sizing:border-box;
}


.koushi_history{
width:100%;
margin:0 auto;
padding:5px 30px 5px 30px;
font-size:15px;
line-height:24px;
text-align:left;
box-sizing:border-box;
background-color:rgba(255,255,255,0);
}

.shira_history{
width:100%;
margin:0 auto;
padding:5px 30px 5px 30px;
font-size:15px;
line-height:24px;
text-align:left;
box-sizing:border-box;
background-color:rgba(255,255,255,0);
}

.koushi_img{
width:100%;
padding:0;
box-sizing:border-box;
text-align: center;
}

.shira_img{
width:100%;
margin: 0px auto;
padding:30px 0;
box-sizing:border-box;
}

.koushi_img img{margin:0 auto;width:90%;max-width:1200px;}

@media only screen and (max-width:750px){
.koushi_img{margin:30px auto 15px auto;width:100%;}

.koushi_img img{margin:0 auto;width:90%;}

}

.koushi_achievement{
width:100%;
max-width:600px;
margin:20px auto 30px auto;
padding:0;
box-sizing:border-box;
}
.koushi_achievement img{margin:0 auto;width:100%;max-width:1200px;}


@media only screen and (max-width:750px){
.koushi_achievement{margin:20px auto 0px auto;width:95%;}

}

.koushi_explanation{
display:block;
width:100%;
max-width:920px;
height:180px;
margin-bottom: 70px;
padding: 5px 15px 5px 15px;
font-size:16px;
line-height:24px;
text-align:justify;
background:#ffffff;
box-sizing:border-box;
overflow-y:scroll;
}


@media only screen and (max-width:750px){

.koushi{
width:90%;
margin:40px auto;
padding:0px 5px 20px 5px;
}

.session_info{
width:95%;
margin:0 auto;
padding:5px 20px 5px 20px;
font-size:14px;
line-height:24px;
text-align:left;
box-sizing:border-box;
}

.koushi_info{
width:80%;
margin:20px auto 30px auto;
padding:0;
}


.koushi_history{
width:100%;
margin:0 auto;
padding:5px 20px 5px 20px;
font-size:12px;
line-height:20px;
text-align:left;
background-color:rgba(255,255,255,0);
}

.shira_history{
width:100%;
margin:0 auto;
padding:5px 20px 5px 20px;
font-size:12px;
line-height:20px;
text-align:left;
background-color:rgba(255,255,255,0);
}

}


.koushi_explanation{
display:block;
width:100%;
max-width:920px;
height:120px;
margin-bottom: 0px;
padding: 0px 15px 0px 15px;
font-size:12px;
line-height:20px;
text-align:justify;
background:#ffffff;
box-sizing:border-box;
overflow-y:scroll;
}



/* ----------------------- CSS Information 
 Style Info: SPECIOAL IMG
--------------------------------------- */

.fire_staking{
width:70%;
margin:0 15%;
padding:0;
box-sizing:border-box;
}


.hikaku{
width:80%;
margin:0 10%;
box-sizing:border-box;
}


@media only screen and (max-width:750px){

.fire_staking{
width:100%;
margin: 0;
}

.hikaku{
width:100%;
margin: 0;
}

}


/* ----------------------- CSS Information 
 Style Info: GUARANTEE
--------------------------------------- */
#guarantee{background:#ffffff;}
#guarantee .text dl{
padding:30px;
border:1px solid #069cb7;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#guarantee .text dl{padding:20px 4%;}
}

/* ----------------------- CSS Information 
 Style Info: CORPORATION
--------------------------------------- */
#corporation{background:#f6f6f5;}
#corporation .text{font-size:16px;}
#corporation .text dl{
padding:30px;
border:1px solid #069cb7;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#corporation .text{font-size:13px;}
#corporation .text dl{padding:20px 4%;}
}

/* ----------------------- CSS Information 
 Style Info: FAQ
--------------------------------------- */
#faq{background:#ffffff;}
#faq .title_line img{display:block;width:220px;margin:0 auto;}
#faq .faq_box{
width:100%;
max-width:1000px;
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:17px;
line-height:30px;
text-align:justify;
color:#333333;
border-radius:10px;
cursor:pointer;
text-transform:uppercase;
box-sizing:border-box;
background-color:#eef2f4;
background-image:url(../img/faq_q.webp);
background-size:30px 30px;
background-repeat:no-repeat;
background-position:20px 20px;
}
#faq label:hover{background-color:#dde6ea;}
#faq input[type=checkbox]:checked + label{background-color:#dde6ea;border-radius:10px 10px 0 0;}
.faq_answer{
position:relative;
margin:0 auto 30px auto;
padding:0 20px 0 70px;
width:100%;
max-width:900px;
height:0;
font-size:17px;
line-height:30px;
text-align:justify;
transition:1s;
box-sizing:border-box;
background-color:#eef2f4;
background-image:url(../img/faq_a.webp);
background-size:30px 30px;
background-repeat:no-repeat;
background-position:20px 20px;
border-radius:0 0 10px 10px;
overflow:hidden;
opacity:0;
}
.faq_answer p{margin:0 0 30px 0;padding:0;}
.faq_answer p:last-child{margin:0;padding: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:750px){
#faq{}
#faq .title_line img{width:110px;}
#faq .faq_box{padding:0 4%;}
#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 15px 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_answer p{margin:0 0 20px 0;}
.faq_answer br{display:none;}
#faq input[type=checkbox]:checked + label + .faq_answer{padding:8px 10px 8px 40px;}
}

/* ----------------------- CSS Information 
 Style Info: PS
--------------------------------------- */
#ps{padding:0;}
#ps .title_line img{display:block;width:200px;margin:0 auto;}
.ps_box{
width:100%;
max-width:920px;
margin:0 auto;
padding:60px 30px 60px 30px;
background:rgba(255,255,255,0.8);
box-shadow:0 2px 4px rgba(0,0,0,0.2);
box-sizing:border-box;
}
.ps_box .text{
background:url(../img/ps_text_pc.webp) repeat top left;
line-height:40px;
}
.ps_box .text p{margin:0 0 40px 0;padding:0;}
.ps_box .text p:last-child{margin:0;}
.ps_box .text .big{line-height:38px;}
.ps_img{
display:block;
width:40%;
max-width:280px;
margin:0 0 0 20px;
box-sizing:border-box;
float:right;
}

.ps_box_img{ 
width:100%;
max-width:900px;
margin:20px auto;
box-sizing:border-box;
}

.shira_box_img{ 
width:100%;
max-width:900px;
box-sizing:border-box;
}

.section_title{
font-family: 'Noto Serif JP', serif;
position:relative;
margin:80px 0 40px 0;
padding:0 0 0 10px;
font-size:38px;
line-height:50px;
font-weight:700;
text-align:left;
border-left:4px solid #069cb7;
box-sizing:border-box;
}
.ps_message{width:580px;margin:80px auto 20px 0;}
.ps_sign{display:flex;align-items:center;}
.ps_sign:before{content:"";flex-grow:1;margin-right:30px;border-top:1px solid #069cb7;}
.ps_sign img{
display:block;
width:200px;
margin:0 0 0 auto;
}
.seminar_img{position:relative;width:100%;margin:0;padding:0;z-index:10;}
@media only screen and (max-width:750px){
#ps{}
#ps .title_line img{width:100px;}
.ps_box{padding:30px 4% 30px 4%;}
.ps_box .text{
background:url(../img/ps_text_sp.webp) repeat top left;
line-height:30px;
}
.ps_box .text p,.ps_box .text ul{margin:0 0 30px 0;}
.ps_box .text .big{line-height:28px;}
.ps_img{margin:0 0 0 4%;}
.section_title{
margin:60px 0 30px 0;
padding:0 0 0 6px;
font-size:21px;
line-height:32px;
}
.ps_message{width:300px;margin:40px auto 15px 0;}
.ps_sign{}
.ps_sign:before{margin-right:15px;}
.ps_sign img{width:125px;}
.section_title:before{width:4px;height:30px;}
}

/* ----------------------- CSS Information 
 Style Info: VIDEO
--------------------------------------- */
.video{background:#f6f6f5 url(../img/bg_01.webp) repeat center top;}
.video_wrapper{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
#video01 .video_wrapper{margin:0 auto 80px auto;}
.video_balloon{
position:relative;
width:100%;
margin:0 auto 30px auto;
padding:0;
background:#ffffff;
border-radius:8px;
border:3px solid #069cb7;
box-sizing:border-box;
opacity:0;
transform:translateY(20px);
transition:all 0.3s linear 0s;
}
.video_balloon.scrollin{opacity:1;transform:translateY(0);}
.video_balloon:before{
content:"";
position:absolute;
display:block;
width:0;
height:0;
left:50%;
transform:translateX(-50%);
bottom:-15px;
border-top:15px solid #069cb7;
border-right:15px solid transparent;
border-left:15px solid transparent;
}
.video_balloon:after{
content:"";
position:absolute;
display:block;
width:0;
height:0;
left:50%;
transform:translateX(-50%);
bottom:-11px;
border-top:15px solid #ffffff;
border-right:15px solid transparent;
border-left:15px solid transparent;
}
.video_balloon img{
display:block;
width:100%;
max-width:690px;
margin:0 auto;
padding:0;
}
.video_box{
position:relative;
width:100%;
max-width:940px;
max-height:529px;
margin:0 auto; 
padding-top:56.25%;
background:#000000;
}
.voice_video{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
max-width:940px;
max-height:529px;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
.video{background:#f6f6f5 url(../img/bg_01.webp) repeat center top;background-size:100% auto;}
.video_wrapper{padding:0 4%;}
#video01 .video_wrapper{margin:0 auto 40px auto;}
.video_balloon{margin:0 auto 20px auto;}
@keyframes voice_balloon{
0% {transform:translate(0, 0) rotate(0deg);}
50% {transform:translate(0, 10px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(0deg);}
}
.video_balloon:before{}
.video_balloon:after{}
.video_balloon img{}
.video_box{}
.video_box iframe{}
}


/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
width:100%;
margin:0;
padding:40px 0;
color:#d1d1d1;
background:#1a1b1d;
}
#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{
font-size:14px;
line-height:20px;
/* display:inline-block; */
text-align: center;
padding:0 20px;
border-right:1px solid #b00f14;
}
#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;border-right:0;margin:0 0 20px 0;}
.sp_no{display:none;}
}

/* ----------------------- CSS Information 
 Style Info: btn_fixed
--------------------------------------- */
#btn_fixed{
position:fixed;
bottom:10px;
right:10px;
width:285px;
cursor:pointer;
z-index:100;
border-radius:8px;
background:#ffffff;
overflow:hidden;
box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5);
}
#btn_fixed img{width:100%;}
#btn_fixed img:hover{opacity:0.5;}
@media only screen and (max-width:750px){
#btn_fixed{width:190px;border-radius:8px;}
}

/* ----------------------- CSS Information 
 Style Info: btn_fixed2
--------------------------------------- */
#btn_fixed2{
position:fixed;
bottom:10px;
right:10px;
width:225px;
cursor:pointer;
z-index:100;
border-radius:25px;
overflow:hidden;
box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5);
}
#btn_fixed2 img{width:100%;}
#btn_fixed2 img:hover{opacity:0.8;}
@media only screen and (max-width:750px){
#btn_fixed2{width:150px;border-radius:25px;}
}

/* ----------------------- CSS Information 
 Style Info: btn_fixed_fsq
--------------------------------------- */
#btn_fixed_faq{
position:fixed;
bottom:10px;
left:10px;
width:225px;
cursor:pointer;
z-index:100;
border-radius:25px;
overflow:hidden;
box-shadow:0px 0px 5px 0px rgba(0,0,0,0.5);
}
#btn_fixed_faq img{width:100%;}
#btn_fixed_faq img:hover{opacity:0.8;}
@media only screen and (max-width:750px){
#btn_fixed_faq{width:150px;border-radius:25px;}
}

/* ----------------------- CSS Information 
 Style Info: TOPBAR
--------------------------------------- */
#topbar{
position:fixed;
top:0;
width:100%;
height:50px;
margin:0;
padding:13px 0;
font-size:20px;
line-height:20px;
text-align:center;
font-weight:400;
letter-spacing:0.1em;
background:#000000;
color:white;
box-shadow:0 0 4px 0px rgba(0,0,0,0.5);
box-sizing:border-box;
z-index:1000;
}
@media only screen and (max-width:750px){#topbar{font-size:13px;letter-spacing:0.05em;}}

.cdtext{
text-align:center;
}

.cdtext_big{
font-size:28px;
}

@media only screen and (max-width:750px){.cdtext_big{font-size:22px;letter-spacing:0.05em;}}

.cdtext_time{
color: yellow;
}


/* ----------------------- CSS Information 
 Style Info: ABOUT
--------------------------------------- */
#about{padding:0;}
#about .text{
padding:60px 30px;
background:rgba(255,255,255,0.9);
}
@media(orientation:landscape){
#about .section_bg span{background:#567a96 url(../img/about_landscape.webp) no-repeat center;background-size:cover;}
}
@media(orientation:portrait){
#about .section_bg span{background:#567a96 url(../img/about_portrait.webp) no-repeat center;background-size:cover;}
}
@media only screen and (max-width:750px){
#about .text{padding:30px 4%;}
}


/* ----------------------- CSS Information 
 Style Info: SECTION
--------------------------------------- */
#section01{background:#ffffff;}
#section02{background:#f6f6f5;}
#section02 .text{text-align:center;}
.message_box{
width:100%;
margin:60px auto 0 auto;
}
.message_box img{display:block;width:100%;max-width:750px;margin:0 auto;}
.section_img{
display:block;
width:30%;
float:right;
margin:0 0 0 30px;
}
@media only screen and (max-width:750px){
#section02 .text{text-align:justify;}
.message_box{margin:30px auto 0 auto;}
.message_box img{display:block;width:100%;max-width:750px;margin:0 auto;}
}

/* ----------------------- CSS Information 
 Style Info: 追記20210304
--------------------------------------- */
.text ul.point{}
.text ul.point li{
position:relative;
padding:0 0 0 17px;
}
.text ul.point li:before{
content:"";
position:absolute;
top:10px;
left:0;
width:12px;
height:12px;
background:#069cb7;
border-radius:50%;
}
@media only screen and (max-width:750px){
.text ul.point{}
.text ul.point li{padding:0 0 0 14px;}
.text ul.point li:before{top:8px;width:10px;height:10px;}
}

.br-pc {display: none; }

@media screen and (min-width: 768px){
.br-sp {display: none; }
}

.pub_form{

margin: 30px auto;

}

.bottom_margin{

margin-bottom: 80px;

}

input.form_text{width:93%; height:40px; text-align:center; font-size:100%;}
input.form_button{width:100%;}


/* ----------------------- CSS Information 
 Style Info: 追記20240214 VIDEO
--------------------------------------- */


.point_v{
  background-size: cover;
  margin: 10px auto 20px auto;
}

.point-wrapper{
  position: relative;
  margin: auto;
  text-align: center;
}

  
.you{
  width: 80%;
  height: auto;
  margin: auto;
  position: relative;
}
.youme{
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  box-shadow: 1px 1px 2px #aaa;
}
.you img{
  height: 100%;
    position: absolute;
    top: 5%;
    left: 5%;
    z-index: 1;
}
.youme img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  }
  

.youme .mainvid {
  width: 100%;
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.you2{
  width: 100%;
  height: auto;
  margin: auto;
  position: relative;
}

.you2 img{
  height: 100%;
    position: absolute;
    top: 5%;
    left: 5%;
    z-index: 1;
}

.youme2{
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.youme2 img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  }
.youme2 .mainvid {
  width: 100%;
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}