@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fjalla+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Pathway+Gothic+One&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{text-decoration:underline;color:#ffec47;}
a:hover{text-decoration:underline;color:#ffffff;}
/*font*/
.b{font-weight:bold;}
.ul{background:linear-gradient(transparent 70%, #f9e427 0%)}
.bg{background-color:#f9e427;}
.big{font-size:22px;line-height:36px;}@media only screen and (max-width:750px){.big{font-size:16px;line-height:24px;}}
.small{font-size:12px;line-height:20px;}
.red{color:#af1e26;}

.text_center{text-align:center !important;}
.text_right{text-align:right;}
.pc{display:block;}
.sp{display:none;}
@media only screen and (max-width:750px){
.pc{display:none;}
.sp{display:block;}
}

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

/* ----------------------- CSS Information 
 Style Info: HEADER
--------------------------------------- */
header{
position:relative;
display:block;
width:100%;
margin:0;
padding:0;
background:#f9f9f9 url(../img/header_bg.png) no-repeat bottom center;
box-sizing:border-box;
}
.header_wrapper{
width:100%;
max-width:1250px;
margin:0 auto;
padding:0;
background:url(../img/header_bg_pc.png) no-repeat top center;
background-size:auto 100%;
}
.header_box{
position:relative;
width:100%;
max-width:1000px;
margin:0 auto 0 0;
padding:0;
}
.header_box img{width:100%;max-width:1000px;}
@media only screen and (max-width:750px){
header{background:#dfe4ea;}
.header_wrapper{background:#dfe4ea;}
.header_box{margin:0 auto;}
.header_box img{margin:0 auto;}
}

/* ----------------------- CSS Information 
 Style Info: 共通設定
--------------------------------------- */
.section{
width:100%;
margin:0;
padding:120px 0 120px 0;
position:relative;
background:#ffffff;
}
.section_wrapper{
width:100%;
max-width:1000px;
margin:0 auto;
box-sizing:border-box;
}
.section_box{
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
}
.section_img{
display:block;
width:100%;
max-width:1250px;
margin:0 auto;
padding:0;
}
@media only screen and (max-width:750px){.section{padding:40px 0 40px 0;}}

/* ----------------------- CSS Information 
 Style Info: TITLE
--------------------------------------- */
h1.title{
position:relative;
display:block;
width:100%;
max-width:750px;
margin:0 auto 0 auto;
padding:0 0 60px 0;
color:#3f4a7e;
}
h1.title img{
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
h1.title span{
display:flex;
justify-content:center;
align-items:center;
width:100%;
margin:0 0 20px 0;
padding:0 4%;
font-family:'Bebas Neue', sans-serif;
font-size:28px;
line-height:30px;
color:#d2ba88;
box-sizing:border-box;
}
h1.title span:before{
content:"";
display:block;
margin:0 10px 0 0;
flex:1;
height:2px;
background:#d2ba88;
}
h1.title span:after{
content:"";
display:block;
margin:0 0 0 10px;
flex:1;
height:2px;
background:#d2ba88;
}
.title_logo{dusplay:block;width:100%;max-width:750px;margin:0 auto 60px auto;}
@media only screen and (max-width:750px){
h1.title{padding:0 0 30px 0;}
h1.title img{}
h1.title span{margin:0 0 10px 0;font-size:20px;line-height:20px;}
h1.title span:before{height:1px;}
h1.title span:after{height:1px;}
.title_logo{margin:0 auto 30px auto;}
}

/* -- text -- */
.text{
margin:0;
padding:0;
font-size:18px;
line-height:40px;
text-align:left;
box-sizing:border-box;
}
.text p{margin:0 0 30px 0;padding:0;}
.text p:last-child{margin:0;}
.text ul{margin:0 0 30px 0;padding:0;}
.text ul:last-child{margin: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;}
.text ul{margin:0 0 20px 0;padding:0;}
/* -- br -- */
.text br{display:none;}
.text br.sp{display:block;}
.text br.all{display:block;}
}

/* ----------------------- CSS Information 
 Style Info: SECTION01
--------------------------------------- */
#section01{
background:#000076 url(../img/bg_01.png) no-repeat center;
box-shadow:inset 0 0 30px #000076;
}
#section01 .section_wrapper{max-width:750px;}
#section01 .section_box{}
#section01 .text{
padding:60px 0;
font-weight:700;
color:#ffffff;
text-align:center;
border:1px solid #d2ba88;
background:rgba(0,0,0,0.4);
border-radius:8px;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#section01{background:#000076 url(../img/bg_01.png) no-repeat center;background-size:auto 100%;}
#section01 .section_wrapper{}
#section01 .section_box{}
#section01 .text{padding:40px 0 20px 0;}
.ul_section01 li{margin:0 0 20px 0;padding:0;}
}

/* ----------------------- CSS Information 
 Style Info: SECTION02
--------------------------------------- */
#section02{
padding:120px 0 0 0;
background:#ffffff;
}
#section02:before{
content:"";
position:absolute;
top:0;
left:50%;
margin-left:-20px;
border:20px solid transparent;
border-top:20px solid #000076;
}
#section02 .section_wrapper{max-width:750px;}
#section02 .section_box{}
#section02 .text{
padding:0 0 120px 0;
text-align:center;
}
.ul_section02{margin:40px 0 !important;}
.ul_section02 li{
position:relative;
margin:0 0 20px 0;
padding:15px 0;
font-size:20px;
line-height:30px;
font-weight:700;
color:#ffffff;
background:linear-gradient(to right,#00008f,#4040ab);
border-radius:8px;
box-shadow: 0 0 0 2px #00008f inset, 0 0 0 3px #d2ba88 inset;
}
@media only screen and (max-width:750px){
#section02{padding:40px 0 0 0;}
#section02:before{margin-left:-10px;border:10px solid transparent;border-top:10px solid #000076;}
#section02 .section_wrapper{}
#section02 .section_box{}
#section02 .text{padding:0 0 40px 0;}
.ul_section02{margin:40px 0 !important;}
.ul_section02 li{margin:0 0 10px 0;padding:10px 0;font-size:14px;line-height:20px;}
}

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

/* ----------------------- CSS Information 
 Style Info: SECTION04
--------------------------------------- */
#section04{background:#ffffff;}
@media only screen and (max-width:750px){}

/* ----------------------- CSS Information 
 Style Info: SECTION05
--------------------------------------- */
#section05{padding:120px 0 0 0;background:#ffffff;}
#section05 h2{
display:block;
margin:0 auto;
padding:30px;
font-size:30px;
line-height:40px;
font-weight:700;
text-align:center;
color:#ffffff;
background:linear-gradient(to right,#00008f,#4040ab);
box-shadow: 0 0 0 2px #00008f inset, 0 0 0 3px #d2ba88 inset;
}
#section05 .section_img{margin:0 auto 40px auto;}
#section05 .text{padding:0 0 120px 0;}
@media only screen and (max-width:750px){
#section05{padding:40px 0 0 0;}
#section05 h2{padding:10px;font-size:16px;line-height:20px;}
#section05 .section_img{margin:0 auto 20px auto;}
#section05 .text{padding:0 0 40px 0;}
}

/* ----------------------- CSS Information 
 Style Info: SECTION06
--------------------------------------- */
#section06{background:#ffffff;}
.checkbox{margin:40px 0;}
.checkbox dl{
display:flex;
align-items:center;
margin:0 0 5px 0;
background:#eeeeee;
}
.checkbox dl:last-child{margin:0;}
.checkbox dl dt{
flex:1;
padding:0 10px;
font-size:18px;
line-height:60px;
font-weight:700;
border-left:5px solid #00008f;
}
.checkbox dl dd{
width:50px;
margin:0;
padding:0 0 4px 0;
font-size:16px;
line-height:20px;
font-weight:700;
text-align:center;
}
.checkbox span{
position:relative;
display:block;
margin:0 auto;
width:30px;
height:30px;
background:#ffffff;
border:2px solid #000000;
box-sizing:border-box;
}
.checkbox span.checked:after{
content:"";
display:block;
position:absolute;
top:4px;
left:3px;
width:16px;
height:8px;
border-left:4px solid #fb1858;
border-bottom:4px solid #fb1858;
transform:rotate(-45deg);
}
.ul_section06{margin:40px 0 !important;}
.ul_section06 li{
position:relative;
margin:0 0 20px 0;
padding:15px 0;
font-size:20px;
line-height:30px;
font-weight:700;
color:#ffffff;
text-align:center;
background:linear-gradient(to right,#00008f,#4040ab);
border-radius:8px;
box-shadow: 0 0 0 2px #00008f inset, 0 0 0 3px #d2ba88 inset;
}
@media only screen and (max-width:750px){
#section06{background:#ffffff;}
.checkbox{margin:30px 0;}
.checkbox dl{}
.checkbox dl dt{
display:flex;
align-items:center;
padding:0 5px;
height:70px;
font-size:14px;
line-height:24px;
border-left:2px solid #3f4a7e;
}
.checkbox dl dd{
width:30px;
font-size:12px;
line-height:20px;
font-weight:700;
text-align:center;
}
.checkbox span{width:20px;height:20px;border:2px solid #000000;}
.checkbox span.checked:after{top:1px;left:1px;width:12px;height:6px;}
.ul_section06{margin:30px 0 !important;}
.ul_section06 li{margin:0 0 10px 0;padding:10px 0;font-size:14px;line-height:20px;}
}

/* ----------------------- CSS Information 
 Style Info: SECTION07
--------------------------------------- */
#section07{background:#ffffff;}
.benefit_box{
display:flex;
justify-content:center;
align-items:center;
width:100%;
margin:0 0 20px 0;
padding:0;
box-sizing:border-box;
background:#00008f;
box-shadow: 0 0 0 2px #00008f inset, 0 0 0 3px #d2ba88 inset;
}
#benefit01{
background:#00008f url(../img/benefit01_img.png) no-repeat center right;
background-size:auto 100%;
}
#benefit02{
background:#00008f url(../img/benefit02_img.png) no-repeat center right;
background-size:auto 100%;
}
#benefit03{
background:#00008f url(../img/benefit03_img.png) no-repeat center right;
background-size:auto 100%;
}
.benefit_text{
display:block;
width:100%;
margin:0;
padding:20px;
font-size:20px;
line-height:30px;
font-weight:700;
color:#ffffff;
text-align:left;
box-sizing:border-box;
}
.benefit_text span{
font-family:'Pathway Gothic One',Sans-Serif;
display:block;
margin:0 0 5px 0;
padding:0;
font-size:20px;
line-height:20px;
font-weight:400;
color:#ca9e5b;
}
.benefit_img{display:none;}
.benefit_img img{display:none;}
@media only screen and (max-width:750px){
#section07{}
.benefit_box{flex-direction:column;box-shadow:none;}
#benefit01{background:#00008f;}
#benefit02{background:#00008f;}
#benefit03{background:#00008f;}
.benefit_text{width:100%;
margin:0;
padding:20px 10px;
font-size:16px;
line-height:24px;
box-shadow: 0 0 0 2px #00008f inset, 0 0 0 3px #d2ba88 inset;
text-align:left;
box-sizing:border-box;
}
.benefit_text span{
font-family:'Bebas Neue',Sans-Serif;
display:block;
margin:0 0 5px 0;
padding:0;
font-size:20px;
line-height:20px;
font-weight:400;
color:#ca9e5b;
}
.benefit_img{display:block;width:100%;padding:0 2px 2px 2px;background:#00008f;box-sizing:border-box;}
.benefit_img img{display:block;width:100%;}
}

/* ----------------------- CSS Information 
 Style Info: CONTENT
--------------------------------------- */
#section_content{
padding:120px 0 0 0;
background:#002e6a url(../img/bg_02.png) no-repeat top center;
}
#section_content h1.title{padding:0 0 172px 0;}
.content{
position:relative;
width:100%;
margin:0;
padding:172px 0 0 0;
background:#ca9e5b;
}
#content01 .content_wrapper{
background:#333333 url(../img/content01_bg.png) no-repeat center;
background-size:cover;
}
#content02 .content_wrapper{
background:#333333 url(../img/content02_bg.png) no-repeat center;
background-size:cover;
}
#content03 .content_wrapper{
background:#333333 url(../img/content03_bg.png) no-repeat center;
background-size:cover;
}
.content_box{
position:relative;
width:100%;
max-width:750px;
margin:0 auto;
padding:80px 0 252px 0;
box-sizing:border-box;
}
#content03 .content_box{padding:80px 0 60px 0;}
.content_img{
position:relative;
display:block;
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
}
.content_img img{
position:relative;
width:100%;
margin:-345px auto 0 auto;
padding:0;
}
.content_index{
width:100%;
margin:60px auto 40px auto;
padding:0 4%;
box-sizing:border-box;
font-size:24px;
line-height:40px;
text-align:center;
font-weight:700;
color:#ffffff;
}
.content_index h2{
font-size:40px;
line-height:60px;
font-weight:700;
}
.content_index h2 .small{font-size:20px;}
.content_text{
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
font-size:18px;
line-height:30px;
color:#ffffff;
text-align:justify;
}
.content_text p{
margin:0 0 40px 0;
padding:0;
}
@media only screen and (max-width:750px){
#section_content{padding:40px 0 0 0;background:#002e6a url(../img/bg_02_sp.png) no-repeat top center;background-size:100% auto;}
#section_content h1.title{padding:0 0 20vw 0;}
.content{padding:25vw 0 0 0;}
.content_box{padding:0 0 30vw 0;}
#content03 .content_box{padding:0 0 60px 0;}
.content_img{}
.content_img img{margin:-35.5vw auto 0 auto;}
.content_index{margin:30px auto 20px auto;font-size:16px;line-height:30px;}
.content_index h2{font-size:20px;line-height:30px;}
.content_index h2 .small{font-size:12px;}
.content_text{font-size:14px;line-height:24px;text-align:justify;}
.content_text p{margin:0 0 20px 0;}
.content_text p br{display:none;}
}

/* ----------------------- CSS Information 
 Style Info: VOICE
--------------------------------------- */
#voice{background:#ffffff;}
#voice .section_wrapper{max-width:750px;}

.video{
position:relative;
width:100%;
margin:0 auto 80px auto;
padding:0;
box-sizing:border-box;
}
#voice .video:last-child{margin:0 auto;}
.video_index{
position:relative;
width:100%;
margin:0;
padding:20px;
font-size:20px;
line-height:30px;
text-align:center;
font-weight:700;
color:#00008f;
background:#ca9e5b;
box-sizing:border-box;
}
.video_box{
position:relative;
width:100%;
max-width:690px;
max-height:388px;
margin:auto; 
padding-top:56.25%;
background:#666666;
}
.video_box iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
max-width:690px;
max-height:388px;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#voice{}
.video{margin:0 auto 40px auto;}
.video_index{
padding:20px 4%;
font-size:14px;
line-height:24px;
text-align:justify;
}
.video_index br{display:none;}
.video_box{}
.video_box iframe{}
}

/* ----------------------- CSS Information 
 Style Info: CURRICULUM
--------------------------------------- */
#section_curriculum{
padding:120px 0 0 0;
background:#002e6a url(../img/bg_02.png) no-repeat top center;
}
#section_curriculum h1.title{padding:0 0 120px 0;}
.curriculum{
position:relative;
width:100%;
margin:0;
padding:0;
}
.curriculum_box{
position:relative;
width:100%;
max-width:750px;
margin:0 auto;
padding:0 0 120px 0;
box-sizing:border-box;
}
.curriculum_img{
position:relative;
display:block;
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
}
.curriculum_img img{
position:relative;
width:100%;
margin:0 auto;
padding:0;
}
.curriculum_index{
width:100%;
margin:40px auto 0 auto;
padding:0 4%;
box-sizing:border-box;
}
.curriculum_index h2{
display:block;
margin:0 auto 20px auto;
padding:0;
width:120px;
height:40px;
font-size:18px;
line-height:39px;
text-align:center;
font-weight:700;
color:#3f4a7e;
background:#ca9e5b;
}
.curriculum_index p{
display:block;
width:100%;
margin:0 0 40px 0;
padding:0;
font-size:40px;
line-height:60px;
text-align:center;
font-weight:700;
color:#ffffff;
}
.curriculum_text{
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
font-size:18px;
line-height:30px;
color:#ffffff;
text-align:justify;
}
.curriculum_text ul{
margin:0;
padding:0;
}
.curriculum_text ul li{
position:relative;
margin:0 0 10px 0;
padding:0 0 10px 18px;
border-bottom:1px solid rgba(255,255,255,0.1);
}
.curriculum_text ul li:last-child{margin:0;}
.curriculum_text ul li:before{
content:"";
position:absolute;
left:0;
top:11px;
width:10px;
height:10px;
border-radius:50%;
background:#ca9e5b;
}
.curriculum_attention{
margin:60px 0;
padding:0;
color:#dddddd;
font-size:14px;
line-height:20px;
text-align:center;
}
.curriculum_time{
width:92%;
margin:0 auto;
padding:10px 0;
color:#ffffff;
font-size:16px;
line-height:20px;
text-align:center;
border:1px solid #ffffff;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
#section_curriculum{padding:40px 0 0 0;background:#002e6a url(../img/bg_02_sp.png) no-repeat top center;background-size:100% auto;}
#section_curriculum h1.title{padding:0 0 40px 0;}
.curriculum{}
.curriculum_box{padding:0 0 40px 0;}
.curriculum_img{}
.curriculum_img img{}
.curriculum_index{margin:30px auto 0 auto;}
.curriculum_index h2{margin:0 auto 20px auto;width:100px;height:30px;font-size:16px;line-height:29px;}
.curriculum_index p{margin:0 0 20px 0;font-size:20px;line-height:30px;}
.curriculum_text{font-size:14px;line-height:24px;text-align:justify;}
.curriculum_text ul{}
.curriculum_text ul li{padding:0 0 10px 14px;}
.curriculum_text ul li:last-child{margin:0;}
.curriculum_text ul li:before{top:8px;}
.curriculum_time{font-size:14px;}
}

/* ----------------------- CSS Information 
 Style Info: PRESENT
--------------------------------------- */
#present{
background:#000052 url(../img/present_bg.png) no-repeat center top;
}
.present_img{
display:block;
width:40%;
max-width:400px;
margin:0 auto;
}
@media only screen and (max-width:750px){
#present{
background:#000052 url(../img/present_bg.png) no-repeat center top;
background-size:cover;
}
.present_img{}
}

/* ----------------------- CSS Information 
 Style Info: SUPPORT
--------------------------------------- */
#support{padding:120px 0 0 0;background:#d5e7ef;}
#support .text{text-align:center;}
.support_img{
display:block;
width:100%;
max-width:750px;
margin:80px auto 0 auto;
}
@media only screen and (max-width:750px){
#support{padding:40px 0 0 0;}
#support .text{}
.support_img{margin:40px auto 0 auto;}
}

/* ----------------------- CSS Information 
 Style Info: FAQ
--------------------------------------- */
#faq{}
#faq input[type=checkbox]{display:none;}
#faq label{
position:relative;
display:block;
width:100%;
max-width:920px;
margin:0 auto;
padding:20px 40px 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:#eeeeee;
background-image:url(../img/faq_q.png);
background-size:30px 30px;
background-repeat:no-repeat;
background-position:20px 20px;
}
#faq label:hover{background-color:#f6f6f5;}
#faq input[type=checkbox]:checked + label{background-color:#f6f6f5;border-radius:10px 10px 0 0;}
#faq label:after{
content:"＋";
position:absolute;
display:block;
top:50%;
margin-top:-10px;
right:10px;
width:20px;
height:20px;
font-size:18px;
line-height:19px;
color:#000000;
}
#faq input[type=checkbox]:checked + label:after{content:"－";}
.faq_answer{
position:relative;
margin:0 auto 30px auto;
padding:0 20px 0 70px;
width:100%;
max-width:920px;
height:0;
font-size:16px;
line-height:30px;
text-align:justify;
transition:1s;
box-sizing:border-box;
background-color:#fbf0f1;
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 p{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 label{
padding:10px 26px 10px 40px;
font-size:14px;
line-height:20px;
border-radius:6px;
background-size:20px 20px;
background-position:10px 10px;
}
#faq label:after{
margin-top:-8px;
right:5px;
width:16px;
height:16px;
font-size:16px;
line-height:16px;
}
#faq input[type=checkbox]:checked + label:after{}
#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 br{display:none;}
#faq input[type=checkbox]:checked + label + .faq_answer{padding:8px 10px 20px 40px;}
}

/* ----------------------- CSS Information 
 Style Info: PROFILE
--------------------------------------- */
#profile{background:#f6f6f5;}
.profile_img{
display:block;
margin:0 auto;
padding:0;
width:100%;
max-width:690px;
}
.profile_box{
width:100%;
margin:0;
padding:40px 4%;
font-size:16px;
line-height:30px;
text-align:justify;
color:#333333;
background:#ffffff;
box-sizing:border-box;
}
.profile_box .name{
display:block;
font-size:30px;
line-height:40px;
margin:0 0 40px 0;
padding:0;
font-weight:900;
color:#000076;
}
.profile_box ul{margin:0 0 30px 0;padding:0;}
.profile_box p{margin:0;padding:0;}
.profile_box dl{margin:30px 0 0 0;}
.profile_box dt{
display:flex;
justify-content:center;
align-items:center;
margin:0 0 10px 0;
font-weight:700;
}
.profile_box dt:after{
content:"";
margin:0 0 0 10px;
border-top:2px solid #000076;
flex:1;
}
.profile_box dd{
margin:0;
padding:0;
font-size:16px;
line-height:30px;
text-align:justify;
color:#333333;
}
.book_img{
width:100%;
max-width:920px;
margin:0 auto;
}
.tv_img{
display:block;
width:100%;
max-width:920px;
margin:0 auto;
}
.media_img{
width:100%;
max-width:920px;
margin:0 auto;
}
@media only screen and (max-width:750px){
#profile{}
.profile_img{}
.profile_box{padding:30px 4%;font-size:14px;line-height:24px;}
.profile_box .name{font-size:20px;line-height:30px;margin:0 0 20px 0;text-align:center;}
.profile_box ul{margin:0 0 20px 0;padding:0;}
.profile_box p{margin:0;padding:0;}
.profile_box dl{margin:30px 0 0 0;}
.profile_box dt{}
.profile_box dt:after{border-top:1px solid #000076;}
.profile_box dd{font-size:14px;line-height:24px;}
}

/* ----------------------- CSS Information 
 Style Info: MESSAGE
--------------------------------------- */
#message{
position:relative;
padding:0;
background:linear-gradient(135deg,#e0e0df,#faf4ee);
}
.message_top{
width:100%;
height:120px;
position:relative;
overflow:hidden;
}
.message_top:before{
content:"";
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
background:rgba(0,0,183,0.7);
transform:skewY(-6deg) translateY(-100px);
}
.message_top:after{
content:"";
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
background:rgba(0,0,183,0.7);
transform:skewY(6deg) translateY(-100px);
}
.message_bottom{
width:100%;
height:120px;
position:relative;
overflow:hidden;
}
.message_bottom:before{
content:"";
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
background:rgba(0,0,183,0.7);
transform:skewY(6deg) translateY(100px);
}
.message_bottom:after{
content:"";
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
background:rgba(0,0,183,0.7);
transform:skewY(-6deg) translateY(100px);
}
.message_box{
z-index:10;
position:relative;
width:100%;
padding:60px 30px;
background:rgba(255,255,255,0.8);
box-sizing:border-box;
box-shadow:0 20px 10px -10px rgba(0,0,0,0.2);
}
.message_box .text{
line-height:40px;
text-align:justify;
background:url(../img/message_text_pc.png) repeat left top;
}
.message_box .text p{margin:0 0 40px 0;}
.message_box .text p:last-child{margin:0;}
@media only screen and (max-width:750px){
#message{box-shadow:inset 0 0 40px #ffffff;}
.message_box{padding:30px 4%;}
.message_box .text{line-height:30px;background:url(../img/message_text_sp.png) repeat left top;}
.message_box .text p{margin:0 0 30px 0;}
.message_top{height:40px;}
.message_top:before{transform:skewY(-6deg) translateY(-30px);}
.message_top:after{transform:skewY(6deg) translateY(-30px);}
.message_bottom{height:40px;}
.message_bottom:before{transform:skewY(6deg) translateY(30px);}
.message_bottom:after{transform:skewY(-6deg) translateY(30px);}
}

/* ----------------------- CSS Information 
 Style Info: CTA
--------------------------------------- */
.cta{
position:relative;
display:block;
width:100%;
margin:0;
padding:0 0 60px 0;
background:#1f253f url(../img/bg_cta_pc.png) no-repeat center top;
box-sizing:border-box;
}
.cta_img{
display:block;
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
}
.cta_box{
width:100%;
max-width:750px;
margin:0 auto;
padding:0;
box-sizing:border-box;
}
.cta_info{
width:100%;
margin:0 auto;
padding:0 4%;
box-sizing:border-box;
}
.payment{
width:100%;
max-width:600px;
margin:20px auto;
padding:0;
text-align:center;
color:#ffffff;
box-sizing:border-box;
}
.payment dt{
display:flex;
align-items:center;
justify-content:center;
font-size:16px;
line-height:30px;
color:#ffffff;
font-weight:700;
}
.payment dt:before,.payment dt:after{
content:"";
height:2px;
background:#ffffff;
flex:1;
}
.payment dt:before{margin-right:10px;}
.payment dt:after{margin-left:10px;}
.payment dd{
margin:0 0 30px 0;
padding:0;
font-size:16px;
line-height:30px;
text-align:left;
}
.payment_img{
display:block;
width:100%;
max-width:345px;
margin:5px auto;
padding:0;
}
.limit{
width:100%;
max-width:600px;
margin:30px auto 0 auto;
padding:10px 0;
font-size:20px;
line-height:30px;
color:#af1e26;
background:#000000;
box-sizing:border-box;
}
@media only screen and (max-width:750px){
.cta{padding:0 0 40px 0;background:#1f253f url(../img/bg_cta_sp.png) no-repeat center top;background-size:100% auto;}
.cta_img{}
.cta_box{}
.cta_info{}
.payment{}
.payment dt{font-size:14px;line-height:30px;}
.payment dd{font-size:14px;line-height:30px;margin:0 0 20px 0;}
.payment_img{}
.limit{margin:20px auto 0 auto;font-size:14px;}
}

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


/* ----------------------- CSS Information 
 Style Info: FOOTER
--------------------------------------- */
footer{
margin:0;
padding:40px 0 40px 0;
width:100%;
color:#eeeeee;
background:#1f253f;
}
footer a{color:#eeeeee;text-decoration:none;}
footer a:hover{color:#eeeeee;text-decoration:underline;}
#nav_footer{
display:block;
width:100%;
max-width:750px;
margin:0 auto;
}
#nav_footer ul{
display:flex;
flex-direction:row;
flex-wrap:nowrap;
justify-content:center;
align-items:flex-start;
width:100%;
text-align:center;
list-style-type:none;
}
#nav_footer ul li{
display:block;
font-size:12px;
line-height:20px;
margin:0;
padding:0 20px;
border-right:1px solid #ca9e5b;
}
#nav_footer ul li:last-child{border-right:none;}
footer small{
display:block;
margin:20px 0 0 0;
padding:0;
text-align:center;
font-size:12px;
line-height:20px;
}
@media only screen and (max-width:750px){
footer{}
#nav_footer{}
#nav_footer ul{flex-direction:column;}
#nav_footer ul li{width:100%;margin:0 0 20px 0;padding:0;border-right:none;}
#nav_footer ul li:last-child{border-right:none;}
footer small{margin:0;}
.sp_no{display:none;}
}

/* ----------------------- CSS Information 
 Style Info: btn_fixed
--------------------------------------- */
#btn_fixed{
position:fixed;
bottom:10px;
right:10px;
width:160px;
height:100px;
cursor:pointer;
z-index:100;
overflow:hidden;
}
#btn_fixed img{
width:100%;
box-shadow:0px 0px 4px 0px rgba(0,0,0,0.5);
}
@media only screen and (max-width:750px){
#btn_fixed{width:100px;height:62.5px;}
}