/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
@charset "UTF-8";
@import url("https://use.typekit.net/vnd5mvd.css");

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.wf-loading { visibility: hidden;}
.wf-active { visibility: visible;}
/*------------------------------------------------------------
	メインコンテンツ等のスタイル
------------------------------------------------------------*/
body {
  	font-family: "futura-pt","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
	font-size: 14px;
	letter-spacing: .05em;
    line-height: 2;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}
table, tr, th, td {
    border-collapse: collapse;
}
input, textarea, select, button {
    font-family: "futura-pt","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
    font-size: 100%;
    letter-spacing: .05em;
}
ul, ol, dl {
    margin: 0;
    padding: 0;
}
h1, h2, h3, h4, h5, h6, p {
    margin-top: 0;
}
img {
    vertical-align: bottom;
}
a img {
    border: medium none;
}
a {
    color: #000;
    text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}
a:link {
    color: #000;
    text-decoration: none;
}
a:visited {
    color: #000;
    text-decoration: none;
}
a:hover, a:active, a:focus {
    color: #5e5e5e;
    text-decoration: none;
}
.pc_tab_br {
	
}
.pc_br {

}
.tab_br {
	display: none;
}
.sp_br {
	display: none;
}
.fm_dnp {
    font-family: dnp-shuei-mgothic-std;
}
.anchorlink {
    text-decoration: underline !important;
    color: #3399ff !important;
}
#wrapper {
	background-color: #fff;
	color: #000;
}
/*------------------------------------------------------------
	key visual
------------------------------------------------------------*/
#key_visual_wrap {
    width: 100%;
    height: 100vh;
	position: relative;
    /*background-image: url(../image/key_visual.jpg);*/
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
#page_header_wrap {
    width: 100%;
    position: relative;
}
.full {
    width: 100vw;
    height: 100vh;
}
.full_sp {
    display: none;
}



/*==================================================
スライダーのためのcss
===================================*/
.slider {
  position:relative;
    z-index: 0;
    /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
    height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
}
/*　背景画像設定　*/

.slider-item01 {
    background:url(../image/img_01.jpg);
}

.slider-item02 {
    background:url(../image/img_02.jpg);
}

.slider-item03 {
    background:url(../image/img_03.jpg);
}

.slider-item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height:100vh;/*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    background-repeat: no-repeat;/*背景画像をリピートしない*/
    background-position: center;/*背景画像の位置を中央に*/
    background-size: cover;/*背景画像が.slider-item全体を覆い表示*/
}
.slider-item a {
    width: 100%;
    height:100vh;
    display: block; 
}

/*矢印の設定*/

.slick-prev, 
.slick-next {
    position: absolute;
    z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #fff;/*矢印の色*/
    border-right: 2px solid #fff;/*矢印の色*/
    height: 25px;
    width: 25px;
    display: none !important;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
    position: relative;
    z-index: 3;
    text-align:center;
    margin:-50px 0 0 0;/*ドットの位置*/
    display: none !important;
}

.slick-dots li {
    display:inline-block;
    margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#fff;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}



/* ----グロナビ TOP----　*/
.header_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0;
    height: 140px;
    padding: 0 0 0 60px;
    /*border-bottom: 1px solid #fff;*/
    position: absolute;
    top: 0;
    width: 100%;
}
.header_left_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_logo_top {
    padding: 0;
}
.header_logo_top a {
    display: flex;
}
.header_logo_top img {
    width: 240px;
}
.header_right_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: none;
}
.header_right_inner_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.header_nav_wrap_top {
    height: 100%;
    border-left: 1px solid #fff;
    display: flex;
    align-items: center;
    padding: 0 28px;
}
.header_nav_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 15px;
}
.header_nav_top ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_nav_top ul li {
    margin: 0 20px;
}
.header_nav_top ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-size: 14px;
    background-repeat: no-repeat;
    background-position: left center;
    color: #fff;
}
.header_reserve_top {
    background-image: url(../image/cal_1_tw.svg);
    background-size: 16px auto;
    padding-left: 20px;
}
.header_contact_top {
    background-image: url(../image/mail_1_tw.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_company_top {
    background-image: url(../image/company_1_tw.svg);
    background-size: 13px auto;
    padding-left: 22px;
}
.header_store_top {
    background-image: url(../image/cart_1_tw.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_access_top {
    background-image: url(../image/access_tw.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_nav_top ul li a:hover {
    color: #fff !important;
}
.header_nav_top ul li a img {
    height: 18px;
}
.header_sns_wrap_top {
    height: 100%;
    border-left: 1px solid #fff;
    display: flex;
    align-items: center;
    padding: 0 32px;
}
.header_sns_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 15px;
}
.header_sns_top ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_sns_top ul li {
    margin: 0 15px;
}
.header_sns_top ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-size: 14px;
    background-repeat: no-repeat;
    background-position: left center;
}
.header_sns_top ul li a:hover {
    color: #000 !important;
}
.header_sns_top ul li a img {
    
}
.header_youtube_top {
    width: 25px;
}
.header_twitter_top {
    width: 24px;
}
.header_facebook_top {
    width: 12px;
}
.header_instagram_top {
    width: 20px;
}

.header_gNavi_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    padding: 0;
    height: 76px;
    padding: 0 60px 0;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: 66px;
    width: 100%;
    display: none;
}
.global_nav_top {
    
}
.global_nav_top ul {
    display: flex;
    height: 100%;
    border-right: 1px solid #fff;
}
.global_nav_top ul li {
    border-left: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 160px;
}
.global_nav_top ul li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    height: 100%;
    width: 100%;
}
.global_nav_top ul li a:hover {
    background-color: #000;
}
.global_nav_top ul li a.mnon {
    background-color: #eff8f8;
}
.global_nav_top ul li a div {
    
}
.global_nav_top ul li a div img {
    height: 22px;
}
.global_nav_top ul li a span {
    line-height: 1;
    margin-top: 6px;
}

/* ----グロナビ----　*/
.header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0;
    height: 140px;
    padding: 0 0 0 60px;
    /*border-bottom: 1px solid #000;*/
    position: absolute;
    top: 0;
    width: 100%;
}
.header_left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_logo {
    padding: 0;
}
.header_logo a {
    display: flex;
}
.header_logo img {
    width: 240px;
}
.header_right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: none;
}
.header_right_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.header_nav_wrap {
    height: 100%;
    border-left: 1px solid #000;
    display: flex;
    align-items: center;
    padding: 0 28px;
}
.header_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 15px;
}
.header_nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_nav ul li {
    margin: 0 20px;
}
.header_nav ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-size: 14px;
    background-repeat: no-repeat;
    background-position: left center;
}
.header_reserve {
    background-image: url(../image/cal_1.svg);
    background-size: 16px auto;
    padding-left: 20px;
}
.header_contact {
    background-image: url(../image/mail_1.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_company {
    background-image: url(../image/company_1.svg);
    background-size: 13px auto;
    padding-left: 22px;
}
.header_store {
    background-image: url(../image/cart_1.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_access {
    background-image: url(../image/access.svg);
    background-size: 18px auto;
    padding-left: 22px;
}
.header_nav ul li a:hover {
    color: #000 !important;
}
.header_nav ul li a img {
    height: 18px;
}
.header_sns_wrap {
    height: 100%;
    border-left: 1px solid #000;
    display: flex;
    align-items: center;
    padding: 0 32px;
}
.header_sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 15px;
}
.header_sns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_sns ul li {
    margin: 0 15px;
}
.header_sns ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-size: 14px;
    background-repeat: no-repeat;
    background-position: left center;
}
.header_sns ul li a:hover {
    color: #000 !important;
}
.header_sns ul li a img {
    
}
.header_youtube {
    width: 25px;
}
.header_twitter {
    width: 24px;
}
.header_facebook {
    width: 12px;
}
.header_instagram {
    width: 20px;
}

.header_gNavi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    padding: 0;
    height: 76px;
    padding: 0 60px 0;
    border-bottom: 1px solid #000;
    position: absolute;
    top: 66px;
    width: 100%;
    display: none;
}
.global_nav {
    
}
.global_nav ul {
    display: flex;
    height: 100%;
    border-right: 1px solid #000;
}
.global_nav ul li {
    border-left: 1px solid #000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
}
.global_nav ul li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #000;
    height: 100%;
    width: 100%;
}
.global_nav ul li a:hover {
    background-color: #f4f4f4;
}
.global_nav ul li a.mnon {
    background-color: #eff8f8;
}
.global_nav ul li a div {
    
}
.global_nav ul li a div img {
    height: 22px;
}
.global_nav ul li a span {
    line-height: 1;
    margin-top: 6px;
}

/* ----フローティングメニュー----　*/
.fix-menu {
    position: fixed;
    top: 0;
    height: auto;
    z-index: 99;
    width: 100%;
    background: rgba(255,255,255,1);
    -webkit-box-shadow: 0 9px 31px rgba(0,0,0,.03);
    box-shadow: 0 9px 31px rgba(0,0,0,.03);
    display: none !important;
}
.header_flt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 2% 0 1%;
    height: 80px;
}
.header_left_flt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_logo_flt {
    width: 240px;
    padding: 0 0 0 30px;
}
.header_logo_flt a {
    display: flex;
}
.header_logo_flt img {
    width: 100%;
}
.header_nav_flt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 10px;
}
.header_nav_flt ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.header_nav_flt ul li {
    margin: 0 20px;
}
.header_nav_flt ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 94px;
    position: relative;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1px;
    color: #000;
}
.header_nav_flt ul li a:hover {
    color: #000 !important;
}
.header_nav_flt ul li a img {
    height: 16px;
}
.header_nav_flt ul li a:before,
.header_nav_flt ul li a:after {
    content: "";
    position: absolute;
    bottom: 30px;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
    width: 0;
    height: 1px;
    background-color: #000;
}
.header_nav_flt ul li a:before {
    left: 50%;
}
.header_nav_flt ul li a:after {
    right: 50%;
}
.header_nav_flt ul li a:hover:before,
.header_nav_flt ul li a:hover:after {
    width: 50%;
}

.header_right_flt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_info__ph_flt {
    padding-left: 45px;
    background-image: url(../image/icon/phone_flt.png);
    background-size: 30px 30px;
    background-position: center left;
    background-repeat: no-repeat;
    color: #000;
    margin-right: 20px;
    text-align: left;
}
.ph_number_flt {
    display: block;
    font-size: 16px;
    letter-spacing: 2px;
    font-weight: bold;
    line-height: 1.4;
}
.biz_hours_flt {
    display: block;
    font-size: 11px;
    letter-spacing: 2px;
}
.header_contact_flt {
    height: 94px;
    width: 94px;
    background-color: #2f3b50;
    color: #fff;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_contact_flt:hover {
    background-color: #556175;
}
.header_contact_flt span::before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url(../image/icon/cart.png);
    margin-top: -3px;
    margin-bottom: 3px;
    width: 20px;
    height: 20px;
}
.header_contact_flt span {
    font-size: 11px;
    color: #fff !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header_right_info_contact_flt {
    width: 94px;
    height: 94px;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: bold;
    background: #b90e11;
}
.header_right_info_contact_flt:hover {
    background: #cb2d30;
}
.header_right_info_contact_flt span {
    display: inline-block;
    padding-top: 20px;
    color: #fff !important;
    font-size: 12px;
    background: url(../image/icon/icon_mail.png) no-repeat top center / 22px auto;
}


.sflt_wrap {
    display: none;
}
/* ---------- sp_menu　---------　*/
.fullscreenmenu {
    
}
.menu2, .menu2 span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.menu2 {
    position: fixed;
    top: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    z-index: 10;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /*background-color: #fff;
    -webkit-box-shadow: 0px 4px 12px rgba(0,0,0,.08);
    box-shadow: 0px 4px 12px rgba(0,0,0,.08);*/
}
.menu2 span {
    position: absolute;
    left: 0;
    width: 28px;
    height: 1px;
    background-color: #000;
    z-index: 10;
    left: 50%;
    margin-left: -14px;
    box-shadow: 0px 1px 0px 0px #ffffff;
}
.menu2 span:nth-of-type(1) {
    top: 16px;
}
.menu2 span:nth-of-type(2) {
    top: 25px;
}
.menu2 span:nth-of-type(3) {
    bottom: 15px;
}
.menu2.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(45deg);
    transform: translateY(9px) rotate(45deg);
}
.menu2.active span:nth-of-type(2) {
    opacity: 0;
}
.menu2.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(-45deg);
    transform: translateY(-9px) rotate(-45deg);
}
#nav2 {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    width: 100%;
    height: 100vh;
    opacity: 0;
    background-color: #fff;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    visibility: hidden;
}
#nav2.active {
    right: 0;
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    visibility: visible;
}
#nav2 ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: -3%;
    margin-bottom: 25px
}
#nav2 ul li {
    list-style-type: none;
    width: 47%;
    text-align: left;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 26px;
    border-bottom: 1px solid #000;
    margin-right: 3%;
}
#nav2 ul li a {
    display: block;
    padding: 20px 0 15px;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
    line-height: 1;
    color: #000;
}
#nav2 ul li a:hover {
    color: #f65d5d;
}
.modal_menu_wrap {
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
    width: 60%;
    margin: 0 auto;
}
.modal_menu_logo {
    margin-bottom: 15px;
    margin-top: -15px;
}
.modal_menu_logo img {
    width: 200px;
}

.regist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    border-radius: 25px;
    padding: 0 30px;
    background-color: #ff7c80;
    color: #fff !important;
    font-weight: bold;
    margin-left: 24px;
}
.regist:hover {
    background-color: #ff9396;
}
.regist span {
    display: inline-block;
    padding-right: 15px;
    background: url(../image/icon/arrow1_w.svg) no-repeat right center / 8px auto;  
}
.modal_menu_entry {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.reserve_mdl {
    width: 48%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    padding: 12px 0;
    margin-bottom: 4%;
}
.reserve_mdl span {
    color: #fff !important;
    font-size: 12px;
    background: url(../image/about.svg) no-repeat center top / 24px auto;
    padding-top: 36px;
    display: inline-block;
    width: 100%;
    text-align: center;
    line-height: 1;
}
.contact_mdl {
    width: 48%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    padding: 12px 0;
    margin-bottom: 4%;
}
.contact_mdl span {
    color: #fff !important;
    font-size: 12px;
    background: url(../image/mail_1_w.svg) no-repeat center 4px / 26px auto;
    padding-top: 36px;
    display: inline-block;
    width: 100%;
    text-align: center;
    line-height: 1;
}
.company_mdl {
    width: 48%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    padding: 12px 0;
    margin-bottom: 4%;
}
.company_mdl span {
    color: #fff !important;
    font-size: 12px;
    background: url(../image/schedule.svg) no-repeat center 4px / 32px auto;
    padding-top: 36px;
    display: inline-block;
    width: 100%;
    text-align: center;
    line-height: 1;
}
.store_mdl {
    width: 48%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    padding: 12px 0;
    margin-bottom: 4%;
}
.store_mdl span {
    color: #fff !important;
    font-size: 12px;
    background: url(../image/cart_1_w.svg) no-repeat center top / 30px auto;
    padding-top: 36px;
    display: inline-block;
    width: 100%;
    text-align: center;
    line-height: 1;
}

.sns_mdl {
    display: flex;
    justify-content: space-between;
    padding: 0 30px;
}
.sns_mdl a {
    display: flex;
    justify-content: center;
    width: 25%;
}
.mdl_youtube {
    width: 25px;
}
.mdl_twitter {
    width: 24px;
}
.mdl_facebook {
    width: 12px;
}
.mdl_instagram {
    width: 20px;
}

/* ---------- [end]sp_menu　---------　*/

.svg6_wrap {
    position: absolute;
    left: 50px;
    bottom: 50px;
}
.svg6_scroll {
    font-size: 12px;
    transform: rotate( 90deg );
    letter-spacing: 2px;
    margin-bottom: 15px;
    color: #fff;
}
.svg6 {
    /*position: absolute;*/
    
}
.svg6 svg {
    height: 80px;
}
.svg6 svg #arrow {
    -webkit-transform: scale(.6);
    transform: scale(.6);
    -webkit-transform-origin: center;
    transform-origin: center;
    fill: #fff;
}
.svg6 svg #circle {
    -webkit-transform: scale(.8) rotate(-90deg);
    transform: scale(.8) rotate(-90deg);
    stroke-width: 10px;
    stroke-dasharray: 2000;
    -webkit-animation-name: svg6;
    animation-name: svg6;
    -webkit-animation-duration: 5s;
    animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-transform-origin: center;
    transform-origin: center;
    stroke: #fff;
    /*fill: #000;*/
}
@-webkit-keyframes svg6 {
    0% {
        stroke-dashoffset: 0;
    }
    30% {
        stroke-dashoffset: 2000;
    }
    60% {
        stroke-dashoffset: 0;
    }
}

.main_copy_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.main_copy_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;    
    height: 100%;
}
.mci_cont {
    position: absolute;
    right: 12%;
    top: 30%;
    max-width: 538px;
}
.main_copy_en {
    color: #000;
    font-size: 120px;
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-weight: normal;
    margin-bottom: 20px;
}
.main_copy_jp {
    color: #000;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 40px;
}
.top_covid {
    border: 0px solid #000;
}
.top_covid_ttl {
    background-color: #000;
    padding: 10px 0;
    text-align: center;
    line-height: 1;
}
.top_covid_ttl span {
    background-color: #ce9e8a;
    padding: 12px 0;
    color: #fff;
    background: url(../image/note.svg) no-repeat left center / 18px auto;
    padding-left: 22px;
    font-weight: bold;
    font-size: 15px;
}
.top_covid_txt {
    background-color: #fff;
    padding: 25px 30px;
    font-size: 13px;
    line-height: 1.8;
}

.kv_info_wrap {
    position: relative;
    background: linear-gradient(180deg, #fff 0%, #fff 50%, #f6f6f6 50%, #f6f6f6 100%);
    padding: 80px 5%;
}
.kv_info_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    /*background-color: #fff;
    padding: 60px 60px 0;
    box-shadow: 0 9px 31px rgba(0,0,0,.05);*/
    margin-bottom: 50px;
}
.kv_info_inner_ex {
    margin-bottom: 20px;
}
.kv_info_inner2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    height: 100%;
    padding-bottom: 40px;
}
.kvi_list_box {
    width: 45%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.kvi_ttl {
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.kvi_ttl p {
    color: #000;
    font-size: 22px;
    display: inline-block;
    line-height: 1;
    letter-spacing: 3px;
}
.kvi_ttl_link {
    display: inline-block;
    color: #fff !important;
    background-color: #000;
    font-size: 12px;
    line-height: 1;
    height: 18px;
    line-height: 18px;
    border-radius: 9px;
    padding: 0 15px;
}
.kvi_list {
    padding-left: 2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.kvi_list li {
    margin-bottom: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.kvi_list li span {
    display: inline-block;
    margin-right: 20px;
    color: #000;
}
.vertical_line {
    width: 1px;
    background-color: #e6e6e6;
}

.kvil_btn_wrap {
    padding-bottom: 50px;
}
.kvil_btn {
    width: 260px;
    height: 50px;
    background-color: #000;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 16px;
    border-radius: 100vh;
    margin: 0 auto;
}

/*------------------------------------------------------------
　トップ　-メインコンテンツ-
------------------------------------------------------------*/
.strong_about_wrap {
    width: 100%;
    padding: 100px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.strong_about_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
}
.strong_top_wrap {
    width: 100%;
    padding: 20px 5% 140px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.strong_top_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    /*display: flex;
    justify-content: space-between;*/
}

.strong_pt_ttl {
    text-align: center;
    margin-bottom: 60px;
}
.strong_pt_ttl img {
    width: 700px;
    margin-right: -30px;
}
.strong_pt_ttl_sp {
    display: none;
}
.primary_lead_wrap2 {
    width: 800px;
    margin: 0 auto 60px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    position: relative;
}
.primary_lead_wrap2::before {
    content: "\201D";
    position: absolute;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    top: -40px;
    color: #ce9e8a;
    font-family: adelle-sans,arial,sans-serif;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    font-weight: 700;
    font-size: 5em;
    left: 20px;
    line-height: 1;
}
.primary_lead_wrap2::after {
    content: "\201D";
    position: absolute;
    bottom: -40px;
    color: #ce9e8a;
    font-family: adelle-sans,arial,sans-serif;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    font-weight: 700;
    font-size: 5em;
    right: 20px;
    line-height: 1;
}
.primary_lead_box2 {
    padding: 30px 8%;
    width: 100%;
}
.primary_lead_inner2 {
    text-align: center;
    font-weight: bold;
    color: #000;
    font-size: 34px;
}
.strong_do_wrap {
    display: flex;
    justify-content: space-between;
    margin-right: -5%;
}
.strong_do_box {
    width: 28.3333%;
    margin-right: 5%;
}
.strong_do_image {
    text-align: center;
}
.strong_do_image img {
    width: 80%;
}
.strong_do_txt {
    text-align: center;
    margin-top: -20px; 
}
.strong_do_txt span {
    display: inline-block;
    background-color: #000;
    color: #fff;
    font-size: 18px;
    line-height: 1;
    padding: 10px 30px;
    height: 38px;
    border-radius: 2px;
    box-shadow: 0 9px 31px rgba(0,0,0,.2);
}

.strong_top_cont {
    width: 100%;
}
.stc_ttl_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 70px;
    line-height: 1;
    margin-bottom: 5px;
    letter-spacing: 2px;
    color: #000;
}
.stc_ttl_jp {
    line-height: 1;
    margin-bottom: 40px;
    color: #000;
}
.stc_txt {
    margin-bottom: 50px;
}
.stc_txt span {
    display: inline-block;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
}
.stc_youtube_wrap {
    width: 600px;
    margin: 0 auto;
}
.stc_youtube {
    position: relative;
    width:100%;
    height:0;
    padding-top: 56.25%;
}
.stc_youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


.top_expert_wrap {
    background-color: #fff;
    padding: 80px 90px;
    margin-bottom: 80px;
}
.top_expert_strong {
    
}
.top_expert_strong h3 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 35px;
    text-align: center;
}
.tes_list {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.tes_box {
    width: 31%;
}
.tes_thum {
    position: relative;
    width: 100%;
    padding-top: 100%;
    /*box-shadow: 8px 49px 50px -37px rgba(0,0,0,0.25);*/
    margin-bottom: 15px;
}
.tes_thum_inner {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.tes_thum_inner img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.tes_degree {
    font-size: 12px;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 4px;
}
.tes_name {
    font-size: 15px;
    text-align: center;
    line-height: 1.5;
    font-weight: bold;
}
.tes_link_wrap {
    margin-bottom: 60px;
}
.tes_link {
    background-color: #000;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    font-weight: bold;
    padding: 15px 0px;
    width: 280px;
    margin: 0 auto;
    border-radius: 100vh;
}
.tes_other_wrap {

}
.tes_other_txt {
    margin-bottom: 20px;
    text-align: center;
    font-weight: bold;
}
.tes_link_wrap2 {

}
.tes_link2 {
    background-color: #000;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    font-weight: bold;
    padding: 15px 0px;
    width: 280px;
    margin: 0 auto;
    border-radius: 100vh;
}
.top_method_ttl {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.6;
}
.cont_ttlCom_6 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 20px;
    padding-top: 15px;
    position: relative;
}
.cont_ttlCom_6::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_6 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 3px;
}

.strong_method_wrap {
    width: 100%;
    padding: 100px 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}
.strong_method_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;    
}
.smtd_ttl {
    margin-bottom: 50px;
}
.cont_ttlCom_7 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 20px;
    padding-top: 15px;
    position: relative;
}
.cont_ttlCom_7::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_7 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 3px;
}
.strong_method_area {
    display: flex;
}
.strong_method_image {
    width: 440px;
    margin-right: 60px;
}
.strong_method_image img {
    width: 100%;
}
.strong_method_cont {
    flex: 1;
}
.smc_detail_box {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e2e2e2;
}
.smc_detail_box h3 {
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 20px;
}
.smc_detail_box_lst {
    
}
.smc_detail_box_lst h3 {
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 20px;
}
.smcdb_txt {
    line-height: 1.8;
}
.smcdb_btn {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
}
.smcdb_btn a {
    display: inline-block;
    padding: 0 25px;
    height: 46px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100vh;
    margin-right: 15px;
}

.strong_promise_wrap {
    width: 100%;
    padding: 80px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}
.strong_promise_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;    
}
.stpr_ttl {
    margin-bottom: 70px;
}

.top_st_title {
    position: relative;
    text-align: center;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 70px;
    line-height: 1.2;
}
.top_st_title span {
    font-size: 14px;
    display: block;
    font-weight: normal;
    font-family: "futura-pt","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}
.top_st_title:before {
    position: absolute;
    bottom: -25px;
    left: calc(50% - 25px);
    width: 50px;
    height: 3px;
    content: '';
    background: #000;
}

.cont_ttlCom_8 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    padding-top: 15px;
    position: relative;
}
.cont_ttlCom_8::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_8 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 3px;
}
.promise_cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.promise_cont p {
    width: 48%;
    line-height: 1.8;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    text-indent: -13px;
    padding-left: 13px;
}
.tp_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.tp_list li {
    width: 48%;
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
    padding-left: 20px;
    margin-bottom: 15px;
    background: url(../image/icon/check_t.svg) no-repeat left 8px / 12px 10px;
}

.strong_beforeafter_wrap {
    width: 100%;
    padding: 20px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}
.strong_beforeafter_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;    
}
.stba_ttl {
    margin-bottom: 50px;
}
.cont_ttlCom_9 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    padding-top: 15px;
    position: relative;
}
.cont_ttlCom_9::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_9 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 10px;
}
.sec_beforeafter {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.ba_box {
    width: 23%;
    margin-bottom: 20px;
}
.bab_image {
    margin-bottom: 15px;
}
.bab_image img {
    width: 100%;
}
.bab_cap {
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    font-size: 13px;
}

.top_training_course {
    margin-bottom: 60px;
}
.ttc_inner {
    margin-bottom: 20px;
    text-align: center;
}
.top_training_course a {
    background-color: #000;
    color: #fff !important;
    width: 220px;
    height: 50px;
    border-radius: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin: 0 auto;
}

.strong_top_image {
    width: 47%;    
    height: 480px;
}
.strong_top_image img {
    width: 100%;    
    height: 100%;
    object-fit: cover;
}
/* btn */
.btn_more_wrap1 {
    text-align: center;
}
.btn_more1 {
    display: inline-block;
    height: 58px;
    border-radius: 29px;
    padding: 0 50px;
    line-height: 60px;
    font-weight: bold;
    color: #fff !important;
    background-color: #000;
    font-size: 14px;
    position: relative;
}
.btn_more1:hover {
    background-color: #95cecd;
}
.btn_more1 span {
    display: inline-block;
    padding-right: 15px;
    background: url(../image/icon/arrow1_w.svg) no-repeat right center / 8px auto;
}
.btn_more2 {
    display: inline-block;
    height: 48px;
    border-radius: 24px;
    padding: 0 50px;
    line-height: 48px;
    font-weight: bold;
    color: #fff !important;
    background-color: #000;
    font-size: 14px;
    position: relative;
    width: 260px;
}
.btn_more2:hover {
    background-color: #95cecd;
}
.btn_more2 span {
    display: inline-block;
    padding-right: 15px;
    background: url(../image/icon/arrow1_w.svg) no-repeat right center / 8px auto;
}
/* btn */
.btn_more_sl {
    display: inline-block;
    color: #fff !important;
    text-align: center;
    background-color: #000;
    text-decoration: none;
    overflow: hidden;
    height: 58px;
    padding: 0 50px;
    border-radius: 29px;
    position: relative;
    z-index: 2;
    line-height: 60px;
    font-size: 16px; 
    font-weight: bold;
}
.btn_more_sl span {
    display: inline-block;
    padding-right: 15px;
    background: url(../image/icon/arrow1_w.svg) no-repeat right center / 8px auto;  
}
.btn_more_sl:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #313131;
    -webkit-transition: all 200ms linear;
    -webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}
.btn_more_sl:hover {
    color: #fff;
}
.btn_more_sl:hover:before {
    left: 0;
}

.top_profile_wrap {
    width: 100%;
    padding: 100px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.top_profile_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.top_strong_ttl {
    text-align: center;
    margin-bottom: 80px;
}
.top_strong_ttl h2 {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 70px;
    line-height: 1;
    margin-bottom: 5px;
    letter-spacing: 2px;
    color: #000;
}
.top_strong_ttl p {
    line-height: 1;
    color: #000;
}

.top_profile_detail {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.top_profile_image {
    width: 42%;
}
.top_profile_image img {
    width: 100%;
}
.top_profile_cont {
    width: 47%;
    padding-top: 40px;
}
.top_profile_cont_2 {
    width: 53%;
}
.tpc_name_jd {
    font-weight: bold;
    margin-bottom: 10px;
}
.tpc_name {
    font-weight: bold;
    font-size: 28px;
    line-height: 1;
    margin-bottom: 20px;
}
.tpc_sns {    
    margin-bottom: 40px;
    display: flex;
    align-items: center;
}
.tpc_sns a {    
    
}
.tpc_sns img {    
    width: 20px;
    margin-right: 15px;
    display: flex;
}
.tpci_tw {
    width: 22px !important;
}
.tpci_fb {
    width: 11px !important;
}
.tpc_txt {
    /*margin-bottom: 50px;*/
}

.app_record_wrap {
    display: flex;
    margin-bottom: 40px;
    flex-wrap: wrap;
    justify-content: space-between;
}
.app_record_box {
    width: 23%;
    background-color: #6eb1b0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 30px;
    color: #fff;
}
.apre_ttl {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1;
}
.apre_detail {
    font-size: 60px;
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
}
.apre_detail span {
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    margin-left: 5px;
    font-family: font-family: "futura-pt","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}

.top_qualification {
    /*padding: 30px 0 0;
    background: url(../image/icon/double_quotation_1.svg) no-repeat 0 0 / 18px auto;*/
    margin-bottom: 40px;
}
.tq_ttl {
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 18px;
    line-height: 1;
    margin-bottom: 25px;
}
.tq_detail {

}
.media_list_wrap1 {
    display: flex;
    flex-wrap: wrap;
    margin-right: -2%;
}
.media_list {
    width: 14.6666%;
    margin-bottom: 20px;
    margin-right: 2%;
}
.media_list img {
    width: 100%;
}
.media_list_wrap2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.media_list2 {
    width: 15%;
    margin-bottom: 20px;
}
.media_list2 img {
    width: 100%;
}
.media_list2 span {
    display: inline-block;
    margin-top: 10px;
    font-size: 11px;
    line-height: 1.6;
}

.media_list_wrap3 {
    display: flex;
    flex-wrap: wrap;
    margin-right: -2%;
    margin-bottom: 20px;
}
.media_list3{
    width: 31.3333%;
    margin-bottom: 20px;
    margin-right: 2%;
}
.media_list3 img {
    width: 100%;
}


.sec_top_media_wrap {
    display: flex;
    margin-right: -5%;
    flex-wrap: wrap;
    margin-bottom: 80px;
}
.sec_media_box {
    width: 28.333%;
    margin-right: 5%;
}
.sec_media_box p {
    font-size: 16px;
}
.smb_ttl {
    background-color: #000;
    color: #fff;
    height: 28px;
    line-height: 28px;
    border-radius: 15px;
    padding: 0 20px;
    display: inline-block;
    margin-bottom: 14px;
}
.smb_list {
    border-radius: 4px;
}
.smb_list li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.smb_list li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.top_pickup_wrap {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.top_pickup_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}
.top_pickup_box {
    width: 50%;
    height: 360px;
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 50px;
    display: flex;
    align-items: flex-end;
}
.top_pickup_box:hover {
    opacity: 0.8;
}
.tpb_img_1 {
    background-image: url(../image/top_pickup_4.png);
}
.tpb_img_2 {
    background-image: url(../image/top_pickup_6.png);
}
.tpb_img_3 {
    background-image: url(../image/top_pickup_3.png);
}
.tpb_img_4 {
    background-image: url(../image/top_pickup_5_1.png);
}
.tpb_txt_box {
    color: #fff;
}
.tpbtb_ttl_jp {
    line-height: 1;
    margin-bottom: 8px;
    font-weight: bold;
    font-size: 14px;
}
.tpbtb_ttl_en {
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 50px;  
    margin-bottom: 15px;
}
.tpbtb_txt {

}

.top_strong2_wrap {
    width: 100%;
    padding: 100px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.top_strong2_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.top_strong2_inner2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.tst_youtube {
    width: 47%;
}
.mu_youtube {
    text-align: center;
    margin-bottom: 10px;
}
.mu_youtube img {
    width: 80%;
}
.tstu_ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
}
.tstu_ttl_t {
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 40px;
}
.tstu_ttl_i {
    margin: 0 5px;
    display: flex;
}
.tstu_ttl_i img {
    height: 30px;
    margin-top: -5px;
}
.tstu_btn {
    color: #fff !important;
    background-color: #000;
    width: 240px;
    height: 52px;
    border-radius: 3px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
.tst_tc {
    width: 47%;
}
.tsttc_image {
    width: 100%;
    height: 310px;
    margin-bottom: 40px;
}
.tsttc_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tsttc_ttl {
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 40px;
    text-align: center;
    margin-bottom: 15px;
}
.tsttc_txt {
    text-align: center;
    margin-bottom: 30px;
}

.regist_common_wrap {
    width: 100%;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 360px;
    background-color: #000;
}
.regist_common_inner2 {
    width: 100%;
    display: flex;
    height: 100%;    
}
.rci_wrap {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-right: 1px solid #777777;
}


.regist_common_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.regist_common_ttl {
    font-weight: bold;
    font-size: 24px;
    color: #fff;
    margin-bottom: 10px;
}
.regist_common_txt {
    text-align: center;
    margin-bottom: 30px;
    color: #fff;
    font-size: 16px;
}
.regist_common_txt a {
    color: #fff !important;
}
.regist_common_btn {
    width: 360px;
    height: 70px;
    border-radius: 35px;
    color: #000 !important;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    line-height: 70px;
    background-color: #fff;
    margin: 0 auto;
    display: block;
}
.regist_common_btn:hover {
    background-color: #fff;
}
.regist_common_btn span {
    display: inline-block;
    padding-right: 15px;
    background: url(../image/icon/arrow1_mc.svg) no-repeat right center / 8px auto;
}

.studio_useful_wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    margin-top: -20px;
}
.sec_studio_useful {
    display: flex;
    align-items: center;
    margin: 0 15px;
}
.ssu_ico {
    width: 40px;
    margin-right: 10px;
}
.ssu_ico img {
    width: 100%;
}
.ssu_text {
    flex: 1;
    color: #fff;
    font-weight: bold;
}

/*------------------------------------------------------------
    下層 共通
------------------------------------------------------------*/
#main_top {
    
}
#main {
    padding-top: 142px;
}
.page_title_wrap {
    width: 100%;
    padding: 0 5% 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.page_title_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.page_title_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 60px;
    line-height: 1;
    margin-bottom: 5px;
    letter-spacing: 2px;
    color: #000;
}
.page_title_jp {
    font-weight: bold;
    line-height: 1;
    color: #000;
    font-weight: normal;
}
.headerCom1_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 160px;
}
.headerCom2_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 100px;
}
.headerCom3_wrap {
    width: 100%;
    padding: 0 5% 160px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /*background: linear-gradient(180deg, #ffffff 0%, #ffffff 70%, #f6f6f6 30%, #f6f6f6 100%);*/
}
.headerCom3_wrap_sp {
    width: 100%;
    padding: 0 5% 420px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /*background: linear-gradient(180deg, #ffffff 0%, #ffffff 70%, #f6f6f6 30%, #f6f6f6 100%);*/
    display: none;
}
.headerCom4_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 100px;
}
.headerCom5_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 80px;
}
.headerCom1_inner {
    max-width: 1400px;
    height: 350px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: flex-end;
}
.headerCom1_inner_sp {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: flex-end;
    position: relative;
}
.headerCom2_inner {
    max-width: 1400px;
    height: 350px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: flex-end;
    position: relative;
}
.headerCom3_inner {
    max-width: 1400px;
    height: 450px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
.headerCom3_inner img {
    width: 700px;
}
.headerCom3_inner_sp {
    max-width: 1400px;
    height: 450px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    display: none;
}
.headerCom3_inner_sp img {
    width: 700px;
}
.headerCom4_inner {
    max-width: 1400px;
    height: 350px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
.headerTtl_trn {
    color: #fff;
}
.httr_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 70px;
    line-height: 1;
    /*margin-bottom: 28px;*/
    letter-spacing: 2px;
}
/*.httr_en::after {
    content: '';
    display: block;
    position: relative;
    width: 40px;
    height: 1px;
    bottom: -8px;
    left: 50%;
    margin-left: -20px;
    background-color: #fff;
}*/
.httr_jp {
    font-weight: normal;
    line-height: 1;
    font-size: 13px;
}

.trainer_head_ttl_pc {
    position: absolute;
    right: 10%;
    top: 35%;
}
.trainer_head_ttl_pc img {
    width: 480px;
}
.trainer_head_ttl {
    position: absolute;
    right: 10%;
    top: 35%;
    text-align: left;
    display: none;
}
.trainer_head_ttl h3 {
    font-size: 34px;
    font-weight: bold;
    color: #000;
    line-height: 1.6;
    margin-bottom: 20px;
}
.trainer_head_ttl p {
    font-size: 15px;
}
.hcbg_lesson {
    background-image: url(../image/bg/bg_lesson.png);
}
.hcbg_price {
    background-image: url(../image/bg/bg_price.png);
}
.hcbg_about {
    background-image: url(../image/bg/bg_about.png);
}
.hcbg_studio {
    background-image: url(../image/bg/bg_studio.png);
}
.hcbg_cafe {
    background-image: url(../image/bg/bg_cafe.jpg);
}
.hcbg_training {
    background-image: url(../image/bg/bg_training.png);
}
.hcbg_esthetic {
    background-image: url(../image/bg/bg_esthetic.png);
}
.hcbg_trainer {
    background-image: url(../image/bg/bg_trainer.png);
}
.hcbg_personal {
    background-image: url(../image/bg/bg_personal.png);
}
.hcbg_group {
    background-image: url(../image/bg/bg_group.png);
}
.hcbg_online {
    background-image: url(../image/bg/bg_online.png);
}
.hcbg_schedule {
    background-image: url(../image/bg/bg_schedule.png);
}
.hcbg_pro {
    background-image: url(../image/bg/bg_pro.png);
}
.hcbg_shop {
    background-image: url(../image/bg/bg_shop.png);
}
.hcbg_contact {
    background-image: url(../image/bg/bg_contact.png);
}
.hcbg_company {
    background-image: url(../image/bg/bg_company.png);
}
.headerCom1_ttl {
    width: 600px;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    box-shadow: 0 9px 31px rgba(0,0,0,.05);
    flex-direction: column;
    margin: 0 auto -100px;
}
.headerCom1_ttl_2 {
    width: 1000px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    box-shadow: 0 9px 31px rgba(0,0,0,.05);
    flex-direction: column;
    margin: 0 auto -160px;
    padding: 65px 80px;
}
.headerCom1_ttl_2_sp {
    width: 1000px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    box-shadow: 0 9px 31px rgba(0,0,0,.05);
    flex-direction: column;
    margin: 0 auto -350px;
    padding: 65px 80px;
    display: none;
}
.hct_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 50px;
    line-height: 1;
    margin-bottom: 28px;
    letter-spacing: 2px;
}
.hct_en::after {
    content: '';
    display: block;
    position: relative;
    width: 40px;
    height: 1px;
    bottom: -8px;
    left: 50%;
    margin-left: -20px;
    background-color: #000;
}
.hct_jp {
    font-weight: normal;
    line-height: 1;
    font-size: 13px;
}
.hct_jp span {
    font-weight: normal;
    line-height: 1;
    color: #000;
    font-size: 12px;
}
.hct_main {
    font-size: 28px;
    line-height: 1.6;
    margin-bottom: 38px;
    letter-spacing: 2px;
    font-weight: bold;
}
.hct_main::after {
    content: '';
    display: block;
    position: relative;
    width: 40px;
    height: 1px;
    bottom: -14px;
    left: 50%;
    margin-left: -20px;
    background-color: #000;
}
.hct_sub {
    text-align: left;
    font-size: 14px;
}

.price_menu_wrap {
    width: 100%;
    padding: 20px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.price_menu_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: flex;
    border-left: 1px solid #e5e5e5;
}
.price_menu {
    width: 33.3333%;
    display: flex;
    flex-direction: column;
    color: #d2d2d2 !important;
    border-right: 1px solid #e5e5e5;
}
.price_menu:hover {
    color: #000 !important;
}
.price_menu div {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 5px;
}
.price_menu p {
    font-weight: bold;
    line-height: 1;
}
.pmenuon {
    color: #000 !important;
}
.menu_wrap {
    width: 100%;
    padding: 0 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.menu_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.menu_pickup_wrap {
    width: 740px;
    margin: 0 auto 80px;
    display: flex;
    justify-content: space-between;
}
.menu_pickup_box {
    width: 47%;
    border: 1px solid #000;
    border-radius: 4px;
    overflow: hidden;
}
.menu_pickup_wrap_ex {
    margin: 0 auto 80px;
    display: flex;
    justify-content: space-between;
}
.menu_pickup_box_ex {
    width: 31%;
    border: 1px solid #000;
    border-radius: 4px;
    overflow: hidden;
}
.menu_pickup_wrap_ex2 {
    width: 740px;
    margin: 0 auto 80px;
    display: flex;
    justify-content: center;
}
.menu_pickup_box_ex2 {
    width: 47%;
    border: 1px solid #000;
    border-radius: 4px;
    overflow: hidden;
}
.menu_pickup_wrap_ex3 {
    width: 740px;
    margin: 0 auto 80px;
    display: flex;
    justify-content: center;
}
.menu_pickup_box_ex3 {
    width: 47%;
    border: 1px solid #000;
    border-radius: 4px;
    overflow: hidden;
}
.mpb_ttl {
    line-height: 1;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 15px 0;
    background-color: #000;
}
.mpb_txt {
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.mpb_price {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 15px;
}
.mpb_price_cp {
    font-size: 18px;
    line-height: 1;
}
.mpb_regular_price {
    font-weight: bold;
    text-decoration: line-through;
    font-size: 18px;
}
.mpb_sp_price_wrap {
    display: flex;
    align-items: baseline;
}
.mpb_sp_price {
    font-size: 80px;
    color: #6eb1b0;
    line-height: 1;
}
.mpb_sp_price2 {
    font-size: 40px;
    color: #6eb1b0;
    line-height: 1;
    font-weight: bold;
}
.mpb_sp_yen {
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
    margin-left: 5px;
}
.mpbt01 {
    font-size: 40px;
    font-weight: bold;
    color: #6eb1b0;
    line-height: 1;
    margin-bottom: 5px;
}
.mpbt02 {

}

.regist_fee_wrap {
    width: 740px;
    margin: 0 auto 80px;
}
.regist_fee_inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.regist_fee_box {
    width: 47%;
    border: 1px solid #000;
    border-radius: 4px;
    overflow: hidden;
}
.regist_fee_ttl {
    line-height: 1;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 15px 0;
    background-color: #000;
}
.regist_fee_cont {
    min-height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.regist_fee_cont_inner {
    display: flex;
    align-items: baseline;
}
.rfi_n {
    font-size: 50px;
    color: #6eb1b0;
    line-height: 1;
}
.rfi_y {
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
    margin-left: 5px;
}
.rfi_x {
    font-size: 12px;
    line-height: 1;
    margin-left: 5px;
}
.rfi_t {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.6;
    text-align: center;
    color: #6eb1b0;
}
.regist_fee_sup {
    font-size: 13px;
    line-height: 1.6;
    text-align: left;
}

.expfee_psnl {
    max-width: 640px;
    padding: 60px;
    background-color: #f6f6f6;
    margin: 0 auto 80px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.8;
}
.expfee_psnl span {
    color: #f084a4;
    font-size: 28px;
    font-weight: bold;
}

.date_of_expiry {
    font-size: 13px;
    text-align: center;
    margin-top: 5px;
}

.price_table_wrap {
    margin-bottom: 80px;
}
.price_table_wrap2 {
    margin-bottom: 40px;
}
.price_table_wrap_ex {
    margin-bottom: 80px;
}
.price_table_ttl_wrap {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
    border-bottom: 1px solid #000;
    padding-bottom: 15px;
}
.price_table_ttl {
    margin-left: 10px;
    font-weight: bold;
    font-size: 18px;
}
.price_table_ttl::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}
.price_table_ttl_sub {
    margin-left: 15px;
    display: flex;
    align-items: center;
}
.price_table_ttl {
    display: flex;
    align-items: center;
}
.ptps_label {
    height: 22px;
    padding: 0 13px;
    border-radius: 11px;
    background-color: #000;
    color: #fff;
    line-height: 21px;
    font-size: 12px;
}
.ptps_icon {
    margin: 0 10px;
    display: flex;
}
.ptps_icon img {
   width: 9px;
   height: 9px;
}

.table_f {
    border: 1px solid #d5d5d5;
    width: 100%;
    height: auto;
}
.table_f tr {

}
.table_f th {
    border: 1px solid #d5d5d5;
    background-color: #f6f6f6;
    font-weight: bold;
    padding: 20px 22px;
    vertical-align: middle;
    line-height: 1.6;
}
.table_f td {
    text-align: left;
    border: 1px solid #d5d5d5;
    vertical-align: middle;
    padding: 20px 22px;
    line-height: 1.6;
}

.table_f2 {
    border: 1px solid #d5d5d5;
    width: 100%;
    height: auto;
}
.table_f2 tr {

}
.table_f2 th {
    border: 1px solid #d5d5d5;
    background-color: #f6f6f6;
    font-weight: bold;
    padding: 20px 22px;
    vertical-align: middle;
    line-height: 1.6;
}
.table_f2 td {
    text-align: left;
    border: 1px solid #d5d5d5;
    vertical-align: middle;
    padding: 20px 22px;
    line-height: 1.6;
}


.table_f3 {
    border: 1px solid #d5d5d5;
    width: 100%;
    height: auto;
}
.table_f3 tr {

}
.table_f3 th {
    border: 1px solid #d5d5d5;
    background-color: #f6f6f6;
    font-weight: bold;
    padding: 20px 22px;
    vertical-align: middle;
    line-height: 1.6;
}
.table_f3 td {
    text-align: left;
    border: 1px solid #d5d5d5;
    vertical-align: middle;
    padding: 20px 22px;
    line-height: 1.6;
}
.linethrough {
    text-decoration: line-through;
}
.campred {
    color: #f084a4;
    font-weight: bold;
}

.tax {
    font-size: 10px;
    margin-left: 3px;
}

.p_notes {

}
.p_notes ul {
    margin-top: 20px;
}
.p_notes ul li {
    line-height: 1.8;
    font-size: 13px;
    margin: 5px 0;
    text-align: left;
}


.p_subsc_wrap {
    display: flex;
    margin-right: -4%;
}
.p_subsc {
    width: 29.333%;
    margin-right: 4%;
    padding: 40px 40px;
    border: 1px solid #000;
    text-align: center;
}
.p_subsc_head {
    border-bottom: 1px dotted #000;
    padding-bottom: 18px;
    margin-bottom: 18px;
}
.p_subsc_head h3 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 10px;
}
.p_subsc_head p {
    font-weight: bold;
    line-height: 1.6;
}
.p_subsc_cont {

}
.p_subsc_txt {
    margin-bottom: 15px;
    font-size: 13px;
    text-align: left;
}
.p_subsc_price {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5;
}
.p_subsc_price span {
    font-size: 12px;
    margin-left: 5px;
    font-weight: normal;
}


.g_every {
    display: flex;
    align-items: center;
    padding: 40px 40px;
    border: 1px solid #000;
    flex-direction: column;
}
.g_every_ttl {
    width: 70%;
    border-bottom: 1px dotted #000;
    padding-bottom: 20px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
}
.g_every_cont {
    display: flex;
    align-items: baseline;
}
.g_every_price {
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
}
.g_every_price span {
    font-size: 13px;
    font-weight: normal;
    margin-left: 5px;
}
.g_every_notes {
    margin-left: 30px;
    text-align: left;
}


.prstc {
    font-weight: bold;
    color: #6eb1b0;
}

.table_t {
    border: 1px solid #d5d5d5;
    width: 100%;
    height: auto;
    background-color: #fff;
}
.table_t tr {

}
.table_t th {
    border: 1px solid #d5d5d5;
    background-color: #fff;
    font-weight: bold;
    padding: 20px 22px;
    vertical-align: middle;
    line-height: 1.6;
}
.table_t td {
    text-align: left;
    border: 1px solid #d5d5d5;
    vertical-align: middle;
    padding: 20px 22px;
    line-height: 1.6;
}

.tbltxt_r {
    text-align: right !important;
}
.tbltxt_l {
    text-align: left !important;
}
.tbltxt_c {
    text-align: center !important;
}
.tbltxt_str {
    color: #6eb1b0;
    font-weight: bold;
}
.table_annotation {
    text-align: right;
    font-size: 12px;
    margin-top: 10px;
}

.rank_medal {
    display: flex;
    align-items: center;
}
.rank_medal img {
    width: 30px;
    margin-right: 10px;
}

.pList_back_wrap {
    text-align: center;
    margin-bottom: 100px;
    margin-top: 60px;
}
.pList_back_btn {
    display: inline-block;
    background-color: #000;
    height: 58px;
    line-height: 58px;
    border-radius: 29px;
    padding: 0 60px;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
}

.campaign_copy {
    text-align: center;
    margin-bottom: 60px;
}
.campaign_copy span {
    color: #000;
    font-size: 24px;
    font-weight: bold;
    display: inline-block;
    line-height: 1;
    margin-bottom: 10px;
    background: linear-gradient(180deg, #fff 0%, #fff 60%, #d3e7e7 60%, #d3e7e7 100%);
}

.sup_area {
    margin-top: 25px;
}
.txt_indent_f {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.6;
    margin-bottom: 8px;
    font-size: 13px;
}
.txt_indent_f a {
    text-decoration: underline;
    color: #000;
}
.txt_indent_f span {
    color: #f084a4 ;
}

.group_benefits {

}
.grbf_ttl {
    font-size: 20px;
    color: #000;
    line-height: 1.6;
    margin-bottom: 40px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
}
.grbf_cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.grbf_box {
    border: 1px solid #000;
    padding: 30px 40px;
    border-radius: 5px;
    width:48%;
    margin-bottom: 40px;
    background-color: #f8f8f8;
}
.grbfb_ttl {
    font-size: 16px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    display: flex;
    align-items: center;
}
.grbfb_ttl_medal {
    width: 30px;
    margin-right: 8px;
}
.grbfb_ttl_medal img {
    width: 100%;
}
.grbfb_txt {

}
.caution_list_p5 {
    padding-left: 5px;
    margin-top: 20px;
}
.caution_list_p5 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p5 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.career_wrap {
    padding: 30px 30px 30px 40px;
    background-color: #f8f8f8;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    margin-top: 30px;
}
.career_inner {
    display: flex;
    margin: 5px 0;
}
.career_inner h3 {
    width: 70px;
    font-weight: bold;
}
.career_inner p {
    flex: 1;
}
.trainer_trans {
    margin-top: 40px;
}
.trainer_trans p {
    margin-bottom: 15px;
    text-align: center;
    font-weight: bold;
}
.trainer_trans a {
    background-color: #000;
    width: 250px;
    height: 50px;
    border-radius: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
.trainer_trans a span {
    color: #fff !important;
    font-weight: bold;
}

.benefits_wrap {
    width: 100%;
    padding: 60px 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.benefits_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.members_card_wrap {

}

.members_card_intro {
    text-align: center;
    margin-bottom: 50px;
}
.members_card_intro p {
    display: inline-block;
    padding: 30px 50px;
    background-color: #f6f6f6;
    font-weight: bold;
    font-size: 16px;
}
.mcsmp_wrap {
    display: flex;
    justify-content: center;
}
.mcsmp_card {
    margin: 0 30px;
}
.mcsmp_card img {
    width: 300px;
}

.members_card_inner {

}
.members_card {
    display: flex;
    justify-content: space-between;
    margin: 60px 0;
}
.mbvd_image {
    width: 300px;
    margin-right: 40px;
}
.mbvd_image img {
    width: 100%;
}
.mbvd_detail {
    flex: 1;
    text-align: left;
}
.mbvd_detail_ttl {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
}
.mbvd_detail_txt {

}
.mbdt_indent {
    width: 94px;
    height: 28px;
    border-radius: 14px;
    line-height: 28px;
    text-align: center;
    font-size: 13px;
    font-weight: bold;
    border: 1px solid #000;
    margin-bottom: 10px;
    margin-top: 15px;
}
.caution_list_p3 {
    background-color: #fff;
    padding: 0 0 0 5px;
    margin-bottom: 20px;
}
.caution_list_p3 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p3 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

/*------------------------------------------------------------
    料金表
------------------------------------------------------------*/
.price_wrap {
    width: 100%;
    padding: 0 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.price_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.price_head {
    margin-bottom: 60px;
}
.price_cont {
    margin-bottom: 120px;
}
.price_inner_cont {
    margin-bottom: 80px;
}
.price_ttl {
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    color: #fff;
    background-color: #000;
    padding: 15px 0;
    position: relative;
    width: 100%;
    margin-bottom: 70px;
}
.price_ttl span{
    font-size: 14px;
}
.price_ttl::before, .price_ttl::after {
    position: absolute;
    content: "";
    left: 50%;
    margin-left: -10px;
}
.price_ttl::before {
    bottom: -10px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #000 transparent transparent transparent;
}
.price_ttl span::after {
    bottom: -7px;
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #000 transparent transparent transparent;
}
.esthetic_sub {
    text-align: left;
    margin-bottom: 30px;
}
.esthetic_sub p {
    line-height: 1.6;
    margin-bottom: 5px;
    font-weight: bold;
}

/*------------------------------------------------------------
    レッスン　料金表
------------------------------------------------------------*/
.lesson_price_wrap {
    width: 100%;
    padding: 0 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_price_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.lp_doorpage {
    margin-bottom: 80px;
}
.lpd_ttl {
    display: flex;
    color: #000;
    width: 100%;
    align-items: baseline;
    margin-bottom: 40px;
}
.lpdt_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 50px;
    line-height: 1;
    margin-right: 8px;
}
.lpdt_jp {
    font-weight: bold;
    line-height: 1;
    font-size: 13px;
}
.doorpage_box_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.doorpage_box {
    width: 47%;
    margin-bottom: 60px;
}
.doorpage_image {
    width: 100%;
    height: 310px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 40px;
    display: flex;
    align-items: flex-end;
    position: relative;
    border-radius: 4px 4px 0 0;
    overflow: hidden;
}
.dpi_1 {
    background-image: url(../image/price_1.png);
}
.dpi_2 {
    background-image: url(../image/price_2.png);
}
.dpi_3 {
    background-image: url(../image/price_3.png);
}
.dpi_4 {
    background-image: url(../image/price_4.png);
}
.dpi_txt {
    color: #fff;
    text-align: left;
    position: relative;
}
.dpi_ttl_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 40px;
    line-height: 1;margin-bottom: 10px;
}
.dpi_ttl_jp {
    line-height: 1;
    font-weight: bold;
    font-size: 13px;
}
.cover_border {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(rgba(0,0,0,0) 60%, rgba(0,0,0, .53));
}
.simplified_price_box {
    background-color: #f6f6f6;
    padding: 40px 40px 50px;
    border-radius: 0 0 4px 4px;
    min-height: 262px;
}
.simplified_price_inner {
    margin-bottom: 30px;
    display: none;
}
.simplified_price_inner p {
    font-weight: bold;
}
.sprice_list {
    border-bottom: 1px solid #d9d9d9;
    padding-bottom: 12px;
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}
.spl_num {
    font-weight: bold;
}
.spl_price {
    flex: 1;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.splp_1 {

}
.splp_2 {
    color: #6eb1b0;
}

/**/
.simplified_block {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.simplified_block_inner {
    width: 47%;
    padding: 30px;
    background-color: #fff;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #6eb1b0;
    border-radius: 5px;
    position: relative;
}
.simbl_type {
    position: absolute;
    top: -20px;
    left: -20px;
}
.simbl_type img {
    width: 50px;
}
.simplified_block_inner2 {
    width: 100%;
    padding: 30px;
    background-color: #fff;
    /*display: flex;
    justify-content: center;
    flex-direction: column;*/
    border: 1px solid #6eb1b0;
    border-radius: 5px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}
.simplified_block_inner2 span {
    color: #000;
}
.simbl_ttl {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #e9e9e9;
    padding-bottom: 8px;
    margin-bottom: 12px;    
}
.simbl_txt {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
}
/**/
.simplified_block_ex2 {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
    justify-content: space-between;
    /*max-width: 800px;
    margin: 0 auto;*/
}
.simplified_block_inner_ex2 {
    width: 48%;
    padding: 30px;
    background-color: #f8f8f8;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    position: relative;
    margin-bottom: 30px;
}
.simbl_type_ex2 {
    position: absolute;
    top: -20px;
    left: -20px;
}
.simbl_type_ex2 img {
    width: 50px;
}
.simplified_block_inner2_ex2 {
    width: 100%;
    padding: 30px;
    background-color: #f8f8f8;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}
.simbl_ttl_ex2 {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #e9e9e9;
    padding-bottom: 10px;
    margin-bottom: 12px;
    line-height: 1.6;
}
.simbl_ttl_ex2 span {
    font-size: 13px;
    font-weight: normal;   
}
.simbl_txt_ex2 {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
}
.simbl_txt_ex2 span {
    font-size: 13px;
    font-weight: normal; 
}

.simbl_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    color: #fff !important;
    line-height: 1;
    width: 120px;
    height: 26px;
    font-size: 13px;
    border-radius: 100vh;
    text-align: center;
    margin: 10px auto 0;    
}

.sitx_mc {
    color: #6eb1b0;
}
/**/
.simplified_block_ex3 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.simplified_block_inner_ex3 {
    width: 30%;
    padding: 30px;
    background-color: #f8f8f8;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    position: relative;
}
.simbl_type_ex3 {
    position: absolute;
    top: -20px;
    left: -20px;
}
.simbl_type_ex3 img {
    width: 50px;
}
.simplified_block_inner2_ex3 {
    width: 100%;
    padding: 30px;
    background-color: #f8f8f8;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}
.simbl_ttl_ex3 {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #e9e9e9;
    padding-bottom: 8px;
    margin-bottom: 12px;    
}
.simbl_txt_ex3 {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
}
/*------------------------------------------------------------
    ABOUT 美コアについて
------------------------------------------------------------*/
.about_intro_wrap {
    width: 100%;
    padding: 0 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: linear-gradient(180deg, #ffffff 0%, #ffffff 70%, #f6f6f6 30%, #f6f6f6 100%);
}
.about_intro_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: flex;
    justify-content: space-between;
}
.about_intro_copy {
    width: 45%;
    text-align: left;
}
.aic_ttl {
    font-size: 28px;
    line-height: 1.6;
    margin-bottom: 40px;
    font-weight: bold;
}
.aic_txt {

}
.about_intro_image {
    width: 50%;
    height: 448px;
}
.about_intro_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.about_method_wrap {
    width: 100%;
    padding: 0 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.about_method_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.cont_ttlCom_1 {
    font-size: 32px;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 60px;
    font-weight: bold;
}
.cont_ttlCom_1 span{
    display:block;
    font-size: 14px;
    text-align: center;
}
.method_box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}
.method_box_ex {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    margin-bottom: 120px;
}
.method_image {
    width: 50%;
    height: 360px;
}
.method_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.method_cont {
    width: 45%;
}
.method_cont_ttl {
    font-size: 24px;
    margin-bottom: 25px;
    font-weight: bold;
    line-height: 1.6;
}
.p-section-textbox-motif {
    width: 1.5625vw;
    height: 7px;
    margin-bottom: 1.65vw;
    position: relative;
}
.p-section-textbox-motif .line {
    width: 1.0625vw;
    height: 2px;
    position: absolute;
}
.p-section-textbox-motif .line:nth-child(1) {
    background-color: #000;
    top: 0;
    left: 0;
}
.p-section-textbox-motif .line:nth-child(2) {
    background-color: #000;
    right: 0;
    bottom: 0;
}
.method_cont_txt {

}

.about_effect_wrap {
    width: 100%;
    padding: 80px 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.about_effect_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.cont_ttlCom_2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 60px;
    padding-top: 30px;
    position: relative;
}
.cont_ttlCom_2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_2 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 5px;
}
.effect_detail_wrap {
    display: flex;
    flex-wrap: wrap;
    margin-right: -4%;
    margin-bottom: 30px;
}

.effect_detail_box {
    width: 46%;
    margin-right: 4%;
    padding: 30px 40px 40px;
    background-color: #f6f6f6;
    margin-bottom: 4%;
    display: flex;
}
.effect_detail_ico {
    width: 120px;
    margin-right: 20px;
    display: flex;
    align-items: center;
}
.effect_detail_ico img {
    width: 100%;
}
.edb_wrap {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.edb_ttl {
    font-size: 18px;
    font-weight: bold;
    background: url(../image/icon/check_mc.svg) no-repeat left center / 24px auto;
    padding-left: 30px;
    margin-bottom: 5px;
}
.edb_txt {

}

.aim_wrap {
    width: 100%;
    padding: 60px 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.aim_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.beroreAfter_wrap {
    display: flex;
    flex-wrap: wrap;
    margin-right: -3%;
}
.beroreAfter_box {
    width: 22%;
    margin-right: 3%;
}
.beroreAfter_image {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 100%;
    margin-bottom: 15px;
}
.beroreAfter_wrapper {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-radius: 0px;
    overflow: hidden;
}
.beroreAfter_wrapper img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.beroreAfter_ttl {
    font-weight: bold;
    font-size: 16px;
    line-height: 1.8;
}

.t_banner_wrap {
    width: 100%;
    padding: 0 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.t_banner_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.tblist {
    display: flex;
    margin-right: -2%;
    justify-content: space-between;
    flex-wrap: wrap;
}
.t_bn_img {
    width: 31.333%;
    margin-right: 2%;
    height: 100px;
    margin-bottom: 2%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    font-size: 30px;
    font-family: alternate-gothic-no-1-d, sans-serif;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.t_bn_img:hover {
    opacity: 0.7;
}
.tbg_1 {
    background-image: url(../image/t_bn_1.png);
}
.tbg_2 {
    background-image: url(../image/t_bn_2.png);
}
.tbg_3 {
    background-image: url(../image/t_bn_3.png);
}
.tbg_4 {
    background-image: url(../image/t_bn_4.png);
}
.tbg_5 {
    background-image: url(../image/t_bn_5.png);
}
.tbg_6 {
    background-image: url(../image/t_bn_6.png);
}

.about_profile_wrap {
    width: 100%;
    padding: 100px 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.about_profile_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.about_info_wrap {
    width: 100%;
    padding: 80px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.about_info_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.about_info_studio {
    max-width: 1000px;
    margin: 0 auto 100px;
    height: 290px;
    background-image: url(../image/studio_1.png);
    background-position: center center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.about_info_studio:hover {
    opacity: 0.8;
}
.ais_ttl {
    font-size: 38px;
    line-height: 1.4;
    margin-bottom: 15px;
    font-weight: bold;
    color: #fff;
}
.ais_btn {
    height: 40px;
    padding: 0 30px;
    border-radius: 20px;
    line-height: 40px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    background-color: #000;
}
.about_info_company {
    display: flex;
    justify-content: space-between;
}
.aicm_detail {
    width: 45%;
}
.aicm_name {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 40px;
}
.aicm_address {
    margin-bottom: 40px;
}
.aicm_gbtn {
    display: inline-block;
    height: 44px;
    border: 1px solid #000;
    border-radius: 22px;
    padding: 0 40px;
    line-height: 44px;
    font-weight: bold;
}
.aicm_gbtn:hover {
    background-color: #000;
    color: #fff !important;
}
.aicm_map {
    width: 50%;
    height: 305px;
}

/*------------------------------------------------------------
    フッター
------------------------------------------------------------*/
.news_menu_wrap {
    width: 100%;
    padding: 20px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.news_menu_inner {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: flex;
    border-left: 1px solid #e5e5e5;
}
.news_menu {
    width: 50%;
    display: flex;
    flex-direction: column;
    color: #d2d2d2 !important;
    border-right: 1px solid #e5e5e5;
}
.news_menu div {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 5px;
}
.news_menu p {
    font-weight: bold;
}
.nmenuon {
    color: #000 !important;
}
.news_wrap {
    width: 100%;
    padding: 0 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.news_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.news_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -3%;
}
/****** hover effect 1 ******/
/* base style */
.l_card_1 {
    display: block;
    overflow: hidden;
    width: 30.333%;
    margin-right: 3%;
    margin-bottom: 3%;
    padding: 0;
    background: #fff;
}
.card_content_1 {
    padding: 26px 0;
}
.card_info_1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 12px;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.card_info_1 .date {
    font-size: 12px;
    padding-right: 8px;
    margin-right: 8px;
    border-right: 1px solid #acacac;
    letter-spacing: 2px;
}
.card_info_1 .category {
    font-size: 12px;
}
.card_title_1 {
    font-weight: bold;
    line-height: 1.6;
    overflow: hidden;
    width: 100%;
    height: 60px;
    font-size: 18px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
/* thumbnail style */
.l_thumbnail_1 {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 66%;
    border-radius: 4px;
}
.thumbnail_wrapper_1 {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.thumbnail_wrapper_1 img{
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.l_card_1:hover .thumbnail_wrapper_1::after {
    opacity: 1;
    width: 400px;
    height: 400px;
    border-width: 120px;
}
.l_card_1:hover .thumbnail_wrapper_1 img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}
.l_card_1:hover .card_title_1 {
    color: #777778;
}
/****** ///hover effect 8 ******/

/*　ページャー　*/
.paginate {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.paginate.pag4 { /* fourth page styles */ 

}
.paginate.pag4 li {
    font-weight: normal;
    height: 32px;
}

.paginate.pag4 li.paging a {
    display: block;
    text-decoration: none;
    margin-right: 6px;
    border-radius: 16px;
    background: #f7f7f7;
    height: 32px;
    width: 32px;
    border: 1px solid #f7f7f7;
    text-align: center;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
.paginate.pag4 li a:hover {
    color: #999;
}
.paginate.pag4 li a:active {
    -webkit-box-shadow: 1px 1px 3px -1px rgba(0,0,0, .55);
    box-shadow: 1px 1px 3px -1px rgba(0,0,0, .55);
}

.paginate.pag4 li.navpage a {
    display: block;
    padding: 0 13px;
    background: #000;
    color: #fff;
    height: 32px;
    margin-right: 6px;
    border-radius: 16px;
}
.paginate.pag4 li.navpage a:hover {
    background: #000;
}

.paginate.pag4 li.single {
    display: block;
    float: left;
    padding: 0 12px;
    margin-right: 6px;
    border-radius: 16px;
    background: #000;
    height: 32px;
}
.paginate.pag4 li.current {
    display: block;
    float: left;
    margin-right: 6px;
    border-radius: 16px;
    color: #fff;
    background: #6eb1b0;
    height: 32px;
    width: 32px;
    text-align: center;
}

.kiji_detail_wrap {

}
.kiji_title_wrap {
    width: 96%;
    margin-bottom: 30px;
}
.kiji_title_t {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 15px;
}
.btt_date {
    font-size: 13px;
    padding-right: 12px;
    margin-right: 12px;
    border-right: 1px solid #acacac;
    letter-spacing: 2px;
    line-height: 1;
}
.btt_ctgr {
    font-size: 13px;
    line-height: 1;
}
.kiji_title {
    font-size: 28px;
    font-weight: bold;
    padding-bottom: 18px;
    border-bottom: 1px solid #e0e0e0;
}
.kiji {
    width: 96%;
    border-bottom: 1px solid #e0e0e0;
}
.kiji p {
    margin: 40px 0;
}
.kiji p img {
    max-width: 100%;
    height: auto;
}
.kiji a {
    color: #6eb1b0 !important;
    text-decoration: underline;
}
/*　記事ページャー　*/
.article_pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 1000px;
    margin: 30px 0 0;
    padding-bottom: 30px;
    width: 96%;
}
.article_back {
    width: 85px;
    height: 30px;
    line-height: 28px;
    border-radius: 15px;
    background-color: #fff;
    display: block;
    text-align: center;
    -webkit-box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
    box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
}
.article_back:hover {
    background-color: #fafafa;
}
.article_list {
    background-color: #fff;
    width: 50px;
    height: 50px;
    padding: 20px 12px;
    position: relative;
    border-radius: 50px;
    margin: 0 auto;
    display: block;
    -webkit-box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
    box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
}
.article_list:hover {
    background-color: #fafafa;
}
.more-trigger,
.more-trigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.more-trigger {
    position: absolute;
    width: 26px;
    height: 10px;
}
.more-trigger:hover {
    opacity: 0.5;
}
.more-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #000;
}
.more-trigger span:nth-of-type(1) {
    top: 0;
}
.more-trigger span:nth-of-type(2) {
    top: 10px;
}
.more-trigger span:nth-of-type(3) {
    bottom: 0;
}
.article_next {
    width: 85px;
    height: 30px;
    line-height: 28px;
    border-radius: 15px;
    background-color: #fff;
    display: block;
    text-align: center;
    -webkit-box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
    box-shadow: 3px 5px 20px 0px rgba(0, 0, 0, 0.07);
}
.article_next:hover {
    background-color: #fafafa;
}
/*　/記事ページャー　*/


/*------------------------------------------------------------
    スタジオ
------------------------------------------------------------*/
.covid_wrap {
    width: 100%;
    padding: 0 5% 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.covid_inner {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.covid {
    border: 1px solid #000;
}
.covid_ttl {
    background-color: #000;
    padding: 10px 0;
    text-align: center;
    line-height: 1;
}
.covid_ttl span {
    background-color: #ce9e8a;
    padding: 12px 0;
    color: #fff;
    background: url(../image/note.svg) no-repeat left center / 18px auto;
    padding-left: 22px;
    font-weight: bold;
    font-size: 15px;
}
.covid_txt {
    background-color: #fff;
    padding: 25px 30px;
    font-size: 13px;
    line-height: 1.8;
}
.studio_intro_wrap {
    width: 100%;
    padding: 60px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.studio_intro_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.studio_strong_wrap {
    display: flex;
    justify-content: space-between;
}
.studio_strong_cont {
    width: 45%;
}
.studio_strong_cont_ttl {
    font-size: 24px;
    margin-bottom: 20px;
    font-weight: bold;
    line-height: 1.6;
}
.s-section-textbox-motif {
    width: 1.5625vw;
    height: 7px;
    margin-bottom: 1.65vw;
    position: relative;
}
.s-section-textbox-motif .line {
    width: 1.0625vw;
    height: 2px;
    position: absolute;
}
.s-section-textbox-motif .line:nth-child(1) {
    background-color: #000;
    top: 0;
    left: 0;
}
.s-section-textbox-motif .line:nth-child(2) {
    background-color: #000;
    right: 0;
    bottom: 0;
}
.studio_strong_cont_txt {

}
.studio_strong_youtube {
    width: 50%;
}
.yt_thumbnail_1 {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 66%;
    border-radius: 4px;
}
.yt_thumbnail_wrapper_1 {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.studio_cafe_wrap {
    width: 100%;
    padding: 80px 5% 140px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.studio_cafe_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.cafe_intro_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}
.cafe_intro_cont {
    width: 45%;
}
.cic_ttl {
    font-size: 28px;
    line-height: 1.6;
    margin-bottom: 40px;
    font-weight: bold;
}
.cic_txt {

}
.cafe_intro_image {
    width: 50%;
    height: 286px;
}
.cafe_intro_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cafe_menu_ttl {
    color: #fff;
    font-weight: bold;
    font-size: 22px;
    line-height: 52px;
    height: 52px;
    padding: 0 30px;
    background-color: #000;
    margin-bottom: 50px;
    text-align: center;
}

.gingermenu_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}
.gingermenu_img {
    width: 30%;
}
.gingermenu_img img {
    width: 100%;
}
.gingermenu_img_sp {
    width: 30%;
    display: none;
}
.gingermenu_img_sp img {
    width: 100%;
}
.gingermenu_list_wrap {
    width: 100%;
}
.spices_amount_ttl {
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 10px;
}
.spices_amount_wrap {
    background-color: #fff;
    padding: 20px 25px 25px;
    border-radius: 4px;
}
.spices_amount {
    display: flex;
}
.sa_spoon {
    padding-left: 22px;
    background: url(../image/icon/spoon.png) no-repeat left center / 15px auto;
    font-size: 15px;
    margin-right: 20px;
}
.caution_list_p2_2 {
    
}
.caution_list_p2_2 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p2_2 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.cafemenu_area {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}
.cafe_menu_list_wrap {
    width: 48%;
}
.cafe_menu_list {
    background-color: #f6f6f6;
    padding: 30px 30px 40px;
}
.cafe_menu_innerTtl {
    font-size: 22px;
    line-height: 1;
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
}
.cafe_menu_detail {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #e5e0dc;
    padding: 20px 5px;
    align-items: center;
}
.cafe_menu_detail_ex {
    display: flex;
    justify-content: space-between;
    padding: 30px 5px 20px;
}
.tea_menu_detail {
    padding-bottom: 20px;
    border-bottom: 1px solid #e5e0dc;
}
.caution_list_p2 {
    background-color: #fff;
    padding: 25px 30px;
    margin-bottom: 20px;
    border-radius: 4px;
}
.caution_list_p2 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p2 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}
.caution_list_p2 li span {
    font-weight: bold;
}
.cmd_ttl {
    line-height: 1.6;
}
.cmd_ttl span {
    font-weight: normal;
    font-size: 12px;
}
.cmd_price {

}

.tbl_primary_f_w {
    border-top: 1px solid #e5e0dc;
}
.tbl_primary_f {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.tbl_primary_f dt {
    width: 12vw;
    background-color: #f6f6f6;
    border-bottom: 1px solid #e5e0dc;
    padding: 30px 30px;
    line-height: 1.5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: bold;
}
.tbl_primary_f dd {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-bottom: 1px solid #e5e0dc;
    padding: 30px 30px;
    line-height: 1.5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.tbl_primary_prg {
    
}
.lp_point_list_2 {
    margin-bottom: 100px;
}
.lp_point_box_2 {
    display: flex;
    justify-content: space-between;
}
.lp_point_ttl_2 {
    width: 400px;
    padding: 60px 0;
    border-bottom: 1px solid #cacaca;
    margin-right: 64px;
    display: flex;
    align-items: center;
}
.about_pg_ico {
    width: 60px;
    margin-right: 15px;
}
.about_pg_ico img {
    width: 60px;
    height: 60px;
}
.about_pg_inner {

}

.lpp_ttl_1_2 {
    color: #8d8d8d;
    font-weight: bold;
    font-size: 16px;
    background: url(../image/icon/check_mc2.svg) no-repeat left center / 14px auto;
    padding-left: 22px;
    line-height: 1.7;
    margin-bottom: 5px;
}
.lpp_ttl_2_2 {
    font-size: 18px;
    font-weight: bold;
    padding-left: 4px;
    line-height: 1.6;
}
.lp_point_txt_2 {
    flex: 1;
    padding: 60px 0;
    border-bottom: 1px solid #cacaca;
    display: flex;
    align-items: center;
}
.lpptl_2 {
    border-top: 1px solid #cacaca;
}

.studio_map {
    height: 360px;
    width: 100%;
    margin-top: 80px;
    margin-bottom: 40px;
}
.studio_map_link {
    width: 200px;
    height: 50px;
    line-height: 50px;
    font-size: 20px;
    text-align: center;
    margin: 0 auto 0;
    border: 1px solid #6eb1b0;
    border-radius: 25px;
    display: block;
    color: #6eb1b0 !important;
}
.studio_map_link:hover {
    background-color: #000;
    color: #fff !important;
}

.studio_recruit_wrap {
    margin-top: 100px;
}
.studio_recruit {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 60px;
}

.sponsor_wrap {
    width: 100%;
    padding: 100px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url(../image/sponsor_bg_logo.svg) no-repeat left bottom / 1080px auto #f6f6f6;
}
.sponsor_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.sponsor_ttl {
    margin-left: 20px;
    margin-bottom: 40px;
    line-height: 1.8;
    font-size: 18px;
    font-weight: bold;
}
.sponsor_ttl::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}
.sponsor_list {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5%;
    margin-bottom: 30px;
}
.sponsor_box_1 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20%;
    margin-right: 5%;
    margin-bottom: 30px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    padding: 25px 0;
}
.sponsor_box_1 img {
    width: 80%;
}
.sponsor_box_2 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20%;
    margin-right: 5%;
    margin-bottom: 30px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    padding: 25px 0;
}
.sponsor_box_2 img {
    width: 60%;
}
.sponsor_box_3 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20%;
    margin-right: 5%;
    margin-bottom: 30px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    padding: 15px 0;
}
.sponsor_box_3 img {
    width: 40%;
}
.sponsor_box_4 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20%;
    margin-right: 5%;
    margin-bottom: 30px;
    background-color: #fff;
    border: 1px solid #eaeaea;
    padding: 15px 0;
}
.sponsor_box_4 img {
    width: 60%;
}


/*------------------------------------------------------------
    エステティック
------------------------------------------------------------*/
.esthetic_wrap {
    width: 100%;
    padding: 0 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.esthetic_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.primary_lead_wrap {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    margin-top: -20px;
    position: relative;
    margin-bottom: 100px;
}
.primary_lead_wrap::before {
    content: "\201D";
    position: absolute;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    top: -40px;
    color: #000;
    font-family: adelle-sans,arial,sans-serif;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    font-weight: 700;
    font-size: 5em;
    left: 20px;
    line-height: 1;
}
.primary_lead_wrap::after {
    content: "\201D";
    position: absolute;
    bottom: -40px;
    color: #000;
    font-family: adelle-sans,arial,sans-serif;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    font-weight: 700;
    font-size: 5em;
    right: 20px;
    line-height: 1;
}
.primary_lead_wrap_bc {
    width: 100%;
    margin-bottom: 60px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}

.bc_intro_btn {
    text-align: center;
    margin-bottom: 100px;
    display: flex;
    justify-content: center;
}
.bc_intro_btn a {
  display: inline-block;
  height: 58px;
  padding: 0 60px;
  background-color: #000;
  color: #fff !important;
  font-weight: bold;
  font-size: 18px;
  line-height: 58px;
  border-radius: 29px;
  margin: 0 15px;
}

.primary_lead_box {
    padding: 30px 8%;
    width: 100%;
}
.primary_lead_box_ex {
    width: 100%;
    margin-bottom: 100px;
    text-align: center;
}
.primary_lead_box_ex span {
    font-size: 20px;
    display: block;
    font-weight: bold;
    margin-bottom: 15px;
}
.primary_lead_inner {
    text-align: center;
    color: #000;
    font-size: 16px;
}
.primary_lead_inner span {
    font-size: 20px;
    display: block;
    font-weight: bold;
}

.primary_lead_box_clg {
    width: 100%;
    margin-bottom: 40px;
    text-align: center;
}
.primary_lead_box_clg span {
    font-size: 20px;
    display: block;
    font-weight: bold;
    margin-bottom: 15px;
}

.bc_beforeafter_title {
    margin-bottom: 40px;
}
.bc_beforeafter_title h3 {
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    padding: 3px 0 3px 10px;
    border-left: 6px double #000;
}
.bc_beforeafter_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px;
}
.bcba_pic {
    width: 48%;
    margin-bottom: 40px;
}
.bcba_pic p {
    font-weight: bold;
    margin-bottom: 15px;
    text-align: center;
}
.bcba_pic img {
    width: 100%;
}

.esthetic_progress_wrap {

}
.esthetic_progress_box {
    padding-bottom: 60px;
    margin-bottom: 100px;
    border-bottom: 1px solid #d5d5d5;
}
.esthetic_progress_image {
    margin-bottom: 60px;
}
.esthetic_progress_image img {
    width: 100%;
}
.esthetic_progress_cont {
    display: flex;
}
.epc_ttl {
    width: 280px;
    font-weight: bold;
    font-size: 18px;
    color: #000;
    line-height: 1.6;
}
.epc_txt {
    flex: 1;
}

.g_t_wrap {
    margin-bottom: 100px;
}
.cont_title_inner {
    text-align: center;
    margin-bottom: 60px;
}
.cont_title_en {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 60px;
    line-height: 1;
    margin-bottom: 5px;
    letter-spacing: 2px;
}
.cont_title_jp {
    font-weight: normal;
    line-height: 1;
}
.cont_title_jp span {
    font-weight: normal;
    line-height: 1;
    color: #000;
    font-size: 13px;
}
.esthetic_price_head {
    margin-bottom: 60px;
}

.cont_title_inner_sub {
    margin-bottom: 60px;
}

.pubis_therapy_wrap {

}
.pubis_therapy_head {
    margin-bottom: 60px;
    text-align: center;
    color: #000;
}
.puth_ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 20px;
}
.puth_sub {
    text-align: center;
    font-size: 18px;
}

.bodycare_overview_wrap {

}
.bodycare_overview_inner {
    margin-bottom: 60px;
}
.bcov_ttl {
    font-size: 22px;
    color: #000;
    line-height: 1.6;
    margin-bottom: 50px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
}
.bcov_ttl span {
    font-size: 16px;
    font-weight: normal;
    margin-left: 8px;
}

.bcov_cont {
    display: flex;
    justify-content: space-between;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.bcov_cont2 {
    
}

.bc_describe {
    width: 45%;
}
.bcprice_wrap {
    width: 50%;
}
.bcprice_box {
    border: 1px solid #e9e9e9;
    padding: 30px;
    background-color: #f8f8f8;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 30px;
}
.bcprice_box_ex {
    border: 1px solid #e9e9e9;
    padding: 30px;
    background-color: #f8f8f8;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 30px;
}
.bcprice_ttl {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #e9e9e9;
    padding-bottom: 8px;
    margin-bottom: 12px;
}
.bcprice_detail {
    text-align: center;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.6;
}
.bcprice_detail span {
    font-size: 24px;
    color: #6eb1b0;
    font-weight: bold;
}
.bcprice_detail2 {
    
}

.bcprice_box_fs {
    width: 100%;
    border: 1px solid #000;
    overflow: hidden;
    margin-bottom: 30px;
}
.bcprice_ttl_fs {
    line-height: 1;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 15px 0;
    background-color: #000;
}
.mpb_txt_ft {
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.mpb_txt_ft span {
    font-size: 24px;
    color: #6eb1b0;
    font-weight: bold;
}

.bcprice_detail_strong {
    font-size: 14px;
}
.bcprice_detail_strong span {
    color: #f084a4;
    font-weight: bold;
    font-size: 14px;
}

.bcov_cont_ttl {
    font-weight: bold;
}

.pubis_therapy_head_inner {

}
.pthi_ttl {
    font-weight: bold;
    color: #000;
    text-align: left;
    font-size: 16px;
    margin-bottom: 5px;
}
.pthi_txt {
    text-align: left;
    color: #000;
    margin-bottom: 25px;
}

.cont_wide_menu {
    font-weight: bold;
    font-size: 20px;
    line-height: 52px;
    height: 52px;
    text-align: center;
    border: 1px solid #000;
    margin-bottom: 50px;
}
.cont_wide_menu2 {
    color: #fff;
    background-color: #000;
    font-weight: bold;
    font-size: 20px;
    line-height: 52px;
    height: 52px;
    text-align: center;
    margin-bottom: 50px;
    width: 100%;
}
.cont_wide_menu3 {
    border: 1px solid #000;
    font-weight: bold;
    font-size: 20px;
    line-height: 52px;
    height: 52px;
    text-align: center;
    margin-bottom: 50px;
    width: 100%;
    margin-top: 20px;
}
.cont_wide_menu3_sub {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 15px;
}

.sec_curriculum {
    margin-top: 50px;
}
.pubis_curriculum_wrap {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}
.pubis_curriculum {
    background: url(../image/icon/check_mc3.svg) no-repeat left center / 16px auto;
    padding-left: 20px;
    margin-right: 50px;
    margin-bottom: 10px;
}
.curriculum_table_sup {
    margin-top: 15px;
    font-size: 13px;
}

.course_supex {
    margin-top: 50px;
}
.course_supex_ex {
    margin-bottom: 40px;
}

.esthetic_course_wrap {
    background-color: #fff;
    margin-bottom: 40px;
    width: 100%;
}
.esthetic_course_head {
    margin-bottom: 20px;
    text-align: center;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ech_tipr {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.ech_time {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 5px;
}
.ech_ttl {
    display: flex;
    flex-direction: column;
    align-items: baseline;
}
.ech_ttl p {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
}
.ech_ttl span {
    font-size: 14px;
}
.ech_price {
    font-size: 40px;
    line-height: 1;
    color: #6eb1b0;
    font-weight: bold;
}
.ech_price span {
    font-size: 15px
}
.esthetic_course_inner {
    background-color: #f6f6f6;
    padding: 40px 50px;
}
.eci_list {
    display: flex;
    flex-wrap: wrap;
}
.eci_list p {
    background: url(../image/icon/check_mc3.svg) no-repeat left center / 16px auto;
    padding-left: 20px;
    margin-right: 30px;
    margin-bottom: 10px;
}
.eci_list_2 {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.eci_list_3 {
    display: flex;
    justify-content: space-between;
}
.ecil_ttl {
    font-weight: bold;
    width: 50%;
}
.ecil_detail {
     width: 50%;
     text-align: right;
}

.body_care_strong_wrap {
    display: flex;
    margin-bottom: 120px;
    flex-wrap: wrap;
    margin-right: -5%;
}
.body_care_strong {
    /*width: 28.333%;
    margin-right: 5%;*/
}
.bcs_img {
    margin-bottom: 30px;
    text-align: center;
}
.bcs_img img {
    width: 50%;
}
.bcs_cont {

}
.bcs_ttl {
    line-height: 1.6;
    font-weight: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    text-align: center;
}
.bcs_txt {

}
.bcs_txt_inner {
    margin-top: 20px;
}
.bcs_txt_inner a {
    display: inline-block;
    line-height: 1;
    text-decoration: underline;
    background: url(../image/icon/window3.svg) no-repeat right center / 14px auto;
    padding-right: 18px;
}

/*------------------------------------------------------------
    会社概要
------------------------------------------------------------*/
.company_intro_wrap {
    margin-bottom: 120px;
}
.citr_wrap {
    width: 400px;
    margin: 0 auto 40px;
}
.citr_box {
    position: relative;
    width: 100%;
    padding-top: 100%;
    box-shadow: 8px 59px 50px -37px rgba(0,0,0,0.3);
    margin-bottom: 35px;
}
.citr_thumbnail {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.citr_thumbnail img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.sec_citr_name {
    margin-bottom: 40px;
}
.citr_name_title {
    text-align: center;
}
.citr_name_ey {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
.citr_txt {

}
.citr_txt p {
    background-color: #f6f6f6;
    max-width: 500px;
    padding :40px 40px;
    margin: 15px 0 20px;
}

.company_brandmark {
    text-align: center;
    margin-bottom: 60px;
}
.company_brandmark img {
    width: 350px;
}
.company_brandmark2 {
    text-align: center;
    margin-bottom: 60px;
    margin-top: 100px;
}
.company_brandmark2 img {
    width: 500px;
}

.table_company {
    width: 100%;
}
.table_company tr {
    display: flex;
}
.table_company th {
    width: 25%;
    margin-right: 3%;
    padding: 25px 0 25px 15px;
    border-bottom: solid 1px #948d87;
    text-align: left;
    display: flex;
    align-items: center;
    font-weight: bold;
}
.table_company td {
    width: 72%;
    padding: 25px 0;
    border-bottom: solid 1px #e5e0dc;
    text-align: left;
}
.table_company td p {
    margin-bottom: 14px;
}
.table_company td span {
    display: block;
    line-height: 1.2;
}
.txt_indent_1 {
    text-indent: -1.7em;
    padding-left: 1.7em;
    line-height: 1.6;
    margin-bottom: 4px !important;
}

/*------------------------------------------------------------
    トレーナー
------------------------------------------------------------*/
.trainer_bn_wrap {
    width: 100%;
    padding: 0 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.trainer_bn_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.trainer_bn {
    width: 47%;
    height: 170px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #fff !important;
    font-weight: bold;
    flex-direction: column;
}
.trainer_bn:hover {
    opacity: 0.8;
}
.trainer_bn span {
    font-size: 18px;
    font-weight: normal;
}
.trainer_bn p {
    font-size: 24px;
}
.trbn_01 {
    background-image: url(../image/training_bn2.png);
}
.trbn_02 {
    background-image: url(../image/training_bn.png);
}

.trainer_list_wrap {
    padding-top: 30px;
}
.trainer_box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}
.trainer_image {
    width: 310px;
    margin-right: 70px;
}
.trainer_thumbnail_wrap {
    position: relative;
    width: 100%;
    padding-top: 100%;
    box-shadow: 8px 49px 50px -37px rgba(0,0,0,0.25);
    margin-bottom: 25px;
}
.trainer_thumbnail {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.trainer_thumbnail img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.trainer_name {
    text-align: center;
}
.trainer_name_1 {
    font-size: 13px;
    line-height: 1.7;
}
.trainer_name_2 {
    font-size: 24px;
    line-height: 1.6;
    margin-bottom: 8px;
}
.trainer_sns_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}
.trainer_sns {
    display: block;
}
.trainer_sns img {
    width: 22px;
    display: flex;
    margin: 0 10px;
}
.tsi_youtube {
    width: 28px !important;
}
.tsi_web {
    width: 26px !important;
}
.trainer_profile {
    flex: 1;
}

.trklbl {
    text-align: center;
}
.trklbl span {
    font-size: 13px;
    line-height: 1;
    padding: 4px 10px;
    border-radius: 2px;
    color: #fff;
    margin: 0 1px;
    display: inline-block;
}
.trk_1 {
    background-color: #6eb1b0;
}
.trk_2 {
    background-color: #000;
}
.trk_3 {
    background-color: #9EACB4;
}
.trk_4 {
    background-color: #afa0c4;
}

.thum_badge {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    font-size: 12px;
    text-align: center;
    font-weight: normal;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: -20px;
    left: -15px;
    font-style: italic;
}
.badge1 {
    background-color: #6eb1b0;
}
.badge2 {
    background-color: #000;
}
.badge3 {
    background-color: #9EACB4;
}
.modal_inner_name_wrap {    
    padding-bottom: 10px;
    border-bottom: 1px solid #6eb1b0;
    display: flex;
    justify-content: flex-start;
    margin-bottom: 30px;
    align-items: center;
}
.modal_inner_name_image {
    margin-right: 15px;
}
.modal_inner_name_image img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}
.modal_inner_name {
    display: flex;
    align-items: center;
    font-size: 40px;
    line-height: 1.5;
}
.modal_inner_name span {
    display: inline-block;
    line-height: 1;
    font-size: 12px;
    color: #fff;
    padding: 0 15px;
    font-weight: normal;
    height: 22px;
    line-height: 22px;
    border-radius: 2px;
    margin-left: 15px;
}
.t_rank1 {
    background-color: #6eb1b0;
}
.t_rank2 {
    background-color: #000;
}
.t_rank3 {
    background-color: #9EACB4;
}
.t_rank4 {
    background-color: #afa0c4;
}
.badge1 {
    background-color: #6eb1b0;
}
.badge2 {
    background-color: #000;
}
.badge3 {
    background-color: #9EACB4;
}
.min_sns_box {
    display: flex;
}
.min_sns_box span {
    display: inline-block;
    line-height: 1;
    font-size: 12px;
    color: #fff;
    padding: 0 15px;
    font-weight: normal;
    height: 22px;
    line-height: 22px;
    border-radius: 2px;
    margin-left: 15px;
}
.min_sns {

}
.min_sns img {
    width: 22px;
    display: flex;
    margin: 0 0 0 15px;
}

.trainer_data_wrap {
    margin-bottom: 40px;
}
.trainer_data {
    margin-bottom: 30px;
}
.trainer_data_label {
    width: 130px;
    height: 26px;
    border-radius: 13px;
    line-height: 26px;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    background-color: #f6f6f6;
    margin-bottom: 15px;
    border: 1px solid #000;
}
.trainer_data_detail {
    padding-left: 4px;
}

.trainer_contact {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}
.trcnt_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    height: 50px;
    border-radius: 25px;
    width: 300px;
    color: #fff !important;
    font-weight: bold;
    margin: 0 15px;
}

.trainer_comment {
    background-color: #f6f6f6;
    padding: 30px 35px 35px;
}
.trcm_ttl {
    line-height: 1;
    color: #000;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 15px;
}
.trcm_txt {
    
}

.trainer_link_wrap {
    width: 100%;
    padding: 0 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.trainer_link_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 100px;
    border-top: 1px solid #e5e5e5;
}

.trainer_bn_innerWrap {
    display: flex;
    justify-content: space-between;
}

.trainer_modal_wrap {
    display: flex;
    margin-right: -5%;
    flex-wrap: wrap;
}
.trainer_modal_box {
    width: 28.333%;
    margin-right: 5%;
}
/* ----------- modal 1 ----------- */
.modal_area {    
    margin-bottom: 60px;
}
.modal_open {
    display: inline-block;
    cursor: pointer;
}
.modal_open_btn {
    cursor: pointer;
    /*display: inline-block;    
    background-color: #1a2942;
    color: #fff !important;
    padding: 0 15px;
    border-radius: 2px;
    height: 48px;
    min-width: 200px;
    line-height: 48px;
    text-align: center;*/
}
 .modal_box {
    position: fixed;
    z-index: 7777;
    display: none;
    width: 100%;
    max-width: 800px;
    margin: 0;
    padding: 60px 60px 60px;
    background: #fff;
    box-sizing: border-box;
    border-radius: 2px;
}
.modal_ttl {
    font-size: 16px;
    margin-bottom: 20px;
    font-weight: bold;
}
.modal_inner {
    margin-bottom: 30px;
}
 .modal_close {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 62px;
    font-size: 20px;
    color: #000;
    line-height: 62px;
    text-align: center;
    cursor: pointer;
}
 .modal_close i {
    line-height: 62px;
    vertical-align: bottom;
}
 .modal_bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6666;
    display: none;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.4);
}
 .link_area {
    overflow: hidden;
    text-align: center;
}
 .link_area .modal_link {
    display: inline;
}
 .link_area .modal_link a {
    display: inline-block;
    width: 180px;
    color: #000;
    line-height: 2.5;
    text-decoration: none;
    margin: 0 10px;
    background: #f4f4f4;
    cursor: pointer;
    border: 1px solid #ddd;
}
 .link-area ul li.modal_link:first-child a {
    float: left;
}
 .link-area ul li.modal_link:last-child a {
    float: right;
}
  
@media screen and (max-width: 769px) {
 
/*  ウィンドウサイズ769px以下の時のスタイル  */
 
  .modal_box {
      padding: 50px 2vw 40px;
  }
 
  .modal_close {
      width: 40px;
      line-height: 40px;
      font-size: 30px;
  }
 
  .modal_close i {
      line-height: 44px;
  }
 
  .link_area {
      margin: 25px auto 0;
  }
 
  .link_area .modal_link a {
      margin: 15px auto 0;
  }
 
  .link_area ul li.modal_link:first-child a {
      float: none;
      margin-top: 0;
  }
 
  .link_area ul li.modal_link:last-child a {
      float: none;
  }
 
}
/* ----------- End / modal 1 ----------- */

.top_profile_detail2 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.top_profile_image2 {
    width: 25%;
}
.top_profile_image2 img {
    width: 100%;
}

.online_tr_name {
    margin-bottom: 30px;
}
.online_tr_name h2 {
    font-size: 24px;
    font-weight: bold;
}
.online_tr_name p {
    font-size: 12px;
}

.top_profile_cont2 {
    width: 47%;
    padding-top: 40px;
}
.top_profile_cont_2_2 {
    width: 70%;
}
.tpc_name_jd2 {
    line-height: 1.7;
    margin-bottom: 10px;
}
.tpc_name2 {
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
    margin-bottom: 20px;
}
.tpc_sns2 {    
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}
.tpc_sns2 a {    
    
}
.tpc_sns2 img {    
    width: 20px;
    margin-right: 15px;
    display: flex;
}
.tpci_tw2 {
    width: 20px !important;
}
.tpci_fb2 {
    width: 8px !important;
}
.tpc_txt2 {
    line-height: 1.8;
}

.trainer_pyramid {
    margin-bottom: 100px;
}
.trainer_pyramid img {
    width: 100%;
}
.trainer_pyramid_sp {
    margin-bottom: 100px;
    display: none;
}
.trainer_pyramid_sp img {
    width: 100%;
}

.cont_ttlCom_5 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 30px;
    padding-top: 15px;
    position: relative;
}
.cont_ttlCom_5::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_5 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 3px;
}

/* ----------- modal ----------- */
.modal_trainer {

}
.modal-inner {
  position: relative;
  display: flex;
  margin-right: -5%;
  flex-wrap: wrap;
}
.openModal {
    width: 28.333%;
    margin-right: 5%;
}
.openModal2 {
    width: 28.333%;
    margin-right: 5%;
}
.openModal3 {
    width: 28.333%;
    margin-right: 5%;
}
.openModal4 {
    width: 28.333%;
    margin-right: 5%;
}
.openModal5 {
    width: 28.333%;
    margin-right: 5%;
}
.openModal6 {
    width: 28.333%;
    margin-right: 5%;
}
.modalArea {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalArea2 {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalArea3 {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalArea4 {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalArea5 {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalArea6 {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalBg {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalBg2 {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalBg3 {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalBg4 {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalBg5 {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalBg6 {
  width: 100%;
  height: 100%;
  background: rgba(30, 30, 30, 0.3);
}
.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1000px;
  padding: 60px;
  background: #fff;
  border-radius: 6px;  
}
.modalContents {
   overflow-y: scroll; 
   max-height: 70vh;  
}
.closeModal {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal2 {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal3 {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal4 {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal5 {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal6 {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  display: flex;
}
.closeModal img {
  width: 20px;
}
.closeModal2 img {
  width: 20px;
}
.closeModal3 img {
  width: 20px;
}
.closeModal4 img {
  width: 20px;
}
.closeModal5 img {
  width: 20px;
}
.closeModal6 img {
  width: 20px;
}
.is-open {
  display: block;
}
/* ----------- end /modal ----------- */

.enrolled {
    margin-bottom: 80px;
    font-size: 16px;
    text-align: right;
    margin-top: -40px;
}
.enrolled span {
    background: url(../image/icon/more.svg) no-repeat left center / 16px auto;
    padding-left: 20px;
}
.trainer_area_ttl {
    font-weight: bold;
    font-size: 22px;
    line-height: 1;
    border-bottom: 1px solid #000;
    margin-bottom: 60px;
    padding-bottom: 10px;
}
.trainer_area_ttl_sub {    
    margin-bottom: 40px;
}
.trainer_area_ttl_sub h3 {
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    padding: 3px 0 3px 10px;
    border-left: 6px double #000;
}
.sec_therapist {
    font-size: 50px;
    margin-bottom: 40px;
    line-height: 1;
    font-family: alternate-gothic-no-1-d, sans-serif;
    text-align: center;
}

.trainer_describe_wrap {
    margin-bottom: 80px;
}
.sec_trainer_describe_ex {
    background-color: #6eb1b0;
    padding: 30px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    margin-bottom: 30px;
}
.stde_ttl {
    font-size: 24px;
    line-height: 1;
    margin-bottom: 10px;
}
.stde_dsc {
    
}
.sec_trainer_describe {
    display: flex;
    margin-bottom: 30px;
}
.trdes_ttl_1 {
    
}
.trdes_ttl_1 p {
    width: 200px;
    height: 50px;
    font-size: 16px;
    font-weight: bold;
    background-color: #000;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.trdes_ttl_1 p::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 25px;
    border-color: transparent transparent transparent #000;
    position: absolute;
    right: -25px;
    top: 0;
}
.trdes_ttl_2 {
    
}
.trdes_ttl_2 p {
    width: 200px;
    height: 50px;
    font-size: 16px;
    font-weight: bold;
    background-color: #9EACB4;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.trdes_ttl_2 p::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 25px;
    border-color: transparent transparent transparent #9EACB4;
    position: absolute;
    right: -25px;
    top: 0;
}
.trdes_txt {
    flex: 1;
    padding-left: 50px;
    display: flex;
    align-items: center;
    font-weight: bold;
}

/*------------------------------------------------------------
    レッスン
------------------------------------------------------------*/
.lesson_top_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_top_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.lesson_top_ttl {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 80px;
}
.txt_under_line {
    background: linear-gradient(transparent 60%, #c1e6e5 50%);
    display: inline-block;
    line-height: 1;
}

.lesson_list {
    
}
/****** hover effect 1 ******/
/* base style */
.l_card_pr {
  display: flex;
  overflow: hidden;
  width: 100%;
  margin-bottom: 5%;
  padding: 0;
  background: #fff;
  box-shadow: 0 9px 31px rgba(0,0,0,.05);
}
.card_content_pr {
  padding: 30px;
  border-top: 1px solid #f2f2f4;
  border-right: 1px solid #f2f2f4;
  border-bottom: 1px solid #f2f2f4;
  width: 70%;
 }
.card_title_pr {    
    margin-bottom: 15px;
}
.card_title_pr p {
    line-height: 1;
    font-size: 40px;
    margin-bottom: 4px;
    font-family: alternate-gothic-no-1-d, sans-serif;
}
.card_title_pr span {
    line-height: 1.4;
    font-size: 12px;
    display: block;
    font-weight: normal;
    letter-spacing: 0em;
}
.trng_desc {
    margin-bottom: 10px;
}
.card_title_pr_ppl {    
    color: #a085cb;
}
.card_title_pr_ppl p {
    line-height: 1;
    font-size: 30px;
    font-family: alternate-gothic-no-1-d, sans-serif;
}
.card_title_pr_ppl span {
    line-height: 1.4;
    font-size: 12px;
    display: block;
    font-weight: normal;
    letter-spacing: 0em;
}
.product_more_wrap {
    display: flex;
    flex-direction: row-reverse;
}
.product_more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #000;
}
.product_more img {
    width: 6px;
}
.product_more_ppl {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #a085cb;
}
.product_more_ppl img {
    width: 6px;
}
/* thumbnail style */
.l_thumbnail_wrap_pr {
    width: 30%;
}
.l_thumbnail_pr {
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.thumbnail_wrapper_pr {
    display: block;
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
}
.thumbnail_wrapper_pr img{
  transition: 0.5s;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.l_card_pr:hover .thumbnail_wrapper_pr::after {
  opacity: 1;
  width: 400px;
  height: 400px;
  border-width: 120px;
}
.l_card_pr:hover .thumbnail_wrapper_pr img {
  transform: scale(1.1);
}
/****** ///hover effect 1 ******/

.lesson_personal_wrap {
    width: 100%;
    padding: 20px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_personal_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.lesson_personal_head {
    margin-bottom: 100px;
    text-align: center;
}
.lph_ttl {
    color: #000;
    font-size: 30px;
    margin-bottom: 20px;
    font-weight: bold;
}
.lph_txt {

}
.magma_spa {
    display: flex;
    justify-content: space-between;
}
.magma_spa_cont {
    width: 50%;
}
.msc_ttl {
    font-size: 24px;
    margin-bottom: 20px;
    font-weight: bold;
    line-height: 1.6;
}
.m-section-textbox-motif {
    width: 1.5625vw;
    height: 7px;
    margin-bottom: 1.65vw;
    position: relative;
}
.m-section-textbox-motif .line {
    width: 1.0625vw;
    height: 2px;
    position: absolute;
}
.m-section-textbox-motif .line:nth-child(1) {
    background-color: #000;
    top: 0;
    left: 0;
}
.m-section-textbox-motif .line:nth-child(2) {
    background-color: #000;
    right: 0;
    bottom: 0;
}
.msc_txt {

}
.magma_spa_image {
    width: 45%;
}
.magma_spa_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.lesson_personal2_wrap {
    width: 100%;
    padding: 40px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_personal2_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.lp_point_list {
    display: flex;
    flex-wrap: wrap;
    margin-right: -3%;
}
.lp_point_box {
    width: 30.333%;
    margin-right: 3%;
}
.lp_point_ttl {
    margin-bottom: 60px;
    display: flex;
    align-items: center;
}

.lp_point_ttl_ico {
    width: 60px;
    margin-right: 15px;
}
.lp_point_ttl_ico img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}
.lp_point_ttl_inner {

}

.lp_point_logo {
    padding: 0 30px;
}
.lp_point_logo img {
    width: 100%;
}
.lp_point_logo_ex {
    padding: 0 80px;
}
.lp_point_logo_ex img {
    width: 100%;
}
.lpp_ttl_1 {
    color: #8d8d8d;
    font-weight: bold;
    font-size: 16px;
    background: url(../image/icon/check_mc2.svg) no-repeat left center / 14px auto;
    padding-left: 22px;
    line-height: 1.7;
    margin-bottom: 5px;
}
.lpp_ttl_2 {
    font-size: 16px;
    font-weight: bold;
    padding-left: 4px;
    line-height: 1.6;
}
.lp_point_txt {
    flex: 1;
    padding: 60px 0;
    border-bottom: 1px solid #cacaca;
    display: flex;
    align-items: center;
}
.lpptl {
    border-top: 1px solid #cacaca;
}

.lp_flow_wrap {
    width: 100%;
    padding: 100px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.lp_flow_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.lp_flow_list {

}
.lp_flow_box {
    display: flex;
    margin-bottom: 100px;
    position: relative;
}
.lp_flow_box::after {
    content: "";
    position: absolute;
    bottom: -64px;
    right: 0;
    left: 0;
    margin: auto;
    width: 100px;
    height: 22px;
    background: url(../image/icon/flow_arrow.png) no-repeat center center / 100px auto;
}
.lp_flow_box_ex {
    display: flex;
    position: relative;
}
.lp_flow_img {
    position: relative;
    width: 340px;
    min-height: 220px;
}
.lp_flow_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.lpf_step_nmb {
    position: absolute;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid #000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 11px;
    line-height: 1;
    left: -20px;
    top: -20px;
    color: #000;
}
.lpf_step_nmb span {
    font-size: 24px;
    font-weight: bold;
}
.lp_flow_cont {
    flex: 1;
    background-color: #fff;
    padding: 35px 40px;
}
.lpfc_ttl {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 10px;
    color: #000;
}
.lpfc_txt {

}

.cont_trainer_wrap {
    width: 100%;
    padding: 100px 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cont_trainer_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

/**/
.cont_trainer_list {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5%;
}
.cont_trainer_box {
    width: 28.3333%;
    margin-right: 5%;
    margin-bottom: 5%;
}
.cont_trainer_image {
    box-shadow: 8px 59px 50px -37px rgba(0,0,0,0.3);
    margin-bottom: 35px;
}
.ct_thumbnail_wrap {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 100%;
}
.ct_thumbnail {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.ct_thumbnail img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.ct_name {
    text-align: center;
}
.ct_name_1 {
    font-size: 13px;
    line-height: 1.7;
}
.ct_name_1_a {
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 10px;
}
.ct_name_2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 4px;
}
/**/
.cont_trainer_list_bd {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5%;
    justify-content: center;
    margin-bottom: 30px;
}
.cont_trainer_box_bd {
    width: 28.3333%;
    margin-right: 5%;
    margin-bottom: 5%;
}
.cont_trainer_image_bd {
    box-shadow: 8px 59px 50px -37px rgba(0,0,0,0.3);
    margin-bottom: 35px;
}
.ct_thumbnail_wrap_bd {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 100%;
}
.ct_thumbnail_bd {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.ct_thumbnail_bd img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.ct_name_bd {
    text-align: center;
}
.ct_name_1_bd {
    font-size: 13px;
    line-height: 1.7;
}
.ct_name_1_a_bd {
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 10px;
}
.ct_name_2_bd {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 4px;
}
/**/


.md-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .7;
    z-index: 9999;
}
.md-contents {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 60%;
    height: auto;
    overflow: hidden;
    transform: translate(-50%, -50%);
    z-index: 10000;
}
.md-inner {
    padding: 60px 60px 70px;
    background: #fff;
    height: auto;
}
.md-inner2 {
    overflow-y: scroll;
    max-height: 70vh;
}
.md-xmark {
    position: absolute;
    top: 34px;
    right: 20px;
    width: 25px;
    height: 22px;
    z-index: 9999;
    cursor: pointer;
}
.md-xmark span {
    height: auto;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #333;
    border-radius: 4px;
}
.md-xmark span:nth-of-type(1) {
    top: 0;
    transform: translateY(10px) rotate(-45deg);
}
.md-xmark span:nth-of-type(2) {
    bottom: 0;
    transform: translateY(-10px) rotate(45deg);
}
.c_expert_name {
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #000;
}
.c_expert_name_wrap {
  padding-bottom: 10px;
  border-bottom: 1px solid #6eb1b0;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 30px;
  align-items: center;
}
.c_expert_image {
  margin-right: 15px;
}
.c_expert_image img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
}
.c_expert_inner_name {
  display: flex;
  align-items: center;
  font-size: 26px;
  line-height: 1.5;
  font-weight: bold;
}
.c_expert_degree {
    margin-bottom: 20px;
    font-weight: bold;
}
.c_expert_modal_cont {

}
.c_expert_modal_cont a {
    text-decoration: underline;
} 



/**/

.lesson_trainer_wrap {
  width: 100%;
  padding: 40px 5% 80px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.lesson_trainer_inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.ltcharge_list_wrap {
    margin-bottom: 100px;
}
.ltcharge_list {
    display: flex;
    margin-bottom: 50px;
}
.ltcharge_box {
    width: 31%;
    margin-right: 2%;
}
.ltcharge_thum {
    position: relative;
    width: 100%;
    padding-top: 100%;
    /*box-shadow: 8px 49px 50px -37px rgba(0,0,0,0.25);*/
    margin-bottom: 25px;
}
.ltcharge_thum_inner {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.ltcharge_thum_inner img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.ltcharge_degree {
    font-size: 12px;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 4px;
}
.ltcharge_name {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
}
.ltcharge_link_wrap {
    margin-bottom: 60px;
}
.ltcharge_link {
    background-color: #000;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    font-weight: bold;
    padding: 15px 0px;
    width: 280px;
    margin: 0 auto;
    border-radius: 100vh;
}


.lesson_group_wrap {
    width: 100%;
    padding: 20px 5% 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_group_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
}
.lg_head_link {
    width: 46%;
    height: 244px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;    
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 4px;
}
.lg_head_link:hover {
    opacity: 0.8;
}
.lghl_1 {
    background-image: url(../image/schedule-area-bg.png);
}
.lghl_2 {
    background-image: url(../image/reebokfriday_bg.png);
}
.lghl_ttl {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 34px;
    color: #fff;
    line-height: 1;
    margin-bottom: 20px;
}
.lghl_label {
    padding: 0 30px;
    height: 40px;
    border-radius: 20px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    line-height: 40px;
}
.lesson_group2_wrap {
    width: 100%;
    padding: 20px 5% 140px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_group2_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.cont_ttlCom_3 {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 60px;
    padding-top: 30px;
    position: relative;
}
.cont_ttlCom_3::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_3 span {
    font-size: 14px;
    display: block;
    font-weight: normal;
    margin-top: 15px;
    line-height: 2;
}
.cont_ttlCom_tr {
    font-size: 26px;
    font-weight: bold;
    color: #fff;
    background-color: #000;
    line-height: 1.6;
    margin-bottom: 60px;
    padding: 15px 0;
    text-align: center;
}

.lg_sup {
    text-align: right;
    font-size: 12px;
    margin: 30px 0 100px;
}

.lifestyle_up_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px;
}

/*　アコーディオン3　*/
.cp_box3 *, .cp_box3 *:before, .cp_box3 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box3 {
    position: relative;
    margin-bottom: 20px;
    width: 100%;
}
.cp_box3 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box3 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box3 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box3 input {
    display: none;
}
.cp_box3 .cp_container3 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cp_box3 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box3 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box3 input:checked ~ .cp_container3 {
    height: auto;
    padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*　アコーディオン3　*/
.cp_box4 *, .cp_box4 *:before, .cp_box4 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box4 {
    position: relative;
    margin-bottom: 100px;
    width: 100%;
}
.cp_box4 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box4 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box4 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box4 input {
    display: none;
}
.cp_box4 .cp_container4 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cp_box4 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box4 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box4 input:checked ~ .cp_container4 {
    height: auto;
    padding-bottom: 30px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/


/*　アコーディオン トレーニング種類　*/
.cp_box5 *, .cp_box5 *:before, .cp_box5 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box5 {
    position: relative;
    margin-bottom: 100px;
    width: 100%;
}
.cp_box5 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box5 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box5 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box5 input {
    display: none;
}
.cp_box5 .cp_container5 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cp_box5 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box5 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box5 input:checked ~ .cp_container5 {
    height: auto;
    padding-bottom: 30px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/**/
.cp_box6 *, .cp_box6 *:before, .cp_box6 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box6 {
    position: relative;
    margin-bottom: 100px;
    width: 100%;
}
.cp_box6 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box6 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box6 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box6 input {
    display: none;
}
.cp_box6 .cp_container6 {
    overflow: hidden;
    height: 290px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cp_box6 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box6 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box6 input:checked ~ .cp_container6 {
    height: auto;
    padding-bottom: 30px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/**/
.cp_box7 *, .cp_box7 *:before, .cp_box7 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box7 {
    position: relative;
    margin-bottom: 100px;
    width: 100%;
}
.cp_box7 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box7 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box7 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box7 input {
    display: none;
}
.cp_box7 .cp_container7 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cp_box7 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box7 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box7 input:checked ~ .cp_container7 {
    height: auto;
    padding-bottom: 30px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/**/
/*　end　*/


.lifestyle_up_box {
    background-color: #000;
    width: 48%;
    margin-bottom: 40px;
    min-height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
}

.bcore_training_wrap {
    max-width: 1000px;
    margin: 0 auto;
}
.bcore_training_box {
    margin-bottom: 80px;
}

.btb_main_ttl {
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    background-color: #f6f6f6;
    padding: 15px 0;
    position: relative;
    width: 100%;
    margin-bottom: 40px;
}

.btb_ttl {
    font-weight: bold;
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 30px;
}
.btb_sub {
    margin-bottom: 35px;
    padding-bottom: 35px;
    border-bottom: 1px solid #d5d5d5;
}
.btb_menu_list {
    display: flex;
    flex-wrap: wrap;
}
.btbml {
    background: url(../image/icon/check_mc.svg) no-repeat left center / 20px auto;
    padding-left: 26px;
    font-size: 18px;
    margin-right: 30px;
    font-weight: bold;
    margin-bottom: 10px;
}

.lesson_onlin_wrap {
    width: 100%;
    padding: 20px 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_onlin_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.lesson_online_head {
    text-align: center;
}
.loh_ttl {
    color: #000;
    font-size: 30px;
    margin-bottom: 20px;
    font-weight: bold;
}
.loh_txt {
    margin-bottom: 20px;
    font-weight: bold;
}
.loh_txt_2 {
    color: #000;
    font-size: 30px;
    font-weight: bold;
}

.lesson_schedule_wrap {
    width: 100%;
    padding: 20px 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.lesson_schedule_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.schedule_area {
    margin-bottom: 100px;
}
.schedule_area2 {
    margin-bottom: 60px;
}
.schedule_area img {
    max-width: 100%;
}
.sec_schedule {
    display: flex;
    justify-content: center;
}
.ssbtn {
    width: 300px;
    height: 60px;
    border-radius: 30px;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 15px;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
}
.ssbtn span {
    color: #fff !important;
    font-weight: bold;
    background: url(../image/icon/window2.svg) no-repeat right center / 18px auto;
    padding-right: 24px;
    font-size: 18px;
}


.training_top_wrap {
    width: 100%;
    padding: 100px 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.training_top_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.training_top_strong {
    display: flex;
    justify-content: space-between;
}
.tts_intro_box {
    width: 30%;
}
.ttsib_img {
    margin-bottom: 30px;
    text-align: center;
}
.ttsib_img img {
    width: 290px;
    height: 290px;
    border-radius: 50%;
}
.ttsib_cont {

}
.ttsib_ttl {
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    margin-bottom: 15px;
    line-height: 1.6;
}
.ttsib_txt {

}
.ttsib_txt p {
    margin-top: 14px;
    line-height: 1.6;
}
.ttsib_txt span {
    display: inline-block;
    background-color: #000;
    color: #fff;
    font-size: 11px;
    height: 22px;
    line-height: 22px;
    margin-right: 4px;
    padding: 0 15px;
    margin-bottom: 8px;
    border-radius: 2px;
}
/**/
.price_more_btn {
    text-align: center;
    margin-bottom: 60px;
    display: flex;
    justify-content: center;
}
.price_more_btn a {
    display: inline-block;
    height: 58px;
    padding: 0 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
    line-height: 58px;
    border-radius: 29px;
    margin: 0 15px;
}
.price_more_btn a span {
    padding-right: 20px;
    background: url(../image/icon/arrow3_w.svg) no-repeat right center / 13px auto;
}
.price_more_btn a span.sche_link {
    padding-left: 20px;
    padding-right: 0;
    background-image: url(../image/icon/arrow3_w.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 12px auto;    
}
/**/
.price_more_btn2 {
    text-align: center;
    display: flex;
    justify-content: center;
}
.price_more_btn2 a {
    display: inline-block;
    height: 48px;
    padding: 0 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    font-size: 16px;
    line-height: 48px;
    border-radius: 24px;
    margin: 0 15px;
}
.price_more_btn2 a span {
    padding-right: 20px;
    background: url(../image/icon/arrow3_w.svg) no-repeat right center / 13px auto;
}
.price_more_btn2 a span.sche_link {
    padding-left: 20px;
    padding-right: 0;
    background-image: url(../image/icon/arrow3_w.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 12px auto;    
}
.price_more_btn3 {
    text-align: center;
    margin-bottom: 60px;
    display: flex;
    justify-content: center;
}
.price_more_btn3 a {
    display: inline-block;
    padding: 15px 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.1;
    border-radius: 29px;
    margin: 0 15px;
}
.price_more_btn3 a span {
    padding-right: 20px;
    background: url(../image/icon/arrow3_w.svg) no-repeat right center / 13px auto;
}
/**/

.sec_trng_strong_wrap {
    margin-bottom: 120px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.sec_trng_strong {
    margin-bottom: 60px;
    font-weight: bold;
    text-align: center;
}
.sec_trng_strong h3 {
    font-size: 24px;
    text-align: center;
    margin-bottom: 5px;
}
.sec_trng_strong p {
    font-weight: normal;
}
.sec_trng_strong2 {
    background-color: #fff;
    padding: 30px 40px 35px;
}

.trng_prev_wrap {
    margin-bottom: 60px;
    display: flex;
    flex-wrap: wrap;
    margin-right: -3%;
}
.trng_prev {
    width: 23%;
    height: 130px;
    margin-right: 2%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
..tpreimg01 {
    background-image: url(../image/detox.png);
}
.tpreimg02 {
    background-image: url(../image/balance.png);
}
.tpreimg03 {
    background-image: url(../image/shape.png);
}
.tpreimg04 {
    background-image: url(../image/conditioning.png);
}
.trng_prev_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,0.2);
    width: 100%;
    height: 100%;
}
.trng_prev_inner span {
    color: #fff;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 32px;
    letter-spacing: 2px;
}

.sec_trng_ttl {
    font-weight: bold;
    margin-bottom: 15px;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 15px;
}
.sec_trng_price {
    display: flex;
    margin-bottom: 10px;
}
.stp_ttl {
    flex: 1;
}
.stp_price {
    width: 200px;
    text-align: right;
}

.class_feature_top {
    margin-bottom: 40px;
}
.class_feature_top h3 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}
.class_feature_top ul {
    
}
.class_feature_top ul li {
    background: url(../image/icon/check_mc.svg) no-repeat left center / 16px auto;
    padding-left: 20px;
    font-size: 15px;
    margin-right: 30px;
    margin-bottom: 10px;
}

.class_intro_wrap {
    margin-bottom: 100px;
}
.class_intro_inner {
    margin-bottom: 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.class_intro_box {
    width: 23%;
    border: 1px solid #000;
    padding: 35px;
    background-color: #f8f8f8;
    border-radius: 5px;
}
.cib_ttl {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px dotted #000;
}
.cib_cont {
    line-height: 1.8;
}
.cbi_more_btn {
    display: inline-block;
    width: 300px;
    height: 60px;
    border-radius: 100vh;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
    background-color: #000;
    margin: 0 auto;
}

.training_strong_bt {
    padding: 50px;
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
    border: 1px solid #000;
    border-radius: 5px;
}
.training_strong_bt_ttl {
    font-weight: bold;
    font-size: 22px;
    line-height: 1.6;
    margin-bottom: 15px;
}
.training_strong_bt_cont {
    display: flex;
    align-items: center;
}
.trsbt_img {
    width: 120px;
    margin-right: 30px;
}
.trsbt_img img {
    width: 100%;
}
.trsbt_txt {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/**/
.online_training_wrap {

}
.ot_intro_ttl {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 30px;
    margin-top: 80px;
    color: #6eb1b0;
    font-weight: bold;
    font-size: 34px;
}
.ot_intro_txt {
    text-align: center;
    margin-bottom: 80px;
    font-weight: bold;
    font-size: 16px;
}
.online_training_detail_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}
.otd_img {
    width: 40%;
}
.otd_img img {
    width: 100%;
}
.otd_cont {
    width: 55%;
}
.otdc_ttl {
    font-weight: bold;
    font-size: 20px;
    color: #6eb1b0;
    line-height: 1.6;
    margin-bottom: 10px;
}
.otdc_detail {
    margin-bottom: 30px;
}
.onl_pr {
    color: #f084a4 !important;
    font-weight: bold !important;
    font-size: 18px !important;
}
.caution_list_p4 {
    background-color: #fff;
    padding: 0 0 0 5px;
}
.caution_list_p4 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p4 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}
.otdc_detail span {
    color: #000;
    font-weight: bold;
}
.otdc_contact {
    border: 1px solid #000;
    padding: 20px 30px;
}
.otdc_contact p {
    font-weight: bold;
}
.otdc_contact a {
    text-decoration: underline;
    color: #000;
}


.training_price_wrap {
    width: 100%;
    padding: 0px 5% 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.training_price_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.online_department_wrap {
    margin-bottom: 120px;
}
.sec_online_department {
    margin-bottom: 40px;
}
.sod_ttl {
    font-size: 22px;
    color: #000;
    line-height: 1.6;
    margin-bottom: 20px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
}
.sod_detail {
    padding: 0 10px;
}
.sod_detail span {
    color: #6eb1b0;
    font-weight: bold;
}

.online_join_wrap {
    margin-top: 80px;
}
.caution_list_p6 {
    padding: 0 0 0 5px;
}
.caution_list_p6 li {
    margin-left: 20px;
    margin-bottom: 6px;
    margin-top: 6px;
    line-height: 1.8;
}
.caution_list_p6 li::before {
    content: '■';
    left: 0;
    color: #000;
    margin-right: 3px;
    margin-left: -20px;
    display: inline-block;
    font-size: 10px -webkit-transform:scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.tonl_btn_wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 80px;
}
.tonl_btn_wrap a {
    display: inline-block;
    height: 58px;
    padding: 0 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
    line-height: 58px;
    border-radius: 29px;
    margin: 0 15px;
}
.tonl_btn_wrap2 {
    display: flex;
    justify-content: center;
}
.tonl_btn_wrap2 a {
    display: inline-block;
    height: 58px;
    padding: 0 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    font-size: 18px;
    line-height: 58px;
    border-radius: 29px;
    margin: 0 15px;
}

.online_watch_ttl {
    font-weight: bold;
    padding: 10px 0;
}
.online_watch_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.online_watch_wrap a {
    display: block;
    width: 18%;
}
.online_watch_wrap a img {
    width: 100%;
}

.online_howto_wrap {
    margin-bottom: 120px;
}
.sec_online_howto {
    margin-bottom: 60px;
}
.sec_online_howto_ttl {
    font-size: 22px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    margin-bottom: 55px;
    display: flex;
    align-items: center;
    padding-bottom: 8px;
}
.sec_online_howto_ttl span {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    background-color: #000;
    margin-right: 15px;
    font-style: italic;
}
.sec_online_howto_detail {

}
.sohd_link {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}
.sohd_link_btn {
    text-align: center;
    display: inline-block;
    margin: 0 15px;
}
.sohd_link_btn img {
    height: 54px;
}
.signup_image_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.signup_image_box {
    width: 30%;
}
.signup_image_box2 {
    width: 48%;
}
.suib_ttl {
    margin-bottom: 15px;
    line-height: 1.6;
    font-weight: bold;
    font-size: 16px;
}
.suib_image {

}
.suib_image img {
    width: 100%;
}
.signup_image_box p {
    font-size: 12px;
    display: none;
    margin-top: 5px;
}
.signup_image_box2 p {
    font-size: 12px;
    margin-top: 5px;
}

.online_notice {
    padding: 50px;
    background-color: #fff2f2;
    border: 1px solid #e9e9e9;
    border-radius: 3px;
    margin-bottom: 80px;
}
.o_notice_ttl {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 20px;
}
.o_notice_cont {

}


.sec_online_dsc {
    margin-bottom: 70px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}


.online_prev_wrap {
    margin-bottom: 60px;
    display: flex;
    flex-wrap: wrap;
    margin-right: -3%;
}
.online_prev {
    width: 23%;
    height: 130px;
    margin-right: 2%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.opreimg01 {
    background-image: url(../image/detox.png);
}
.opreimg02 {
    background-image: url(../image/balance.png);
}
.opreimg03 {
    background-image: url(../image/shape.png);
}
.opreimg04 {
    background-image: url(../image/conditioning.png);
}
.online_prev_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,0.2);
    width: 100%;
    height: 100%;
}
.online_prev_inner span {
    color: #fff;
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 32px;
    letter-spacing: 2px;
}

.o_ftp_wrap {
    margin-bottom: 40px;
}
.o_ftp {
    max-width: 360px;
    border: 1px solid #000;
    margin: 0 auto;
}
.o_ftp_ttl {
    line-height: 1;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 15px 0;
    background-color: #000;
}
.o_ftp_txt {
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 32px;
    color: #6eb1b0;
    line-height: 1;
    font-weight: bold;
}

.bikatsu_wrap {
    margin-top: 100px;
    padding-top: 60px;
    border-top: 1px solid #000;
}
.bikatsu_ttl_wrap {
    text-align: center;
    margin-bottom: 80px;
}
.bikatsu_ttl {
    position: relative;
    display: inline-block;
    padding: 0 65px;
    text-align: center;
    font-size: 44px;
    font-weight: bold;
    color: #f084a4;
}
.bikatsu_ttl:before,
.bikatsu_ttl:after {
    position: absolute;
    top: calc(50% - 3px);
    width: 50px;
    height: 6px;
    content: '';
    border-top: solid 1px #f084a4;
    border-bottom: solid 1px #f084a4;
}
.bikatsu_ttl:before {
    left: 0;
}

.bikatsu_ttl:after {
    right: 0;
}
.bikatsu_st_1 {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 20px;
}
.bikatsu_st_2 {
    text-align: left;
}
.bikatsu_benefits {
    position: relative;
    padding: 40px 50px;
    border: 1px solid #000;
    background-color: #fff2f2;
}
.bikatsu_benefits:before {
    font-size: 15px;
    font-weight: bold;
    position: absolute;
    top: -34px;
    line-height: 34px;
    left: -1px;
    height: 34px;
    padding: 0 2em;
    content: '特典';
    color: #fff;
    background: #000;
}


.online_detail_wrap {
    width: 100%;
    padding: 80px 5% 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #eefafa;
}
.online_detail_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.online_salon {
    margin-bottom: 60px;
}
.os_detail_wrap {
    margin-bottom: 100px;
}
.online_salon_copy {
    font-size: 30px;
    font-weight: bold;
    color: #f084a4;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 15px;
}
.online_salon_ttl {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 15px;
}
.online_salon_price {
    font-size: 32px;
    text-align: center;
    line-height: 1.2;
    font-weight: bold;
    color: #6eb1b0;
    margin-bottom: 40px;
}
.online_salon_price span {
    font-size: 15px;
    font-weight: normal;
    margin-left: 5px;
    color: #000;
}
.p_course_inner_os {
    display: flex;
    flex-wrap: wrap;
}
.pci_list_os {
    background: url(../image/icon/check_mc3.svg) no-repeat left 6px / 16px auto;
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 20px;
    text-align: left;
    width: 50%;
}
/**/
.online_salon_ex {
    background-color: #f8f8f8;
    padding: 50px 70px;
    margin-top: 60px;
}
.online_salon_ttl_ex {
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 10px;
}
.online_salon_price_ex {
    font-size: 32px;
    text-align: center;
    line-height: 1.2;
    font-weight: bold;
    color: #6eb1b0;
}
.online_salon_price_ex span {
    font-size: 15px;
    font-weight: normal;
    margin-left: 5px;
    color: #000;
}
.p_course_inner_os_ex {
    margin-top: 30px;
    padding-top: 35px;
    border-top: 1px solid #e9e9e9;
    display: flex;
    flex-wrap: wrap;
}
.pci_list_os_ex {
    background: url(../image/icon/check_mc3.svg) no-repeat left 6px / 16px auto;
    padding-left: 20px;
    margin-right: 40px;
    margin-bottom: 20px;
    text-align: left;
}
/*------------------------------------------------------------
    プロフェッショナル
------------------------------------------------------------*/
.professional_top_wrap {
    width: 100%;
    padding: 0 5% 90px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.professional_top_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.professional_wrap {
    width: 100%;
    padding: 80px 5% 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /*background: linear-gradient(-180deg, #ffffff 0%, #ffffff 8%, #f6f6f6 8%, #f6f6f6 100%);*/
    background-color: #f6f6f6;
}
.professional_wrap2 {
    width: 100%;
    padding: 0 5% 120px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.professional_wrap3 {
    width: 100%;
    padding: 0 5% 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #f6f6f6;
}
.professional_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.get_certified_ttl {
    margin-bottom: 40px;
    text-align: center;
}
.get_certified_ttl h2 {
    font-size: 24px;
    margin-bottom: 25px;
    font-weight: bold;
}
.get_certified_ttl h2::after {
    content: '';
    display: block;
    position: relative;
    width: 40px;
    height: 1px;
    bottom: -8px;
    left: 50%;
    margin-left: -20px;
    background-color: #000;
}
.get_certified_ttl span {
    font-size: 14px;
}

.p_course_list {
    margin-bottom: 100px;
}
.p_course_box {
    border: 1px solid #e9e9e9;
    padding: 50px 60px;
    background-color: #fff;
    margin-bottom: 60px;
}
.p_course_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
}
.p_course_cont {
    width: 100%;
    margin-bottom: 40px;
}
.pcc_ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 20px;
    color: #6eb1b0;
    border-bottom: 1px solid #e9e9e9;
    padding-bottom: 10px;
}
.pcc_ttl span {
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
    color: #000;
}
.pcctin {
    font-size: 14px !important;
    display: inline-block !important;
    margin-bottom: 0 !important;
    font-weight: bold !important;
    color: #6eb1b0 !important;
}
.pcc_txt_btn {
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    height: 32px;
    line-height: 32px;
    padding: 0 30px;
    border-radius: 19px;
    display: inline-block;
}
.p_course_detail {
    width: 100%;
    text-align: center;
    background-color: #f8f8f8;
    padding: 45px 30px 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
}
.pcd_ttl {
    font-weight: bold;
    line-height: 1.7;
    margin-right: 40px;
}
.pcd_ttl a {
    text-decoration: underline;
}
.pcd_ttl h3 {
    font-size: 18px;
}
.pcd_price {
    display: flex;
    justify-content: center;
    align-items: baseline;
}

.pcd_price_ex {
    display: flex;
    flex-direction: column;
}
.pcd_price_ex_inner {
    display: flex;
    justify-content: center;
    align-items: baseline;
}
.ppei_sup {
    font-size: 13px;
    margin-top: 5px;
}
.ppei_sup a {
    text-decoration: underline;
}

.pcd_price2 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.pcdp_nmb {
    font-size: 24px;
    font-weight: bold;
    color: #6eb1b0;
    line-height: 1;
}
.pcdp_nmb2 {
    font-size: 18px;
    font-weight: bold;
    color: #6eb1b0;
    line-height: 1.6;
}
.pcdp_yen {
    font-size: 12px;
    margin-left: 5px;
}
.p_course_inner_2 {
    margin-top: 20px;
    padding-top: 40px;
    border-top: 1px solid #e9e9e9;
    display: flex;
    flex-wrap: wrap;
}
.pci_list {
    background: url(../image/icon/check_mc3.svg) no-repeat left center / 16px auto;
    padding-left: 20px;
    margin-right: 40px;
    margin-bottom: 20px;
}

.sec_certified {
    margin: 20px 0 0;
}
.certified_ttl {
    font-weight: bold;
    color: #fff;
    background-color: #000;
    height: 24px;
    line-height: 24px;
    padding: 0 15px;
    border-radius: 12px;
    display: inline-block;
    margin-bottom: 8px;
}
.certified_detail {
    line-height: 1.6;
    padding-left: 4px;
}

.counselor_charge_wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-top: 15px;
}
.sec_counselor_charge {
    width: 48%;
    display: flex;
    align-items: center;
}
.ounselor_image {
    width: 80px;
    height: 80px;
}
.ounselor_image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 50%;
}
.ounselor_txt {
    flex: 1;
    padding-left: 20px;
}
.ounselor_txt p {
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 5px;
}

.education_wrap {
    width: 100%;
    padding: 0 5% 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.education_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.clgmt_wrap {
    width: 100%;
    padding: 80px 5% 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.clgmt_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.pro_education {
    margin-bottom: 100px;
}
.inner_cont_ttl {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #000;
    margin-bottom: 60px;
}
.inner_cont_ttl::after {
    content: '';
    display: block;
    position: relative;
    width: 40px;
    height: 1px;
    bottom: -8px;
    left: 50%;
    margin-left: -20px;
    background-color: #000;
}
.pro_education_detail {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.pro_education_sb {
    text-align: center;
    font-weight: bold;
    font-size: 15px;
    margin-bottom: 60px;
}
.ped_box {
    background-color: #f8f8f8;
    border: 1px solid #e9e9e9;
    height: 110px;
    width: 47%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: 18px;
    font-weight: bold;
}
.ped_box_ico {
    width: 48px;
    margin-right: 15px;
}
.ped_box_ico img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
}

.pro_supervision {
    margin-bottom: 100px;
}
.pro_supervision_ex {
    margin-bottom: 100px;
}
.pro_supervision_ol {
   
}

.pro_supervision2 {
    
}
.pro_supervision_inner {
    max-width: 1000px;
    margin: 0 auto;
}

.ps_list {
    display: flex;
    margin-bottom: 50px;
    flex-wrap: wrap;
    margin-right: -3%;
}
.ps_box {
    width: 30.3333%;
    margin-right: 3%;
    margin-bottom: 60px;
}
.ps_thum {
    position: relative;
    width: 100%;
    padding-top: 100%;
    box-shadow: 8px 49px 50px -37px rgba(0,0,0,0.25);
    margin-bottom: 25px;
}
.ps_thum_inner {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.ps_thum_inner img {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.ps_name {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
}

.education_app_wrap {
    margin-bottom: 80px;
}
.education_app {
    width: 500px;
    height: 78px;
    border-radius: 3px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    text-align: center;
    line-height: 78px;
    display: block;
    margin: 0 auto;
    font-size: 16px;
}
.education_app:hover {
    background-color: #000 !important;
}

.supporter_recruit {
    text-align: center;
    margin-bottom: 60px;
}
.spr_btn {
    color: #000 !important;
    border: 1px solid #000;
    height: 40px;
    padding: 0 30px;
    line-height: 40px;
    font-size: 16px;
    border-radius: 20px;
    display: inline-block;
    font-weight: bold;
}
.spr_btn:hover {
    color: #fff !important;
    border: 1px solid #000;
    background-color: #000;
}

/*****************************************************/
/*　アコーディオン　*/
.cg_box01 *, .cg_box01 *:before, .cg_box01 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cg_box01 {
    position: relative;
    margin-bottom: 40px;
}
.cg_box01 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cg_box01 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cg_box01 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cg_box01 input {
    display: none;
}
.cg_box01 .cg_container01 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cg_box01 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cg_box01 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cg_box01 input:checked ~ .cg_container01 {
    height: auto;
    padding-bottom: 40px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*　アコーディオン　*/
.cg_box02 *, .cg_box02 *:before, .cg_box02 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cg_box02 {
    position: relative;
    margin-bottom: 40px;
}
.cg_box02 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cg_box02 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cg_box02 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cg_box02 input {
    display: none;
}
.cg_box02 .cg_container02 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cg_box02 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cg_box02 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cg_box02 input:checked ~ .cg_container02 {
    height: auto;
    padding-bottom: 40px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*　アコーディオン　*/
.cg_box03 *, .cg_box03 *:before, .cg_box03 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cg_box03 {
    position: relative;
    margin-bottom: 40px;
}
.cg_box03 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cg_box03 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cg_box03 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cg_box03 input {
    display: none;
}
.cg_box03 .cg_container03 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cg_box03 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cg_box03 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cg_box03 input:checked ~ .cg_container03 {
    height: auto;
    padding-bottom: 40px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*　アコーディオン　*/
.cg_box04 *, .cg_box04 *:before, .cg_box04 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cg_box04 {
    position: relative;
    margin-bottom: 40px;
}
.cg_box04 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cg_box04 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cg_box04 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cg_box04 input {
    display: none;
}
.cg_box04 .cg_container04 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cg_box04 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cg_box04 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cg_box04 input:checked ~ .cg_container04 {
    height: auto;
    padding-bottom: 40px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*　アコーディオン　*/
.cg_box05 *, .cg_box05 *:before, .cg_box05 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cg_box05 {
    position: relative;
    margin-bottom: 40px;
}
.cg_box05 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cg_box05 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cg_box05 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cg_box05 input {
    display: none;
}
.cg_box05 .cg_container05 {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cg_box05 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cg_box05 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cg_box05 input:checked ~ .cg_container05 {
    height: auto;
    padding-bottom: 40px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/
/*****************************************************/

/*　アコーディオン　*/
.cp_box *, .cp_box *:before, .cp_box *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box {
    position: relative;
    margin-bottom: 40px;
}
.cp_box label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 250, 250, 0.95) 90%);
}
.cp_box input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box input {
    display: none;
}
.cp_box .cp_container {
    overflow: hidden;
    height: 250px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
}
.cp_box input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box input:checked ~ .cp_container {
    height: auto;
    padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/

/*　アコーディオン2　*/
.cp_box2 *, .cp_box2 *:before, .cp_box2 *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_box2 {
    position: relative;
    width: 100%;
}
.cp_box2 label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 120px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.cp_box2 input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box2 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 0px;
    left: 50%;
    width: 16rem;
    font-family: "Font Awesome 5 Free";
    content: '\f358'' 詳細を表示する';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #000;
    font-size: 15px;
}
.cp_box2 input {
    display: none;
}
.cp_box2 .cp_container2 {
    overflow: hidden;
    height: 120px; /* 開く前に見えている部分の高さ */
    transition: all 0.5s;
    display: flex;
    flex-wrap: wrap;
}
.cp_box2 input:checked + label {
    /* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box2 input:checked + label:after {
    font-family: "Font Awesome 5 Free";
    content: '\f35b'' 閉じる';
}
.cp_box2 input:checked ~ .cp_container2 {
    height: auto;
    padding-bottom: 30px; /* 閉じるボタンのbottomからの位置 */
    transition: all 0.5s;
}
/*　end　*/

.esthetic_session_wrap {
    margin-bottom: 40px;
    background-color: #f6f6f6;
    padding: 40px 50px;
    width: 100%;
}
.session_title {
    color: #6eb1b0;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    line-height: 1.6;
    padding-bottom: 20px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e9e9e9;
}
.sec_session_detail {
    margin-bottom: 30px;
}
.session_sub_title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    line-height: 1.6;
}
.session_inner {

}
.session_schedule_wrap {
    display: flex;
}
.session_schedule_date {
    width: 110px;
}
.session_schedule_time {
    flex: 1;
}
.session_list {
    margin: 15px 0;
}
.session_list li {
    font-weight: bold;
    padding-left: 26px;
    margin-bottom: 3px;
    background: url(../image/icon/check_em.svg) no-repeat left center / 18px auto;
}
.session_line {
    text-align: center;
    margin: 40px 0;
}
.session_line_title {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 15px;
    line-height: 1.6;
}
.session_line_btn {

}
.session_line_btn img {
    width: 250px;
}

.college_cta {
    display: flex;
    padding: 0 8% 60px;
    justify-content: center;
}
.college_cta_btn {
    background-color: #000;
    border-radius: 100vh;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 300px;
    height: 70px;
    font-weight: bold;
    margin: 0 15px;
    text-align: center;
    line-height: 1.4;
}

.c_inner_link_wrap {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 60px;
}
.c_inner_link {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cil_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 24%;
    height: 60px;
    background-color: #000;
    color: #fff !important;
    font-weight: bold;
    border-radius: 100vh;
}

/*------------------------------------------------------------
    ショップ
------------------------------------------------------------*/
.shop_wrap {
    width: 100%;
    padding: 0 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.shop_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.shop_head_ttl {
    font-weight: bold;
    font-size: 18px;
    color: #000;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 80px;
}
.shop_banner_1 {
    margin-bottom: 30px;
}
.shop_banner_1 a {
    
}
.shop_banner_1 a:hover {
    opacity: 0.8;
}
.shop_banner_1 img {
    width: 100%;
}
.shop_banner_2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.shop_banner_list {
    display: block;
    width: 48%;
    margin-bottom: 30px;
}
.shop_banner_list:hover {
    opacity: 0.8;
}
.shop_banner_list img {
    width: 100%;
}

/*------------------------------------------------------------
    アクセス
------------------------------------------------------------*/
.access_wrap {
    width: 100%;
    padding: 0 5% 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.access_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

/*------------------------------------------------------------
    お問い合わせ
------------------------------------------------------------*/
.contact_wrap {
    width: 100%;
    padding: 0 5% 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.contact_inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.cont_ttlCom_4 {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 60px;
    padding-top: 30px;
    position: relative;
}
.cont_ttlCom_4::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 80px;
    background-color: #000;
}
.cont_ttlCom_4 span {
    font-size: 13px;
    line-height: 1;
    display: block;
    font-weight: normal;
    margin-top: 5px;
}
.reserve_wrap {
    margin-bottom: 100px;
    display: flex;
    justify-content: space-around;
}
.reserve_box {
    width: 47%;
    padding: 40px 40px 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #f6fcfc;
    border-radius: 4px;
}
.reserve_icon {
    margin-bottom: 30px;
}
.reserve_icon img {
    width: 82px;
}
.reserve_t {
    margin-bottom: 30px;
    color: #000;
}
.reserve_btn_wrap {
    text-align: center;
}
.reserve_btn {
    display: inline-block;
    height: 50px;
    border: 1px solid #6eb1b0;
    border-radius: 25px;
    padding: 0 30px;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #6eb1b0 !important;
    background-color: #fff;
}
.reserve_btn:hover {
    color: #fff !important;
    background-color: #000;
}

.various_contact_wrap {
    display: flex;
    justify-content: space-around;
}
.various_contact_box {
    width: 47%;
    padding: 40px 40px 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #f6f6f6;
    border-radius: 4px;
}
.various_contact_icon {
    margin-bottom: 30px;
}
.various_contact_icon img {
    width: 82px;
}
.various_contact_t {
    margin-bottom: 30px;
    color: #000;
}
.various_contact_btn_wrap {
    text-align: center;
}
.various_contact_btn {
    display: inline-block;
    height: 50px;
    border: 1px solid #000;
    border-radius: 25px;
    padding: 0 30px;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #000 !important;
    background-color: #fff;
}
.various_contact_btn:hover {
    color: #fff !important;
    background-color: #000;
}
.vc_phone {
    text-align: center;
    margin-bottom: 20px;
}
.vcp_num {
    font-size: 30px;
    line-height: 1;
    color: #000 !important;
    display: inline-block;
    margin-bottom: 10px;
}
.vc_hours {
    font-size: 13px;
    color: #000;
}
.vc_sup {
    color: #000;
}

/*------------------------------------------------------------
    お問い合わせフォーム
------------------------------------------------------------*/
.contact_cont_wrap {
    margin-bottom: 80px;
    max-width: 1000px;
    margin: 0 auto;
}
.contact_head_wrap {
    padding: 45px 60px;
    background-color: #f6f6f6;
    position: relative;
    max-width: 1000px;
    margin: 0 auto 50px;
    border-radius: 6px;
    border: 1px solid #000;
}
.contact_head_wrap2 {
    padding: 45px 50px;
    background-color: #f6f6f6;
    position: relative;
    max-width: 1000px;
    margin: 0 auto 50px;
    border-radius: 5px;
}
.contact_head_tit {
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 8px;
    margin-bottom: 30px;
    border-bottom: 1px dotted #999;
}
.contact_head_txt {
    text-align: left;
    margin-bottom: 10px;
}
.contact_head_txt_inner_ttl {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 30px;
    padding-bottom: 8px;
    color: #000;
    border-bottom: 1px solid #000;
}
.contact_head_txt_02 {
    text-align: left;
    margin-bottom: 10px;
    font-weight: bold;
    line-height: 1.6;
    font-size: 13px;
}
.contact_head_icon {
    line-height: 1;
    padding: 3px 8px;
    text-align: center;
    color: #fff;
    margin-right: 5px;
    background-color: #f084a4;
    font-size: 12px;
    font-weight: bold;
    border-radius: 2px;
}

.contact_table_wrap {
    max-width: 1000px;
    margin: 0 auto;
}
.mdl-form-table {
    width: 100%;
    margin-bottom: 60px;
    table-layout: fixed;
}
.mdl-form-table tr {
    border-bottom: 1px solid #e0e0e0;
}
.mdl-form-table th {
    width: 30%;
    padding: 30px;
    text-align: left;
    position: relative;
    vertical-align: middle;
    font-weight: bold;
}
.mdl-form-table th p::before {
    content: '\5fc5\9808';
    padding: 3px 8px;
    background: #f084a4;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0,-50%,0);
    border-radius: 2px;
}
.mdl-form-table th p {
    padding-left: 55px;
    position: relative;
    line-height: 1.4;
}
.mdl-form-table th span::before {
    content: '\4efb\610f';
    padding: 3px 8px;
    background: #bbbbbb;
    font-weight: 700;
    font-size: 12px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0,-50%,0);
    border-radius: 1px;
    color: #fff;
}
.mdl-form-table th span {
    display: block;
    padding-left: 55px;
    position: relative;
    line-height: 1.4;
}
.mdl-form-table td {
    padding: 30px 0;
    vertical-align: middle;
}
.mdl-input p {
    font-size: 13px;
    margin-top: 8px;
    line-height: 1.6;
}
.addition {
    margin-top: 5px;
    line-height: 1.7;
    font-size: 12px;
    color: #f084a4;
    display: block;
}
.ctt_tr {
    border-bottom: none !important;
}
.ctt_th {
    padding: 30px 30px 0 !important;
}
.ctt_td {
    padding: 30px 0 0 !important;
}

.conditions_detail_2 {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.conditions_detail_2 label {
    display: flex;
    align-items: center;
    margin-right: 30px;
    margin-bottom: 10px;
}
.input_checkbox {
    margin-right: 5px;
    display: block !important;
}

.mdl-input {

}
.mdl-form-table select {
    position: relative;
}
.mdl-form-table input{
    width: 100%;
    height: 50px;
    padding: 5px 20px;
    background: #fff;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #000;
}
.mdl-form-table input.input_text_100 {
    max-width: 220px;
    height: 50px;
    padding: 5px 20px;
    background: #fff;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #000;
    margin-right: 10px;
}
.mdl-form-table select {
    /*z-index: 1;*/
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 5px 20px;
    background: transparent;
    cursor: pointer;
    border: 1px solid #000;
    border-radius: 4px;
    position: relative;
    width: 100%;
    background-color: #fff;
    display: block;
    height: 50px;
}
.mdl-form-table select::after {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    margin: -2px 0 0;
    border-top: 5px solid #000;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
}
.mdl-form-table .input_radio_wrap {
    margin-right: 30px;
    display: inline-block;
}

.mdl-form-table input.input_radio {
    background: #fff;
    box-sizing: border-box;
    border-radius: 2px;
    border:none;
    margin-right: 5px;
}
.mdl-form-table textarea {
    width: 100%;
    padding: 20px;
    background: #fff;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #000;
    min-height: 150px;
}
.block_submit_attention {
    text-align: center;
    padding: 50px 0;
}
.mdl_btn_wrap {
    display: flex;
    align-items: center;
}
.btn_form_confirm {
    width: 384px;
    height: 80px;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    border: 2px solid #fff;
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
    margin: 0 auto;
}
.btn_form_confirm:hover {
    color: #006cc4 !important;
}
.btn_form_confirm:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
    background: #fff;
}
.btn_form_confirm:hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.btn_form_confirm span {
    z-index: 1;
    display: inline-block;
}

.uni_btn_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

/**/
.confirmation_btn,
.uni_btn_04 {
    display: block;
    font-size: 18px;
    color: #fff !important;
    background-color: #000;
    width: 300px;
    line-height: 60px;
    text-align: center;
    letter-spacing: 1.5px;
    margin: 0 auto;
    border:none;
    cursor: pointer;
    border-radius: 0;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
}
.confirmation_btn:hover,
.uni_btn_04:hover {
    background-color: #98d3d2 !important;
}
.uni_btn_04_bk {
    display: block;
    font-size: 18px;
    color: #000 !important;
    position: relative;
    background-color: #fff;
    width: 300px;
    line-height: 60px;
    text-align: center;
    letter-spacing: 1.5px;
    margin: 0 auto;
    border:none;
    cursor: pointer;
    border-radius: 0;
    border: 1px solid #000;
    font-weight: bold;
    border-radius: 30px;
}
.uni_btn_04_bk:hover {
    background-color: #000 !important;
    color: #fff !important;
}

.error_explanation {
    background: none repeat scroll 0 0 #fbf4f6;
    border: 1px solid #f084a4;
    margin-bottom: 30px;
    padding: 20px 25px 25px;
    font-weight: bold;
    border-radius: 6px;
}
.error_explanation h2 {
    color: #f084a4;
    background: url(../image/icon/e_mark.svg) no-repeat left center / 18px auto;
    padding-left: 24px;
    font-size: 16px;
}
.fa-exclamation-circle {
    margin-right: 5px;
}
.error_explanation ul {
    margin: 10px 0 0 20px;
}
.error_explanation li {
    color: #f084a4;
    list-style: outside none none;
    background: url(../image/icon/e_down.svg) no-repeat left center / 16px auto;
    padding-left: 22px;
}
.fa-caret-square-down {
    margin-right: 4px;
}

.error_explanation02 {
    background: none repeat scroll 0 0 #fbf4f6;
    border: 2px solid #f084a4;
    margin-bottom: 30px;
    padding: 20px 25px 20px;
}
.error_explanation02 h2 {
    color: #6eb1b0;
}
.submit_agree {
    margin-top: 60px;
    text-align: center;
}

.cftlink {
    text-align: center;
    margin-top: 20px;
}
.cftlink a {
    display: inline-block;
    padding: 0 40px;
    height: 50px;
    line-height: 50px;
    background-color: #000;
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    border-radius: 25px;
}
.cftlink a:hover {
    background-color: #98d3d2;
}














.anchorlink {
    position: relative;
    top: -80px;
    display: block;
}
.anchorlink2 {
    position: relative;
    top: -80px;
    display: block;
}
.anchorlink3 {
    position: relative;
    display: block;
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: -webkit-gradient(linear, left top, right top, from(#f6f6f6), color-stop(50%, #f6f6f6), color-stop(50%, #efefef), to(#efefef));
    background: linear-gradient(90deg, #f6f6f6 0%, #f6f6f6 50%, #efefef 50%, #efefef 100%);
}
.footer_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.footer_menu_wrap {
	width: 70%;
    background-color: #f6f6f6;
    padding: 80px 30px 60px 0;
}
.footer_menu_t {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.ullist_t_wrap {
    width: 25%;
}
.ullist_t {
    
}
.ullist_t li {
    margin-bottom: 10px;
}
.ullist_t li a {
    line-height: 1.4;
    font-weight: bold;
    font-size: 16px;
}
.ullist_t_inner {
    margin-bottom: 30px;
}
.ullist_t_inner li {
    margin-bottom: 10px;
    line-height: 1.4;
}
.ullist_t_inner li a {    
    font-weight: normal;
    font-size: 13px;
    padding-left: 12px;
    background: url(../image/icon/arrow1_b.svg) no-repeat left center / 5px auto;
}
.footer_menu_m {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 30px 0 20px;
    margin-bottom: 40px;
}
.ullist_m {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.ullist_m li {
    line-height: 1.4;
    margin-right: 25px;    
    margin-bottom: 10px;
}
.ullist_m li a {
    font-size: 13px;
}
.footer_menu_b {
    
}
.ullist_b {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.ullist_b li {
    line-height: 1.4;
    margin-right: 30px;
}
.ullist_b li a {
    font-size: 13px;
    font-weight: bold;
    padding-right: 17px;
    background: url(../image/icon/window.svg) no-repeat right center / 13px auto;
}
.footer_logo_wrap {
    width: 30%;
    background-color: #efefef;
    padding: 80px 0 80px 60px;
}
.footer_logo {
    margin-bottom: 20px;
}
.footer_logo img {
    width: 240px;
}
.footer_logo_sub {
    font-family: alternate-gothic-no-1-d, sans-serif;
    font-size: 20px;
    margin-bottom: 40px;
}

.footer_sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 15px;
}
.footer_sns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer_sns ul li {
    margin-right: 30px;
}
.footer_sns ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-size: 14px;
    background-repeat: no-repeat;
    background-position: left center;
}
.footer_sns ul li a:hover {
    color: #000 !important;
}
.footer_sns ul li a img {
    
}
.footer_youtube {
    width: 25px;
}
.footer_twitter {
    width: 24px;
}
.footer_facebook {
    width: 12px;
}
.footer_instagram {
    width: 20px;
}


.copyright {
    background-color: #000;
    color: #fff;
    text-align: center;
    padding: 15px 0;
}


/*------------------------------------------------------------
	予約ボタン
------------------------------------------------------------*/

#page_modal {
    position: fixed;
    bottom: 40px;
    right: 40px;
    font-size: 77%;
    z-index: 3;
}
.footer_reserve_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 330px;
    height: 60px;
    border-radius: 30px;
    background-color: #fff;
    background-color: #000;
    box-shadow: 0 9px 31px rgba(0,0,0,.03);
}
.footer_reserve_btn span {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    background: url(../image/cal_1_w.svg) no-repeat left center / 24px auto;
    padding-left: 34px;
}

.modal_open_btn_com {
    
}
.modal_open_btn_com img {
    width: 350px;
}
#page_modal a:hover {
     opacity: 0.7;
}
.sbpc {
    
}
.sbsp {
    display: none;
}



#page_modal2 {
    display: none !important;
}



/*------------------------------------------------------------
    メンテナンスモード
------------------------------------------------------------*/
#key_visual_wrap_ex {
    width: 100%;
    height: 100vh;
    position: relative;
    background-color: #fbebaa;
}
.under_construction {
    width: 100%;
    padding: 0 5% 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 100%;
}
.under_construction_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}
.uci_img {
    text-align: center;
    margin-bottom: 30px;
}
.uci_img img {
    height: 36.3vh;
}
.under_construction_inner h1 {
    font-family: dnp-shuei-mgothic-std;
    text-align: center;
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 20px;
    font-weight: bold;
}
.under_construction_inner p {
    text-align: center;
    font-family: dnp-shuei-mgothic-std;
    font-size: 14px;
}
.under_construction_inner p a {
    text-decoration: underline;
}

.p_cont{
    display: none;   
}

.p_cont.is-active {
    display: block; }

.p-box-control .is-active {
    background-color: #fbebaa;
}



/*------------------------------------------------------------
    追加改修
------------------------------------------------------------*/

.bento_indent_wrap {
    text-align: center;
    margin-top: 15px;
    margin-bottom: 15px;
}
.bento_indent {
    position: relative;
    display: inline-block;
    padding: 0 65px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}
.bento_indent:before,
.bento_indent:after {
    position: absolute;
    top: calc(50% - 3px);
    width: 50px;
    height: 4px;
    content: '';
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
}
.bento_indent:before {
    left: 0;
}
.bento_indent:after {
    right: 0;
}

.bento_menu {
    margin-bottom: 80px;
}
.sec_bento_image {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.bento_image {
    width: 18%;
}
.bento_image img {
    width: 100%;
    border: 1px solid #f2f1f1;
}

.organicginger {
    text-align: center;
    margin-top: 40px;
    margin-bottom: 10px;
}
.organicginger img {
    max-width: 400px;
}

.sec_tpt {
    background-color: #f8f8f8;
    padding: 35px 40px 35px;
}
.tpt_detail_wrap {
    display: flex;
    flex-wrap: wrap;
    margin-right: -2%;
}
.tpt_detail {
    display: flex;
    width: 31.3333%;
    margin-right: 2%;
    justify-content: space-between;
}
.tpt_ico {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tpt_ico img {
    width: 100%;
}
.tpt_cont {
    width: 75%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.tpt_ttl {
    font-size: 14px;
    line-height: 1.6;
    font-weight: bold;
    margin-bottom: 5px;
}
.tpt_txt {
    font-size: 13px;
    line-height: 1.6;
}

.training_flow {
    display: flex;
    justify-content: space-between;
}
.flow_title {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background-color: #fff;
    font-weight: bold;
    font-size: 16px;
    width: 7%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e5e5e5;
    min-height: 200px;
    flex-direction: column-reverse;
    padding: 20px 10px;
}
.flow_title span {
    font-size: 11px;
    font-weight: normal;
}
.flow_arrow {
    width: 6%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.flow_arrow img {
    width: 30%;
}

.fee_ttl {
    position: relative;
    padding: 0 65px;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 30px;
}
.fee_ttl:before {
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    width: 100%;
    height: 1px;
    content: '';
    background: #000;
}
.fee_ttl span {
    position: relative;
    padding: 0 1em;
    background: #fff;
}
.sec_fee_wrap {

}

.price_table_ttl_wrap2 {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.fee_sup {
    font-size: 13px;
}

.price_subheading {
    margin-bottom: 20px;
    margin-top: 50px;
}
.price_subheading h3 {
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    padding: 3px 0 3px 10px;
    border-left: 6px double #000;
    text-align: left;
}
















