@charset "UTF-8";

/* ------------------------------------------- CSS Information 
 Style Info:     ブラウザスタイルのリセット設定
----------------------------------------------------------- */  
html{overflow-y: scroll;} 
body,div,blockquote,pre,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,table,th,td,form,input,textarea,fieldset{margin: 0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size: 100%;font-weight: normal;}
table{border-collapse: collapse;border-spacing: 0;}
caption, th{text-align: left;}   
img,abbr,acronym,fieldset{border: none;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
hr,legend{display: none;}
object,embed{vertical-align: top;} 

/* ------------------------------------------- CSS Information 
 Style Info:     基本設定
----------------------------------------------------------- */
/*A Style*/  
a:link{text-decoration:underline;color:#ffec47;}
a:visited{text-decoration:none;color:#ffec47;}
a:hover{text-decoration:underline;color:#ffec47;}
a:active{text-decoration:none;color:#ffec47;}
.b{font-weight:bold;}
.ul{text-decoration:underline;}
.bg{background-color:#fff45c;}
.red{color:#ff0000;}
.big{font-size:20px;line-height:30px;}
@media only screen and (max-width:640px){.big{font-size:16px;line-height:24px;}}

/* ------------------------------------------- CSS Information 
 Style Info:     セールスレター型ホームページ詳細設定
----------------------------------------------------------- */
body{  
font-family:"メイリオ",Osaka,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",Arial,Sans-Serif;
color:#333333;
font-size:16px;
line-height:0;
text-align:center;
letter-spacing:0em;
overflow:hidden;
}
body:before{  
background:url(../img/bg.png) no-repeat left top;
background-size:coutain;
display:block;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
content:"";
z-index:-1;
}

/*header----------*/
header{
margin:0;
width:100%;
background:url(../img/header_bg.png) no-repeat center;
text-align:center;
}

/*slide----------*/
.slide{
width:100%;
margin:0;
padding:0;
text-align:center;
background:url(../img/slide_bg.png) center top repeat-x;
background-size:auto 100%;
-webkit-animation: bgroop 60s linear infinite;
animation: bgroop 60s linear infinite;
}
@-webkit-keyframes bgroop{
from{background-position: 0  0;}
to{background-position: -1920px 0;}
}
@keyframes bgroop{
from{background-position: 0 0;}
to{background-position: -1920px 0;}
}

/*wrapper----------*/
.wrapper{
width:100%;
max-width:960px;
margin:0 auto;
}

/*title----------*/
.title{margin:40px auto 0 auto;}
@media only screen and (max-width:640px){.title{margin:20px auto 0 auto;}}

/*contents----------*/
.contents{
margin:0 3.125%;
padding:0;
box-sizing:border-box;
background:#ffffff;
}

/*textbox----------*/
.textbox{
margin:0;
padding:40px 3.125% 10px 3.125%;
text-align:justify;
font-size:16px;
line-height:30px;
box-sizing:border-box;
}
.textbox p{
margin:0;
padding:0 0 30px 0;
}
.textbox ul{
margin:0;
padding:0 0 30px 0;
}
.textbox li{
list-style:none;
font-weight:bold;
margin:0;
padding:20px 0 20px 23px;
border-bottom:1px dashed #c1a34d;
background:url(../img/list_01.png) left center no-repeat;
background-size:13px 30px;
}
.text_center{text-align:center;}
@media only screen and (max-width:640px){
.textbox{
padding:20px 3.125% 0 3.125%;
font-size:14px;
line-height:20px;
}
.textbox p{
margin:0;
padding:0 0 20px 0;
}
.textbox br{display:none;}
}

/*image----------*/
.photo{
display:block;
width:35%;
padding:0 0 20px 20px;
float:right;
background:#ffffff;
}
@media only screen and (max-width:767px){
.photo{
display:block;
float:none;
width:100%;
margin:0 auto;
padding:0 0 20px 0;
}
}

/*recommend----------*/
.recommend{
margin:0 3.125%;
padding:0 3.125% 20px 3.125%;
box-sizing:border-box;
background:#ffffff;
}
.list_recommend{
margin:0;
padding:20px 0;
text-align:justify;
font-size:20px;
line-height:30px;
box-sizing:border-box;
}
.list_recommend li{
list-style:none;
font-weight:bold;
margin:0;
padding:20px 0 20px 23px;
border-bottom:1px dashed #c1a34d;
background:url(../img/list_01.png) left center no-repeat;
background-size:13px 30px;
}
@media only screen and (max-width:767px){
.list_recommend{
margin:0;
padding:0;
text-align:justify;
font-size:16px;
line-height:20px;
box-sizing:border-box;
}
.list_recommend li{
list-style:none;
font-weight:bold;
margin:0;
padding:20px 0 20px 23px;
border-bottom:1px dashed #c1a34d;
background:url(../img/list_01.png) left center no-repeat;
background-size:13px 30px;
}
}

/*point----------*/
.point{
margin:0 3.125%;
padding:0 0 40px 0;
box-sizing:border-box;
background:rgba(0,0,0,0.5);
border:solid 3px #ffffff;
}
@media only screen and (max-width:640px){.point{padding:0 0 20px 0;border:solid 1px #ffffff;}}

/*program----------*/
#program{
margin:0 3.125%;
padding:0 0 1px 0;
box-sizing:border-box;
background:#ffffff;
}
.program_text{
margin:0 0 40px 0;
padding:30px 3.125% 0 3.125%;
text-align:left;
font-size:16px;
line-height:30px;
box-sizing:border-box;
border-left:3px solid #ee3a29;
border-right:3px solid #cf2515;
background:url(../img/program_border.png) left bottom no-repeat;
background-size:100% 3px;
}
.program_text p{
margin:0;
padding:0 0 30px 0;
}
.program_img{
display:block;
width:100%;
margin:0 auto;
padding:0 0 40px 0;
}
@media only screen and (max-width:640px){
.program_text{
margin:0 0 20px 0;
padding:20px 3.125% 0 3.125%;
text-align:justify;
font-size:14px;
line-height:24px;
box-sizing:border-box;
border-left:1px solid #ee3a29;
border-right:1px solid #cf2515;
background:url(../img/program_border.png) left bottom no-repeat;
background-size:100% 1px;
}
.program_text p{
margin:0;
padding:0 0 20px 0;
}
.program_img{
display:block;
width:100%;
margin:0 auto;
padding:0 0 30px 0;
}
.program_text br{display:none;}
}

/*----- curriculum -----*/
.curriculum{
width:100%;
padding:0 0 40px 0;
text-align:left;
box-sizing:border-box;
}
.curriculum_table{
margin:0;
border:1px solid #666666;
width:100%;
}
.curriculum_table th{
width:40px;
text-align:center;
padding:10px;
font-size:14px;
font-weight:bold;
line-height:20px;
color:#ffffff;
background:#ee3a29;
border-bottom:1px solid #666666;
box-sizing:border-box;
}
.curriculum_table td{
font-size:16px;
line-height:20px;
padding:10px;
border:1px solid #666666;
box-sizing:border-box;
}
.curriculum p{
margin:0;
padding:10px 0 0 0;
font-size:14px;
line-height:20px;
}
@media only screen and (max-width:640px){
.curriculum{padding:0 0 20px 0;}
.curriculum p{font-size:12px;}
.curriculum_table td{
font-size:14px;
line-height:20px;
}
}


/*----- outline -----*/
.outline{
margin:0 3.125%;
padding:40px 0;
background:#ffffff;
}
.outline_box{
margin:0;
padding:0 3.125%;
width:100%;
box-sizing:border-box;
}
.outline_box a{color:#666666;}
.outline_box dt{
width:100%;
font-size:14px;
font-weight:bold;
line-height:20px;
text-align:left;
padding:10px;
background:#333333;
color:#f3f3f3;
box-sizing:border-box;
}
.outline_box dd{
width:100%;
font-size:14px;
line-height:20px;
text-align:left;
padding:10px 0 20px 0;
background:#ffffff;
box-sizing:border-box;
}
.outline_table{width:100%; margin:0 0 10px 0;border:1px solid #666666;}
.outline_table th{
padding:10px;
color:#ffffff;
background:#ee3a29;
border-bottom:1px solid #666666;
box-sizing:border-box;
}
.outline_table td{
padding:10px;
border:1px solid #666666;
box-sizing:border-box;
}
.schedule th{width:160px;text-align:center;}
.schedule td{font-weight:bold;}

@media only screen and (max-width:640px){
.outline{padding:20px 0;}
.outline_table{width:100%;}
.outline_table th{
display:block;
width:100%;
float:none;
padding:10px;
border-bottom:1px solid #ffffff;
box-sizing:border-box;
}
.outline_table td{
display:block;
width:100%;
float:none;
padding:10px 10px 20px 10px;
border:none;
box-sizing:border-box;
}
.program th{
display:table_cell;
width:30px;
height:30px;
line-height:30px;
float:left;
margin:0 10px 10px 0;
padding:0;
}
.outline_table.program td{
display:table_cell;
margin:0;
padding:0;
line-height:30px;
}
.instructor th{width:100%;text-align:left;}
.payment th{width:100%;text-align:left;}
}


/*faq----------*/
.faq{
width:100%;
padding:0;
box-sizing:border-box;
text-align:justify;
}
.faq_text{
width:100%;
margin:0;
padding:0 0 1px 0;
box-sizing:border-box;
}
.faq_text dt.q_pc{
width:100%;
margin:0;
padding:20px 50px;
font-size:16px;
line-height:20px;
color:#ffffff;
font-weight:bold;
box-sizing:border-box;
position:relative;
background:#000000 url(../img/q.png) no-repeat left top;
background-size:40px auto;
}
.faq_text dt.q_sp{display:none;}
.faq_text dd{
font-size:16px;
line-height:24px;
text-align:justify;
margin:0 0 20px 0;
padding:20px 10px 20px 50px;
box-sizing:border-box;
background:url(../img/a.png) no-repeat left top;
background-size:40px auto;
}
@media only screen and (max-width:640px){
.faq_text dt.q_pc{display:none;}
.faq_text dt.q_sp{
display:block;
width:100%;
margin:0 0 20px 0;
padding:20px 40px 20px 50px;
font-size:14px;
line-height:20px;
color:#ffffff;
font-weight:bold;
box-sizing:border-box;
cursor:pointer;
position:relative;
background:url(../img/q.png) no-repeat left top,url(../img/open.png) no-repeat right center,#000000;
background-size:40px auto,40px 40px;
}
.faq_text dt.open{
background:url(../img/q.png) no-repeat left top,url(../img/close.png) no-repeat right center,#000000;
background-size:40px auto,40px 40px;
}
.faq_text dd{
font-size:14px;
line-height:20px;
text-align:justify;
margin:0 0 20px 0;
padding:0;
display:none;
background:none;
}
.faq_text br{display:none;}
}



/*movie----------*/
.movie{
margin:0 3.125%;
padding:40px 3.125%;
box-sizing:border-box;
background:#ffffff;
}
.moviebox{
position:relative;
width:100%;
max-width:900px;
max-height:506px;
margin:0 auto; 
padding-top:56.25%;
}
.moviebox iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
max-width:900px;
max-height:506px;
box-sizing:border-box;
}
@media only screen and (max-width:640px){.movie{padding:20px 3.125%;}}

/*cta----------*/
.cta{
margin:0;
padding:0 3.125% 60px 3.125%;
box-sizing:border-box;
text-align:center;
}
.btn{
display:block;
margin:0 auto 20px auto;
width:100%;
max-width:720px;
} 
.time{
display:block;
width:100%;
max-width:720px;
margin:0 auto;
font-size:20px;
line-height:30px;
padding:20px;
text-align:center;
color:#ffffff;
font-weight:bold;
background:#ee3a29;
border:2px solid #ffffff;
box-sizing:border-box;
}

@media only screen and (max-width:640px){
.cta{padding:0 3.125% 40px 3.125%;}
.btn{
display:block;
margin:0 auto 20px auto;
width:100%;
} 
.time{
font-size:13px;
padding:5px;
border:1px solid #ffffff;
}
}

/*footer----------*/
footer{
margin:0;
padding:30px 0;
width:100%;
font-size:12px;
color:#f5f5f5;
background:#000000;
border-top:1px solid #555555;
}
nav{
margin:0 auto;
padding:0 0 30px 0;
}
nav ul{
text-align:center;
font-size:12px;
line-height:20px;
padding:0 0 0 20px;
}
nav li{
display:-moz-inline-box;
display:inline-block;
/display:inline;
/zoom:1;
list-style-type:none;
padding: 0 20px 0 8px;
background: url(../img/footer.png) no-repeat left center;
}
nav a:link{color:#ffffff;text-decoration:none;}
nav a:visited{color:#eeeeee;text-decoration:none;}
nav a:hover{color:#eeeeee;text-decoration:underline;}
nav a:active{color:#eeeeee;text-decoration:none;}
.attention{
margin:0 auto;
padding:0 10px 20px 10px;
max-width:940px;
text-align:center;
font-size:12px;
line-height:20px;
}
.attention p{margin:0;padding:10px 0;}
address{
font-size:12px;
line-height:20px;
padding: 5px 15px;
}
@media only screen and (max-width:767px){
nav{
margin:0 auto 20px auto;
padding:0 0 30px 0;
}
nav ul{
text-align:center;
font-size:12px;
line-height:30px;
padding:0 0 0 20px;
}
nav li{
display:block;
/display:block;
/zoom:1;
list-style-type:none;
padding: 0;
background:none;
}
.attention{
margin:0 auto;
padding:0 10px 20px 10px;
max-width:940px;
text-align:justify;
font-size:12px;
line-height:20px;
}
.attention br,.sp_no{display:none;}
}

.pc{width:100%;max-width:960px;display:block;margin:0 auto;}
.sp{width:100%;max-width:640px;display:none;margin:0 auto;}
@media only screen and (max-width:640px){
.pc{display:none;}
.sp{display:block;}
}