@charset "utf-8";

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

@media(min-width:960px){

/* common */
.sp {
display:none;
}

.tx {
padding-bottom:1em;
}

.txend {
padding-bottom:2em;
}

.btn_activity {
text-align:center;
}


/* header */
header {
background:#fff;
width:100%;
height:52px;
z-index:1 !important;
box-shadow:0 0 15px #c8c8c8;
}

header .cts {
width:960px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
}

header .logo {
width:133px;
float:left;
padding:8px 0 12px;
}

header .logo img {
width:100%;
}

header .contact {
}

header .contact .tel {
width:200px;
float:left;
padding:2px 0;
}

header .contact .tel img {
width:100%;
}

header .contact .app {
width:160px;
float:right;
}


/*main_movie*/
.container {
width:100%;
height:600px;
overflow:hidden;
}

.container .movie_area {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
background:url(../img/main_bg.png);
}

.container .movie_area .movie {
position:absolute;
width:100%;
height:600px;
overflow:hidden;
top:0;
left:0;
z-index:-1;
}

.container .movie_area .movie video {
width:100%;
position:absolute;
}

.container .movie_area .main_cts {
position:absolute;
width:980px;
margin:auto;
left:0;
right:0;
}

.container .movie_area .main_cts .main_copy {
position:absolute;
width:480px;
right:0;
}

.container .movie_area .main_cts img {
width:100%;
}



/*MV*/
#mv {
width:100%;
height:600px;
background:url(../img/mv_bg.jpg) center;
background-size:cover;
text-align:center;
position:relative;
overflow:hidden;
}

#mv .mv {
position:absolute;
left:0;
right:0;
margin:auto;
}

#mv .mv img {
height:600px;
}

#mv .cta {
width:450px;
position:absolute;
bottom:30px;
left:0;
right:0;
margin:auto;
-webkit-animation:cta 1s ease infinite alternate;
animation:cta 1s ease  infinite alternate;
}

#mv .cta img {
width:100%;
height:auto;
}

@keyframes cta {
0%{transform:scale(1);}
100%{transform:scale(1.05);}
}



/* movie */
.intro {
background:url(../img/bg_type1.png);
padding:50px 0 70px;
}

.intro .movie {
width:960px;
margin:auto;
}

.intro .movie .movie_title {
text-align:center;
padding-bottom:10px;
}

.intro .movie .cap {
font-size:110%;
font-weight:bold;
text-align:center;
padding-bottom:15px;
}

.youtube {
position:relative;
width:100%;
padding-top:55%;
}

.youtube iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
padding:1px;
background:#000;
box-sizing:border-box;
}


/*about*/
.about {
width:960px;
margin:auto;
padding:20px 0 50px;
}

.about_title {
width:100%;
background:#dc0000;
padding:35px 0 30px;
text-align:center;
}

.about_title img {
width:1000px;
height:auto;
}

.about .about_photo {
text-align:center;
padding-bottom:20px;
}

.about .about_copy {
text-align:center;
padding-bottom:20px;
}



/*CURRICULUM*/
#curriculum {
background:#f0ebe6;
margin-bottom:70px;
}

#curriculum .cts {
width:800px;
margin:auto;
padding:70px 0;
}

#curriculum .curriculum_title {
width:320px;
margin:0 auto 30px;
}

#curriculum .curriculum_title img {
width:100%;
height:auto;
}

#curriculum .details {
}

#curriculum .details .detail {
background:#fff;
display:flex;
align-items:center;
margin-bottom:15px;
padding:15px 30px;
}

#curriculum .details .detail:last-child {
margin-bottom:0;
}

#curriculum .details .detail img {
width:50px;
}

#curriculum .details .detail .ex {
margin-left:15px;
font-size:135%;
font-weight:bold;
}



/*SEMINAR CTA*/
#seminar_cta.anchor {
padding-top:90px;
margin-top:-90px;
}


/*seminar*/
.seminar_frame {
background:url(../img/line_r.png);
padding:5px 0;
}

.seminar_area {
background:#f0ebe6;
padding:50px 0 30px;
}

.seminar {
width:960px;
margin:0 auto 30px;
padding:0 30px 25px;
background:#fff;
border-radius:10px;
box-shadow:0 0 15px #c8c8c8;
}

.seminar img {
width:100%;
}

.seminar .holding_area {
width:100px;
float:left;
background:url(../img/seminar_area.png);
background-size:100% 100%;
}

.seminar .holding_area .area {
height:120px;
text-align:center;
color:#fff;
padding-top:40px;
font-size:90%;
letter-spacing:0;
}

.seminar .holding_area .area .online {
letter-spacing:-2px;
transform:scale(0.9,1);
display:block;
}

.seminar .ex_area {
width:770px;
float:right;
padding:20px 0 20px;
}

.seminar .ex_area .title_area {
border-bottom:#d2d2d2 1px solid;
margin-bottom:10px;
padding-bottom:10px;
}

.seminar .ex_area .title {
width:550px;
float:left;
}

.seminar .ex_area .parts {
width:200px;
float:right;
text-align:right;
}

.seminar .ex_area .parts .access {
text-align:right;
padding-bottom:10px;
}

.seminar .ex_area .parts .access img {
width:180px;
}

.seminar .ex_area .parts .price {
text-align:right;
font-size:80%;
}

.seminar .ex_area .ex {
font-size:100%;
}

.btn_app {
width:380px;
margin:auto;
padding-bottom:10px;
}

.seminar .ex_area .title_area .title .date {
color:#003278;
font-weight:bold;
font-size:180%;
}

.seminar .ex_area .title_area .title .place {
font-weight:bold;
}

.seminar .seminar_attention {
font-size:90%;
text-align:center;
}

.seminar .seminar_note {
width:640px;
margin:0 auto 10px;
font-size:80%;
border:#ccc 1px dotted;
padding:10px 20px;
color:#666;
border-radius:10px;
}

.seminar .seminar_benefits {
text-align:center;
font-weight:bold;
background:#ffdc00;
padding:12px;
margin:0 auto 30px;
width:640px;
border-radius:10px;
position:relative;
}

.seminar .seminar_benefits:after {
width:0;
height:0;
border-top:#ffdc00 20px solid;
border-right:40px solid transparent;
border-bottom:20px solid transparent;
border-left:40px solid transparent;
position:absolute;
display:block;
content:"";
left:0;
right:0;
margin:auto;
bottom:-40px;
}

.seminar .seminar_benefits .benefits_title {
} 

.seminar .seminar_benefits .benefits_present {
font-size:100%;
color:#dc0000;
}


/*point*/
.point {
background:url(../img/point_bg.png);
padding:50px 0;
}

.point .point_title {
text-align:center;
padding-bottom:15px;
}

.point .point_area {
width:960px;
margin:auto;
}

.point .point_area img {
width:100%;
}

.point .point_area .point_l {
width:300px;
float:left;
margin-right:30px;
}

.point .point_area .point_r {
width:300px;
float:right;
}

.point .point_number {
width:146px;
margin:auto;
}

.point .point_area .point_cts {
width:300px;
border:#dc0000 1px dotted;
background:#fff;
}

.point .point_area .point_cts p {
line-height:150%;
}

.point .point_area .point_cts .ex_area_top {
padding:15px 20px 10px;
}

.point .point_area .point_cts .ex_area_bottom {
padding:15px 20px 20px;
height:25em;
overflow:hidden;
}

.point .point_area .point_cts .point_theme {
color:#dc0000;
font-weight:bold;
font-size:100%;
text-align:center;
}

.point .point_area .point_cts .point_ex p {
font-size:90%;
}


/*appearance*/
.appearance_title {
width:100%;
background:#329600;
padding:30px 0;
text-align:center;
}

.appearance {
background:url(../img/bg_type1.png);
padding:50px 0 20px;
}

.appearance .appearance_area {
width:960px;
margin:auto;
}

.appearance .appearance_area img {
width:100%;
}

.appearance .appearance_area .appearance_l {
width:300px;
float:left;
margin-right:30px;
}

.appearance .appearance_area .appearance_r {
width:300px;
float:right;
}

.appearance .appearance_area .appearance_cts {
width:300px;
border:#b4b4b4 1px dotted;
background:#fff;
margin-bottom:30px;
}

.appearance .appearance_area .appearance_cts .appearance_ex {
padding:15px 20px;
}

.appearance .appearance_area .appearance_cts .appearance_ex .appearance_time {
font-family: 'Arvo', serif;
color:#b4b4b4;
font-size:300%;
line-height:120%;
}

.appearance .appearance_area .appearance_cts .appearance_ex .appearance_cap {
font-size:100%;
}


/*result*/
.result {
background:url(../img/bg_type2.png);
padding:50px 0;
margin-top:50px;
}

.result .result_title {
padding-bottom:30px;
text-align:center;
}

.result .result_title img {
width:800px;
}

.result .rows {
width:960px;
margin:auto;
padding-bottom:20px;
}

.result .rows_end {
padding-bottom:50px;
}

.result .rows img {
width:100%;
}

.result .result_cts {
width:460px;
margin-right:20px;
border:#e1e1e1 1px solid;
box-sizing:border-box;
float:left;
}

.result .result_end {
margin-right:0;
}


/*message*/
.message {
padding:50px 0;
}

.message .message_area {
width:980px;
margin:auto;
}

.message .message_area .message_l {
width:700px;
float:left;
}

.message .message_area .message_r {
width:280px;
float:right;
}

.message .message_area .message_l .message_ex {
padding:10px 20px 0 10px;
font-size:90%;
}

.message .message_area .message_about {
background:url(../img/message_bg.png);
border-radius:10px;
padding:25px 30px;
margin-bottom:30px;
}

.message .message_area .message_about .message_about_title {
font-weight:bold;
color:#dc0000;
padding-bottom:5px;
}

.message .message_area .message_about .message_about_ex {
font-size:100%;
}

.message .message_area .benefits {
background:#ffdc00;
padding:35px 50px;
border-radius:10px;
}

.message .message_area .benefits .title {
width:750px;
margin:0 auto 20px;
}

.message .message_area .benefits .title img {
width:100%;
}

.message .message_area .benefits .presents {
display:flex;
justify-content:space-between;
align-items:center;
}

.message .message_area .benefits .presents .present {
width:420px;
}

.message .message_area .benefits .presents .present img {
width:100%;
height:auto;
}

.message .message_area .benefits .presents .ex {
width:450px;
}

.message .message_area .benefits .summary {
font-size:180%;
font-weight:bold;
text-align:center;
padding-top:20px;
}



/*faq*/
.faq_title {
width:100%;
background:#6e5aa0;
padding:30px 0;
text-align:center;
}

.faq {
padding:50px 0 20px;
}

.faq .faq_area {
width:960px;
margin:auto;
}

.faq .faq_area .faq_cts {
margin-bottom:50px;
}

.faq .faq_area .faq_cts .question {
color:#6e5aa0;
font-weight:bold;
border-bottom:#d2d2d2 2px solid;
padding-bottom:5px;
margin-bottom:7px;
}

.faq .faq_area .faq_cts .question .ql {
width:40px;
float:left;
text-align:center;
}

.faq .faq_area .faq_cts .question .qr {
width:920px;
float:right;
}

.faq .faq_area .faq_cts .answer {
font-size:90%;
}

.faq .faq_area .faq_cts .answer .al {
width:40px;
float:left;
text-align:center;
font-weight:bold;
}

.faq .faq_area .faq_cts .answer .ar {
width:920px;
float:right;
}


/*attention*/
.attention {
background:#f0f0f0;
padding:50px 0 30px;
}

.attention .attention_title {
text-align:center;
padding-bottom:30px;
font-weight:bold;
font-size:150%;
}

.attention .attention_area {
width:960px;
margin:0 auto 20px;
background:#fff;
border-radius:10px;
padding:30px 35px;
}

.attention .attention_subtitle {
font-weight:bold;
font-size:110%;
padding-bottom:5px;
}

.attention .attention_ex {
font-size:100%;
}


/*footer*/
footer {
}

footer .footer_area {
width:960px;
margin:auto;
text-align:center;
padding:20px 0 15px;
}

footer .links {
font-size:90%;
padding-bottom:20px;
}

footer .copyright {
font-size:90%;
color:#b4b4b4;
}


/* row & privacy policy */
.under {
background:url(../img/bg_type1.png);
padding:50px 0 0;
}

.under .under_title_area {
font-weight:bold;
width:960px;
margin:auto;
text-align:center;
padding-bottom:40px;
}

.under .under_title {
font-size:210%;
}

.under .under_subtitle {
font-size:120%;
}

.under .row_area {
width:960px;
margin:0 auto 50px;
font-size:80%;
}

.under .row_area .row_cts {
border-bottom:#b4b4b4 1px solid;
padding-bottom:10px;
margin-bottom:10px;
}

.under .row_area .row_cts_top {
border-top:#b4b4b4 1px solid;
padding-top:10px;
}

.under .row_area .row_cts .item {
width:180px;
float:left;
padding-left:10px;
font-weight:bold;
}

.under .row_area .row_cts .detail {
width:750px;
float:right;
}

.under .privacy_area {
width:960px;
margin:0 auto 50px;
font-size:80%;
}

.under .privacy_area .privacy_cts {
border-bottom:#b4b4b4 1px solid;
padding-bottom:15px;
margin-bottom:15px;
}

.under .privacy_area .privacy_cts p {
padding-left:5px;
}

.under .privacy_area .privacy_cts .privacy_title {
font-weight:bold;
}


/*campaign*/
.campaign {
background:#ffdc00;
}

.campaign br {
display:none;
}

.campaign .copy {
width:960px;
margin:auto;
text-align:center;
padding:12px 0;
font-size:135%;
font-weight:bold;
}


}