@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;}
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:underline;color:#666666;}
a:visited{text-decoration:none;color:#66666;}
a:hover{text-decoration:underline;color:#999999;}
a:active{text-decoration:none;color:#66666;}
/*font*/
.b{font-weight:bold;}
.ul{text-decoration:underline;}
.bg{background-color:#fff45c;}
.big{font-size:20px;}@media only screen and (max-width:750px){.big{font-size:16px;}}
.small{font-size:14px;}@media only screen and (max-width:750px){.small{font-size:12px;line-height:20px;}}
.red{color:#e50012;}
.blue{color:#5ed4ca;}
/*----- image -----*/
.pc{display:block;}
.sp{display:none;}
span.pc{display:inline-block;}
span.sp{display:none;}
@media only screen and (max-width:750px){
.pc{display:none;}
.sp{display:block;}
span.pc{display:none;}
span.sp{display:inline-block;}
}
/* text */
.text{margin:0;padding:0;font-size:18px;line-height:30px;text-align:justify;word-wrap:break-word;}
.text p,.text ul{margin:0 0 30px 0;padding:0;}
.text p:last-child{margin:0;padding:0;}
.text p.text_center{text-align:center;}
.text p.text_right{text-align:right;}
@media only screen and (max-width:750px){
.text{font-size:14px;line-height:24px;}
.text p,.text ul{margin:0 0 20px 0;}
.text p:last-child{margin:0;padding:0;}
}


/* ----------------------- CSS Information 
 Style Info: HTML/BODY
--------------------------------------- */
html,body{
font-family:'Noto Sans JP',Sans-Serif;
width:100%;
height:100%;
margin:0;
padding:0;
color:#333333;
font-size:16px;
line-height:0;
text-align:center;
background:#ffffff;
letter-spacing:0em;
min-height:100%;
position:relative;
box-sizing:border-box;
}


/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{
position:relative;
width:100%;
margin:0;
padding:0;
background:url(../img/header_bg_pc.png) no-repeat center top;
background-size:cover;
}
.header_img{
position:relative;
width:100%;
margin:0;
padding:0;
background:url(../img/header_bottom.png) no-repeat center bottom;
}
.header_img img{
width:100%;
margin:0 auto;
padding:0;
}
.header_img .img1200{display:block;max-width:1200px;}
.header_img .img960{display:none;max-width:960px;}
.header_img .img750{display:none;max-width:750px;}
@media only screen and (max-width:960px){
.header_img .img1200{display:none;}
.header_img .img960{display:block;}
.header_img{background:none;}
}
@media only screen and (max-width:750px){
header{background:#000000;}
.header_img .img960{display:none;}
.header_img .img750{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: TITLE
--------------------------------------- */
.title{
position:relative;
width:100%;
margin:0 auto 40px auto;
padding:0 0 40px 0;
}
.title img{
position:relative;
width:100%;
max-width:960px;
margin:0 auto;
}
.title:after{
content:"";
position:absolute;
bottom:0;
left:0;
right:0;
display:block;
padding:0;
width:0;
height:6px;
margin:auto auto 0 auto;
background:#fd862a;
}
.title.scrollin:after{animation:title_hr 0.5s linear both;}
@keyframes title_hr{0%{width:0%;}100%{width:60px;}}
@media only screen and (max-width:750px){
.title{margin:0 auto 20px auto;padding:0 0 30px 0;}
.title img{}
.title:after{height:5px;}
.title.scrollin:after{}
}

/* ----------------------- CSS Information 
 Style Info: WRAPPER
--------------------------------------- */
.wrapper{
margin:0 auto;
padding:0;
width:100%;
max-width:960px;
position:relative;
box-sizing:border-box;
}
.wrapper .text{
width:100%;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
.wrapper{}
.wrapper .text{padding:0 20px;}
}

/* ----------------------- CSS Information 
 Style Info: FLEXBOX
--------------------------------------- */
.flexbox{
margin:0;
padding:0;
width:100%;
position:relative;
box-sizing:border-box;
display:flex;
flex-direction:reverse;
align-items:center;
}
#contents02 .flexbox,#contents04 .flexbox,#contents06 .flexbox,#contents08 .flexbox{flex-direction:row-reverse;}
.flexbox .textbox{
flex:1;
margin:0;
padding:0;
box-sizing:border-box;
}
.flexbox .textbox .text{
width:100%;
max-width:750px;
margin:0 auto;
padding:0 40px;
text-align:justify;
box-sizing:border-box;
}
.flexbox .imgbox{
width:40%;
max-width:670px;
padding:0;
box-sizing:border-box;
overflow-x:hidden;
}
.flexbox .imgbox img{display:block;width:100%;}
@media only screen and (max-width:750px){
.flexbox{
flex-direction:column;
align-items:stretch;
}
#contents02 .flexbox,#contents04 .flexbox,#contents06 .flexbox,#contents08 .flexbox{flex-direction:column;}
.flexbox .textbox{}
.flexbox .textbox .text{padding:0 20px;}
.flexbox .textbox .text br{display:none;}
.flexbox .imgbox{
width:100%;
max-width:750px;
margin:30px auto 0 auto;
padding:0 20px;
}
.flexbox .imgbox img{}
}


ul.nomark{margin:0 0 30px 0;}
ul.nomark li{
position:relative;
margin:0;
padding:0;
list-style:none;
}
ul.check{
margin:0 0 30px 0;
padding:10px 30px;
background:#f6f6f5;
}
ul.check li{
position:relative;
padding:13px 0 13px 20px;
list-style:none;
font-size:18px;
line-height:24px;
border-bottom:1px dashed #cccccc;
}
ul.check li:last-child{border-bottom:none;}
ul.check li:before{
content:"";
display:block;
position:absolute;
top:18px;
left:0;
width:16px;
height:16px;
background:#fd862a;
box-sizing:border-box;
}
ul.check li:after{
content:"";
display:block;
position:absolute;
top:18px;
left:4px;
width:5px;
height:10px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
ul.circle{margin:0 0 30px 0;}
ul.circle li{
position:relative;
margin:0;
padding:3px 0 3px 20px;
font-size:16px;
line-height:24px;
list-style:none;
}
ul.circle li:before{
content:"";
position:absolute;
top:9px;
left:0;
width:14px;
height:14px;
border-radius:7px;
background:#fd862a;
}
@media only screen and (max-width:750px){
ul.nomark{margin:0 0 20px 0;}
ul.nomark li{}
ul.check{
margin:0 0 20px 0;
padding:5px 10px;
}
ul.check li{
position:relative;
padding:10px 0 10px 20px;
list-style:none;
font-size:14px;
line-height:20px;
border-bottom:1px dashed #cccccc;
}
ul.check li:before{
content:"";
display:block;
position:absolute;
top:13px;
left:0;
width:14px;
height:14px;
background:#fd862a;
box-sizing:border-box;
}
ul.check li:after{
content:"";
display:block;
position:absolute;
top:13px;
left:3px;
width:4px;
height:8px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
ul.circle{margin:0 0 20px 0;}
ul.circle li{
position:relative;
padding:2px 0 2px 14px;
font-size:14px;
line-height:20px;
}
ul.circle li:before{
content:"";
position:absolute;
top:8px;
left:0;
width:10px;
height:10px;
border-radius:5px;
background:#fd862a;
}
}

/* ----------------------- CSS Information 
 Style Info: CONTENTS
--------------------------------------- */
.contents{
padding:120px 0;
background:#ffffff;
}
@media only screen and (max-width:750px){
.contents{padding:40px 0;}
}

/* ----------------------- CSS Information 
 Style Info: VIDEO
--------------------------------------- */
#video{
margin:0;
padding:80px 0;
background:#000000 url(../img/video_bg.png) no-repeat center;
background-size:cover;
}
#video .wrapper{max-width:1500px;}
#video .wrapper .text{text-align:center;color:#f6f6f5;}
.movie{
display:flex;
position:relative;
width:100%;
margin:0 0 40px 0;
padding:0;
box-sizing:border-box;
}
.movie_box{
position:relative;
width:32%;
max-width:480px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
.movie_bg{
position:relative;
width:100%;
margin:0 auto;
padding-top:56.25%;
overflow:hidden;
}
.fn_movie{
display:block;
position:absolute;
top:0;
left:0;
width:100%;
max-width:480px;
box-sizing:border-box;
z-index:1;
}
.movie_thumb{
position:absolute;
top:0;
left:0;
z-index:1;
width:100%;
}
@media only screen and (max-width:750px){
#video{padding:40px 0;}
#video .wrapper{}
#video .wrapper .text{}
.movie{display:block;margin:0 0 20px 0;}
.movie_box{
width:100%;
max-width:750px;
margin:0 auto 20px auto;
padding:0 20px;
}
.movie_bg{}
.fn_movie{max-width:710px;}
.movie_thumb{}
}

/* ----------------------- CSS Information 
 Style Info: DATE
--------------------------------------- */
.date{
padding:80px 0;
background:#f6f6f5 url(../img/bg01.png) repeat center bottom;
}
.date .wrapper .text{text-align:center;}
.img900{width:100%;max-width:900px;margin:0 auto;padding:0;}
@media only screen and (max-width:750px){
.date{
padding:40px 0;
background:#f6f6f5 url(../img/bg01.png) repeat center bottom;
}
}

/* ----------------------- CSS Information 
 Style Info: PLAN
--------------------------------------- */
.example{
padding:80px 0;
background:#f6f6f5 url(../img/bg01.png) repeat center bottom;
}
.example .flexbox{margin:0 auto;max-width:1280px;}
.example .flexbox .textbox .text{padding:0 30px;}
.example .flexbox .imgbox{
width:40%;
min-width:350px;
margin:0 auto;
padding:0 30px 0 0;
box-sizing:border-box;
}
#simulation{
width:100%;
min-width:320px;
margin:0 auto;
box-sizing:border-box;
font-size:15px;
line-height:30px;
color:#f6f6f5;
border-collapse:separate;
border-spacing:1px;
}
#simulation tr:nth-child(odd){background:#888888;}
#simulation tr:nth-child(even){background:#666666;}
#simulation tr:nth-of-type(1){background:#111111;}
#simulation tr th{font-weight:normal;text-align:center;}
#simulation tr td{padding:0 15px;}
#simulation tr td:nth-of-type(1){text-align:center;}
#simulation tr td:nth-of-type(2){text-align:right;}
#simulation tr td:nth-of-type(3){text-align:right;}
@media only screen and (max-width:750px){
.example{padding:40px 0;}
.example .flexbox{}
.example .flexbox .textbox .text{padding:0 20px;}
.example .flexbox .imgbox{
width:100%;
min-width:320px;
margin:20px auto 0 auto;
padding:0 20px;
}
#simulation{min-width:280px;}
}

/* ----------------------- CSS Information 
 Style Info: CULLICULUM
--------------------------------------- */
#curriculum{
background:#ffffff;
padding:120px 0;
}
#curriculum .wrapper{max-width:1280px;padding:0 40px;}
.curriculum_box{
display:flex;
width:100%;
margin:0 auto 80px auto;
padding:0;
box-sizing:border-box;
}
.curriculum_box:last-child{margin:0;}
.curriculum_box .textbox{width:60%;margin:0;padding:0 0 0 40px;box-sizing:border-box;}
.curriculum_index{
margin:0 0 30px 0;
padding:0 0 30px 0;
font-size:20px;
line-height:30px;
font-weight:bold;
text-align:left;
border-bottom:1px solid #fd862a;
}
.curriculum_index span.number{
display:block;
width:180px;
height:30px;
margin:0 auto 20px 0;
padding:0;
font-size:16px;
line-height:28px;
font-weight:bold;
text-align:center;
color:#f6f6f5;
border-radius:15px;
background:#fd862a;
}
.curriculum_box .text{margin:0;padding:0;}
.curriculum_box .text p{margin:0 0 30px 0;padding:0;}
.curriculum_box .detail{
margin:0;
padding:10px 20px;
background:#f6f6f5;
}
.curriculum_box .detail li{
position:relative;
padding:13px 0 13px 20px;
list-style:none;
font-size:18px;
line-height:24px;
border-bottom:1px dashed #cccccc;
}
.curriculum_box .detail li:last-child{border-bottom:none;}
.curriculum_box .detail li:before{
content:"";
display:block;
position:absolute;
top:18px;
left:0;
width:16px;
height:16px;
background:#fd862a;
box-sizing:border-box;
}
.curriculum_box .detail li:after{
content:"";
display:block;
position:absolute;
top:18px;
left:4px;
width:5px;
height:10px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
.curriculum_box .imgbox{width:40%;margin:0;padding:0;box-sizing:border-box;}
.curriculum_box .imgbox img{width:100%;}
.curriculum_img{display:none;}
@media only screen and (max-width:750px){
#curriculum{padding:40px 0;}
#curriculum .wrapper{padding:0 20px;}
.curriculum_box{display:block;margin:0 auto 40px auto;}
.curriculum_box:last-child{margin:0;}
.curriculum_box .textbox{width:100%;padding:0;}
.curriculum_index{
margin:0;
padding:0 0 20px 0;
font-size:16px;
line-height:24px;
font-weight:bold;
text-align:center;
border-bottom:none;
}
.curriculum_index span.number{
display:block;
width:100%;
height:30px;
margin:0 auto 10px auto;
padding:0;
font-size:14px;
line-height:30px;
font-weight:bold;
text-align:center;
border-radius:15px;
box-sizing:border-box;
}
.curriculum_box .text{}
.curriculum_box .text p{margin:0 0 20px 0;}
.curriculum_box .text br{display:none;}
.curriculum_box .detail{
margin:0;
padding:5px 10px;
}
.curriculum_box .detail li{
position:relative;
padding:10px 0 10px 20px;
list-style:none;
font-size:14px;
line-height:20px;
}
.curriculum_box .detail li:last-child{}
.curriculum_box .detail li:before{
content:"";
display:block;
position:absolute;
top:14px;
left:0;
width:14px;
height:14px;
background:#fd862a;
box-sizing:border-box;
}
.curriculum_box .detail li:after{
content:"";
display:block;
position:absolute;
top:14px;
left:3px;
width:4px;
height:8px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
.curriculum_box .imgbox{display:none;}
.curriculum_box .imgbox img{display:none;}
.curriculum_img{display:block;width:100%;margin:0 0 20px 0;}
}

/* ----------------------- CSS Information 
 Style Info: PRESNET
--------------------------------------- */
#present{
padding:120px 0;
background:#f6f6f5;
}
#present .wrapper{max-width:1280px;padding:0 40px;}
.present_box{
display:flex;
flex-direction:row-reverse;
width:100%;
margin:0 auto 80px auto;
padding:0;
box-sizing:border-box;
}
.present_box:last-child{margin:0;}
.present_box .textbox{width:60%;margin:0;padding:0 40px 0 0;box-sizing:border-box;}
.present_index{
margin:0 0 30px 0;
padding:0 0 30px 0;
font-size:20px;
line-height:30px;
font-weight:bold;
text-align:left;
border-bottom:1px solid #fd862a;
}
.present_index span.number{
display:block;
width:150px;
height:30px;
margin:0 auto 20px 0;
padding:0;
font-size:16px;
line-height:28px;
font-weight:bold;
text-align:center;
color:#f6f6f5;
border-radius:15px;
background:#fd862a;
}
.present_box .text{margin:0;padding:0;}
.present_box .text p{margin:0 0 30px 0;padding:0;}
.present_box .imgbox{width:40%;margin:0;padding:0;box-sizing:border-box;}
.present_box .imgbox img{width:100%;}
.present_img{display:none;}
@media only screen and (max-width:750px){
#present{padding:40px 0 20px 0;}
#present .wrapper{padding:0 20px;}
.present_box{display:block;margin:0 auto 40px auto;}
.present_box:last-child{margin:0;}
.present_box .textbox{width:100%;padding:0;}
.present_index{
margin:0;
padding:0 0 20px 0;
font-size:16px;
line-height:24px;
font-weight:bold;
text-align:center;
border-bottom:none;
}
.present_index span.number{
display:block;
width:100%;
height:30px;
margin:0 auto 10px auto;
padding:0;
font-size:14px;
line-height:30px;
font-weight:bold;
text-align:center;
border-radius:15px;
box-sizing:border-box;
}
.present_box .text{}
.present_box .text p{margin:0 0 20px 0;}
.present_box .text br{display:none;}
.present_box .imgbox{display:none;}
.present_box .imgbox img{display:none;}
.present_img{display:block;width:100%;margin:0 0 20px 0;}
}

/* ----------------------- CSS Information 
 Style Info: PRICE
--------------------------------------- */
#price{background:#ffffff;}

/* ----------------------- CSS Information 
 Style Info: REFUND
--------------------------------------- */
#refund{
background:#f6f6f5 url(../img/refund_bg.png) no-repeat center;
background-size:cover;
}
dl.detail{
margin:0 0 30px 0;
padding:30px;
background:#f6f6f5;
border-radius:10px;
}
dl.detail dt{
display:flex;
align-items:center;
text-align:left;
margin:0 0 10px 0;
}
dl.detail dt:after{
content:"";
flex-grow:1;
border-bottom:1px solid #fdc02a;
margin-left:10px;
padding-right:15px;
}
dl.detail dd{
position:relative;
padding:0 0 0 20px;
list-style:none;
font-size:18px;
line-height:30px;
}
dl.detail dd:before{
content:"";
display:block;
position:absolute;
top:8px;
left:0;
width:16px;
height:16px;
background:#fd862a;
box-sizing:border-box;
}
dl.detail dd:after{
content:"";
display:block;
position:absolute;
top:8px;
left:4px;
width:5px;
height:10px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
@media only screen and (max-width:750px){
#refund{}
dl.detail{
margin:0 0 20px 0;
padding:15px;
border-radius:8px;
}
dl.detail dt{}
dl.detail dd{
position:relative;
padding:0 0 0 20px;
list-style:none;
font-size:14px;
line-height:24px;
}
dl.detail dd:before{
content:"";
display:block;
position:absolute;
top:5px;
left:0;
width:14px;
height:14px;
background:#fd862a;
box-sizing:border-box;
}
dl.detail dd:after{
content:"";
display:block;
position:absolute;
top:5px;
left:3px;
width:4px;
height:8px;
transform:rotate(40deg);
border-bottom:3px solid #f6f6f5;
border-right:3px solid #f6f6f5;
}
}

/* ----------------------- CSS Information 
 Style Info: APPLY
--------------------------------------- */
#apply{
width:100%;
margin:0;
padding:120px 0;
box-sizing:border-box;
background:#ffffff;
}
.apply_box{
margin:0 30px 40px 30px;
padding:0;
box-sizing:border-box;
}
.apply_box:last-child{margin:0 30px 0 30px;}
.apply_index{
display:block;
width:200px;
margin:0 auto 20px 0;
padding:5px 10px;
text-align:center;
font-size:16px;
line-height:20px;
color:#ffffff;
background:#fd862a;
border-radius:15px;
box-sizing:border-box;
}
.apply_text{
display:block;
width:100%;
margin:0;
padding:0;
font-size:18px;
line-height:30px;
text-align:justify;
box-sizing:border-box;
}
.apply_list{}
.apply_list li{
list-style:none;
position:relative;
padding:0 0 0 30px;
}
.apply_list li:before{
content:"";
position:absolute;
top:3px;
left:0;
width:24px;
height:24px;
border-radius:12px;
font-size:15px;
line-height:24px;
color:#ffffff;
text-align:center;
background:#fdc02a;
}
.apply_list li:nth-child(1):before{content:"01";}
.apply_list li:nth-child(2):before{content:"02";}
.apply_list li:nth-child(3):before{content:"03";}
.apply_list li:nth-child(4):before{content:"04";}
.apply_list li:nth-child(5):before{content:"05";}
.apply_list li:nth-child(6):before{content:"06";}
.apply_list li:nth-child(7):before{content:"07";}
.apply_list li:nth-child(8):before{content:"08";}
.apply_list li:nth-child(9):before{content:"09";}
.apply_list li:nth-child(10):before{content:"10";}
.apply_list li:nth-child(11):before{content:"11";}
.apply_list li:nth-child(12):before{content:"12";}
.apply_list li:nth-child(13):before{content:"13";}
.apply_list li:nth-child(14):before{content:"14";}
.apply_list li:nth-child(15):before{content:"15";}
.apply_list li:nth-child(16):before{content:"16";}
.apply_list li:nth-child(17):before{content:"17";}
.apply_list li:nth-child(18):before{content:"18";}
.apply_list li:nth-child(19):before{content:"19";}
.apply_list li:nth-child(20):before{content:"20";}
ul.attention{}
ul.attention li{
position:relative;
font-size:16px;
line-height:24px;
padding:0 0 0 20px;
}
ul.attention li:before{
content:"※";
position:absolute;
top:0;
left:0;
font-size:16px;
line-height:24px;
}
.apply_payment{
margin:0 0 20px 0;
padding:0;
}
.apply_payment dt{
display:flex;
align-items:center;
text-align:left;
}
.apply_payment dt:after{
content:"";
flex-grow:1;
border-bottom:1px solid #fdc02a;
margin-left:10px;
padding-right:15px;
}
.apply_payment dd{
margin:0;
padding:0;
}
.apply_box dl.detail{margin:20px 0;}
.apply_box ul.circle{margin:20px 0;}
@media only screen and (max-width:750px){
#apply{padding:40px 0;}
.apply_box{margin:0 20px 20px 20px;}
.apply_box:last-child{margin:0 20px 0 20px;}
.apply_index{width:100%;margin:0 auto 10px auto;font-size:14px;line-height:20px;}
.apply_text{
font-size:14px;
line-height:24px;
}
.apply_list{}
.apply_list li{
list-style:none;
position:relative;
padding:5px 0 5px 24px;
line-height:20px;
}
.apply_list li:before{
content:"";
position:absolute;
top:7px;
left:0;
width:20px;
height:20px;
border-radius:10px;
font-size:13px;
line-height:20px;
}
ul.attention{}
ul.attention li{
position:relative;
font-size:14px;
line-height:20px;
padding:0 0 0 18px;
}
ul.attention li:before{
content:"※";
position:absolute;
top:0;
left:0;
font-size:14px;
line-height:20px;
}
.apply_payment{}
.apply_payment dt{}
.apply_payment dt:after{}
.apply_payment dd{}
.apply_box dl.detail{}
.apply_box ul.circle{}
}


/* ----------------------- CSS Information 
 Style Info: VOICE
--------------------------------------- */
#voice{background:#f6f6f5;}
#voice .wrapper{padding:0 30px;}
#voice dl{
width:100%;
margin:0 0 30px 0;
padding:0;
background:#ffffff;
border-radius:10px;
box-sizing:border-box;
}
#voice dt{
margin:0;
padding:30px;
font-size:20px;
line-height:30px;
font-weight:bold;
text-align:left;
border-bottom:1px solid #fd862a;
box-sizing:border-box;
}
#voice dt.voice_flex{
display:flex;
align-items:center;
}
#voice dt .voice_img{
display:block;
width:120px;
height:120px;
margin:0;
padding:0 20px 0 0;
}
#voice dt .voice_info{
display:block;
font-size:16px;
line-height:30px;
font-weight:normal;
text-align:left;
color:#666666;
}
#voice dd{
width:100%;
margin:0;
padding:30px 30px 10px 30px;
box-sizing:border-box;
font-size:18px;
line-height:30px;
text-align:justify;
}
#voice dd p{margin:0 0 30px 0;padding:0;}
#voice .text{font-size:14px;margin:0;padding:0 10px;}
@media only screen and (max-width:750px){
#voice{}
#voice .wrapper{padding:0 20px;}
#voice dl{
margin:0 0 20px 0;
border-radius:8px;
}
#voice dt{
margin:0;
padding:20px;
font-size:15px;
line-height:22px;
}
#voice dt.voice_flex{}
#voice dt .voice_img{
width:60px;
height:60px;
padding:0 10px 0 0;
}
#voice dt .voice_info{
padding:4px 0 0 0;
font-size:13px;
line-height:16px;
}
#voice dd{
padding:20px 20px 1px 20px;
font-size:14px;
line-height:24px;
}
#voice dd p{margin:0 0 20px 0;padding:0;}
#voice .text{font-size:12px;line-height:20px;}
}


/* ----------------------- CSS Information 
 Style Info: recommendation
--------------------------------------- */
#recommendation{background:#f6f6f5 url(../img/bg01.png) repeat center top;}
#recommendation .wrapper{padding:0 30px;}
#recommendation dl{
width:100%;
margin:0 0 30px 0;
padding:0;
background:#ffffff;
border-radius:10px;
box-sizing:border-box;
}
#recommendation dt{
display:flex;
align-items:center;
margin:0;
padding:30px;
font-size:20px;
line-height:30px;
color:#fd862a;
font-weight:bold;
text-align:left;
box-sizing:border-box;
}
#recommendation dt .recommendation_img{
display:block;
width:120px;
height:120px;
margin:0;
padding:0 20px 0 0;
}
#recommendation dt .recommendation_info{
display:block;
font-size:18px;
line-height:30px;
font-weight:normal;
text-align:left;
color:#666666;
}
#recommendation dd{
width:100%;
margin:0;
padding:0 30px 30px 30px;
box-sizing:border-box;
font-size:18px;
line-height:30px;
text-align:justify;
}
#recommendation dd p{margin:0 0 20px 0;padding:0;}
.recommendation_profile{
margin:0 0 30px 0;
padding:20px;
font-size:18px;
line-height:30px;
border:1px solid #fd862a;
}
@media only screen and (max-width:750px){
#recommendation{}
#recommendation .wrapper{padding:0 20px;}
#recommendation dl{
margin:0 0 20px 0;
border-radius:8px;
}
#recommendation dt{
margin:0;
padding:20px;
font-size:15px;
line-height:22px;
}
#recommendation dt .recommendation_img{
width:60px;
height:60px;
padding:0 10px 0 0;
}
#recommendation dt .recommendation_info{
padding:4px 0 0 0;
font-size:13px;
line-height:16px;
}
#recommendation dd{
padding:0 20px 20px 20px;
font-size:14px;
line-height:24px;
}
#recommendation dd p{margin:0 0 20px 0;padding:0;}
.recommendation_profile{
margin:0 0 20px 0;
font-size:14px;
line-height:24px;
}
}


/* ----------------------- CSS Information 
 Style Info: FAQ
--------------------------------------- */
#faq{
padding:120px 0 120px 0;
background:#f6f6f5;
}
#faq dl{
width:100%;
max-width:960px;
margin:40px auto 0 auto;
padding:0 30px;
box-sizing:border-box;
}
#faq dt{
font-size:18px;
line-height:30px;
text-align:justify;
margin:0;
padding:20px 20px 20px 70px;
background:#ffffff url(../img/faq_q.png) no-repeat 20px 20px;
background-size:30px 30px;
border-radius:10px 10px 0 0;
border-bottom:1px solid #fd862a;
}
#faq dd{
font-size:18px;
line-height:30px;
text-align:justify;
margin:0 0 30px 0;
padding:20px 20px 20px 70px;
background:#ffffff url(../img/faq_a.png) no-repeat 20px 20px;
background-size:30px 30px;
border-radius:0 0 10px 10px;
}
#faq dd:last-child{margin:0;}
@media only screen and (max-width:750px){
#faq{padding:40px 0 40px 0;}
#faq dl{
margin:20px 0 0 0;
padding:0 20px;
}
#faq dt{
font-size:14px;
line-height:24px;
padding:20px 20px 20px 40px;
background:#ffffff url(../img/faq_q.png) no-repeat 10px 20px;
background-size:24px 24px;
}
#faq dd{
font-size:14px;
line-height:24px;
text-align:justify;
margin:0 0 20px 0;
padding:20px 20px 20px 40px;
background:#ffffff url(../img/faq_a.png) no-repeat 10px 20px;
background-size:24px 24px;
}
}

/* ----------------------- CSS Information 
 Style Info: MESSAGE
--------------------------------------- */
#message{
background:#f6f6f5 url(../img/message_bg.png) no-repeat center top;
background-size:cover;
}
.sign{display:inline-block;width:180px;margin:10px 0 0 0;}
@media only screen and (max-width:750px){
#message .text br{display:none;}
.sign{display:inline-block;width:120px;margin:10px 0 0 0;}
}

/* ---------------------- CSS Information 
 Style Info: PROFILE
--------------------------------------- */
#profile{
padding:120px 0;
background:#f6f6f5;
}
#profile .wrapper{padding:0 30px;box-sizing:border-box;}
#profile .profile_name{
position:relative;
display:block;
width:320px;
margin:-20px auto 0 auto;
padding:5px 20px;
font-size:20px;
line-height:30px;
font-weight:bold;
text-align:center;
color:#ffffff;
background:#fd862a;
box-sizing:border-box;
border-radius:20px;
z-index:10;
}
#profile .text{
margin:0;
padding:30px 0;
width:100%;
font-size:18px;
line-height:30px;
text-align:justify;
box-sizing:border-box;
}
#profile .text p{margin:0 0 20px 0;padding:0;}
#profile .text dl{}
#profile .text dt{
display:flex;
align-items:center;
text-align:left;
}
#profile .text dt:after{
content:"";
flex-grow:1;
border-bottom:1px solid #fdc02a;
margin-left:10px;
padding-right:15px;
}
#profile .text dd{
position:relative;
margin:0;
padding:3px 0 3px 20px;
font-size:18px;
line-height:30px;
list-style:none;
}
#profile .text dd:before{
content:"";
position:absolute;
top:9px;
left:0;
width:14px;
height:14px;
border-radius:7px;
background:#fd862a;
}
#profile img{width:100%;max-width:900px;}
#profile img.books{float:right;width:240px;padding:10px 0 0 10px;}
@media only screen and (max-width:750px){
#profile{padding:40px 0;}
#profile .wrapper{padding:0 20px;}
#profile .profile_name{
margin:-15px 20px 0 20px;
padding:5px 30px;
font-size:16px;
line-height:20px;
border-radius:15px;
}
#profile .text{
padding:20px 0;
font-size:14px;
line-height:20px;
}
#profile .text p{}
#profile .text dl{}
#profile .text dt{}
#profile .text dt:after{}
#profile .text dd{
padding:2px 0 2px 14px;
font-size:14px;
line-height:20px;
}
#profile .text dd:before{
content:"";
position:absolute;
top:8px;
left:0;
width:10px;
height:10px;
border-radius:5px;
background:#fd862a;
}
#profile img.books{float:none;width:60%;max-width:350px;margin:0 auto;padding:20px 0 0 0;}
}

/* ----------------------- CSS Information 
 Style Info: CTA
--------------------------------------- */
.cta{
position:relative;
margin:0;
padding:80px 0 60px 0;
width:100%;
background:#4c4d55 url(../img/cta_bg.png) no-repeat center;
background-size:cover;
}
.cta_img{
width:100%;
max-width:960px;
margin:0 auto;
padding:0 0 40px 0;
}
@media only screen and (max-width:750px){.cta{padding:40px 0 40px 0;}}

/* ----------------------- CSS Information 
 Style Info: BTN
--------------------------------------- */
.btn{
width:100%;
margin:0;
padding:0;
}
.btn_flex{
display:flex;
align-items:flex-end;
width:100%;
max-width:960px;
margin:0 auto;
padding:0 30px;
box-sizing:border-box;
}
.btn_box{width:50%;margin:0;box-sizing:border-box;}
.btn_box:first-child{padding:0 10px 0 0;}
.btn_box:last-child{padding:0 0 0 10px;}
.btn_img{
width:100%;
max-width:440px;
margin:0 auto;
border-radius:10px;
box-shadow:2px 2px 4px 0px rgba(0,0,0,0.5);
background:#ffffff;
overflow:hidden;
}
.btn_img img{width:100%;}
.btn_img img:hover{opacity:0.5;}
@media only screen and (max-width:750px){
.btn{}
.btn_flex{display:block;padding:0 20px;}
.btn_box{width:100%;}
.btn_box:first-child{padding:0;margin:0 0 20px 0;}
.btn_box:last-child{padding:0;}
.btn_img{max-width:670px;}
.btn_img img{}
.btn_img img:hover{}
}

/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
width:100%;
margin:0;
padding:0;
color:#d1d1d1;
background:#111111;
}
#fnav a{color:#d1d1d1;text-decoration:none;}
#fnav a:hover{color:#d1d1d1;text-decoration:underline;}
dl.disclaim{
width:100%;
margin:0;
padding:40px 20px 0 20px;
box-sizing:border-box;
text-align:left;
}
dl.disclaim dt{
margin:0 0 10px 0;
padding:0 0 0 8px;
text-align:left;
font-size:14px;
line-height:20px;
border-left:2px solid #fd862a;
}
dl.disclaim dd{
text-align:justify;
font-size:14px;
line-height:20px;
}
#fnav{
margin:0 20px;
padding:40px 0;
}
#fnav ul{list-style-type:none;}
#fnav li{
display:block;
margin:0 0 20px 0;
padding:0 0 0 8px;
text-align:left;
font-size:14px;
line-height:20px;
border-left:2px solid #fd862a;
}
#fnav li:last-child{margin:0;}
address{
display:block;
margin:0 20px;
padding:40px 0;
border-top:1px solid #222222;
text-align:right;
font-size:14px;
line-height:20px;
}
@media only screen and (max-width:750px){
footer{}
dl.disclaim{}
dl.disclaim dt{font-size:12px;}
dl.disclaim dd{font-size:12px;}
dl.disclaim dd br{display:none;}
#fnav{}
#fnav ul{}
#fnav li{font-size:12px;}
#fnav li:last-child{}
address{font-size:12px;}
.sp_no{display:none;}
}

/* ----------------------- CSS Information 
 Style Info: FADEIN
--------------------------------------- */
.fadein{opacity:0;transition:all ease 1s;}
.fadein.scrollin{opacity:1;}
/*左から----------*/
.fadein_left{opacity:0;transform:translateX(-40px);transition:all 1s;}
.fadein_left.scrollin{opacity:1;transform:translateX(0);}
/*右から----------*/
.fadein_right{opacity:0;transform:translateX(40px);transition:all 1s;}
.fadein_right.scrollin{opacity:1;transform:translateX(0);}
/*上から----------*/
.fadein_top{opacity:0;transform:translateY(-20px);transition:all 1s;}
.fadein_top.scrollin{opacity:1;transform:translateY(0);}
/*下から----------*/
.fadein_bottom{opacity:0;transform:translateY(20px);transition:all 1s;}
.fadein_bottom.scrollin{opacity:1;transform:translateY(0);}