@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(max-width:999px){

/*STYLE*/
.pc {
display:none;
}

.cts {
width:94%;
margin:auto;
}

section {
border:#d2c8b4 1px solid;
background:#fff;
padding:20px 20px;
}

p {
font-size:110%;
line-height:180%;
letter-spacing:1px;
}

.ex {
}

.ex p {
padding-bottom:20px;
}

.ex p:last-child {
padding-bottom:0;
}

.ex .attention {
font-size:80%;
display:flex;
}

.connect {
width:90%;
margin:auto;
padding:20px 0;
}

.subitem {
border-top:#d2c8b4 3px solid;
border-bottom:#d2c8b4 3px solid;
padding:12px 0;
margin-bottom:15px;
text-align:center;
}


/*COUNTDOWN*/
#count {
width:100%;
height:40px;
background:#e50012;
position:fixed;
top:0;
z-index:999;
display:flex;
justify-content:center;
align-items:center;
}

#count .timer {
width:100%;
margin:0 auto;
color:#fff;
font-size:90%;
font-weight:bold;
letter-spacing:0;
text-align:center;
font-family:"Lucida Grande", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, sans-serif;
}



/*MV*/
#mv {
width:100%;
background:#fff url(../img/mv_bg.jpg) top center;
padding:6px 0;
margin:40px 0 0;
display:flex;
justify-content:center;
align-items:center;
border-top:#fff 6px solid;
border-bottom:#fff 6px solid;
}

#mv h1 {
width:50%;
margin:0 auto 15px;
padding-top:20px;
}

#mv .title {
width:100%;
margin:0 auto 30px;
}

#mv .copy {
width:100%;
margin:auto;
padding-bottom:20px;
}



/*INTRO*/
#intro {
padding:20px 0 20px;
}

#intro section {
margin-bottom:20px;
}

#intro .intro_titles {
}

#intro .intro_titles .logo {
width:55%;
margin:0 auto 7px;
}

#intro .intro_titles .title {
width:90%;
margin:0 auto;
}



/*COURSE*/
#course {
}

#course section {
padding:0;
}

#course .limited {
margin:20px 0 20px;
}

#course .bar {
background:#004696 url(../img/course_bar_bg.png);
padding:10px 10px;
text-align:center;
}

#course .bar img {
width:80%;
vertical-align:top;
}


/*COURSE PROGRAM*/
#course #program {
padding:20px 20px;
}

#course #program h2 {
width:90%;
margin:0 auto 20px;
}

#course #program h2 .underline {
border-bottom:#e50012 5px solid;
padding-bottom:5px;
}

#course #program .programs {
padding:50px 0 30px;
}

#course #program .programs .program {
margin-bottom:30px;
}

#course #program .programs .program:last-child {
margin-bottom:0;
}

#course #program .programs .program .program_title {
display:flex;
justify-content:space-between;
align-items:center;
border-bottom:#004696 5px solid;
}

#course #program .programs .program .program_title .number {
width:20%;
}

#course #program .programs .program .program_title h3 {
width:77%;
}

#course #program .programs .program .program_cts {
border:#004696 1px solid;
border-top:none;
background:#fff url(../img/program_bg.png);
padding:20px 20px;
}

#course #program .programs .program .program_cts .details {
margin-bottom:20px;
}

#course #program .programs .program:nth-child(odd) .program_cts .details {
flex-direction:row-reverse;
}

#course #program .programs .program .program_cts .details .photo {
width:100%;
background:#fff;
padding:10px;
border:#d2c8b4 1px solid;
margin-bottom:20px;
}

#course #program .programs .program .program_cts .details .photo img {
}

#course #program .programs .program .program_cts .details .detail {
width:100%;
}

#course #program .programs .program .program_cts .list {
padding-bottom:20px;
}

#course #program .programs .program .program_cts .list p {
padding-bottom:0;
display:flex;
}





/*BENEFIT*/
.benefit {
margin:60px 0 20px;
border:#e5b907 3px solid;
background:url(../img/benefit_bg.png);
padding:95px 20px 20px;
position:relative;
}

.benefit .title {
width:80%;
position:absolute;
top:-25px;
left:0;
right:0;
margin:auto;
}

.benefit .presents {
}

.benefit .presents .present {
padding-bottom:40px;
}

.benefit .presents .present:last-child {
padding-bottom:0;
}

.benefit .presents .present .present_title {
display:flex;
justify-content:space-between;
align-items:center;
border-bottom:#e5b907 4px solid;
margin-bottom:15px;
position:relative;
padding-bottom:7px;
}

.benefit .presents .present .present_title .number {
width:27%;
}

.benefit .presents .present .present_title h3 {
width:70%;
}

.benefit .presents .present .benefit_cts {
}

.benefit .presents .present .benefit_cts .details {
padding-bottom:30px;
}

.benefit .presents .present:nth-child(even) .benefit_cts .details {
}

.benefit .presents .present .benefit_cts .details .photo {
width:100%;
background:#fff;
padding:10px;
border:#d2c8b4 1px solid;
margin-bottom:20px;
}

.benefit .presents .present .benefit_cts .details .detail {
width:100%;
}



/*AFTER SUPPORT*/
.after_support {
padding:50px 0 0;
}

.after_support .item {
width:100%;
margin:0 auto 30px;
}



/*PRICE*/
#price {
}

#price .titlebar {
background:#fff url(../img/title_bar.png);
border:#d2c8b4 1px solid;
border-bottom:none;
padding:24px 0 20px;
text-align:center;
position:relative;
}

#price .titlebar:before {
content:"";
width:100%;
height:4px;
background:#e50012;
position:absolute;
top:0;
left:0;
}

#price .titlebar img {
width:70%;
}

#price .split {
padding-top:50px;
}

#price .split .subitem img {
width:80%;
vertical-align:middle;
}

#price .support {
padding-top:50px;
}

#price .support .subitem img {
width:80%;
}



/*BENEFIT*/
#benefit {
padding-bottom:20px;
}

#benefit .limited {
margin:50px 0 0;
}

#benefit section {
padding-bottom:20px;
}

#benefit .titlebar {
background:#fff url(../img/title_bar.png);
border:#d2c8b4 1px solid;
border-bottom:none;
padding:24px 0 20px;
text-align:center;
position:relative;
}

#benefit .titlebar:before {
content:"";
width:100%;
height:4px;
background:#b49632;
position:absolute;
top:0;
left:0;
}

#benefit .titlebar img {
width:80%;
}

#benefit .benefit {
margin-top:70px;
}



/*CTA*/
.cta {
margin-bottom:20px;
}

.cta .cts {
background:#fff url(../img/app_bg.png);
border:#004696 1px solid;
padding:24px 20px 20px;
position:relative;
}

.cta .cts .line {
width:100%;
height:4px;
background:#004696;
position:absolute;
top:0;
left:0;
}

.cta .cts .titles {
padding-bottom:15px;
}

.cta .cts .titles .title {
width:100%;
margin:0 auto 15px;
}

.cta .cts .titles .prices {
}

.cta .cts .titles .prices .price {
width:40%;
margin:0 auto;
}

.cta .cts .titles .prices .split {
width:70%;
margin:auto;
}

.cta .cts .btns {
}

.cta .cts .btns .btn {
width:100%;
}

.cta .cts .btns .btn:first-child {
margin-bottom:15px;
}



/*PAY*/
#pay {
margin-bottom:20px;
}

#pay section {
padding:0;
}

#pay .bar {
background:#004696 url(../img/pay_bar_bg.png);
padding:10px 10px;
border-bottom:#d2c8b4 1px solid;
text-align:center;
}

#pay .bar img {
width:75%;
vertical-align:middle;
}

#pay .pay {
padding:20px 20px;
}

#pay .pay .credit {
padding-bottom:30px;
}

#pay .pay .credit .subitem img {
width:80%;
}

#pay .pay .credit .cards {
width:80%;
margin:0 auto 20px;
}

#pay .pay .credit .attention p {
display:flex;
}

#pay .pay .contact {
padding-bottom:20px;
}

#pay .pay .contact .copy {
border:#ca312c 3px solid;
padding:15px 0 0 10px;
margin-bottom:20px;
}

#pay .pay .contact .ex {
padding-bottom:35px;
}

#pay .pay .contact .ex .list {
}

#pay .pay .contact .ex .list p {
display:flex;
padding-bottom:0;
}

#pay .pay .contact .tel {
width:100%;
margin:0 auto 35px;
}

#pay .pay .promise {
}

#pay .pay .promise img {
width:50%;
}

#pay .pay .promise .ex p {
display:flex;
}



/*LETTER*/
#letter {
margin-bottom:20px;
}

#letter .cts {
background:url(../img/letter.jpg);
border:#fff 7px solid;
padding:35px 20px 20px;
box-shadow:0 0 10px rgba(0,0,0,0.1);
}

#letter h2 {
width:25%;
margin:0 auto 25px;
}

#letter h2 .underline {
border-bottom:#e50012 4px solid;
padding-bottom:7px;
}

#letter .sign {
width:40%;
margin:50px 0 0 auto;
}




/*PRESENT*/
#present {
background:#000;
padding:20px 20px 20px;
}

#present .present_title {
width:100%;
margin:0 auto 10px;
}

#present .present_copy {
width:100%;
margin-bottom:10px;
}

#present .present_limited {
margin-bottom:15px;
}

#present .present_detail {
width:100%;
margin:0 auto 20px;
background:#fff;
padding:20px 15px 20px;
}

#present .present_detail h3 {
font-size:120%;
font-weight:bold;
text-align:center;
position:relative;
display:flex;
justify-content:center;
align-items:center;
padding-bottom:15px;
}

#present .present_detail h3:before ,
#present .present_detail h3:after {
}

#present .present_detail h3:before {
left: 0;
}

#present .present_detail h3:after {
right: 0;
}

#present .present_detail .subcopy {
text-align:center;
padding-bottom:30px;
}

#present .present_detail .schedules {

}

#present .present_detail .schedules .schedule {
margin-bottom:40px;
}

#present .present_detail .schedules .schedule:nth-child(even) {
flex-direction:row-reverse;
}

#present .present_detail .schedules .schedule .photo {
width:100%;
}

#present .present_detail .schedules .schedule .details {
width:100%;
padding-bottom:10px;
}

#present .present_detail .schedules .schedule .details .number {
line-height:150%;
}

#present .present_detail .schedules .schedule .details h4 {
font-size:110%;
font-weight:bold;
border-bottom:#e60012 1px solid;
padding-bottom:5px;
margin-bottom:5px;
}

#present .present_detail .schedules .schedule .details .detail {
font-size:90%;
}

#present .present_detail .schedules .schedule .details .detail:before {
content:"●";
color:#e60012;
padding-right:5px;
}

#present .present_detail .attention {
}

#present .summary {
color:#fff;
text-align:center;
}



/*ROW*/
#row {
margin-bottom:25px;
}

#row h2 {
background:#fff url(../img/row_bar_bg.png);
border:#d2c8b4 1px solid;
border-top:none;
border-bottom:none;
padding:20px;
text-align:center;
}

#row h2 img {
width:80%;
}

#row section {
padding:20px;
}

#row table {
width:100%;
border-collapse:collapse;
border:#d2c8b4 1px solid;
}

#row table tr {
}

#row table th {
width:30%;
border:#d2c8b4 1px solid;
background:#f6f4f0;
padding:10px 10px;
font-size:80%;
font-weight:bold;
}

#row table td {
border:#d2c8b4 1px solid;
padding:10px 10px;
font-size:80%;
}



/*TERMS*/
.terms {
padding-bottom:50px;
}

.terms .item {
font-size:90%;
font-weight:bold;
}

.terms .txt {
font-size:90%;
}



/*LINKS*/
#links {
padding-bottom:25px;
}

#links .cts {
display:flex;
justify-content:center;
}

#links .cts a {
text-decoration:none;
}

#links .cts p {
font-size:80%;
}

#links .cts a p {
font-size:80%;
font-weight:bold;
}




/*FOOTER*/
footer {
width:100%;
background:#000;
padding:20px 0;
}

footer .copyright {
width:100%;
margin:auto;
color:#fff;
text-align:center;
font-size:70%;
}






}