@charset "UTF-8";
:root {--mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif;--gothic: 'Noto Sans Japanese', 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;;}

/* basic-subscription
------------------------------------------------------------------*/
#main-contents { margin-bottom: 0; }
.news .bnr img { width: 960px!important; }

.subscription .special-campaign-title { margin-bottom: 40px; padding: 20px 0 30px; text-align: center; background: #000; }
.subscription .special-campaign-title span { display: block; color: #fff; }
.subscription .special-campaign-title .en { font-size: 50px; }
.subscription .special-campaign-title .jp { font-size: 16px; }
.subscription .special-campaign-text { margin-bottom: 40px; font-size: 18px; font-family: var(--mincho); font-weight: 600; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.subscription .special-campaign-text .inner { width: 60%; }
.subscription .special-campaign-text .inner .text-content { font-size: 120%; font-weight: 600; }
.subscription .special-campaign-text .inner small { font-size: 80%; }
.subscription .special-campaign-text img { width: 38%; }
.subscription .details .special-campaign-title { margin-bottom: 2px; }
.subscription .features-sub { margin-bottom: 30px; }
.subscription .features-sub .special-campaign-title { margin-bottom: 18px; }
.subscription .features-sub ul { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.subscription .features-sub li { width: 32%; min-height: 380px; padding: 35px 20px 20px; color: #fff; background: #000; }
.subscription .features-sub li dt { margin-bottom: 20px; font-size: 20px; font-weight: bold;text-align: center; }
.subscription .features-sub li dd { text-align: center; }
.subscription .features-sub li dd span { display: block; width: fit-content; margin: 6px auto; padding: 0 10px; color: #000; background: #fff; }
.subscription .rec { margin-bottom: 40px; padding: 80px 0; background: #000 url(../images/subscription/rec-bg.jpg)no-repeat center; background-size: cover; }
.subscription .rec-title { margin-bottom: 30px; color: #fff; text-align: center; }
.subscription .rec-title span { display: block; }
.subscription .rec-title .en { font-size: 30px; }
.subscription .rec-title .jp { font-size: 30px; font-family: var(--mincho); }
.subscription .rec ul { width: 480px; margin: 0 auto; }
.subscription .rec li { color: #fff; padding: 10px 0; border-bottom: 1px dotted #fff; }
.subscription .rec li:last-child { border-bottom: none; }
.subscription .curriculum_box .in .info { margin-top: 0; }
.subscription table.curriculum_tbl { margin-top: 2px; }
.subscription table.curriculum_tbl tr th { font-weight: bold; }
.subscription table.curriculum_tbl tr th{width: calc(100% / 2);}
.subscription table.curriculum_tbl tr th.pc { width: 100%; border-right: none; }
.subscription table.curriculum_tbl tr td.pc { border: none; }
.subscription .curriculum_box .in { width: 100%; margin-bottom: 40px; }
.subscription .curriculum_box .price { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.subscription .curriculum_box .price-content { width: 600px; margin-bottom: 0; }
.subscription .curriculum_box .in .info dl.price dd { display: block; color: #000; }
.subscription .curriculum_box .in .info dl.price dd p { color: #000; font-size: 18px; }
.subscription .curriculum_box .in .info dl.price dd .tax { font-size: 90%; }
.subscription table.curriculum_tbl tr td span { display: block; width: fit-content; margin: 4px 0; padding: 0 0 4px 6px; font-size: 120%; font-weight: bold; border-bottom: 1px solid; border-left: 4px solid;}
.subscription .seminar-message { width: 100%; padding: 30px 100px; }
.subscription .seminar-message .inside { width: 800px; padding: 50px 100px 20px; }
.subscription .seminar-message .inside p { margin-bottom: 10px; text-align: center; }
.subscription .seminar-message .inside p span { display: block; margin-bottom: 10px; font-size: 120%; font-weight: 600; }
.subscription .seminer.special-campaign { margin: 0 auto 60px; }
.subscription .contact { margin-bottom: 0; background: #f1f1f1; }
.subscription .contact .inner { width: 900px; margin: 0 auto; padding: 80px 0 140px; }
.subscription .contact p { margin-bottom: 30px; font-size: 20px; font-family: var(--mincho); font-weight: 600; text-align: center; }
.subscription .contact .midashi02 { margin-bottom: 20px; padding-bottom: 0; }
.subscription .contact .midashi02::before { display: none; }
.subscription .contact .midashi02 .jp { display: block; font-size: 40px; font-family: var(--mincho); }
.subscription .contact ul { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.subscription .contact li { width: 48%; }
.subscription .contact li a { display: block; padding: 20px 30px; color: #fff; text-align: center; text-decoration: none; background: #000; position: relative; }
.subscription .contact li a::after { content: "＞"; position: absolute; color: #ccc; top: 18px; right: 20px; }
.subscription .gallery { margin-bottom: 0; }
.subscription .gallery li img { margin-bottom: 0; }

@media screen and (max-width: 768px) {

/* basic-subscription
------------------------------------------------------------------*/
.news .bnr img { width: 90%!important; margin: auto; }

.subscription .special-campaign-title { margin-bottom: 8vw; padding: 4vw 0 6vw; }
.subscription .special-campaign-title .en { font-size: 10vw; line-height: 1.2; }
.subscription .special-campaign-title .jp { font-size: 3.6vw; }
.subscription .special-campaign-text { margin-bottom: 8vw; font-size: 4vw; }
.subscription .special-campaign-text .inner { width: 100%; }
.subscription .special-campaign-text .inner .text-content { text-align: center; }
.subscription .special-campaign-text img { width: 100%; margin-bottom: 10vw; }
.subscription .special-campaign-text .inner small { display: block; line-height: 1.2; }
.subscription .details .special-campaign-title { margin-bottom: 1vw }
.subscription .features-sub { margin-bottom: 6vw; }
.subscription .features-sub .special-campaign-title { margin-bottom: 1vw; }
.subscription .features-sub ul { padding: 0 2vw; }
.subscription .features-sub li { width: 100%; min-height: auto; margin-bottom: 1vw; padding: 8vw 4vw; }
.subscription .features-sub li dt { margin-bottom: 4vw; font-size: 5vw; }
.subscription .features-sub li dd span { margin: 2vw auto; padding: 0 2vw; font-size: 120%; }
.subscription .special-campaign-title { width: 96%; margin: 0 auto; }
.subscription .rec { margin-bottom: 8vw; padding: 15vw 0; }
.subscription .rec-title { margin-bottom: 6vw; }
.subscription .rec-title span { display: block; }
.subscription .rec-title .en {  font-size: 6vw; }
.subscription .rec-title .jp { font-size: 6vw; }
.subscription .rec ul { width: 90%; margin: 0 auto; }
.subscription .rec li { padding: 2vw 0; }
.subscription .rec li:last-child { border-bottom: none; }
.subscription .curriculum_box .in .info { margin-top: 0; }
.subscription table.curriculum_tbl { width: 96%; margin-top: 2px; }
.subscription table.curriculum_tbl th {  font-weight: bold; }
.subscription table.curriculum_tbl tr th { width: 100%; font-size: 4vw; }
.subscription .curriculum_box .in { width: 100%; }
.subscription .curriculum_box .price { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.subscription .curriculum_box .price-content { width: 600px; margin-bottom: 0; }
.subscription .curriculum_box .in .info dl.price dd { display: block; }
.subscription .curriculum_box .in .info dl.price dd p { font-size: 3.6vw; }
.subscription .curriculum_box .in .info dl.price dd .tax { font-size: 90%; }
.subscription table.curriculum_tbl tr td span { display: block; width: 100%; margin: 4px 0; padding: 0 0 4px 6px; font-size: 120%; font-weight: bold; border-bottom: 1px solid; border-left: 4px solid;}
.subscription p.curriculum_pass { margin: 2vw 2% 1vw;}
.subscription .seminar-message { width: 100%; padding: 6vw 2vw; }
.subscription .seminar-message .inside { width: 90%; padding: 8vw 2vw 4vw; }
.subscription .seminar-message .inside p { margin-bottom: 2vw; }
.subscription .seminar-message .inside p span { margin-bottom: 2vw; font-size: 120%; }
.subscription .seminer.special-campaign { margin: 0 auto 10vw; }
.subscription .contact { margin-bottom: 0; background: #f1f1f1; }
.subscription .contact .inner { width: 90%; margin: 0 auto; padding: 10vw 0; }
.subscription .contact p { margin-bottom: 8vw; font-size: 5vw; }
.subscription .contact .midashi02 { margin-bottom: 0; }
.subscription .contact .midashi02 .jp { font-size: 8vw; }
.subscription .contact li { width: 100%; margin-bottom: 2vw; }
.subscription .contact li a { padding: 4vw 6vw; }
.subscription .contact li a::after { top: 4vw; right: 5vw; }
.subscription .gallery { margin-bottom: 0; }
.subscription .gallery li img { margin-bottom: 0; }

}