/* CSS Document */

@media print {
    body {
        -webkit-print-color-adjust: exact;
    }
}

html {
    color: #4d4d4d;
    font-size: 62.5%; /* 10px*/
}
body {
    font-size: 1.5rem; /* 15px*/
    word-break: break-all;
}
a {
    color: #bc4d7b;
}
a:hover {
    color: #dd4d6c;
}
a[href^="tel:"] {
    text-decoration: none;
}

.sp_none {
    display: none;
}

p {
    margin-bottom: 2em;
}
p + h3 {
    margin-top: 2em;
}
p + h2 {
    margin-top: 2em;
}

.sp_pic {
    width: 100%;
    height: auto;
} /* 100％にしたい画像に */

/* TOP ===================================================================================================================== */

/* header */

header {
    width: 100%;
}
header::after {
    content: "";
    clear: both;
    display: table;
}

.logo {
    position: absolute;
    width: 150px;
    height: auto;
    top: 5px;
    left: 5px;
}
.bn_cashless {
    position: absolute;
    top: 12px;
    left: 170px;
    width: 80px;
}

.top_course_col {
    background: #d6e2ea;
}

#mddNav {
    display: none;
}
#mddNav > ul > li.header_menu_line {
    display: none;
}

/* key */
.key_col {
    background: #a6a5a4;
    width: 100%;
}
.key {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}
.key img {
    width: 100%;
}

/* Hx */
.top_ttl {
    text-align: center;
    font-size: 150%;
    font-weight: bold;
    margin: 0 0 1em;
    padding-top: 1.5em;
}

.top_ttl_midline {
    color: #444;
    display: flex;
    align-items: center;
    width: 100%;
    margin: 1em auto 1em;
    font-size: 150%;
    font-weight: bold;
}
.top_ttl_midline:before,
.top_ttl_midline:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #444;
    display: block;
}
.top_ttl_midline:before {
    margin-right: 1em;
}
.top_ttl_midline:after {
    margin-left: 1em;
}

/* main btn */
.main_btn {
    margin: 30px 0 30px;
    border-top: 1px solid #3e3a39;
    border-left: 1px solid #3e3a39;
}
.main_btn::after {
    content: "";
    clear: both;
    display: table;
}
.main_btn li {
    width: 25%;
    height: 97px;
    display: table;
    float: left;
}
.main_btn li a {
    display: table-cell;
    padding: 60px 0 0 0;
    text-decoration: none;
    border-bottom: 1px solid #3e3a39;
    border-right: 1px solid #3e3a39;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
}
.main_btn_admission a {
    background: url(../images2/top/ic_admission.png) 50% 30% no-repeat;
    background-size: 24px auto;
    color: #f37282;
}
/*.main_btn_trial a{ display:block; background:url(../images2/top/ic_trial.png) 50% 30% no-repeat #F7F8F8; background-size: 30px auto; color:#5472A4;  }*/
.main_btn li.main_btn_trial a {
    padding: 50px 0 0 0;
    background: url(../images2/top/ic_trial.png) 50% 20% no-repeat #f7f8f8;
    background-size: 30px auto;
    color: #5472a4;
    line-height: 1.2;
}
.main_btn_experience a {
    background: url(../images2/top/ic_experience.png) 50% 30% no-repeat #f7f8f8;
    background-size: 30px auto;
    color: #24818c;
}
.main_btn_location a {
    background: url(../images2/top/ic_location.png) 50% 30% no-repeat #f7f8f8;
    background-size: 30px auto;
    color: #bb99cf;
}
.main_btn_contact a {
    background: url(../images2/top/ic_contact.png) 50% 30% no-repeat #f7f8f8;
    background-size: 30px auto;
    color: #5979cf;
}

/* Limited Course 期間限定コース */

.top_course_bn {
    margin: 0 auto 4em;
    width: 90%;
}
.top_course_bn::after {
    content: "";
    clear: both;
    display: table;
}
.top_course_bn li {
    width: 50%;
    height: 94px;
    display: table;
    float: left;
}
.top_course_bn li:last-child {
    margin-right: 0;
}
.top_course_bn li a {
    display: table-cell;
    vertical-align: middle;
    text-decoration: none;
    border: 1px solid #ccc;
    font-weight: bold;
    text-align: center;
    background-image: url(../images2/top/ic_arrow_wh01.png);
    background-repeat: no-repeat;
    background-position: 96% 50%;
    background-size: 1em auto;
    color: #333;
    padding: 0.5em;
    box-sizing: border-box;
}
.top_course_bn li a:hover {
    color: #333;
    opacity: 0.8;
}

/* 気のトレーニングについて */
.ki_training_col {
    background: #f4eee6;
    padding: 15px 0;
}
.ki_training_box {
}

.ki_training_ttl {
    text-align: center;
    width: 90%;
    margin: 0 auto 1.5em;
}
.ki_training_ttl img {
    width: 100%;
}
.ki_training_txt {
    width: 80%;
    margin: 0 auto 1.5em;
    font-weight: bold;
}

.ki_training_3col {
    width: 70%;
    margin: 0 auto;
}
.ki_training_3col li {
    display: block;
    line-height: 1;
}
.ki_training_3col li img {
    vertical-align: bottom;
    width: 100%;
}

.ki_training_4col {
    width: 90%;
    margin: 0 auto;
}
.ki_training_4col::after {
    content: "";
    clear: both;
    display: table;
}
.ki_training_4col li {
    line-height: 1;
    width: 49%;
    float: left;
    margin: 0 0.5%;
}
.ki_training_4col li img {
    vertical-align: bottom;
    width: 100%;
}

.ki_training_6col {
    width: 90%;
    margin: 0 auto;
}
.ki_training_6col::after {
    content: "";
    clear: both;
    display: table;
}
.ki_training_6col li {
    line-height: 1;
    width: 49%;
    float: left;
    margin: 0 0.5%;
}
.ki_training_6col li img {
    vertical-align: bottom;
    width: 100%;
}

.ki_training_btn {
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    margin-bottom: 1em;
    padding: 0.5em;
    border: 1px solid #756c63;
    background: url(../images2/top/ic_tri_black01.png) #fff no-repeat 90% 50%;
    background-size: 12px;
    text-decoration: none;
}
.ki_training_btn:hover {
    border: 1px solid #bc4d7b;
    color: #bc4d7b;
    background-color: #fef1f6;
}

/* 受講生の声  */

.voice_col {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 1em;
}
.voice_box {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #3e3a39;
    padding-top: 1.5em;
}
.voice_box::after {
    content: "";
    clear: both;
    display: table;
}
.voice_pic {
    width: 20%;
    height: auto;
    float: left;
    margin: 0 2% 1em;
}
.voice_txt {
    width: 76%;
    float: left;
    text-align: left;
    line-height: 1.8;
}

/* Limited Course 期間限定コース */
.top_course_col {
    background: #d6e2ea;
    width: 100%;
    padding: 1px 0 60px;
}
.top_course_col::after {
    content: "";
    clear: both;
    display: table;
}

.top_course_flex {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
}
.top_course_flex a {
    text-decoration: none;
}
.top_course_box {
    flex-basis: 50%;
    flex-wrap: wrap;
}

.top_course_txt {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1em;
    box-sizing: border-box;
    width: 100%;
    height: 70px;
    color: #fff;
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 0;
    line-height: 1.2;
    /*background-image:url(../images2/ic_arrow_wh01.png) ; 
background-repeat: no-repeat; 
background-position: 50% 90% ; */
}

.crs01 .top_course_txt {
    background-color: #24818c;
}
.crs02 .top_course_txt {
    background-color: #f7a3a0;
}
.crs03 .top_course_txt {
    background-color: #f37282;
}
.crs04 .top_course_txt {
    background-color: #c3aed0;
}
.crs05 .top_course_txt {
    background-color: #f8b194;
}
.crs06 .top_course_txt {
    background-color: #5472a4;
    height: 170px;
    width: 100%;
}

.top_course_pic {
    width: 100%;
    height: 100px;
}
.crs01 .top_course_pic {
    background: url(../images2/top/top_course27_1912.png) no-repeat;
    background-size: cover;
}
.crs02 .top_course_pic {
    background: url(../images2/top/top_topics103.png) no-repeat;
    background-size: cover;
}
.crs03 .top_course_pic {
    background: url(../images2/top/top_jyoshi_1912.png) no-repeat;
    background-size: cover;
}
.crs04 .top_course_pic {
    background: url(../images2/top/top_wellness_1911.png) no-repeat;
    background-size: cover;
}
.crs05 .top_course_pic {
    background: url(../images2/top/top_course_other.png) no-repeat;
    background-size: cover;
}

/* PICK UP */
.pickup {
    width: 100%;
    margin: 0 auto 4em;
}
.pickup li {
    line-height: 1.2;
    margin: 0 10px;
}
.pickup li a {
    text-decoration: none;
    font-size: 10px;
}
.pickup li img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5em;
    padding: 0;
}

/* 動画 */
.movie_col {
}
.movie {
    width: 100%;
    margin: 0 auto 4em;
}
.movie li {
    line-height: 1.2;
    margin: 0 10px;
}
.movie li a {
    text-decoration: none;
    font-size: 10px;
}
.movie li img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5em;
    padding: 0;
}

.movie_col2 {
}
.movie2 {
    width: 100%;
    margin: 0 auto 4em;
}
.movie2 li {
    line-height: 1.2;
    margin: 0 10px;
    text-align: center;
    line-height: 1.2;
    text-decoration: none;
    font-size: 15px;
    font-weight: bold;
    color: #dd4d6c;
}
.movie2 li a {
    text-decoration: none;
    font-size: 10px;
}
.movie2 li img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5em;
    padding: 0;
}
.movie2 li iframe {
    width: 90%;
    height: auto;
    margin-bottom: 0.5em;
    padding: 0;
    border: 1px solid #000;
}

/* スペシャルコンテンツ */
.spcont_col_top {
    background: #f4f2ef;
    padding: 1em 0 3em;
    margin-bottom: 4em;
}

.spcont_box_top {
    /*display: flex; flex-wrap: wrap;*/
    width: 100%;
    margin: 0 auto;
}
.spcont_box_top dl {
    /*flex-basis: 46%;*/
    width: 90%;
    margin: 0 auto 2em;
    box-sizing: border-box;
}

.spcont_box_top dl dt {
    font-size: 16px;
    font-weight: bold;
    padding: 0.3em 1em;
    margin-bottom: 1em;
}
.spcont_box_top dl dd {
    padding-left: 20px;
    margin-left: 1em;
    color: #595959;
    background: url(../images2/top/ic_cir_gray01.svg) no-repeat center left;
    background-size: 15px;
    font-size: 15px;
    margin-bottom: 0.5em;
}
.spcont_box_top dl dd a {
    text-decoration: none;
    color: #595959;
}
.spcont_box_top dl dd a:hover {
    text-decoration: underline;
}

.spcont_kokoro {
    background: #f37282;
    color: #fff;
    font-weight: bold;
}
.spcont_kenko {
    background: #24818c;
    color: #fff;
    font-weight: bold;
}
.spcont_jyosei {
    background: #bc4d7b;
    color: #fff;
    font-weight: bold;
}
.spcont_kin {
    background: #5472a4;
    color: #fff;
    font-weight: bold;
}

/* 気で開運TOP */
.ki_col3_01 {
    clear: both;
    margin-bottom: 1.5em;
}
.ki_col3_01::after {
    content: "";
    clear: both;
    display: table;
}
.ki_col3_02 {
    clear: both;
    margin-bottom: 1.5em;
}
.ki_col3_02::after {
    content: "";
    clear: both;
    display: table;
}
.ki_col3_03 {
    clear: both;
    margin-bottom: 1.5em;
}
.ki_col3_03::after {
    content: "";
    clear: both;
    display: table;
}
.ki_col3_01 img {
    width: 30%;
    float: left;
    height: auto;
}
.ki_col3_02 img {
    width: 30%;
    float: left;
    height: auto;
}
.ki_col3_03 img {
    width: 30%;
    float: left;
    height: auto;
}

.success_ul,
.money_ul,
.happiness_ul {
    width: 70%;
    float: left;
}
.success_ul li,
.money_ul li,
.happiness_ul li {
    padding: 0 0 0 1.5em;
    position: relative;
    margin-bottom: 0.5em;
}
.success_ul li a,
.money_ul li a,
.happiness_ul li a {
    color: #4d4d4d;
}
.success_ul li a:hover,
.money_ul li a:hover,
.happiness_ul li a:hover {
    color: #dd4d6c;
}

.success_ul li:before {
    content: "";
    position: absolute;
    top: 0.4em;
    left: 0;
    width: 1em;
    height: 1em;
    background-color: #eb6200;
    border-radius: 50%;
}
.money_ul li:before {
    content: "";
    position: absolute;
    top: 0.4em;
    left: 0;
    width: 1em;
    height: 1em;
    background-color: #ffde00;
    border-radius: 50%;
}
.happiness_ul li:before {
    content: "";
    position: absolute;
    top: 0.4em;
    left: 0;
    width: 1em;
    height: 1em;
    background-color: #f55bb0;
    border-radius: 50%;
}

/* 気で開運詳細 */
.ki_cont dl dt {
    font-weight: bold;
    font-size: 1.9rem;
    margin-bottom: 0.5em;
}
.ki_cont dl dd {
    margin-bottom: 2em;
}
.ki_cont_ttl {
    text-align: right;
    font-size: 1.4rem;
    margin-bottom: 1.5em;
}

.ki_cont {
    position: relative;
    box-sizing: border-box;
    padding: 3em 2em 2em;
    border-radius: 10px;
    margin-bottom: 3em;
}

.ki_cont:before {
    display: inline-block;
    position: absolute;
    top: -24px;
    left: 10px;
    content: "“";
    font-family: Arial, Helvetica, "sans-serif";
    color: #fff;
    font-size: 160px;
    line-height: 1;
}

.ki_cont:after {
    display: inline-block;
    position: absolute;
    bottom: -105px;
    right: 20px;
    text-align: center;
    content: "”";
    font-family: Arial, Helvetica, "sans-serif";
    color: #fff;
    font-size: 160px;
    line-height: 1;
}

.ki_cont.green {
    background: #daebec;
}
.ki_cont.blue {
    background: #e9eff7;
}
.ki_cont.pink {
    background: #fcedec;
}
.ki_cont.purple {
    background: #fdedf4;
}

/* NEWS */

.news_col {
    background: url(../images2/top/news_bkg.png) no-repeat;
    background-size: cover;
    padding: 0.5em 0 2em;
    box-sizing: border-box;
}
.news_box {
    width: 90%;
    margin: 0 auto 1em;
    box-sizing: border-box;
}

.news_tbl {
    background: #fff;
    padding: 1.5em;
    margin: 0 auto 30px;
    box-sizing: border-box;
}
.news_tbl table td {
    display: block;
    width: 100%;
    font-size: 13px;
    padding: 0.5em 0.3em 0 0;
    box-sizing: border-box;
}
.news_tbl table td a {
    color: #4d4d4d;
}

.tab_news {
    display: inline-block;
    background: #f37282;
    color: #fff;
    padding: 1em;
}
.tab_info {
    display: inline-block;
    background: #24818c;
    color: #fff;
    padding: 1em;
}

.news_col table td.inews {
    background: url(../images2/top/ic_news.png) no-repeat center left;
    background-size: 60px auto;
    padding-left: 70px;
}

/* 関連サイト */
.top_bn {
    margin-bottom: 60px;
}
.top_bn::after {
    content: "";
    clear: both;
    display: table;
}
.top_bn li {
    float: left;
    margin: 0 1% 1%;
    width: 48%;
}
.top_bn li img {
    width: 100%;
}

/* その他 */
.top_bn_sp90 {
    width: 90%;
    margin: 0 auto 2em;
    text-align: center;
}

/* 下層  ==================================================================================================================================================================================== */

.underlayer {
    background: #f7a3a0;
}

/* ━━━━━  key ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.key2_col {
    display: table;
    margin: 0 auto 0em;
    width: 100%;
    height: 140px;
    box-sizing: border-box;
}
.key2_pic {
    display: table-cell;
    width: 60%;
    height: 140px;
    background-size: cover;
    box-sizing: border-box;
}
.key2_ttl {
    display: table-cell;
    height: 140px;
    background: #b44d7b;
    color: #fff;
    vertical-align: middle;
    font-size: 1.5rem;
    padding-left: 1em;
    box-sizing: border-box;
}

.key2_curriculum06 {
    background-image: url(../images2/key/curriculum06.png);
    background-repeat: no-repeat;
}
.key2_about {
    background-image: url(../images2/key/about.png);
    background-repeat: no-repeat;
}

/* ━━━━━ colmun ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.side_bn {
    display: none;
}

/* 3個パターンのとき
.side_bn_sp{ position:fixed; bottom: 0; width: 100%; display:table;  height: 64px;   }
.side_bn_sp a{ display: table-cell; text-decoration: none; text-align:center; height: 64px; vertical-align: middle; }
.side_bn_sp a.bn_briefing{ width: 25%; background:#F37282; color:#FFF;   }
.side_bn_sp a.bn_contact{ width: 50%; background:#BC4D7B; color:#FFF;  }
.side_bn_sp a.bn_tel{ width: 25%; background: url("../images2/mark/ic_phone.png") #24818c no-repeat 50% 50%; background-size: 2em; }*/

.side_bn_sp {
    position: fixed;
    bottom: 0;
    width: 100%;
    display: table;
    height: 64px;
}
.side_bn_sp a {
    display: table-cell;
    text-decoration: none;
    text-align: center;
    height: 60px;
    vertical-align: middle;
    font-size: 1.3rem;
    line-height: 1.2;
}
.side_bn_sp a.bn_briefing {
    width: 27%;
    background: #bc4d7b;
    color: #fff;
}
.side_bn_sp a.bn_tel {
    width: 19%;
    background: url("../images2/mark/ic_phone.png") #24818c no-repeat 50% 50%;
    background-size: 2em;
}
.side_bn_sp a.bn_trial {
    width: 27%;
    background: #f37282;
    color: #fff;
}
.side_bn_sp a.bn_taiken {
    width: 27%;
    background: #5472a0;
    color: #fff;
}

.u-sp {
    display: block;
}

.u-pc,
.side_bn_cir {
    display: none;
}

.side_bn_cir_sp {
    position: fixed;
    bottom: 0;
    width: 100%;
    display: table;
    height: 64px;
}
.side_bn_cir_sp a {
    display: table-cell;
    text-decoration: none;
    text-align: center;
    height: 60px;
    vertical-align: middle;
    font-size: 1.6rem;
    line-height: 1.2;
    font-weight: bold;
}
.side_bn_cir_sp a.bn_briefing {
    width: 27%;
    background: #f37282;
    color: #fff;
}
.side_bn_cir_sp a.bn_tel {
    width: 19%;
    background: url("../images2/mark/ic_phone.png") #24818c no-repeat 50% 50%;
    background-size: 2em;
}
.side_bn_cir_sp a.bn_trial {
    width: 27%;
    background: #f37282;
    color: #fff;
}
.side_bn_cir_sp a.bn_taiken {
    width: 27%;
    background: #5472a0;
    color: #fff;
}

.bn_briefing.fontbig {
    font-size: 2rem;
}
.sp-bottom {
    margin-bottom: 64px;
}

.new-sp-fix-bottom a.bn_tel {
    width: 11%;
    background: url(../images2/mark/ic_cirphone.png) #24818c no-repeat 50% 50%;
    background-size: 2.6em;
}
.new-sp-fix-bottom .bn_briefing.fontbig {
    align-items: center;
    font-size: 18px;
}
.new-sp-fix-bottom .bn_briefing.fontbig span {
    display: flex;
    justify-content: center;
    align-items: center;
}
.new-sp-fix-bottom .bn_briefing.fontbig img {
    width: 2em;
    height: auto;
    margin-left: 0.5em;
    object-fit: contain;
    max-width: 100%;
}

body.page-application-list .new-sp-fix-bottom .bn_briefing {
    display: none;
}
body.page-application-list .new-sp-fix-bottom a.bn_tel {
    width: 100%;
}

.wp {
    background: #fff;
    margin: 2%;
    padding: 4% 4% 8%;
    border-radius: 22px;
}
.wp::after {
    content: "";
    clear: both;
    display: table;
}

.col2_left {
}
.col2_right {
}

.col2_left_pic {
    margin-bottom: 1em;
    text-align: center;
}
.col2_right_pic {
    margin-bottom: 1em;
    text-align: center;
}
.col2_left_pic img,
.col2_right_pic img {
    max-width: 96%;
}

.col2_50per {
    padding: 0 2%;
    box-sizing: border-box;
}

.col2_60per_left {
    box-sizing: border-box;
}
.col2_40per_right {
    box-sizing: border-box;
}

.col2_60per_right {
    box-sizing: border-box;
}
.col2_40per_left {
    box-sizing: border-box;
}

.col2_70per_left {
    box-sizing: border-box;
}
.col2_30per_right {
    box-sizing: border-box;
}

.col2_70per_right {
    box-sizing: border-box;
}
.col2_30per_left {
    box-sizing: border-box;
}

.col2_80per_left {
    box-sizing: border-box;
}
.col2_20per_right {
    box-sizing: border-box;
}

.col2_80per_right {
    box-sizing: border-box;
}
.col2_20per_left {
    box-sizing: border-box;
}

/* bn slider ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.bn01_col {
    margin: 0 auto 2em;
    width: 100%;
}
.bn01 {
}
.bn01 li a img {
    /*width: 253px;*/
    width: 100%;
    height: auto;
}
.bn01 li {
    width: 50%;
    margin: 0 10px 0 !important;
    padding: 0 !important;
}

/* bread --------------------------------------- */
#pnav {
    padding: 4px 10px 4px;
    margin: 0 0 1.5em;
}
#pnav li {
    display: inline;
    font-size: 70%;
    color: #000;
}
#pnav li a:link,
ul#pnav li a:visited {
    color: #000;
    text-decoration: none;
}
#pnav li a:hover,
ul#pnav li a:active {
    color: #000;
    text-decoration: underline;
}

/* sns --------------------------------------- */
#pnav + .sns_col_2 {
    margin-top: -1em;
}
.sns_col_2 {
    text-align: right;
    margin-bottom: 2em;
}
.sns_col_2 span {
    vertical-align: baseline !important;
}

/* Hx --------------------------------------- */

.h1 {
    text-align: center;
    background: #000;
}
.h1_pink {
    color: #dd4d6c;
    position: relative;
    font-size: 2.2rem;
    margin: 0 0 1.5em;
    padding: 0 0 8px 0;
    text-align: center;
    font-weight: bold;
}
.h1_pink:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px; /*線の上下位置*/
    display: inline-block;
    width: 140px; /*線の長さ*/
    height: 2px; /*線の太さ*/
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #dd4d6c; /*線の色*/
}

.h1_purple {
    color: #b84d7b;
    position: relative;
    font-size: 2.2rem;
    margin: 0 0 1.5em;
    padding: 0 0 8px 0;
    text-align: center;
    font-weight: bold;
}
.h1_purple:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px; /*線の上下位置*/
    display: inline-block;
    width: 140px; /*線の長さ*/
    height: 2px; /*線の太さ*/
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #b84d7b; /*線の色*/
}

.h1_green {
    color: #248088;
    position: relative;
    font-size: 2.2rem;
    margin: 0 0 1.5em;
    padding: 0 0 8px 0;
    text-align: center;
    font-weight: bold;
}
.h1_green:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px; /*線の上下位置*/
    display: inline-block;
    width: 140px; /*線の長さ*/
    height: 2px; /*線の太さ*/
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #248088; /*線の色*/
}

.h1_blue {
    color: #5472a0;
    position: relative;
    font-size: 2.2rem;
    margin: 0 0 1.5em;
    padding: 0 0 8px 0;
    text-align: center;
    font-weight: bold;
}
.h1_blue:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px; /*線の上下位置*/
    display: inline-block;
    width: 140px; /*線の長さ*/
    height: 2px; /*線の太さ*/
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #5472a0; /*線の色*/
}
.h1_red1 {
    color: #ff5757;
    position: relative;
    font-size: 2.2rem;
    margin: 0 0 1.5em;
    padding: 0 0 8px 0;
    text-align: center;
    font-weight: bold;
}
.h1_red1:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0px; /*線の上下位置*/
    display: inline-block;
    width: 140px; /*線の長さ*/
    height: 2px; /*線の太さ*/
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #ff5757; /*線の色*/
}

.h2_box_pink {
    color: #dd4d6c;
    border: 2px solid #dd4d6c;
    margin-bottom: 1em;
    padding: 13px 0.65em 10px 0.65em;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.2;
}
.h2_box_purple {
    color: #b84d7b;
    border: 2px solid #b84d7b;
    margin-bottom: 1em;
    padding: 13px 0.65em 10px 0.65em;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.2;
}
.h2_box_green {
    color: #248088;
    border: 2px solid #248088;
    margin-bottom: 1em;
    padding: 13px 0.65em 10px 0.65em;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.2;
}
.h2_box_blue {
    color: #5472a0;
    border: 2px solid #5472a0;
    margin-bottom: 1em;
    padding: 13px 0.65em 10px 0.65em;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.2;
}

.h3_line_pink {
    border-left: 13px solid #dd4d6c;
    margin-bottom: 1.5em;
    padding: 5px 0 5px 16px;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.4;
}
.h3_line_purple {
    border-left: 13px solid #b84d7b;
    margin-bottom: 1.5em;
    padding: 5px 0 5px 16px;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.4;
}
.h3_line_green {
    border-left: 13px solid #248088;
    margin-bottom: 1.5em;
    padding: 5px 0 5px 16px;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.4;
}
.h3_line_blue {
    border-left: 13px solid #5472a0;
    margin-bottom: 1.5em;
    padding: 5px 0 5px 16px;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.4;
}

.btn.ic_pink {
    text-align: right;
    color: #dd4d6c;
    font-weight: bold;
    padding-right: 30px;
    background: url(../images2/mark/ic_plus_pink.png) no-repeat 100% 0;
    background-size: 23px 23px;
}
.btn.ic_pink.open {
    text-align: left;
    text-indent: -9999px !important;
    padding-right: 30px;
    background: url(../images2/mark/ic_minus_pink.png) no-repeat 100% 0;
    background-size: 23px 23px;
}
.btn.ic_purple {
    text-align: right;
    color: #b84d7b;
    font-weight: bold;
    padding-right: 30px;
    background: url(../images2/mark/ic_plus_purple.png) no-repeat 100% 0;
    background-size: 23px 23px;
}
.btn.ic_purple.open {
    text-align: left;
    text-indent: -9999px !important;
    padding-right: 30px;
    background: url(../images2/mark/ic_minus_purple.png) no-repeat 100% 0;
    background-size: 23px 23px;
}
.btn.ic_green {
    text-align: right;
    color: #248088;
    font-weight: bold;
    padding-right: 30px;
    background: url(../images2/mark/ic_plus_green.png) no-repeat 100% 0;
    background-size: 23px 23px;
}
.btn.ic_green.open {
    text-align: left;
    text-indent: -9999px !important;
    padding-right: 30px;
    background: url(../images2/mark/ic_minus_green.png) no-repeat 100% 0;
    background-size: 23px 23px;
}

.toggle {
}

.box_blue {
    color: #5472a0;
    border: 2px solid #5472a0;
    margin-bottom: 1em;
    padding: 13px 0.65em 10px 0.65em;
    font-weight: bold;
    line-height: 1.5;
}

/* hr --------------------------------------- */

.hr_orange {
    border-bottom: 2px solid #f4ad90;
    border-left: none;
    border-right: none;
    border-top: none;
    clear: both;
    margin-bottom: 4em;
    padding-top: 4em;
}
.hr_orange_2em {
    border-bottom: 2px solid #f4ad90;
    border-left: none;
    border-right: none;
    border-top: none;
    clear: both;
    margin-bottom: 2em;
    padding-top: 2em;
}

/* ic_ --------------------------------------- */
/* 左にアイコン */
.ic_more_pink {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_pink01.png) no-repeat 2px 3px;
    padding-left: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #dd4d6c !important;
    text-decoration: none;
}
.ic_more_pink:hover {
    text-decoration: underline;
}

.ic_more_pink {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_purple01.png) no-repeat 2px 3px;
    padding-left: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #b84d7b !important;
    text-decoration: none;
}
.ic_more_pink:hover {
    text-decoration: underline;
}

.ic_more_green {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_green01.png) no-repeat 2px 3px;
    padding-left: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #248088 !important;
    text-decoration: none;
}
.ic_more_green:hover {
    text-decoration: underline;
}

.ic_more_blue {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_blue01.png) no-repeat 2px 3px;
    padding-left: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #5472a0 !important;
    text-decoration: none;
}
.ic_more_blue:hover {
    text-decoration: underline;
}

/* 右にアイコン */
.ic_more_pink02 {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_pink01.png) no-repeat 98% 3px;
    padding-right: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #dd4d6c !important;
    text-decoration: none;
}
.ic_more_pink02:hover {
    text-decoration: underline;
}

.ic_more_pink03 {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_pink01.png) no-repeat 100% 8px;
    padding-right: 22px;
    font-size: 22px;
    font-weight: bold;
    background-size: 22px;
    color: #dd4d6c !important;
    text-decoration: none;
}
.ic_more_pink03:hover {
    text-decoration: underline;
}

.ic_more_purple02 {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_purple01.png) no-repeat 98% 3px;
    padding-right: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #b84d7b !important;
    text-decoration: none;
}
.ic_more_purple02:hover {
    text-decoration: underline;
}

.ic_more_green02 {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_green01.png) no-repeat 98% 3px;
    padding-right: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #248088 !important;
    text-decoration: none;
}
.ic_more_green02:hover {
    text-decoration: underline;
}

.ic_more_blue02 {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_blue01.png) no-repeat 98% 3px;
    padding-right: 22px;
    font-weight: bold;
    background-size: 18px;
    color: #5472a0 !important;
    text-decoration: none;
}
.ic_more_blue02:hover {
    text-decoration: underline;
}

.bn_cir_box {
    margin: -1em 0 1em;
}
.bn_cir {
    width: 101px;
}
.bn_cir_box a:hover img {
    opacity: 0.8;
}

/* about --------------------------------------- */

.about_con {
    margin: 12px 0px 2.5em 0px;
}
.about_pic {
    text-align: center;
}

.about_con2 {
    margin: 12px 0px 2.5em 0px;
}
.about_pic2 {
    text-align: center;
}

.link_about {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 98%;
    margin: 0 auto;
}

.link_about a {
    color: #3a3a3a;
    text-decoration: underline;
}

.link_about a:hover {
    color: #3a3a3a;
    text-decoration: underline;
}

.tn_box {
    display: flex;
    flex-wrap: wrap;
    max-width: 98%;
    margin: 0 auto;
}

.tn_box ul {
    line-height: 1.3;
    margin-top: 3px;
} /* colomn div */

.tn_box ul li {
    white-space: normal;
    font-size: 80%;
    margin-right: 20px;
} /* book standard */

.tn_box ul li.bttl {
    color: #00c;
    font-size: 80%;
    margin-bottom: 2px;
} /* book title */

.tn_box ul li.sttl {
    font-size: 80%;
    padding-bottom: 5px;
    color: #00c;
} /* book subtitle */

.tn {
    width: 50%;
    padding-bottom: 2em;
}
.tn img {
    float: left;
    margin-right: 10px;
}

.gotop {
    text-align: right;
}
.gotop a {
    background: url(../images/mark/r_tri10_top.gif) no-repeat left center;
    padding-left: 1em;
    font-size: 88%;
}
.bpop {
    background: #000000;
}
#bpop {
    background: #000000;
    text-align: center;
}
#bpop img {
    text-align: center;
}
#bpop a {
    text-align: center;
}
#bpop02 {
    background: #000000;
    text-align: center;
}
#bpop02 img {
    text-align: center;
}
#bpop02 a {
    text-align: center;
}

/* 書籍紹介  --------------------------------------- */

.nondp {
    display: none;
}
.dpon {
    display: block;
}

.books_box01 {
    width: 46%;
    margin: 0 2%;
    line-height: 1.4;
    padding-bottom: 1.5em;
    text-align: center;
}

.summary_books01 {
    font-size: 12px;
}

.border_books {
    border-bottom: dotted 1px #9f9f9f;
    margin: 3em 0 3em 0;
}

a.bn_book_buy {
    display: inline-block;
    font-size: 92%;
    font-weight: bold;
    margin: 1em auto 0;
    padding: 0.3em 0 0.3em;
    color: #fff !important;
    text-align: center;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #dd4d6c;
    background-size: 1em auto;
    text-decoration: none;
    width: 90%;
}
a.bn_book_buy:hover {
    text-decoration: none;
    opacity: 0.8;
}

a.bn_book_soldout {
    display: inline-block;
    font-size: 92%;
    font-weight: bold;
    margin: 1em auto 0;
    padding: 0.3em 0 0.3em;
    color: #fff !important;
    text-align: center;
    background: #ccc;
    text-decoration: none;
    width: 90%;
}
a.bn_book_soldout:hover {
    text-decoration: none;
}

a.bn_book_amazon {
    display: inline-block;
    font-size: 92%;
    font-weight: bold;
    margin: 1em 0 0;
    padding: 0.3em 0 0.3em;
    color: #fff !important;
    text-align: center;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #ffae1a;
    background-size: 1em auto;
    text-decoration: none;
    width: 90%;
}
a.bn_book_amazon:hover {
    text-decoration: none;
    opacity: 0.8;
}

/* ━━━━━ コース course ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* course一覧 */
.course_list {
    padding: 0 2%;
    background-color: #fff;
    margin: 0 0 3em;
}
.course_list dl {
    margin: 0 0 2em 0;
    padding: 10px;
    border: 2px solid #ebebeb;
    box-sizing: border-box;
}

.course_ttl {
    border-bottom: 2px solid #000;
    margin-bottom: 0.5em;
    padding-bottom: 0.3em;
    font-size: 18px;
    font-weight: bold;
}

.course_more {
    margin-top: 1em;
    text-align: right;
}

.course_ttl_oyako {
    background-color: #fef87e;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_kokoro {
    background-color: #baeda6;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_jyoshi {
    background-color: #fdc6d2;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_premium {
    background-color: #edbffc;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_taiken {
    background-color: #f2bced;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_taiken_sp {
    background-color: #f58ccf;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}
.course_ttl_trial {
    background-color: #9bc0f8;
    display: table;
    width: 100%;
    margin-bottom: 0.7em;
    line-height: 1.4 !important;
}

.course_ttl_oyako a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_kokoro a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_jyoshi a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_premium a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_taiken a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_taiken_sp a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}
.course_ttl_trial a {
    display: table-cell;
    vertical-align: middle;
    padding: 0.5em;
    text-decoration: none;
    color: #333;
    font-size: 120%;
    font-weight: bold;
}

/* course_ttl を作成したときに下も作っておくと便利 */
/* 終了したキャンペーン inc2/campaignend.html に使用 */
.crs_chokatsu {
    background-color: #ffe200;
    color: #333;
}
.crs_oyako {
    background-color: #fef87e;
    color: #333;
}
.crs_kokoro {
    background-color: #baeda6;
    color: #333;
}
.crs_jyoshi {
    background-color: #fdc6d2;
    color: #333;
}
.crs_premium {
    background-color: #edbffc;
    color: #333;
}
.crs_topics34 {
    background-color: #f2bced;
    color: #333;
}
.crs_special {
    background-color: #f58ccf;
    color: #333;
}
.crs_trial {
    background-color: #9bc0f8;
    color: #333;
}

.campaignend_bn {
    margin: 0 auto;
}
.campaignend_bn::after {
    content: "";
    clear: both;
    display: table;
}
.campaignend_bn li {
    width: 48%;
    height: 80px;
    display: table;
    float: left;
    margin-right: 2%;
    margin-bottom: 2%;
}
.campaignend_bn li:last-child {
    margin-right: 0;
}
.campaignend_bn li a {
    display: table-cell;
    vertical-align: middle;
    text-decoration: none;
    border: 1px solid #ccc;
    font-weight: bold;
    text-align: center;
    background-image: url(../images2/top/ic_arrow_wh01.png);
    background-repeat: no-repeat;
    background-position: 96% 50%;
    background-size: 1em auto;
    color: #333;
    line-height: 1.4;
}
.campaignend_bn li a:hover {
    color: #333;
    opacity: 0.8;
}

.limited_bnr img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5em;
}
.limited_bnr a:hover {
    opacity: 0.6;
}

.course_explanation {
    text-align: center;
    margin-bottom: 3em;
    font-weight: bold;
    font-size: 120%;
}
.course_explanation02 {
    font-weight: bold;
    font-size: 140%;
}
.course_explanation03 {
    font-weight: bold;
    font-size: 120%;
    margin-bottom: 0.5em;
}

/* course詳細　----------　 */

/* 外枠の基本 */
.bg_content_blue {
    border: 2px solid #54729c;
    padding: 36px 4%;
    margin-bottom: 2em;
}
.tao_bg_blue {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_blue > span {
    display: inline-block;
    border-left: 10px solid #54729c;
    border-right: 10px solid #54729c;
    color: #54729c;
    padding: 0 1em;
}

.bg_content_green {
    border: 2px solid #248088;
    padding: 36px 4%;
    margin-bottom: 2em;
}
.tao_bg_green {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_green > span {
    display: inline-block;
    border-left: 10px solid #248088;
    border-right: 10px solid #248088;
    color: #248088;
    padding: 0 1em;
}

.bg_content_pink {
    border: 2px solid #dd4d6c;
    padding: 36px 4%;
    margin-bottom: 2em;
}
.tao_bg_pink {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_pink > span {
    display: inline-block;
    border-left: 10px solid #dd4d6c;
    border-right: 10px solid #dd4d6c;
    color: #dd4d6c;
    padding: 0 1em;
}

.bg_content_purple {
    border: 2px solid #b84d7b;
    padding: 36px 4%;
    margin-bottom: 2em;
}
.tao_bg_purple {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_purple > span {
    display: inline-block;
    border-left: 10px solid #b84d7b;
    border-right: 10px solid #b84d7b;
    color: #b84d7b;
    padding: 0 1em;
}

/* 外枠の特別なデザイン */

/*TAOの美プレミアムコース用 外枠　*/
.bg_content01 {
    padding: 36px 4%;
    background-color: #f2d2f5;
    width: 100%;
    margin-bottom: 20px;
    box-sizing: border-box;
}
.bg_content01_inner {
    background: #fceef6;
    background-size: 56px auto;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}

.bg_content02 {
    padding: 36px 4%;
    background-color: #fdcaca /*ffbb61 ffbc7b ffe5ac ffee99*/;
    width: 100%;
    margin-bottom: 20px;
    box-sizing: border-box;
}
.bg_content02_inner {
    background: #fff3f6;
    background-size: 56px auto;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}

.h_base_trial06 {
    font-size: 124%;
    line-height: 1 !important;
    font-weight: bold;
    color: #fff;
    background: url(../images/mark/circle_white.png) 1em center no-repeat
        #2595c7;
    padding: 1.3em 0 1.1em 2.5em;
}
.trial_voice_box06 {
    padding: 36px 4%;
    border-bottom-left-radius: 7px;
    border-bottom-right-radius: 7px;
    border: 2px solid #2595c7;
    background: #ceeaee;
}
.trial_voice_box06_inner {
    background: #edf9f9;
    background-size: 56px auto;
    padding: 20px 4%;
    margin: 0 0 1.5em 0;
    border-radius: 20px;
}

.course_exp_ttl {
    margin-bottom: 0.5em;
    font-size: 130%;
    font-weight: bold;
    color: #0080e2;
    text-align: center;
}
.course_exp_name {
    text-align: right;
    margin-right: 50px;
    font-size: 12px;
}

/*親子で学ぶ気のトレーニング体験レッスン 外枠　*/
.bg_content_oyako01 {
    background: #fefaa7;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_oyako01_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_oyako01 {
    text-align: center;
    font-size: 2.9rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_oyako01 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

/* 画面幅の50%の幅で画像を表示 course36*/
.image-vw {
    width: 80vw;
}

/*【夏限定プログラム】Zoomで学ぶ気のオンライン初級・中級コース course37 外枠　*/
.bg_content_summer01 {
    background: #ceeaee;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_summer01_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_summer01 {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_summer01 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

.bg_content_summer02 {
    background: #ffffc1;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_summer02_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_summer02 {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_summer02 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

.bg_content_summer03 {
    background: #f8d2d1;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_summer03_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_summer03 {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_summer03 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

/*心と体を整える導引術 外枠　*/
.bg_content_kokoro01 {
    background: #d6fe96;
    padding: 36px 4%;
    margin-bottom: 1em;
}
.bg_content_kokoro01_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_kokoro01 {
    text-align: center;
    font-size: 1.9rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_kokoro01 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

.bg_content_kokoro02 {
    background: #81efb0 /*#a3f49f*/;
    padding: 36px 4%;
    margin-bottom: 1em;
}
.bg_content_kokoro02_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_kokoro02 {
    text-align: center;
    font-size: 2.9rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_kokoro02 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

/*女子体験　外枠　*/
.bg_content_jyoshi01 {
    background: #fedcdc;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_jyoshi01_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_jyoshi01 {
    text-align: center;
    font-size: 2.9rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_jyoshi01 > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

.jyoshi01_sub_ttl {
    font-size: 1.6rem !important;
    display: inline-block;
    line-height: 1.3;
}

/*体験レッスン　外枠　*/
.bg_content_taiken {
    background: #fee5dc;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_taiken_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.tao_bg_taiken {
    text-align: center;
    font-size: 2.9rem;
    font-weight: bold;
    margin-bottom: 1.5em;
}
.tao_bg_taiken > span {
    display: inline-block;
    border-left: 13px solid #248088;
    border-right: 13px solid #248088;
    color: #248088;
    padding: 0 1em;
}

/*ウェルネスコース用 外枠　*/
.bg_content_wellness01 {
    background-color: #ceeaee;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_wellness01_inner {
    padding: 20px 40px;
    margin: 0 0 1.5em;
    border-radius: 20px;
}
.bg_content_wellness02 {
    background-color: #c1fbb7;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_wellness02_inner {
    padding: 20px 40px;
    margin: 0 0 1.5em;
    border-radius: 20px;
}

/*　腸活　外枠　*/
.bg_content_chokatsu {
    background: #ffff8f;
    padding: 36px 4%;
    margin-bottom: 2.5em;
}
.bg_content_chokatsu_inner {
    background: #fff;
    padding: 20px 4%;
    margin: 0 0 1.5em;
    border-radius: 20px;
}

/* 項目 */
.t_note_green {
    background: url(../images2/mark/ic_note_green.png) no-repeat 0 5px;
    background-size: 1.2em auto;
    padding-left: 1.5em;
    margin-bottom: 0.5em;
    font-size: 1.8rem;
    font-weight: bold;
    color: #248088;
}
.t_yen_green {
    background: url(../images2/mark/ic_yen_green.png) no-repeat 0 5px;
    background-size: 1.2em 1.2em;
    padding-left: 1.5em;
    margin-bottom: 0.5em;
    font-size: 1.8rem;
    font-weight: bold;
    color: #248088;
}
.t_gift_green {
    background: url(../images2/mark/ic_gift_green.png) no-repeat 0 3px;
    background-size: 1.2em auto;
    padding-left: 1.5em;
    margin-bottom: 0.5em;
    font-size: 1.8rem;
    font-weight: bold;
    color: #248088;
}

p + .t_note_green {
    margin-top: 1.5em;
}
p + .t_yen_green {
    margin-top: 1.5em;
}
p + .t_gift_green {
    margin-top: 1.5em;
}

.course_exp {
    text-align: left;
    margin-bottom: 3em;
    font-weight: bold;
}

.present_item {
    padding: 1.5em 0 0 2em;
    line-height: 1.6;
    list-style: disc;
}
.present_item li {
    margin-bottom: 0.5em;
}

.course_privilege {
    position: relative;
    background: #fff;
    padding: 4em 1em 2em 2em;
}
.course_privilege_clearness {
    position: relative;
    padding: 0em 0em 1.5em 6em;
}
.ic_privilege {
    position: absolute;
    top: -40px;
    left: -15px;
}

/* タブ */
/*ベース*/
.box_tao_course {
    margin-bottom: 1em;
    display: table;
    width: 100%;
    border-collapse: separate;
}
.box_tao_course:after {
    display: block;
    clear: both;
    content: "";
}
.box_tao_course a {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    padding: 2% 0.5% 1%;
    border: solid 2px #fff;
    color: #fff;
    text-decoration: none;
}
.box_tao_course a:hover {
    text-decoration: none;
}

.box_6week {
    background: #5472a0;
    border: 1px solid #acacd0;
    width: 50%;
}
.box_slow {
    background: #248088;
    border: 1px solid #4fb272;
    width: 50%;
}

.box_6week02 {
    background: #f2d2f5;
    border: 1px solid #f0caf3;
    width: 33%;
    color: #000 !important;
}
.box_slow02 {
    background: #fdcaca;
    border: 1px solid #c2e3ea;
    width: 33%;
    color: #000 !important;
}
.box_experience02 {
    background: #ceeaee;
    border: 1px solid #feb7b7;
    width: 33%;
    color: #000 !important;
}

.box_2days {
    background: #ffdbde;
    border: 1px solid #ffd4d8;
    width: 25%;
    color: #000 !important;
}
.box_experience {
    background: #ceeaee;
    border: 1px solid #feb7b7;
    width: 50%;
    color: #000 !important;
}

.box_1time01 {
    background: #d6fe96;
    border: 1px solid #ffd4d8;
    width: 50%;
    color: #000 !important;
}
.box_syokyu01 {
    background: #81efb0;
    border: 1px solid #feb7b7;
    width: 50%;
    color: #000 !important;
}

.box_kids {
    background: #dd4d6c;
    width: 33%;
}
.box_jr {
    background: #b84d7b;
    width: 33%;
}
.box_voice {
    background: #248088;
    width: 33%;
}

.box_wellness01_three {
    background: #ceeaee;
    border: 1px solid #f0caf3;
    width: 33%;
    color: #000 !important;
}
.box_wellness02_three {
    background: #c1fbb7;
    border: 1px solid #f0caf3;
    width: 33%;
    color: #000 !important;
}
.box_wellness03_three {
    background: #feb3bc; /*border: 1px solid #f0caf3;*/
    width: 33%;
    color: #000 !important;
    line-height: 1.2;
}

.box_wellness01 {
    background: #ceeaee;
    border: 1px solid #f0caf3;
    width: 50%;
    color: #000 !important;
}
.box_wellness02 {
    background: #c1fbb7;
    border: 1px solid #f0caf3;
    width: 50%;
    color: #000 !important;
}
.box_wellness03 {
    background: #feb3bc; /*border: 1px solid #f0caf3;*/
    width: 50%;
    color: #000 !important;
    line-height: 1.2;
}
.box_wellness04 {
    background: #f8d2d1;
    border: 1px solid #f0caf3;
    width: 50%;
    color: #000 !important;
    line-height: 1.2;
}
.box_wellness05 {
    background: #ffffc1;
    border: 1px solid #f0caf3;
    width: 50%;
    color: #000 !important;
    line-height: 1.2;
}
span.txt_s {
    font-weight: normal;
    font-size: 80%;
}

/* キャンペーン終了の告知 */
#campaignend02 {
    border: 2px solid #b11a0f;
    padding: 1em 2em;
    border-radius: 4px;
    margin: 0 0 2em;
    text-align: center;
}
.campaignendtxt {
    font-size: 100%;
    font-weight: 700;
    color: #b11a0f;
    margin: 0;
    padding: 0.5em 0 1em;
    border-bottom: 1px solid #b11a0f;
}
.campaignrecommend_txt {
    margin: 2em 0 1.5em;
    font-size: 106.53109%;
}
.campaignrecommend_txt:before,
.campaignrecommend_txt:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 8px solid transparent;
    border-top: 8px solid #ff9c1a;
    box-sizing: border-box;
    position: relative;
    top: 7px;
}
.campaignrecommend_txt:before {
    margin-right: 5px;
}
.campaignrecommend_txt:after {
    margin-left: 5px;
}
.campaignrecommend_box {
    width: 100%;
    display: table;
    border-collapse: collapse;
}
.campaignrecommend_box a {
    display: table-cell;
    width: 50%;
    text-align: center;
}
.campaignrecommend_box a img {
    width: auto;
    height: auto;
}
.campaignrecommend_box a p {
    text-align: center;
}

/* ━━━━━  体験談  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.exp {
    box-sizing: border-box;
    margin: 0 0 3em;
    width: 100%;
}

.exp_bkg_bl01 {
    background: #aab9ce;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_bl01:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #aab9ce;
}

.exp_bkg_bl02 {
    background: #e6effc;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_bl02:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #e6effc;
}

.exp_bkg_gr01 {
    background: #92c0c2;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_gr01:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #92c0c2;
}

.exp_bkg_gr02 {
    background: #e1fbfc;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_gr02:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #e1fbfc;
}

.exp_bkg_ye01 {
    background: #f8d4c6;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_ye01:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #f8d4c6;
}

.exp_bkg_ye02 {
    background: #ffebe3;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_ye02:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #ffebe3;
}

.exp_bkg_pi01 {
    background: #eea6b6;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_pi01:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #eea6b6;
}

.exp_bkg_pi02 {
    background: #f5dce2;
    padding: 1.5em;
    position: relative;
}
.exp_bkg_pi02:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #f5dce2;
}

.exp p {
}
.exp_ttl {
    border-bottom: 1px solid #fff;
    font-weight: bold;
    font-size: 105%;
    padding-bottom: 1em;
}
.exp_ttl2 {
    border-bottom: 1px solid #000;
    font-weight: bold;
    font-size: 105%;
    padding-bottom: 1em;
}
.exp_txt {
    line-height: 1.8;
    color: #000;
}
/*.exp_txt span{ border-bottom: 1px dotted #794910; }*/
.exp_name {
    font-weight: bold;
    text-align: right;
    font-size: 90%;
    margin: 0;
    padding-right: 2.3em;
    background: url(../images2/mark/ic_lotus.svg) no-repeat 100% 0%;
}
.exp_date {
    text-align: right;
    color: #999;
    font-size: 80% !important;
}
.exp_pic {
    float: left;
    margin: 0 1em 1em 0;
}
.exp_pic img {
    width: 100px;
    height: auto;
}

/* ━━━━━ イベント ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

ul.event_inner {
    margin-bottom: 1.3em;
    padding-top: 1.3em;
}
ul.event_inner_02 {
    border-bottom: 3px solid #f4ad90;
    padding-bottom: 2em;
} /* イベントごとに下線とpadding */
ul.event_inner.loc {
    border: none;
    padding-top: 0;
}

.event_tbl {
    margin-bottom: 1.5em;
}
.event_tbl li {
}

li.event_img {
    margin-bottom: 1.5em;
    text-align: center;
}
li.event_img img {
    width: 90%;
    border: 1px solid #cacaca;
}
li.event_img img.surface {
    margin-bottom: 1em;
}

li.event_img_center {
    text-align: center;
    margin-bottom: 1em;
}
li.event_img_center img {
    width: 200px;
    border: 1px solid #cacaca;
}
li.event_img_center img.surface {
    margin-bottom: 1em;
}

.event_ttl {
    font-size: 125%;
    font-weight: bold;
    background: #fddfe4;
    border-radius: 6px;
    box-sizing: border-box;
    padding: 1em;
}
.event_ttl_s {
    font-size: 108%;
}

li.event_item {
    width: 100%; /*float:left;width:67%;*/
}
li.event_item.no_img {
    width: 100%;
}

ul li.event_item dl dt {
    clear: left;
    width: 100%;
    font-weight: bold;
    background: #bc4d7b;
    border-radius: 7px;
    margin: 0 1em 1em 0;
    line-height: 1.5;
    padding: 0.4em 0;
    text-align: center;
    color: #fff;
}
ul li.event_item dl dd {
    width: 100%;
    margin: 0 auto 1em;
    line-height: 2.2;
}
ul li.event_item dl dd p.event_det_link {
    margin: 0 0 0 1em;
    background: url(../images/mark/b_tri9.gif) no-repeat left center;
    padding-left: 1em;
}
ul li.event_item dl dd.event_txt p.event_det_link {
    margin-left: 0;
}

/*　各地のイベントタイトル */
.event_loc02 {
    padding: 0;
    margin-top: 2em;
}
.event_loc02 p {
    display: inline-block;
    font-size: 125%;
    font-weight: bold;
    border: 2px solid #dd4d6c;
    color: #dd4d6c;
    width: 100%;
    box-sizing: border-box;
    line-height: 1;
    padding: 0.7em 1em;
    margin-bottom: 0.5em;
    box-sizing: border-box;
}
.event_loc02 p span {
    font-size: 83.33%;
    font-weight: bold;
    vertical-align: middle;
}

.to_top {
    display: inline-block;
    text-decoration: none;
    float: right;
    margin: 0;
}
.to_top {
    display: none;
}
.event_box_02 .to_top {
    display: inline-block !important;
}

ul.event_inner li.event_item dl .event_txt {
    float: none;
    width: 100%;
}
ul.event_inner li.event_item dl dd p {
    line-height: 1.7;
}

li.event_item p.event_form_btn {
    text-align: center;
    margin: 0;
}

span.formbtn_none {
    display: none;
}
.event_none {
    text-align: center;
    border: 1px solid #dddddd;
    padding: 1em;
    border-radius: 7px;
    font-size: 125%;
}
.event_loc_link {
    margin: 0 6px;
}
.event_loc_link a {
    text-align: center;
    margin-right: 2em;
}

li.event_img.oblong {
    width: 100%;
}
li.event_img.oblong {
    float: none;
    margin-right: 1em;
    margin-bottom: 1em;
    text-align: center;
}
li.event_img.oblong img {
    width: 400px;
    border: 1px solid #cacaca;
}
li.event_img.oblong .lucica_h {
    display: inline;
}
li.event_img.oblong img.img02 {
    width: 235px;
    margin-right: 6px;
    border: none;
}
p.txt_oblong {
    float: left;
    width: 400px;
    margin-right: 1em;
}
li.event_item p.event_form_btn.oblong {
    width: 270px;
    float: right;
    text-align: right;
    margin: 0;
}

.event_lesson_ttl {
    margin-bottom: 1em;
}
.event_img_td {
    text-align: left;
    width: 30%;
    margin-right: 1em;
}
.event_img_td img {
    width: 200px;
    border: 1px solid #cacaca;
    margin-right: 1em;
}
.event_ttl_td {
    margin-bottom: 1em;
    vertical-align: middle !important;
}
.event_ttl02 {
    background: url(../images/mark/circle_red.gif) no-repeat left center;
    padding-left: 1.5em;
    font-size: 125%;
    font-weight: bold;
    line-height: 1.3;
}

/* 支部と出張ボタン */
ul.event_loc_btn_branch {
    margin: 0 auto 1.2em;
}
ul.event_loc_btn_branch li {
    display: inline-block;
}
ul.event_loc_btn_branch a:before {
    content: url(../images/mark/w_tri_02.png);
    display: inline-block;
    margin-right: 0.8em;
}
ul.event_loc_btn_branch a {
    display: inline-block;
    margin: 0 0.8em 0.8em 0;
    padding: 0.3em 0.8em;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    text-decoration: none;
    transition: all 0.3s ease;
}
ul.event_loc_btn_branch a:hover {
    opacity: 0.8;
}

ul.event_loc_btn_branch a {
    display: inline-block;
    margin: 0 0.8em 0.8em 0;
    padding: 0.3em 0.8em;
    color: #fff;
    filter: dropshadow(color=#bf8907, offX= 2, offY= 2);
    text-shadow: 0px 2px 2px #bf8907;
    background: #f1ba59;
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f1ba59', endColorstr='#f5a923', GradientType=0)";
    background-image: -ms-linear-gradient(
        bottom,
        #f1ba59 0%,
        #f5a923 50%,
        #f5a923 100%
    );
    background-image: linear-gradient(
        to bottom,
        #f1ba59 0%,
        #f5a923 50%,
        #f5a923 100%
    );
    border: 1px solid #f1ba59;
    border-radius: 5px;
    box-shadow: inset #fff 0px 0px 1px;
}

ul.event_loc_btn_branch li a.event_btn_all {
    display: inline-block;
    margin: 0 0.8em 0.8em 0;
    padding: 0.3em 0.8em;
    color: #fff;
    text-align: center;
    filter: dropshadow(color=#d65000, offX= 2, offY= 2);
    text-shadow: 0px 2px 2px #d65000;
    background: #f37123;
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f38848', endColorstr='#f37123', GradientType=0)";
    background-image: -ms-linear-gradient(
        bottom,
        #f38848 0%,
        #f37123 50%,
        #f37123 100%
    );
    background-image: linear-gradient(
        to bottom,
        #f38848 0%,
        #f37123 50%,
        #f37123 100%
    );
    border-radius: 5px;
    border: 1px solid #f38848;
    box-shadow: inset #fff 0px 0px 1px;
}

ul.event_loc_btn_branch li a.event_btn_shibu_s {
    display: inline-block;
    margin: 0 0.8em 0.8em 0;
    padding: 0.3em 0.8em;
    color: #fff;
    text-align: center;
    filter: dropshadow(color=#d65000, offX= 2, offY= 2);
    text-shadow: 0px 2px 2px #d65000;
    background: #f37123;
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f38848', endColorstr='#f37123', GradientType=0)";
    background-image: -ms-linear-gradient(
        bottom,
        #f38848 0%,
        #f37123 50%,
        #f37123 100%
    );
    background-image: linear-gradient(
        to bottom,
        #f38848 0%,
        #f37123 50%,
        #f37123 100%
    );
    border-radius: 5px;
    border: 1px solid #f38848;
    box-shadow: inset #fff 0px 0px 1px;
}

/* 開催日のテーブル */
.event_schedule {
    width: 100%;
    margin: 0 auto;
}
.event_schedule th {
    font-weight: normal;
    padding: 1.2em 0em;
    border-bottom: 1px dotted #ccc;
    width: 20%;
    line-height: 1;
    vertical-align: middle;
    box-sizing: border-box;
}
.event_schedule td {
    padding: 0;
    border-bottom: 1px dotted #ccc;
    box-sizing: border-box;
    line-height: 1;
    vertical-align: middle;
}
.event_schedule td a {
    text-align: center;
    text-decoration: none;
    display: inline-block !important;
    margin: 3px 2px 2px 0;
    background-color: #fcb959;
    color: #fff;
    line-height: 1;
    text-decoration: none;
    padding: 0.4em 0.5em;
    border-radius: 3px;
    cursor: pointer;
    box-shadow:
        0 2px 2px 0 rgba(0, 0, 0, 0.14),
        0 1px 5px 0 rgba(0, 0, 0, 0.12),
        0 2px 1px -2px rgba(0, 0, 0, 0.2);
    -webkit-tap-highlight-color: transparent;
    transition: 0.3s ease-out;
}
.event_schedule td a:hover {
    color: #fff;
    background: #fec87c;
}

.event_schedule th.bg_blue {
    background: #e0ffff !important;
}
.event_schedule th.bg_red {
    background: #fee7eb;
}
.event_schedule th.month {
    font-weight: bold;
}

/*.event_schedule2{ width:94%; margin: 0 auto; }
.event_schedule2 th{ width: 31%; padding: 0.8em 1em; border-bottom: 1px dotted #AAA; box-sizing: border-box; line-height: 1.0; vertical-align: middle; font-weight: normal;   }
.event_schedule2 td{ width: 69%; padding: 0.3em 0; border-bottom: 1px dotted #AAA; box-sizing: border-box;  line-height: 1.0; vertical-align: middle; text-align:center;  }
.event_schedule2 td a{ text-decoration: underline; display:inline-block; padding: 0.5em;border-radius: 4px;  }
.event_schedule2 td a:hover{ color:#FFF; background:#fdcf8d;  }
.e_time{ display:inline-block; width: 33%; padding: 0; text-align:center; float: left; }
.e_line{ border-bottom: 1px dotted #ddd; width: 100%; height: 1px; clear:both; margin-bottom: 0.3em; padding-top: 0.2em; }
.event_schedule2 th.bg_blue{ background: #e0ffff !important; }
.event_schedule2 th.bg_red{background: #ffc0cb; }
.event_schedule2 th.month{ font-weight:  bold; }*/

/* ━━━━━ location ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* 全国道家＜道＞学院一覧　--------- */
.tbl_locationlist {
    border-top: 1px solid #878787;
    border-right: 1px solid #878787;
    width: 100%;
}
.tbl_locationlist td,
.tbl_locationlist th {
    display: block;
    width: 100%;
    border-bottom: 1px solid #878787;
    border-left: 1px solid #878787;
    vertical-align: middle;
    box-sizing: border-box;
}
.tbl_locationlist th {
    background: #e6b3cd;
    padding: 0.5em;
}
.tbl_locationlist td {
    line-height: 1.4;
    padding: 1.5em 1em;
}
.tbl_locationlist td a[href^="tel:"] {
    color: #bc4d7b;
    text-decoration: none;
}
.lname {
    background: #f4dee9;
    padding: 1em;
} /* color td */
.lname a {
    text-decoration: none;
    color: #000;
}
.lname a:hover {
    text-decoration: underline;
}
.ladd {
} /* white td */
/*アンカーボタン */
.anker_navi li {
    float: left;
    margin-right: 20px;
    margin-bottom: 15px !important;
}
.button {
    display: inline-block;
    border-radius: 6px;
    font-size: 10pt;
    text-align: center;
    cursor: pointer;
    padding: 10px 10px;
    background: #ff7f7f;
    color: #ffffff;
    transition: 0.3s;
    border: 2px solid #ff7f7f;
    text-decoration: none;
}
.button:hover {
    color: #ff7f7f;
    background: #ffffff;
}
/* map icon */
.lmap {
    display: inline-block;
    margin: 0 0.5em;
    padding: 0.2em 0.8em;
    color: #fff !important;
    text-align: center;
    background: #dd4d6c;
    text-decoration: none;
    font-size: 84%;
    border-radius: 6px;
}
.lmap:hover {
    text-decoration: none !important;
    opacity: 0.8;
}

/* pink btn */
.btn_location {
    display: inline-block;
    margin: 0 1em 1em 0;
    padding: 0.1em 2.5em 0.1em 1em;
    background: url(../images2/mark/ic_arrow_pink01.png) no-repeat 92% 50%
        #f8e9f0;
    text-decoration: none;
    background-size: 1em auto;
    border-radius: 12px;
    color: #000;
}
.btn_location:hover {
    opacity: 0.8;
    color: #000;
    text-decoration: none !important;
}
.btn_location:last-child {
    margin-bottom: 0;
}

/* float col  */
.ladd_txt {
}
.ladd_btn {
}

.ltel_box {
    margin: 1em 0em;
}

/* 各支部のページ　--------- */

.loc_slider {
    background: #fcf2f7;
    margin-bottom: 2em;
}
.loc_slider li {
    padding: 10px 0;
    margin: 0 10px;
    text-align: center;
    font-size: 11px;
}
.loc_slider li img {
    height: 300px;
}

/* 東京 */
.pic-location06 {
}

.location_ad {
    border-top: 1px solid #828282;
    border-left: 1px solid #828282;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 2em;
}
.location_ad th,
.location_ad td {
    border-bottom: 1px solid #828282;
    border-right: 1px solid #828282;
    padding: 1.5em;
    line-height: 1.8 !important;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
.location_ad th {
    padding: 0.5em;
    background: #b4c1d4;
    text-align: center;
    vertical-align: middle;
}
.location_ad td {
    padding: 1em;
}

.location_ad_nopic {
    border-top: 1px solid #828282;
    border-left: 1px solid #828282;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 2em;
}
.location_ad_nopic th,
.location_ad_nopic td {
    border-bottom: 1px solid #828282;
    border-right: 1px solid #828282;
    padding: 1.5em;
    line-height: 1.8 !important;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
.location_ad_nopic th {
    padding: 0.5em;
    background: #b4c1d4;
    text-align: center;
    vertical-align: middle;
}
.location_ad_nopic td {
    padding: 1em;
}

.btn_map {
    display: inline-block;
    margin: 1em 0 0 0;
    padding: 0.1em 2.5em 0.1em 1em;
    background: url(../images2/mark/ic_arrow_blue01.png) no-repeat 92% 50%
        #cbd4e1;
    text-decoration: none;
    background-size: 1em auto;
    border-radius: 12px;
    color: #000;
}
.btn_map:hover {
    opacity: 0.8;
    color: #000;
}

.location_facade {
    display: none;
}

.show_nittei {
    font-size: 1.7rem;
    font-weight: bold;
    color: #dd4d6c;
}

.sns_list {
}
.sns_list li {
    margin-bottom: 7px;
}
.ic_instagram_pink {
    background: url("../images2/mark/ic_instagram_pink.png") no-repeat 0 3px;
    background-size: 1.5em auto;
    display: inline-block;
    padding-left: 2em;
}
.ic_facebook_pink {
    background: url("../images2/mark/ic_facebook_pink.png") no-repeat 0 3px;
    background-size: 1.5em auto;
    display: inline-block;
    padding-left: 2em;
}
.ic_twitter_pink {
    background: url("../images2/mark/ic_twitter_pink.png") no-repeat 0 3px;
    background-size: 1.5em auto;
    display: inline-block;
    padding-left: 2em;
}
.ic_blog_pink {
    background: url("../images2/mark/ic_blog_pink.png") no-repeat 0 3px;
    background-size: 1.5em auto;
    display: inline-block;
    padding-left: 2em;
}

/* ━━━━━ access ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.school {
    border-top: 1px solid #878787;
    border-right: 1px solid #878787;
    width: 100%;
}
.school td,
.school th {
    display: block;
    width: 100%;
    border-bottom: 1px solid #878787;
    border-left: 1px solid #878787;
    padding: 0.5em;
    vertical-align: middle;
    box-sizing: border-box;
}
.school th {
    background: #e6b3cd;
}
.school td {
    line-height: 1.4;
}

.school td a {
    text-decoration: none;
    color: #000;
}
.school td a:hover {
    text-decoration: underline;
    color: #000;
}
.school td a[href^="tel:"] {
    color: #bc4d7b;
}

.school td p {
    width: 80%;
}

.sname {
    background: #f4dee9;
}
.sadd {
}

.smap {
    display: inline-block;
    margin: 0 0 0 1em;
    padding: 0.2em 1.2em;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    font-size: 84%;
    border-radius: 6px;
}
.smap:hover {
    text-decoration: none !important;
    opacity: 0.8;
}

.stel_box {
    margin-top: 0.5em;
}

.school_facade {
    text-align: center;
    width: 100%;
    margin: 0 0 1em;
}
.school_facade p {
    box-sizing: border-box;
    display: inline-block;
    width: 40%;
    margin: 0 2%;
}
.school_facade p img {
    width: 100%;
}

/* ━━━━━ スペシャルコンテンツ(下層)  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.spcont_box {
    /*display: flex; flex-wrap: wrap; width: 100%; margin: 0 auto;*/
}
.spcont_box dl {
    /*flex-basis: 30%;*/
    margin: 0 0 2em;
    box-sizing: border-box;
}
.spcont_box dl dt {
    font-weight: bold;
    padding: 0.3em 1em;
    margin-bottom: 1em;
}
.spcont_box dl dd {
    padding-left: 24px;
    color: #595959;
    background: url(../images2/top/ic_cir_gray01.svg) no-repeat 0px 5px;
    background-size: 1em;
    font-weight: bold;
    margin-bottom: 0.5em;
}
.spcont_box dl dd a {
    text-decoration: underline;
    color: #595959;
}
.spcont_box dl dd a:hover {
    text-decoration: underline;
}

.spcont_ttl {
    min-width: 50%;
    display: inline-block;
    color: #5472a0;
    border: 2px solid #5472a0;
    margin: 0 1.5% 1em;
    padding: 13px 0.8em 10px 1em;
    font-weight: bold;
    font-size: 2.5rem;
    line-height: 1;
    box-sizing: border-box;
}

.spcont_sttl {
    font-size: 110%;
    font-weight: bold;
    padding-left: 2.5%;
}

.spcont_box_kin {
    margin-bottom: 3em;
}
.spcont_box_kin::after {
    content: "";
    clear: both;
    display: table;
}
.spcont_box_kin dl {
    margin: 0 1.5% 2em;
    box-sizing: border-box;
}
.spcont_box_kin dl dt {
    font-weight: bold;
    padding: 0.3em 1em;
    margin-bottom: 1em;
}
.spcont_box_kin dl dd {
    padding-left: 24px;
    color: #595959;
    background: url(../images2/top/ic_cir_gray01.svg) no-repeat 0px 5px;
    background-size: 1em;
    font-weight: bold;
    margin-bottom: 0.5em;
    box-sizing: border-box;
}
.spcont_box_kin dl dd a {
    text-decoration: underline;
    color: #595959;
}
.spcont_box_kin dl dd a:hover {
    text-decoration: underline;
}

.spcont_recommend_box {
    border: 2px solid #dd4d6c;
    padding: 1em;
    margin-bottom: 2em;
}
.spcont_recommend_ttl {
    font-size: 120%;
    font-weight: bold;
}
.spcont_recommend_ttl a {
    text-decoration: none;
    color: #000;
}
.recommend {
    padding: 0.1em 0.3em;
    font-size: 85%;
    background: #dd4d6c;
    color: #fff;
    margin-right: 1em;
}
img.img_shadow {
    border: 1px solid #e5e5e5;
    padding: 0.2em;
    box-shadow: 0 0 3px #d6d6d6;
    -moz-box-shadow: 0 0 3px #d6d6d6;
    -webkit-box-shadow: 0 0 3px #d6d6d6;
    -o-box-shadow: 0 0 3px #d6d6d6;
    background: #fff;
}
img.img_shadow02 {
    border: 1px solid #e5e5e5;
    padding: 0.4em;
    box-shadow: 0 0 3px #bfbfbf;
    -moz-box-shadow: 0 0 3px #bfbfbf;
    -webkit-box-shadow: 0 0 3px #bfbfbf;
    -o-box-shadow: 0 0 3px #bfbfbf;
    background: #fff;
}
.spcont_recommend_img {
    width: 100%;
    text-align: center;
}
.spcont_recommend_img img {
}

.spcont_linkbox {
    background: #f9ece7;
    padding: 1em;
    margin-bottom: 2.5em;
    text-align: center;
}
.spcont_linkbox::after {
    content: "";
    clear: both;
    display: table;
}
.spcont_book {
}
.spcont_book_txt {
}
/*.spcont_item.women{clear:both;margin-right:0;border-top:1px solid #ddd;padding-top:0.3em;margin-top:1em;width:100%;}
.spcont_box_ttl{color:#3a3a3a!important; background:url(../images/mark/circle_gray.png) no-repeat left center;padding-left:1.8em; display:inline-block; margin:0 0 1em;}*/

.pager_wrapper {
    text-align: center;
    margin-bottom: 2em;
}
.pager_wrapper::after {
    content: "";
    clear: both;
    display: table;
}
.pager_wrapper ul {
    display: inline-block;
    font-size: 1.8rem;
}
.pager_wrapper ul li {
    margin: 0 10px 0 0;
    display: inline-block;
}
.pager_wrapper ul li.on {
    font-weight: bold;
    background: #f7a3a0;
    color: #fff;
    padding: 3px 10px;
    text-align: center;
    vertical-align: middle;
    box-sizing: border-box;
}
.pager_wrapper ul li a {
    display: inline-block;
    background: #dd4d6c;
    color: #fff;
    padding: 3px 10px;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    box-sizing: border-box;
}
.pager_wrapper ul li a:hover {
    background-color: #fe577b;
    color: #fff;
    text-decoration: none;
}

.pager_wrapper ul li.pg_prev {
    margin: 0 20px 0 0;
}
.pager_wrapper ul li.pg_next {
    margin: 0 0 0 20px;
}

/*個別説明会までの流れを写真で見るボタン */
.btn_flow_nav {
    display: table;
    border-radius: 50px;
    border: 2px solid #5472a0;
    background: #e2edfe;
    margin: 0 auto 1.5em;
    width: auto;
}
.btn_flow_nav a {
    display: table-cell;
    padding: 0.5em 2.5em 0.5em 1.5em;
    vertical-align: middle !important;
    color: #5472a0;
    text-decoration: none;
    background: url("../images2/mark/ic_arrow_blue01.png") no-repeat 96% 50%;
    background-size: 1em;
}
.btn_flow_nav a img {
    height: 40px;
    width: auto;
}

.sc-list {
    margin-bottom: 2em;
}
.sc-list li {
    margin: 0 0 0.8em;
    padding: 0 0 0.5em 1.5em;
    border-bottom: 1px dashed #ccc;
    background: url("../images2/mark/ic_arrow_purple01.png") no-repeat 0px 7px;
    background-size: 1em;
}
.sc-list li span {
    padding-left: 1.5em; /*display:block;*/
    font-size: 85.71%;
}
.sc-list li a {
    text-decoration: none;
}
.sc-list li a:hover {
    text-decoration: underline;
}

/* ━━━━━ FAQ よくある質問  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.h2_faq {
    border-left: 5px solid #dd4d6c;
    background: url("../images2/mark/ic_plus_purple.png") no-repeat 98% 50%
        #fcebeb;
    background-size: 1.5em;
    margin-bottom: 1em;
    padding: 1em 2em 1em 2.2em;
    font-size: 110%;
    text-indent: -1.2em;
    line-height: 1.4;
}
.h2_faq::before {
    content: "Q. ";
}

.h2_faq.faq_open {
    background: url("../images2/mark/ic_minus_purple.png") no-repeat 98% 50%
        #fcebeb;
    background-size: 1.5em;
}

.faq_box {
    border: 1px solid #dd4d6c;
    margin-bottom: 2em;
    padding: 1em 1em 1em 2em;
}
.faq_box p.ans {
    text-indent: -1.2em;
}
.faq_box p.ans::before {
    content: "A. ";
}

.faq_more {
    display: inline-block;
    background: url(../images2/mark/ic_arrow_pink01.png) no-repeat 98% 3px;
    padding-right: 22px;
    background-size: 18px;
    color: #dd4d6c !important;
    text-decoration: none;
}
.faq_more:hover {
    text-decoration: underline;
}

/* ━━━━━ 一個人掲載情報一覧  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.col_wp {
    margin-bottom: 2em;
}

.col_box {
    display: block;
    text-decoration: none;
    margin-bottom: 2em;
    border: 1px solid #248088;
    box-sizing: border-box;
    padding: 0.5em;
}
.col_box:after {
    content: " ";
    display: block;
    clear: both;
}

.col_box dl:after {
    content: " ";
    display: block;
    clear: both;
}
.col_box dl dt {
    float: left;
    margin-right: 10px;
    line-height: 0;
}
.col_box dl dt img {
    width: 120px;
    height: auto;
}
.col_box dl dd {
    float: left;
    width: calc(100% - 130px);
}
.col_box:hover {
    text-decoration: none;
}

.col_ttl {
    border-bottom: 2px solid #248088;
    line-height: 1.2;
    margin: 0 0 7px 0;
    padding: 0 0 0.3em 0 !important;
    font-size: 120%;
    font-weight: bold;
    color: #248088 !important;
}
.col_ttl .mb0 {
    margin-bottom: 0;
}
.col_ttl02 {
    font-size: 94%;
    line-height: 1.4;
    color: #3a3a3a !important;
}
.col_chap {
    font-size: 82%;
    line-height: 1.2;
    color: #aaa;
    text-align: right;
    margin-bottom: 0;
}

.col_box:hover {
    color: #0c0 !important;
    background: #e5f2f3;
}

.ikkojin_list {
    border-top: 1px solid #878787;
    border-right: 1px solid #878787;
    margin: 0 auto 2em;
    width: 100%;
}
.ikkojin_list td {
    border-bottom: 1px solid #878787;
    border-left: 1px solid #878787;
    padding: 0.9em 1em;
}
.ikkojin_list td a {
    color: #4d4d4d;
}
.ikkojin_list tr td a:hover {
    color: #248088;
}
.ikkojin_list tr > td {
    width: 20%;
    background: #e5f2f3;
}
.ikkojin_list tr > td + td {
    width: 80%;
    background: #fff;
}

/* ━━━━━ info  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.info_policy dt {
    color: #5472a0;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 0.5em;
}
.info_policy dd {
    margin-bottom: 1em;
    margin-left: 1em;
}

ul.sitemap_ul {
    font-size: 90%;
    line-height: 1.5;
    box-sizing: border-box;
}

ul.sitemap_ul li {
    margin: 0 0 0.6em 0.7em;
}
ul.sitemap_ul li.sitemap_item_ttl {
    font-weight: bold;
    color: #5472a0;
    padding: 0 0 0.5em 0.5em;
    border-bottom: 1px solid #5472a0;
    margin: 0 0 0.8em 0;
    background: none;
}
ul.sitemap_ul li.sitemap_item_ttl_blank {
    padding: 0 0 0.5em 0.5em;
    margin: 0 0 0.8em 0;
    background: none;
}
ul.sitemap_ul.wide li.sitemap_item_ttl {
}

ul.sitemap_ul li.list_end {
    margin-bottom: 2em;
}
ul.sitemap_ul li a {
    color: #000;
    text-decoration: none;
}
ul.sitemap_ul li a:hover {
    color: #000;
    text-decoration: underline;
}

/* 左がthのとき */
.tbl_base01 {
    border-top: 1px solid #828282;
    border-left: 1px solid #828282;
    margin-bottom: 1.5em;
    width: 100%;
    box-sizing: border-box;
}
.tbl_base01 th,
.tbl_base01 td {
    display: block;
    width: 100%;
    border-bottom: 1px solid #828282;
    border-right: 1px solid #828282;
    line-height: 2 !important;
    box-sizing: border-box;
}
.tbl_base01 th {
    background: #b4c1d4;
    text-align: left;
    vertical-align: middle;
    padding: 0.5em 1.5em;
}
.tbl_base01 td {
    padding: 1em 1.5em;
}

/* 行ごとにthとtdのとき */
.tbl_base02 {
    border-top: 1px solid #828282;
    border-left: 1px solid #828282;
    margin-bottom: 1.5em;
    width: 100%;
    box-sizing: border-box;
}
.tbl_base02 th,
.tbl_base02 td {
    display: block;
    width: 100%;
    border-bottom: 1px solid #828282;
    border-right: 1px solid #828282;
    padding: 0.5em 1.5em;
    line-height: 2 !important;
    box-sizing: border-box;
}
.tbl_base02 th {
    background: #b4c1d4;
    text-align: left;
    vertical-align: middle;
}
.tbl_base02 td a {
    color: #000;
}
.tbl_base02 td {
    background: #e4eaf3;
    border-bottom: none;
}
.tbl_base02 td + td {
    background: #fff;
    border-bottom: 1px solid #828282;
}

.tbl_update {
    border-top: 1px solid #828282;
    border-left: 1px solid #828282;
    margin-bottom: 1.5em;
    width: 100%;
    box-sizing: border-box;
}
.tbl_update th,
.tbl_update td {
    border-bottom: 1px solid #828282;
    border-right: 1px solid #828282;
    padding: 0.5em;
    box-sizing: border-box;
    line-height: 1.3 !important;
}
.tbl_update th {
    background: #b4c1d4;
    text-align: left;
    vertical-align: middle;
    font-size: 1.2rem;
}
.tbl_update td a {
    color: #000;
    text-decoration: none;
}
.tbl_update td {
    background: #e4eaf3;
    vertical-align: middle;
    min-width: 7em;
    font-size: 1rem;
}
.tbl_update td + td {
    background: #fff;
    width: 75%;
    font-size: 1.2rem;
}

/* ━━━━━ seminar  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.semi_topbox {
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}
.semi_topbox + .semi_topbox {
    border-top: 1px solid #b1aba6;
    padding: 3em 0 0;
}

.semi_month {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1em;
}

.semi_ttl {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1em;
}

.semi_toppic {
    text-align: center;
    margin-bottom: 1em;
}
.semi_toptxt {
}
.semi_toptxt.noimg {
    float: none;
    width: 100%;
}

.semi_detail {
    overflow: hidden;
    border-left: 4px solid #dd4d6c;
    padding: 0 0 0 1em;
    margin: 0 0 3em 0; /*margin:0.5em 0 1em 0;*/
}
.semi_detail dl {
    overflow: hidden;
    margin-bottom: 1em;
    font-size: 1.5rem;
}
.semi_detail dl dt {
    float: left;
    width: 5em;
    margin-bottom: 0.5em;
}
.semi_detail dl dd {
    float: left;
    width: calc(100% - 5em);
    margin-bottom: 0.5em;
}
.semi_detail p.annotation {
    line-height: 1;
} /* ※コメントが改行しているときに行間を詰める */

/* ━━━━━ topics  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.book_info {
    background: #ecf6fb;
    padding: 1em;
    margin-bottom: 2em;
}
.book_info table {
    border-collapse: collapse;
}
.book_info th {
    display: block;
    width: 100%;
    text-align: left;
    font-weight: normal;
}
.book_info td {
    display: block;
    width: 100%;
    border-bottom: 1px solid #ccc;
}

/*.topics121_wp{  }
.topics121_col3{ width: 100%;  box-sizing: border-box; padding: 2em; margin:  0 1.5%; background: #D3DDEB ; margin-bottom: 1em;}
.topics121_ttl{ background: #248088; color: #FFF; border-radius: 8px; padding: 0 0 0 1em; font-size: 18px;  }

.topics121_btn01{ width:10em; background: url("../images2/mark/ic_plus_green.png") #d3f1f4 no-repeat 90% 50%;background-size: 1.2em; border: 2px solid #248088; border-radius: 16px; padding: 0 1em; margin: 0 auto 1em; }
.topics121_btn01.open{ background: url( "../images2/mark/ic_minus_green.png") #d3f1f4 no-repeat 90% 50%; background-size: 1.2em; }


.topics121_review{ background: #FFF; padding: 1em; margin-bottom: 1em; border-radius: 12px; }
.topics121_review p{ line-height: 1.4; margin-bottom: 0; }
*/
.topics121_wp {
}
.topics121_col3 {
    width: 100%;
    box-sizing: border-box;
    padding: 2em;
    margin: 0 1.5%;
    background: #d3ddeb;
    margin-bottom: 1em;
}
.topics121_col4 {
    width: 100%;
    box-sizing: border-box;
    padding: 2em;
    margin: 0 1.5%;
    background: #efc5d9;
    margin-bottom: 1em;
}
.topics121_ttl {
    background: #248088;
    color: #fff;
    border-radius: 8px;
    padding: 0 0 0 1em;
    font-size: 18px;
}
.topics121_col4_ttl {
    background: #d44064;
    color: #fff;
    border-radius: 8px; /* padding: 0 0 0 1em;*/
    font-size: 18px;
    text-align: center;
    padding: 1em 2em;
}
.topics121_btn01 {
    width: 10em;
    background: url("../images2/mark/ic_plus_green.png") #d3f1f4 no-repeat 90%
        50%;
    background-size: 1.2em;
    border: 2px solid #248088;
    border-radius: 16px;
    padding: 0 1em;
    margin: 0 auto 1em;
}
.topics121_btn01.open {
    background: url("../images2/mark/ic_minus_green.png") #d3f1f4 no-repeat 90%
        50%;
    background-size: 1.2em;
}

.topics121_review {
    background: #fff;
    padding: 1em;
    margin-bottom: 1em;
    border-radius: 12px;
}
.topics121_review p {
    line-height: 1.4;
    margin-bottom: 0;
}
.frame-wrapper__video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 50px;
}
.addmission_video {
    width: 100%;
    box-sizing: border-box;
    padding: 2em;
    margin: 0 1.5%;
    margin-bottom: 1em;
}
.frame-wrapper__video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.topics34_video_video {
    width: 100%;
    box-sizing: border-box;
    padding: 2em;
    margin: 0 1.5%;
    margin-bottom: 1em;
}
.frame-wrapper__video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
/* movie?? */

.youtube_col80 {
    width: 100%;
    margin: 0 auto;
}
.youtube_col60 {
    width: 100%;
    margin: 0 auto;
}

.youtube_box {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.youtube_box iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

.book_box01 {
    box-sizing: border-box;
    padding: 1.5em;
    background: #d3ddeb;
    text-align: center;
}

/* ━━━━━ stepmail  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.stepmail_box {
    border: 4px solid #f1f5f3;
    margin: 0 auto 1.5em;
    padding: 1em 2em 2em;
    box-sizing: border-box;
    width: 100%;
}
.stepmail_box_ttl {
    border-bottom: 4px solid #f1f5f3;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    color: #7f7f7f;
}

.stepmail_apply {
    width: 100%;
}
.stepmail_apply th,
.stepmail_apply td {
    font-size: 110%;
    padding: 0.5em 1em;
    display: block;
    width: 100%;
    text-align: center;
}
.stepmail_apply td input[type="text"] {
    width: 80%;
    font-size: 110%;
}

.btn_stepmail_send {
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #dd4d6c;
    background-size: 1em auto;
    border: none;
    width: 200px;
    margin: 1em 0 0 0;
    padding: 0.3em;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}

/* ━━━━━ mail_mag ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.mag_box {
    border: solid 3px #5472a0;
    background-color: #fff;
    padding: 1em 1em;
}

.ar_mag {
    background: url("../images2/mark/ic_arrow_purple01.png") no-repeat 0px 7px;
    background-size: 1em 1em;
    padding-left: 1.5em;
}

.tbl_mag {
    border-top: 1px solid #878787;
    border-right: 1px solid #878787;
    width: 100%;
}
.tbl_mag td,
.tbl_mag th {
    border-bottom: 1px solid #878787;
    border-left: 1px solid #878787;
    vertical-align: middle;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
.tbl_mag th {
    vertical-align: middle;
    background: #e6b3cd;
    padding: 0.3em 1em;
}
.tbl_mag td {
    background: #f8f8f8;
    padding: 1em;
}
.tbl_mag td input[type="text"] {
    width: 100%;
    height: 2em;
}

input.btn_submit {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
} /*初期化*/

input.btn_submit.purple {
    background: #fff;
    width: 220px !important;
    padding: 0.5em 1em;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}
input.btn_submit.pink {
    background: #dd4d6c;
    width: 100px;
    color: #fff;
    font-weight: bold;
    border: none;
}
input.btn_submit.purple {
    background: #b84d7b;
    width: 100px;
    color: #fff;
    font-weight: bold;
    border: none;
}
input.btn_submit.green {
    background: #248088;
    width: 100px;
    color: #fff;
    font-weight: bold;
    border: none;
}
input.btn_submit.blue {
    background: #5472a0;
    width: 100px;
    color: #fff;
    font-weight: bold;
    border: none;
}

.mlmg_present_box {
    text-align: center !important;
    padding: 1.5em;
    margin: 0 4% 1em;
    border: 2px solid #ccc;
    background: #f8f8f8;
}
.mlmg_present_box .box01,
.mlmg_present_box .box02,
.mlmg_present_box .box03 {
    font-weight: bold;
}
.mlmg_present_box .box01 {
    border-bottom: 1px dotted #248088;
    color: #248088;
    margin-bottom: 0.8em;
    padding-bottom: 0.5em;
}
.mlmg_present_box .box02,
.mlmg_present_box .box03 {
    text-align: center;
}
.mlmg_present_box .box03 {
    margin-bottom: 0.5em;
}
.mlmg_present_box .box04 {
    width: 80%;
    margin: 0 0 0 4em;
    text-indent: -1em;
    text-align: left;
    font-size: 85.71%;
}

.mlmg_notes {
    border: 1px solid #808080;
    padding: 10px;
    margin-top: 1em;
}

/* ━━━━━ admission 予約  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.gakuin_col {
    width: 90%;
    margin: 0 auto;
}
.gakuin_box {
}

a.gakuin {
    color: #fff;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    background-image: -moz-linear-gradient(top, #b44d7b, #c54c82);
    background-image: -webkit-linear-gradient(top, #b44d7b, #c54c82);
    background-image: linear-gradient(to bottom, #b44d7b, #c54c82);
    border-bottom: solid 3px #a45176;
    /*border:1px solid #b44d7b;*/
    text-decoration: none;
    display: block;
    font-size: 17px;
    text-align: center;
    padding: 3% 1.8%;
    margin: 1.3em 0 0.5em;
    border-radius: 4px;
    box-sizing: border-box;
}

#admission_form {
    width: 100%;
    border: 1px solid #e8d7c1;
    border-collapse: collapse;
}
#admission_form tr {
}
#admission_form th {
    border: 1px solid #e8d7c1;
    border-collapse: collapse;
    font-weight: normal;
}
#admission_form td {
    border: 1px solid #e8d7c1;
    border-collapse: collapse;
    padding: 0.5em 2%;
}
#admission_form td a {
    border-radius: 5px;
    padding: 3% 0%;
    width: 29%;
    margin: 0 2% 0.3em 0;
    box-sizing: border-box;
    display: inline-block;
    box-sizing: border-box;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    font-size: 120%;
    line-height: 1.4;
    background-image: -moz-linear-gradient(top, #b44d7b, #c54c82);
    background-image: -webkit-linear-gradient(top, #b44d7b, #c54c82);
    background-image: linear-gradient(to bottom, #b44d7b, #c54c82);
}

table#admission_form td a.btn_zoom {
    background-image: -moz-linear-gradient(top, #f55f72, #f37282);
    background-image: -webkit-linear-gradient(top, #f55f72, #f37282);
    background-image: linear-gradient(to bottom, #f55f72, #f37282);
}

#admission_form td a.map_sp {
    color: #fff;
    background: #f89838;
    text-decoration: none;
    border-radius: 5px;
    padding: 0;
    margin: 0;
    display: inline-block;
    text-align: center;
    font-weight: bold;
    font-size: 100%;
    width: 22%;
}
#admission_form td.tit {
    background-color: #f3e6d5;
    font-weight: bold;
    text-align: center;
    line-height: 2;
}
#admission_form td.date {
    background-color: #fff9f2;
    text-align: center;
    font-weight: bold;
}
#admission_form td span.sat {
    color: blue;
}
#admission_form td span.sun {
    color: red;
}

.tbl_form {
    width: 100%;
}
.tbl_form th,
.tbl_form td {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    line-height: 1.5;
    padding: 2% 3%;
}
.tbl_form th {
    background: #e5e5e5;
    font-weight: bold;
}
.tbl_form td {
    width: 100%;
    box-sizing: border-box;
    padding: 3%;
    color: #666;
}

.tbl_form td input,
select {
    padding: 5px;
    color: #000;
}
.ipw100 {
    width: 100%;
    box-sizing: border-box;
}
.ipw {
    width: calc(100% - 1.5em);
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
.nichi {
    width: 15em;
}

.req {
    display: inline-block;
    background: #f65050;
    color: #fff;
    padding: 0.4em 0.5em;
    font-size: 76%;
    margin-left: 0.5em;
    line-height: 1;
}

.form_item {
    margin-bottom: 0.5em;
}
.form_item_col2 {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-block;
    width: 48%;
}
.form_item_enq {
    margin: -0.2em 0 0.5em 2em;
}
.form_note {
    font-size: 84%;
    color: #787878;
}

.tbl_form td input[type="checkbox"] {
    height: 2em;
    width: 2em;
    position: relative;
    top: 0.5em;
    margin: 0 0 1em;
}
.tbl_form td input[type="radio"] {
    height: 2em;
    width: 2em;
    position: relative;
    top: 0.5em;
    margin: -0.5em 0 1em;
}

#zm {
    display: inline-block;
    font-size: 90%;
    font-weight: bold;
    color: #c10000;
}

a.blomb {
    display: inline-block;
    border: none;
    border-radius: 5px;
    padding: 1.5% 3%;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    font-size: 84%;
    color: #fff;
    font-weight: bold;
    background-image: -moz-linear-gradient(top, #b44d7b, #c54c82);
    background-image: -webkit-linear-gradient(top, #b44d7b, #c54c82);
    background-image: linear-gradient(to bottom, #b44d7b, #c54c82);
}

.ad_form_btn {
    padding: 1em 2.5em;
    font-size: 110%;
    font-weight: bold;
    color: #fff;
    border: none;
    border-radius: 4px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    background-image: -moz-linear-gradient(top, #b44d7b, #c54c82);
    background-image: -webkit-linear-gradient(top, #b44d7b, #c54c82);
    background-image: linear-gradient(to bottom, #b44d7b, #c54c82);
    border-bottom: solid 3px #a45176;
}

.back_form_btn {
    padding: 1em 2.5em;
    font-size: 110%;
    font-weight: bold;
    color: #fff;
    border: none;
    border-radius: 4px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    background-image: -moz-linear-gradient(top, #818181, #888888);
    background-image: -webkit-linear-gradient(top, #818181, #888888);
    background-image: linear-gradient(to bottom, #818181, #888888);
    border-bottom: solid 3px #7a7a7a;
}

.btn_size {
    padding: 3px;
}
.btn_size02 {
    padding: 5px;
    font-size: 14px;
}

/* ━━━━━ inquiry 予約  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.form_otherlink {
    float: right;
}
.form_otherlink::after {
    content: "";
    clear: both;
    display: table;
}
.form_otherlink li {
    display: inline-block;
    background: url("../images2/mark/ic_arrow_purple01.png") no-repeat 0% 50%;
    background-size: 0.7em auto;
    padding: 0 1em 0 0.8em;
}
.form_otherlink li a {
    text-decoration: none;
}
.form_otherlink li a:hover {
    text-decoration: underline;
}
.input_com {
    width: 90%;
    height: 8em;
}

/*.tbl_form_inq{ border-top: 1px solid #878787; border-right: 1px solid #878787; width: 100%; margin-bottom: 2.5em;   }
.tbl_form_inq td, .tbl_form_inq th{ display: block; width: 100%; box-sizing: border-box; border-bottom: 1px solid #878787; border-left: 1px solid #878787; vertical-align: middle; padding: 0.5em 1em; }
.tbl_form_inq th{ vertical-align:middle; background:#E6B3CD; text-align: left;   }
.tbl_form_inq td{ background: #F8F8F8;  }
.tbl_form_inq td input{ font-size: 16px; }
.tbl_form_inq td input[type="text"]{}
.tbl_form_inq td label{ display: block; }


.ov_ad2{ font-size: 13px; line-height: 1.3;  }

.tbl_cap{ border: none;  }
.tbl_cap th, .tbl_cap td{ border: none; }

.btn_size03{padding:5px;font-size:14px; padding: 0.3em 1.5em 0.3em 1em; color:#FFF; text-align:center; font-size: 2.4rem;  background:url(../images2/mark/ic_arrow_white01.png) no-repeat 98% center #DD4D6C;  background-size: 1em auto; text-decoration: none; min-width: 13em; border: none;  }

.btn_size04{padding:5px;font-size:14px; padding: 0.3em 1.5em 0.3em 1.5em; color:#FFF; text-align:center; font-size: 2.4rem; background:#5472a4; text-decoration: none; border: none;  }*/

/* ━━━━━ index_event.php  ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.facility-search {
    padding: 0 4%;
} /* 親要素 */

.area2 {
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 6px;
    background-color: #f1f1f1;
    background-image: url(../images2/mark/no_selected.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    width: 100%;
    padding: 1em 1em 1em 2em;
    margin-bottom: 0.8em;
    cursor: pointer;
    font-weight: bold;
    font-size: 110%;
}

.area2.on {
    background-image: url(../images2/mark/selected.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
}

.facility-search > ul,
.facility-search > ul > li > ul {
    display: none;
    padding: 0;
    margin: 0;
}

.pref {
    background: #ffe4e7;
    padding: 0.7em 0 0.7em 1.5em;
    margin: 0 0.5em 0.5em;
    border-radius: 6px;
}

.facility-search ul > li,
.facility-search > ul > li > ul > li {
    cursor: pointer;
}

.city {
    margin-bottom: 2em;
}
.city li {
    background: #f2f1f0 !important;
    padding: 0.8em 0 0.8em 1.5em;
    margin: 0 0.5em 0.7em 2em;
    box-sizing: border-box;
    border-radius: 6px;
    color: #aaa;
}
.city li:last-child {
    margin-bottom: 1.5em;
}

.city li.active {
    padding: 0;
    color: #666;
    background: #fdefd8 !important;
    border-radius: 6px;
}

.city li.active a {
    display: block;
    padding: 0.8em 0 0.8em 1.5em;
    color: #666;
    border-radius: 6px;
    text-decoration: none;
    background: url(../images/mark/arrow_black01.png) no-repeat 90% center;
}
.city li.active a:hover {
    opacity: 0.8;
}

/* ━━━━━ 汎用的なボタン btn ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.btn_base_pink {
    display: inline-block;
    padding: 0.4em 1.7em 0.4em 1em;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #dd4d6c;
    background-size: 1em auto;
    text-decoration: none;
    box-sizing: border-box;
}
.btn_base_purple {
    display: inline-block;
    padding: 0.4em 1.7em 0.4em 1em;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #b84d7b;
    background-size: 1em auto;
    text-decoration: none;
    min-width: 50%;
}
.btn_base_blue {
    display: inline-block;
    padding: 0.4em 1.7em 0.4em 1em;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #5472a0;
    background-size: 1em auto;
    text-decoration: none;
    min-width: 50%;
}
.btn_base_green {
    display: inline-block;
    padding: 0.4em 1.7em 0.4em 1em;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #248088;
    background-size: 1em auto;
    text-decoration: none;
    min-width: 50%;
}

.btn_base_pink:hover {
    color: #fff;
    opacity: 0.8;
}
.btn_base_purple:hover {
    color: #fff;
    opacity: 0.8;
}
.btn_base_blue:hover {
    color: #fff;
    opacity: 0.8;
}
.btn_base_green:hover {
    color: #fff;
    opacity: 0.8;
}

/* ━━━━━ お問い合わせのBOX ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.contact_box {
    border: 3px #ee7280 solid;
    margin: 0 auto;
    border-collapse: collapse;
    clear: both;
}
.contact_box th {
    background: #ee7280;
    color: #fff;
    vertical-align: middle;
    font-weight: bold;
    font-size: 18px;
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 0.3em;
}
.contact_box th span {
    background: url("../images2/mark/ic_mail.svg") no-repeat 0 2px;
    background-size: 1.2em 1em;
    padding-left: 1.5em;
    margin-left: -0.8em;
}
.contact_box td {
    display: block;
    border-bottom: 1px #ee7280 solid;
    padding: 1em 0 1em;
    width: 100%;
    box-sizing: border-box; /*display: flex; justify-content: space-around; flex-wrap: wrap;*/
}
/*.contact_box td::after {
	display: block;
	clear: both;
	content: "";
}*/

.contact_box td:nth-child(2) {
    text-align: center;
} /*文字のセル*/

.tel_box {
    display: inline-block;
    background: url("../images2/mark/ic_tel.svg") no-repeat 0 center;
    margin: 0 10%;
    padding: 10px 0 10px 40px;
    background-size: 34px 34px;
    line-height: 1.2;
    box-sizing: border-box;
    font-size: 11px;
}
a.tel_txt {
    font-size: 23px;
    font-weight: bold;
    text-decoration: none;
    color: #000;
}

.time_box {
    display: inline-block;
    background: url("../images2/mark/ic_time.svg") no-repeat 0 center;
    margin: 0 10%;
    padding: 10px 0 10px 40px;
    background-size: 34px 34px;
    line-height: 1.4;
    box-sizing: border-box;
}
.time_txt {
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    color: #000;
}

.contact_box_s01 {
    border: 3px #ee7280 solid;
    margin: 0 auto;
    border-collapse: collapse;
    clear: both;
}
.contact_box_s01 th {
    background: #ee7280;
    color: #fff;
    vertical-align: middle;
    font-weight: bold;
    font-size: 18px;
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 0.3em;
}
.contact_box_s01 th span {
    background: url("../images2/mark/ic_mail.svg") no-repeat 0 2px;
    background-size: 1.2em 1em;
    padding-left: 1.5em;
    margin-left: -0.8em;
}
.contact_box_s01 td {
    display: block;
    border-bottom: 1px #ee7280 solid;
    padding: 1em 0 1em;
    width: 100%;
    box-sizing: border-box; /*display: flex; justify-content: space-around; flex-wrap: wrap;*/
}

.contact_box_s01 td:nth-child(2) {
    text-align: center;
} /*文字のセル*/

.tel_box_s01 {
    display: inline-block;
    background: url("../images2/mark/ic_tel.svg") no-repeat 0 center;
    margin: 0 10%;
    padding: 10px 0 10px 40px;
    background-size: 34px 34px;
    line-height: 1.2;
    box-sizing: border-box;
    font-size: 11px;
}
a.tel_txt_s01 {
    font-size: 23px;
    font-weight: bold;
    text-decoration: none;
    color: #000;
}

.time_box_s01 {
    display: inline-block;
    background: url("../images2/mark/ic_time.svg") no-repeat 0 center;
    margin: 0 10%;
    padding: 10px 0 10px 40px;
    background-size: 34px 34px;
    line-height: 1.4;
    box-sizing: border-box;
}
.time_txt_s01 {
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    color: #000;
}

/* ━━━━━  pager ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.pager {
    margin: 40px 0 10px;
}
.pager::after {
    content: "";
    clear: both;
    display: table;
}
.next {
    background: url(../images2/mark/ic_next.png) no-repeat right center;
    padding-right: 20px;
    font-weight: bold;
    background-size: 13px;
    text-decoration: none;
    float: right;
}
.next:hover {
    text-decoration: underline;
}
.prev {
    background: url(../images2/mark/ic_prev.png) no-repeat left center;
    padding-left: 20px;
    font-weight: bold;
    background-size: 13px;
    text-decoration: none;
    float: left;
    margin-bottom: 1em;
}
.prev:hover {
    text-decoration: underline;
}

/* footer ==================================================================================================================================================================================== */

footer {
    background: #bc4d7b;
}

.sns_col {
    padding: 1em 0;
    text-align: center !important;
    border-bottom: 1px solid #fff;
}
.sns_col a {
    display: inline-block;
    margin: 0 10px;
}
.sns_col a img {
    width: 40px;
    height: auto;
}

.footer_col {
    margin: 0 auto;
    padding: 2.5em 0 0;
}

ul.footer_ul {
    font-size: 83.3%;
    line-height: 1.5;
    color: #fff;
    margin: 0 0 0 3em;
}
ul.wide {
    margin: 0 0 0 3em;
}
ul.footer_ul li {
    display: none;
    margin: 0 0 0.6em 0.7em;
    padding-left: 0.6em;
}
ul.footer_ul li.footer_item_ttl {
    display: block;
    color: #fff;
    padding: 0 0 0.5em 0.5em;
    margin: 0 0 0.8em 0;
    background: none;
}
ul.footer_ul li.footer_item_info {
    display: block;
    color: #fff;
    padding: 0 0 0.5em 0.5em;
    margin: 0 0 0.8em 0;
    background: none;
}
ul.footer_ul li.footer_item_ttl_blank {
    display: none;
    padding: 0 0 0.5em 0.5em;
    margin: 0 0 0.8em 0;
    background: none;
}
ul.footer_ul.wide li.footer_item_ttl {
    width: 254px;
}
/*ul.footer_ul li.list_menu{ background:url(../images2/mark/footer_ic.png) no-repeat left center;padding-left:1.2em;margin-left:0em;} 大項目の前につけていたアイキャッチ */
ul.footer_ul li.list_end {
    margin-bottom: 2em;
}
ul.footer_ul li a {
    color: #fff;
    text-decoration: none;
}
ul.footer_ul li a:hover {
    color: #fff;
    text-decoration: underline;
}

.footer_bookshop {
    width: 280px;
    height: auto;
    margin: 1em auto 1em;
    display: block;
}

.add_02 {
    float: left;
    margin: 0 4.5em 0 1em;
}
.footer_logo {
    width: 220px;
    height: auto;
    margin: 1em auto 1em;
    display: block;
}
.footer_access {
    width: 113px;
    float: left;
    color: #fff;
}
.footer_address {
    clear: both;
    padding-top: 1em;
    border-top: 1px solid #fff;
    margin-bottom: 0.5em;
    color: #fff;
    text-align: center;
}
.footer_tel {
    width: 2em;
    height: auto;
}
.copy {
    text-align: center;
    margin-bottom: 0;
    padding: 1em;
    color: #fff;
    font-size: 83.3%;
}

/* ━━━━━新ショップ━━━━━ */
.addCart {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    width: 110px;
    height: 30px;
    padding: 3px 3px !important;
    background: #248088; /* ボタンの色指定*/
    color: #fff; /* ボタンの文字色指定*/
    font-size: 12px;
    line-height: 2;
    font-weight: bold;
    cursor: pointer;
}

.addCart2 {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    width: 120px;
    height: 30px;
    padding: 3px 3px !important;
    background: #dd4d6c; /* ボタンの色指定*/
    color: #fff; /* ボタンの文字色指定*/
    font-size: 12px;
    line-height: 2;
    font-weight: bold;
    cursor: pointer;
}

.addCart3 {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    width: 120px;
    height: 40px;
    padding: 3px 3px !important;
    background: url(../images2/mark/ic_arrow_white01.png) no-repeat 96% center
        #dd4d6c;
    background-size: 1em auto;
    text-decoration: none;
    width: 100%; /* ボタンの色指定*/
    color: #fff; /* ボタンの文字色指定*/
    font-size: 12px;
    line-height: 2;
    font-weight: bold;
    cursor: pointer;
}
