@charset "utf-8";

/*common*/
.pc-only { display: block!important; }
.sp-only { display: none!important; }

section, main { position: relative; display: block; }
body { width: 100%; overflow-x: hidden; }

img { max-width: 100%; }

.mt10 { margin-top: 10px!important; }
.mt20 { margin-top: 20px!important; }
.mt30 { margin-top: 30px!important; }
.mt40 { margin-top: 40px!important; }
.mt50 { margin-top: 50px!important; }
.mt60 { margin-top: 60px!important; }
.mt70 { margin-top: 70px!important; }
.mt80 { margin-top: 80px!important; }
.mt90 { margin-top: 90px!important; }
.mt100 { margin-top: 100px!important; }

.txt_c { text-align: center; }

@media screen and (max-width: 900px) {
	.pc-only { display: none!important; }
	.sp-only { display: block!important; }

    .mt10 { margin-top: 10px!important; }
    .mt20 { margin-top: 10px!important; }
    .mt30 { margin-top: 20px!important; }
    .mt40 { margin-top: 30px!important; }
    .mt50 { margin-top: 30px!important; }
    .mt60 { margin-top: 40px!important; }
    .mt70 { margin-top: 40px!important; }
    .mt80 { margin-top: 50px!important; }
    .mt90 { margin-top: 50px!important; }
    .mt100 { margin-top: 50px!important; }
}

/*loading*/
body #loading { background: #fff; display: block; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 100010; pointer-events: none; -webkit-transition: opacity 1.5s cubic-bezier(0.16, 1, 0.3, 1) 0.5s; transition: opacity 1.5s cubic-bezier(0.16, 1, 0.3, 1) 0.5s; }

body #loading.is-animation { opacity: 0; }


/*fade*/
.js-scroll-fade:not(.top_about_ph):not(.hd_anime) { opacity: 0; }
.isActive:not(.top_about_ph):not(.hd_anime) {
    -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-animation-duration: 1.8s;
    animation-duration: 1.8s;
    -webkit-animation-name: fadeUp;
    animation-name: fadeUp;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
@-webkit-keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;trfooter_logo_setansform:none}
}
@keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;transform:none}
}

/*navi*/
header { justify-content: space-between; width: 100%; background: #fff; border-radius: 0 0 50px 50px; position: fixed; top: 0; right: 0; box-shadow: 0 0 10px rgba(236,191,191); z-index: 10001; }
header.is-active { border-radius: 0; }
header > .inner { display: flex; align-items: center; width: 100%; height: 100px; padding: 0 3.85%; justify-content: space-between; box-sizing: border-box; }

.header_logo { width: 26.8rem; display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; line-height: 1; z-index: 4; }
.header_logo img{ width: 100%; line-height: 0; }

.main_nav { display: flex; justify-content: flex-end; align-items: center; width: 100%; margin-right: 20px; }
.main_nav li { padding: 39px 0; font-size: 1.5rem; line-height: 1.35; margin: 0 calc(17 / 1568 * 100vw); }

.global_nav { display: flex; align-items: center; }
.op_global_nav { display: none; }
.btn_fix_reservation { display: flex; justify-content: center; align-items: center; width: 20.0rem; height: 4.0rem; background: #E3808F; z-index: 100; text-align: center; box-sizing: border-box; border-radius: 30px; box-shadow: 0 3px 10px rgba(236, 191, 191, 1); cursor: pointer; }
/*.btn_fix_reservation > .inner { width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
.btn_fix_reservation .ico { display: inline-block; width: 15px; text-align: center; line-height: 1.5; }
.btn_fix_reservation .txt { display: inline-block; color: #fff; line-height: 1.2; margin-left: 5px; font-size: 1.3rem; }

.has-mega > .ico { display: inline-block; width: 1.4rem; height: 1.2rem; margin-left: 0.5rem; position: relative; line-height: 0.7; }
/*.has-mega > .ico:before { content: ""; display: block; width: 1.2rem; height: 2px; transform: translate(-50%,-50%); position: absolute; top: 50%; left: 50%;background: #E3808F; }
.has-mega > .ico:after { content: ""; display: block; width: 1.2rem; height: 2px; transform: translate(-50%,-50%) rotate(90deg); position: absolute; top: 50%; left: 50%;background: #E3808F; }*/

/* --- メガメニュー本体のスタイル --- */
.mega-menu {
  position: absolute;
  top: 100%; /* ヘッダーの真下に配置 */
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  background: #F9F7F4;
  box-shadow: 0 5px 5px rgba(236,191,191,0.5);
  padding: 40px 40px;
  box-sizing: border-box;
  z-index: -1;
  border-radius: 0 0 50px 50px;
  border-top: 1px solid #eee;
  
  /* 初期状態は非表示（JSで制御するため） */
  display: none; 
}

.mega-menu > .inner { max-width: 800px; width: 100%; margin: 0 auto; display: flex; justify-content: space-between; }
.mega_menu .set01 { width:62%; display: flex; justify-content: space-between; flex-wrap: wrap; }
.mega_menu .set02 { width:31%; }
.mega_menu .set01 .item { width: 50%; }
.mega_menu .item { position: relative; }
.mega_menu .set01 .hd { width: 100%; }
.mega_menu .hd { border-bottom: 1px solid #ccc; margin-bottom: 20px; padding-bottom: 10px; }
.mega_menu .hd span { color: #E3808F; }
.mega_menu .ico { display: inline-block; width: 1.5rem; margin-right: 8px; line-height: 1; }
.mega_menu .item .link a { display: block; padding: 0 5px; line-height: 1.5; border-radius: 5px; }
.mega_menu .item .link + .link a { margin-top: 10px; }
.mega-menu .arrow_link_ico { fill: #E3808F; }
.mega_clinic > .inner { max-width: 800px; width: 100%; margin: 0 auto; display: flex; justify-content: center; }
.mega_clinic > .inner .item { width: 50%; }
.mega_clinic > .inner .item a { display: flex; align-items: center; }
.mega_clinic > .inner .item .ph { width: 35%; margin-right: 20px; }
.mega_clinic > .inner .item .ico { display: inline-block; width: 1.5rem; margin-right: 8px; line-height: 1; }
.mega_about > .inner { max-width: 1600px; width: 100%; margin: 0 auto; display: flex; justify-content: center; }
.mega_about > .inner .item { width: 50%; }
.mega_about > .inner .item a { display: flex; align-items: center; }
.mega_about > .inner .item .ph { width: 35%; margin-right: 20px; }
.mega_about > .inner .item .ph img { border-radius: 1.0rem; }
.mega_about > .inner .item .ico { display: inline-block; width: 1.5rem; margin-right: 8px; line-height: 1; }

.op_reservation { opacity: 0; pointer-events: none; width: 90%; padding: 5%; max-height: 80vh; border-radius: 5.0rem; box-sizing: border-box; position: fixed; transform: translate(-50%,-50%); top: 50%; left: 50%; background: #fff; z-index: 10002; transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
body.open_reservation .op_reservation { opacity: 1; pointer-events: visible; }
.op_reservation_bg { opacity: 0; pointer-events: none; width: 100%; height: 100%; background: rgba(255,255,255,0.8) url("../img/footer_bg.png") no-repeat center / cover; position: fixed; top: 0; left: 0; z-index: 10001; transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
body.open_reservation .op_reservation_bg { opacity: 1; pointer-events: visible; }
.op_reservation .reservation_list { margin-top: 0; }
.op_reservation .map,
.op_reservation .ph { display: none; }
.op_reservation .reservation_list_item { text-align: center; }
.op_reservation .reservation_list_item .tel { font-size: 2.4rem; margin: 0 auto; }
.op_reservation .reservation_list_item .txt { width: 100%; }
.op_reservation .reservation_list_item .name { font-size: 2.4rem; color: #E3808F; }

.btn_close_reservation { display: block; width: 5.0rem; height: 5.0rem; z-index: 10001; background: #fff; border-radius: 50%; position: fixed;top: -3.0rem; right: 0; transform: translateY(-100%); }
.btn_close_reservation > .inner { width: 1.8rem; z-index: 2; position: absolute; transform: translate(-50%,-50%); top: 50%; left: 50%; }
.btn_close_reservation .line { display: block; position: relative; width: 1.8rem; height: 11px; }
.btn_close_reservation .line span {content: ""; width: 1.8rem; height: 1px; display: block; -webkit-transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); position: absolute; }
.btn_close_reservation .line span:nth-child(2){ left: 0; bottom: 0; background:#475D6D; }
.btn_close_reservation .line span:nth-child(1){ left: 0; top: 0; background:#475D6D; }
body.open_reservation .btn_close_reservation .line span:nth-child(2){ width: 1.8rem; transform: rotate(45deg); top: 50%; }
body.open_reservation .btn_close_reservation .line span:nth-child(1){ width: 1.8rem; transform: rotate(-45deg); top: 50%; }


@media screen and (max-width: 1100px) {
    .main_nav li { font-size: 1.3rem; line-height: 1.35; margin-left: calc(28 / 1568 * 100vw); }
}

@media screen and (max-width: 1024px) {
    .header_logo { width: 180px; display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; line-height: 1; z-index: 4; }

    header { justify-content: space-between; width: 100%; padding: 0; -webkit-transition: all 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    
    .op_global_nav > .inner { width: 86.66%; min-width: 700px; margin: 147px auto; }
}

@media screen and (max-width: 900px) {
    header { justify-content: space-between; width: 100%; background: none; border-radius: 0; position: relative; top: 0; right: 0; box-shadow: none; z-index: auto; }
    header > .inner { display: flex; align-items: center; width: 100%; height: auto; padding: 0 0 0 3.85%; justify-content: space-between; box-sizing: border-box; }
    
    .header_logo,
    .nav_logo { width: 165px; margin-top: 25px; display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; z-index: 9999; line-height: 1; }
    .nav_logo { position: absolute; left: 4.80%; top: 0; }

    .main_nav, .lang_nav { display: none; }
    .global_nav_list { display: block; }
    .global_nav_item:not(.last) { width: auto; display: flex; margin-bottom: 27px; }
    .global_nav_item.last { width: auto; }
    .global_nav_item.last .item {  display: flex; }
    .global_nav_list .list { margin-left: 20px; }
    .global_nav_item:not(.last) .ttl { min-width: 74px; font-size: 1.5rem; line-height: 1.2; text-align: right; color: #B7282E; margin-bottom: 0; margin-top: 8px; }
    .global_nav_item.last .ttl { min-width: 74px; font-size: 1.5rem; line-height: 1.2; text-align: right; color: #B7282E; margin-top: 8px; }
    .single_link { margin-bottom: 29px; margin-left: 20px; font-size: 1.6rem; }
    .top_nav { font-size: 1.6rem; }
    .top_nav li + li { margin-top: 17px; }
    .global_nav_item .hd { font-size: 1.2rem; color: #B3B3B3; margin: 26px 0 8px; }
.global_nav_item .sub_nav { font-size: 1.5rem; margin-left: 8px; }
.global_nav_item .sub_nav a:before { content: "-"; display: inline-block; padding-right: 5px; }
    
    .btn_humberger_box { display: block; width: 50px; height: 50px; z-index: 10001; background: #fff; border-radius: 50%; position: fixed; top: 2.5rem; right: 2.56%; }
    .btn_humberger { width: 18px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 2; }
    .btn_humberger .line { display: block; position: relative; width: 15px; height: 11px; }
    .btn_humberger .line span {content: ""; width: 18px; height: 1px; display: block; -webkit-transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); position: absolute; }
    .btn_humberger .line span:nth-child(2){ left: 0; bottom: 0; background:#E3808F; }
    .btn_humberger .line span:nth-child(1){ left: 0; top: 0; background:#B3C500; }
    .btn_humberger .line span:nth-child(3){ left: 0; top: 5px; background:#E3CE4C; }
    body.open .btn_humberger .line span:nth-child(2){ width: 18px; transform: rotate(45deg); top: 50%; }
    body.open .btn_humberger .line span:nth-child(1){ width: 18px; transform: rotate(-45deg); top: 50%; }
    body.open .btn_humberger .line span:nth-child(3) { opacity: 0; }
    
    .op_global_nav { display: block; opacity: 0; pointer-events: none; width: 100%; height: 100vh; position: fixed; z-index: 10000; top: 0; left: 0; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); background: #fff url("../img/footer_bg.png") no-repeat center / cover; overflow-y: scroll; scrollbar-width: none; -ms-overflow-style: none; }
    body.open .op_global_nav { opacity: 1; pointer-events: visible; }
    .op_global_nav::-webkit-scrollbar { display: none; }
    .op_global_nav > .inner { width: 86.66%; min-width: auto; margin: 83px auto 0; padding-bottom: 41px; }
    .sp_main_nav { font-size: 1.6rem; }
    .sp_main_nav > li { border-bottom: 1px solid #ccc; }
    .sp_main_nav > li > a,
    .sub_menu_trigger { display: block; padding: 1.5rem 0; position: relative; }
    .sp_main_nav .arrow { display: block; width: 3.0rem; height: 3.0rem; border-radius: 50%; background: #E3808F; position: absolute; top: 50%; right: 0; transform: translate(0,-50%); }
    .sp_main_nav .arrow svg { width: 1.5rem; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
    .sp_main_nav .ico { display: block; width: 1.5rem; height: 1.5rem; position: absolute; top: 50%; right: 0.8rem; transform: translate(0,-50%); line-height: 0.8; }
    /*.sp_main_nav .ico:before { content: ""; display: block; width: 1.5rem; height: 2px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); background: #fff; }
    .sp_main_nav .ico:after { content: ""; display: block; width: 1.5rem; height: 2px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%) rotate(90deg); background: #fff; }*/
    
    .sp_main_nav .sub_menu,
    .sp_main_nav .sub_menu_clinic { display: none; margin: 0 0 2.0rem 2.0rem; }
    .sp_main_nav .sub_menu .hd { margin: 10px 0; }
    .sp_main_nav .sub_menu .item + .hd { margin-top: 30px; }
    .sp_main_nav .sub_menu .item { display: flex; }
    .sp_main_nav .sub_menu .item .item_set { width: 50%; }
    .sp_main_nav .item a { display: block; padding: 3px 0 3px 2.0rem; position: relative; }
    .sp_main_nav .item a:before { content: ""; display: block; width: 1.1rem; height: 1.1rem; border-radius: 50%; position: absolute; left: 0; top: 50%; transform: translateY(-50%); background: #E3808F; }
    .sp_main_nav .sub_menu .hd { font-size: 1.4rem; color: #999; }
    
    .sub_menu_clinic { margin: 0 0 2.0rem 2.0rem; }
    
    .btn_nav_reservation { display: flex; justify-content: center; align-items: center; width: 100%; height: 7.0rem; margin-top: 3.5rem; background: #E3808F; z-index: 100; text-align: center; box-sizing: border-box; border-radius: 30px; box-shadow: 0 3px 10px rgba(236, 191, 191, 1); }
    .btn_nav_reservation .ico { display: inline-block; width: 2.0rem; margin: 1.0rem; }
    .btn_nav_reservation .txt { font-size: 1.8rem; color: #fff; }
    
    .btn_fix_reservation { display: flex; justify-content: center; align-items: center; width: 12.0rem; height: 12.0rem; margin-top: 3.5rem; background: #E3808F; z-index: 100; text-align: center; box-sizing: border-box; border-radius: 12.0rem; box-shadow: 0 3px 10px rgba(236, 191, 191, 1); position: fixed; bottom: 3.0rem; right: 3.0rem; }
    .btn_fix_reservation > .inner { width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
    .btn_fix_reservation .ico { display: block; margin: 0 auto 1.0rem; }
    .btn_fix_reservation .txt { font-size: 1.8rem; }

    .op_reservation { width: 90%; padding: 5.0rem 5%; max-height: 80vh; border-radius: 5.0rem; box-sizing: border-box; position: fixed; transform: translate(-50%,-50%); top: 50%; left: 50%; background: #fff; z-index: 10002; }
    body.open_reservation .op_reservation { }
.op_reservation_bg { width: 100%; height: 100%; background: rgba(255,255,255,0.8) url("../img/footer_bg.png") no-repeat center / cover; position: fixed; top: 0; left: 0; z-index: 10001; }
.op_reservation .reservation_list { margin-top: 0; }
    .op_reservation .map,
    .op_reservation .ph { display: none; }
    .op_reservation .reservation_list_item { text-align: center; }
    .op_reservation .reservation_list_item .tel { font-size: 2.4rem; margin: 0 auto; }
    .op_reservation .reservation_list_item .txt { width: 100%; }
    .op_reservation .reservation_list_item .name { font-size: 2.4rem; color: #E3808F; }

.btn_close_reservation { display: block; width: 5.0rem; height: 5.0rem; z-index: 10001; background: #fff; border-radius: 50%; position: fixed;top: -3.0rem; right: 0; transform: translateY(-100%); }
.btn_close_reservation > .inner { width: 1.8rem; z-index: 2; position: absolute; transform: translate(-50%,-50%); top: 50%; left: 50%; }
.btn_close_reservation .line { display: block; position: relative; width: 1.8rem; height: 11px; }
.btn_close_reservation .line span {content: ""; width: 1.8rem; height: 1px; display: block; -webkit-transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.2s cubic-bezier(0.36, 0.14, 0, 1); position: absolute; }
.btn_close_reservation .line span:nth-child(2){ left: 0; bottom: 0; background:#475D6D; }
.btn_close_reservation .line span:nth-child(1){ left: 0; top: 0; background:#475D6D; }
body.open_reservation .btn_close_reservation .line span:nth-child(2){ width: 1.8rem; transform: rotate(45deg); top: 50%; }
body.open_reservation .btn_close_reservation .line span:nth-child(1){ width: 1.8rem; transform: rotate(-45deg); top: 50%; }
}

/*common*/
main { margin-top: 145px; }

.anchor_link .arrow { display: inline-block; width: 12px; height: 12px; margin-left: 7px; background: url("../img/arrow_link.svg") no-repeat center / contain; -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.arrow_link_ico { fill: #fff;stroke-width: 0px; }
.reservation_btn_detail .arrow_link_ico { fill: #475D6D; }

.video-container {
  width: 100%;       /* 横幅いっぱいに広げる（最大幅を制限したい場合は max-width を指定） */
  max-width: 800px;  /* 必要に応じて好みの最大幅を設定 */
  margin: 30px auto;    /* 中央寄せ */
}

.video-container iframe {
  width: 100%;       /* 親要素の幅に合わせる */
  height: auto;      /* 高さは自動計算 */
  aspect-ratio: 16 / 9; /* 縦横比を16:9に固定 */
}

.ph_c { text-align: center; }

@media screen and (max-width: 900px) {
    main { margin-top: 40px; }
}

/*top*/
.bg_wrapper { width: 100%; height: 100vh; background: url("../img/top_bg_header@pc.png") no-repeat center / cover; position: fixed; top: 0; left: 0; z-index: -1; }
.top_main_copy { display: flex; flex-direction: row-reverse; justify-content: flex-end; margin-top: 45px; }
.top_main_copy .catch { font-size: 6.0rem; line-height: 1.3; margin-left: 8.92%; }
.top_main_copy .read { font-size: 1.8rem; line-height: 1.5; margin-top: 20px; margin-left: 35px; }
.top_main_copy .read span { font-size: 3.8rem; line-height: 1.5; }
.top_main_slide { margin-top: 35px; }
.top_main_slide .swiper-wrapper { border-radius: 500px 0 0 500px; overflow: hidden; }
.top_main_slide .swiper-slide img { width: 100%; height: 700px; object-fit: cover; }

.top_topics { width: 80%; margin: 0 auto; padding: 1.0rem 3.0rem; box-sizing: border-box; background: #F9F7F4; border: 3px solid #fff; border-radius: 3.0rem; font-size: 1.6rem; }
.top_topics a { display: grid; grid-template-columns: 7em 1fr; }

.top_concept > .inner { display: flex; align-items: flex-start; width: 100%; margin-top: 150px; }
.top_concept_ph { width: 48.35%; border-radius: 0 500px 500px 0; overflow: hidden; }
.top_concept_txt { width: 40.00%; margin-left: 5%; }
.top_concept_txt .read { font-size: 3.5rem; line-height: 1.5; margin-left: -100px; }
.top_concept_txt p { font-size: 2.3rem; line-height: 1.7; margin: 50px 0 0; }
.link_more { text-align: right; margin-top: 30px; }
.link_more a { display: flex; justify-content: flex-end; align-items: center; font-size: 1.6rem; }
.link_more .ico { display: block; width: 50px; height: 50px; margin-left: 10px; border: 5px solid #F1B9B9; background: #E3808F; border-radius: 50%; box-sizing: border-box; position: relative; }
.link_more .ico svg,
.common_subject .ico svg { width: 15px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.reservation_btn_detail .ico svg,
.reservation_btn_reservation .ico svg { width: 15px; position: absolute; top: 50%; right: 20px; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.top_common_head { text-align: center; }
.top_common_head .hd { font-size: 1.6rem; color: #A8A8A8; }
.top_common_head .ttl { font-size: 3.0rem; line-height: 1.5; color: #E3808F; position: relative; margin-top: 25px; }
.top_common_head .ttl:before { content: ""; display: block; width: 10px; height: 10px; border-radius: 50%; background: #E3808F; position: absolute; top: -15px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.top_common_head .read { font-size: 1.6rem; margin-top: 10px; }

.top_point { margin-top: 50px; }
.top_point_body { width: 71.42%; min-width: 800px; margin: 50px auto 0; display: flex; justify-content: space-between; }
.top_point_body a { width: 31%; text-align: center; position: relative; }
.top_point_body .ph { border: 15px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50%; }
.top_point_body .ph img { border-radius: 50%; }
.top_point_item .num { border-radius: 50%; width: 45px; height: 45px; position: absolute; top: -20px; left: calc(50% - 16px); }
.top_point_item .num span { font-size: 2.0rem; line-height: 0; color: #fff; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.top_point_item:nth-child(1) .num { background: #B3C500; }
.top_point_item:nth-child(2) .num { background: #E98195; }
.top_point_item:nth-child(3) .num { background: #E3CE4C; }
.top_point_item .copy { font-size: 2.0rem; line-height: 1.5; margin-top: 25px;}
.top_point_item .arrow { display: block; background: #E3808F; width: 30px; height: 30px; border-radius: 50%; margin: 15px auto 0; position: relative; overflow: hidden; }
.top_point_item .arrow svg { width: 15px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.top_point_item .arrow .arrow_wh { fill: #fff; stroke-width: 0px; }

.top_menu { margin-top: 100px; background:linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 100px 0; border-radius: 200px 0 0 0; }
.top_menu > .inner { width: 71.42%; min-width: 978px; margin: 0 auto; }
.tab_menu { display: flex; justify-content: center; margin: 50px 0; border-bottom: 1px solid #475D6D; }
.tab_menu_item { font-size: 1.8rem; background: #475D6D; color: #fff; padding: 10px 0; text-align: center; width: 200px; line-height: 1.5; cursor: pointer; }
.tab_menu_item:first-child { border-radius: 10px 0 0; }
.tab_menu_item:last-child { border-radius: 0 10px 0 0; }
.tab_menu_item + .tab_menu_item { margin-left: 10px; }
.tab_menu_item.active { background: #E3808F; }
.tab_body_item { display: none; }
.tab_body_item.show { display: block; }
.tab_body_item .menu_basic_body { width: 100%; } 
.common_menu_pickup { display: flex; justify-content: space-between; }
.common_menu_pickup .common_menu_item { width: 19%; position: relative; }
.common_menu_pickup .circle { padding-bottom: calc(100% - 20px); background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50%; position: relative; box-sizing: border-box; }
.common_menu_pickup .circle .num { font-size: 5.0rem; position: absolute; top: 0; left: 0; line-height: 0; -webkit-transform: translateX(-10px); transform: translateX(-10px); }
.common_menu_pickup .circle .name { font-size: 1.6rem; line-height: 1.5; text-align: center; width: 100%; position: absolute; top: 55%; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }
.common_menu_pickup .circle .arrow { width: 20px; position: absolute; bottom: 0; left: 50%; transform: translate(-50%, -100%); }
.common_menu_pickup .circle .ico { width: 5.0rem; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-100%); transform: translate(-50%,-100%); }
.common_menu_pickup .circle .ico._datsumo { width: 7.5rem; }
.common_menu_pickup .circle .ico._wakiga { width: 5.3rem; }

.common_menu { width: 71.42%; min-width: 978px; margin: 125px auto 0; }
.common_menu .ttl { font-size: 3.0rem; color: #D48080; margin-bottom: 30px; text-align: center;}

.common_menu_list { display: flex; flex-wrap: wrap; align-items: baseline; }
.common_menu_list { margin-top: 20px; }
.common_menu_list .common_menu_item { width: 19%; height: 65px; margin: 20px 0 0 1.25%; padding: 10px; font-size: 1.6rem; line-height: 1.25; text-align: left; background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50px; box-sizing: border-box; position: relative; }
.common_menu_list .common_menu_item:nth-child(5n+1) { margin-left: 0;}
.common_menu_list .common_menu_item .name { width: calc(100% - 3em); position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
/*.common_menu_list .common_menu_item > span { display: block; position: absolute; top: 50%; left: 0; width: 100%; padding: 0 30px 0 15px; box-sizing: border-box; -webkit-transform: translate(0,-50%); transform: translate(0,-50%); }*/
.common_menu_list .arrow { display: block; width: 20px; position: absolute; top: 50%; right: 15px; -webkit-transform: translateY(-50%); transform: translateY(-50%); line-height: 0; }

.familia-calendar { margin-top: 30px!important; }

.category_menu_box { display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 5%; }
.category_menu_item { margin-bottom: 50px; }
.category_menu_item:nth-child(3n + 1) { margin-left: 0; }
.category_menu_item .common_menu_item { display: block; width: 100%; margin: 0 0 0 1.25%; padding: 15px 10px; font-size: 1.6rem; line-height: 1.25; text-align: left; box-sizing: border-box; position: relative; border-bottom: 1px solid #ccc; }
.category_menu_item .common_menu_item .name { width: calc(100% - 3em); position: relative; }
.category_menu_item .arrow { display: block; width: 20px; position: absolute; top: 50%; right: 5px; -webkit-transform: translateY(-50%); transform: translateY(-50%); line-height: 0; }
.category_menu_box .category_name { font-size: 1.6rem; color: #E3808F; padding-bottom: 10px; text-align: center; border-bottom: 1px solid #ccc; }

.top_column { margin-top: 100px; background:linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 100px 0; border-radius: 0 200px 0 0; }
.top_column > .inner { width: 71.42%; min-width: 800px; margin: 0 auto; }
.top_column_body { display: flex; flex-wrap: wrap; margin: 70px 0 50px; }
.top_column_body .column_item { width: 31.5%; margin-left: 2.75%; margin-bottom: 50px; }
.top_column_body .column_item:nth-child(3n + 1) { margin-left: 0; }
.column_item .ph { position: relative; border-radius: 15px; overflow: hidden; }
.column_item .ph img { aspect-ratio: 3 / 2; width: 100%; object-fit: cover; }
.column_item .meta { font-size: 1.2rem; margin-top: 15px; }
.column_item .meta .cat { margin-left: 10px;}
.column_item .ttl { font-size: 1.6rem; margin-top: 5px; line-height: 1.5; }

.top_news { margin-top: 100px; }
.top_news > .inner { width: 71.42%; min-width: 700px; background: linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 100px 50px 0; margin: 0 auto; border-radius: 50px; }
.top_news_body { max-width: 800px; margin: 50px auto 0; border-top: 1px solid #ccc; }
.news_item { display: flex; border-bottom: 1px solid #ccc; padding: 20px 0; }
.news_item .meta { font-size: 1.2rem; width: 10em; }
.news_item .date { width: 7em; font-size: 1.2rem; }
.news_item .meta .cat { }
.news_item .meta .type span { display: inline-block; margin-right: 1em;}
.news_item .meta .oroshimachi { color: #B3C500; }
.news_item .meta .nagamachi { color: #E3CE4C; }
.news_item .ttl { font-size: 1.6rem; line-height: 1.5; }

.common_reservation { margin-top: 150px; background: rgba(255,255,255,1); padding: 100px 0; }
.common_reservation > .inner { width: 71.42%; min-width: 848px; margin: 0 auto; }
.reservation_list { display: flex; justify-content: center; margin-top: 50px; }
.reservation_list_item { width: 48%; }
.reservation_list_item + .reservation_list_item { margin-left: 4%; }
.reservation_list_item .data { display: flex; justify-content: space-between; }
.reservation_list_item .ph { width: 48.00%; }
.reservation_list_item .txt { width: 48.00%; }
.reservation_list_item .name { font-size: 1.9rem; line-height: 1.5; }
.reservation_list_item .address { font-size: 1.4rem; line-height: 1.5; margin-top: 5px; }
.reservation_list_item .tel { font-size: 1.8rem; margin-top: 15px; display: inline-block; border-bottom: 1px solid #E3808F; }
.reservation_list_item .tel span { font-size: 1.2rem; }
.reservation_list_item .map { margin-top: 10px; }
.reservation_list_item .map a { font-size: 1.6rem; display: flex; justify-content: flex-end; align-items: center; }
.reservation_list_item .map .ico { width: 40px; height: 40px; margin-left: 10px; border-radius: 50%; background: #E3808F; border: 5px solid #F1B9B9; position: relative; }
.reservation_list_item .map .ico img { width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.reservation_list_item .calender { margin-top: 30px; }
.reservation_list_item .calender table { border-collapse: separate; border-spacing: 0; border: 1px solid #475D6D; border-radius: 10px; width: 100%; }
.reservation_list_item .calender table th, .reservation_list_item .calender table td { font-size: 1.4rem; padding: 7px 0; border-bottom: 1px solid #475D6D; border-right: 1px solid #475D6D; line-height: 1.25; vertical-align: middle;}
.reservation_list_item .calender table th { padding: 7px; text-align: center; }
.reservation_list_item .calender table td { width: 10%; text-align: center; box-sizing: border-box; }
.reservation_list_item .calender table tbody td { height: 50px; }
.reservation_list_item .calender table td:last-child { border-right: none; }
.reservation_list_item .calender table tbody tr:last-child th, .reservation_list_item .calender table tbody tr:last-child td { border-bottom: none; } 
.notes { font-size: 1.2rem; margin-top: 10px; }
.reservation_list_item .calender .cl_pink { color: #E3808F; }
.reservation_list_item .calender_notes { font-size: 1.2rem; margin-top: 5px; }
.reservation_list_item .function { display: flex; justify-content: space-between; margin-top: 30px; }
.reservation_list_item .function a { width: 48%; text-align: left; border-radius: 30px; padding: 10px 20px; font-size: 1.6rem; box-sizing: border-box; }
.reservation_list_item .function .reservation_btn_detail { background: #F9F7F4; color: #475D6D; }
.reservation_list_item .function .reservation_btn_reservation { background: #E3808F; color: #fff; }
.reservation_list_item .document { display: grid; grid-template-columns: 7em 1fr; grid-gap: 1em; margin-top: 2.5rem; text-align: left; }
.reservation_list_item .document .hd { font-size: 1.4rem; color: #999; }
.reservation_list_item .document a { display: inline-block; font-size: 1.4rem; margin-right: 1em; }

.contents_footer { background: rgba(255,255,255,1);  }
.contents_footer_ph01 { width: 42.85%; border-radius: 0 500px 500px 0; overflow: hidden; }
.contents_footer_ph02 { margin: -17.5% 0 0 39.29%; border-radius: 500px 0 0 500px; overflow: hidden; }

footer { background: rgba(255,255,255,1); display: flex; position: relative; }
.footer_data { width: 35%; margin-top: -50px; background: url("../img/footer_bg.png") no-repeat center / cover; box-sizing: border-box; border-radius: 0 50px 0 0; }
.footer_data > .inner { width: 65%; padding: 65px 0 65px 28%; }
.footer_nav { width: 65%; background: #F9F7F4; }
.footer_nav > .inner { padding: 65px 10%; display: flex; justify-content: space-between; }

.footer_data .logo { max-width: 268px; margin-bottom: 50px; }
.footer_data_clinic { margin-top: 30px; }
.footer_data .name { font-size: 1.6rem; display: flex; }
.footer_data address { font-size: 1.2rem; line-height: 1.5; margin-top: 5px; }
.footer_data .tel { font-size: 1.2rem; margin-top: 15px; }
.footer_data .map { display: inline-block; width: 30px; height: 30px; margin-left: 10px; background: #E3808F; border-radius: 50%; position: relative; }
.footer_data .map .ico { width: 8px; line-height: 0; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.footer_data .sns { display: flex; margin-top: 50px; }
.footer_data .sns li { width: 30px; margin-right: 20px; }
.footer_copyrights { font-size: 1.4rem; position: absolute; left: 4%; bottom: 30px; -webkit-transform: rotate(90deg) translateX(-100%); transform: rotate(90deg) translateX(-100%); transform-origin:top left; }

.footer_nav_item { width: 35%; }
.footer_nav_item:last-child { width: 25%; }
.footer_nav_item .main { font-size: 1.6rem; line-height: 1.5; }
.footer_nav_item a { color: #E3808F; }
.footer_nav_item ul { font-size: 1.6rem; margin-top: 5px; }
.footer_nav_item .hd { font-size: 1.4rem; }
.footer_nav_item .main + .main { margin-top: 10px; }
.footer_nav_item ul + .main { margin-top: 20px; }


@media screen and (max-width: 1024px) {
    .top_main_slide .swiper-slide img { width: 100%; height: 500px; object-fit: cover; }
    
    .top_menu { margin-top: 100px; background:linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 100px 0; border-radius: 100px 0 0 0; }
.top_menu > .inner { width: 71.42%; min-width: 848px; margin: 0 auto; }
.tab_menu { display: flex; justify-content: center; margin: 50px 0; border-bottom: 1px solid #475D6D; }
.tab_menu_item { font-size: 1.8rem; background: #475D6D; color: #fff; padding: 10px 0; text-align: center; width: 200px; line-height: 1.5; }
.tab_menu_item:first-child { border-radius: 10px 0 0; }
.tab_menu_item:last-child { border-radius: 0 10px 0 0; }
.tab_menu_item + .tab_menu_item { margin-left: 10px; }
.tab_menu_item.active { background: #E3808F; }
.common_menu_pickup { display: flex; justify-content: space-between; }
    .common_menu_pickup .common_menu_item { width: 19%; position: relative; }
.common_menu_pickup .circle { padding-bottom: calc(100% - 20px); background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50%; position: relative; box-sizing: border-box; }
    .common_menu_pickup .circle .num { font-size: 3.5rem; position: absolute; top: 0; left: 0; line-height: 0; -webkit-transform: translateX(-10px); transform: translateX(-10px); }
    .common_menu_pickup .circle .name { font-size: 1.6rem; line-height: 1.5; text-align: center; width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }
    .common_menu_pickup .circle .arrow { width: 20px; position: absolute; bottom: 0; left: 50%; transform: translate(-50%, -100%); }
.common_menu_pickup .circle .ico { width: 5.0rem; position: absolute; top: calc(50% - 15px); left: 50%; -webkit-transform: translate(-50%,-100%); transform: translate(-50%,-100%); }
    
    .common_menu { width: 71.42%; min-width: 848px; margin: 125px auto 0; }

.common_menu_list { display: flex; flex-wrap: wrap; }
.common_menu_list { margin-top: 20px; }
    .common_menu_list .common_menu_item { width: 19%; margin-top: 20px; padding: 5px 0; font-size: 1.6rem; text-align: center; background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50px; box-sizing: border-box; position: relative; }
.common_menu_list .arrow { width: 20px; position: absolute; top: 50%; right: 15px; -webkit-transform: translateY(-50%); transform: translateY(-50%); line-height: 0; }
    
    .reservation_list_item .name { font-size: 1.6rem; line-height: 1.5; }
    .reservation_list_item .address { font-size: 1.2rem; line-height: 1.5; margin-top: 5px; }
    .notes { font-size: 1.1rem; }
    
}

@media screen and (max-width: 900px) {
.bg_wrapper { width: 100%; height: 100vh; background: url("../img/top_bg_header@sp.png") no-repeat center / cover; position: fixed; top: 0; left: 0; z-index: -1; }
    .top_main_copy { display: flex; flex-direction: row-reverse; justify-content: flex-end; flex-wrap: wrap; margin-top: 0; position: relative; z-index: 2; }
    .top_main_copy .catch { font-size: 7.69vw; line-height: 1.3; margin-left: 8.92%; margin-top: 10px; }
    .top_main_copy .read { font-size: 3.07vw; line-height: 1.5; margin-top: 0; margin-left: 8.92%; }
    .top_main_copy .read span { font-size: 5.12vw; line-height: 1.5; }
    .top_main_slide { margin-top: -100px; }
    .top_main_slide .swiper-wrapper { border-radius: 500px 500px 0 0; overflow: hidden; }
    .top_main_slide .swiper-slide img { width: 100%; height: 650px; object-fit: cover; }

    .top_topics { width: 82.16%; margin: 0 auto 3.0rem; padding: 1.0rem 3.0rem; box-sizing: border-box; background: #F9F7F4; border: 3px solid #fff; border-radius: 3.0rem; font-size: 1.3rem; }
    .top_topics a { display: grid; grid-template-columns: 7em 1fr; }

    .top_concept > .inner { display: block; width: 100%; margin-top: 5.0rem; }
    .top_concept_ph { width: 86.66%; border-radius: 0 300px 300px 0; overflow: hidden; }
    .top_concept_txt { width: 84.61%; margin: 20px auto 0; }
    .top_concept_txt .read { font-size: 2.4rem; line-height: 1.5; margin: 25px 0 0px; }
    .top_concept_txt p { font-size: 1.6rem; line-height: 1.7; margin: 25px 0 0; }
.link_more { text-align: right; }
.link_more a { display: flex; justify-content: flex-end; align-items: center; font-size: 1.6rem; }
.link_more .ico { display: block; width: 50px; height: 50px; border: 5px solid #F1B9B9; background: #E3808F; border-radius: 50%; box-sizing: border-box; }

.top_common_head { text-align: center; }
.top_common_head .hd { font-size: 1.6rem; color: #A8A8A8; }
    .top_common_head .ttl { font-size: 2.2rem; line-height: 1.5; color: #E3808F; position: relative; margin-top: 25px; }
.top_common_head .ttl:before { content: ""; display: block; width: 10px; height: 10px; border-radius: 50%; background: #E3808F; position: absolute; top: -15px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.top_common_head .read { font-size: 1.6rem; margin-top: 10px; }

.top_point { margin-top: 50px; }
    .top_point_body { width: 84.61%; min-width: auto; margin: 50px auto 0; display: block; }
    .top_point_body a { width: auto; max-width: 450px; margin: 0 auto; display: flex; align-items: center; text-align: left; position: relative; }
    .top_point_body a + a { margin-top: 20px; }
    .top_point_body .ph { width: 20.0rem; border: 10px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50%; }
.top_point_body .ph img { border-radius: 50%; }
    .top_point_body .txt { width: calc(100% - 250px); margin-left: 20px; flex-grow: 2; text-align: left; }
    .top_point_item .num { border-radius: 50%; width: auto; height: auto; position: relative; top: 0; left: 0; background: none!important; }
    .top_point_item .num span { font-size: 2.4rem; line-height: 0; color: #fff; position: relative; top: 0; left: 0; -webkit-transform: translate(0,0); transform: translate(0,0); }
    .top_point_item:nth-child(1) .num span { color: #B3C500; }
    .top_point_item:nth-child(2) .num span { color: #E98195; }
    .top_point_item:nth-child(3) .num span { color: #E3CE4C; }
    .top_point_item .copy { font-size: 2.5rem; line-height: 1.5; margin-top: 0;}
    .top_point_item .arrow { display: none; background: #E3808F; width: 30px; height: 30px; border-radius: 50%; margin: 15px 0 0; }

    .top_menu { margin-top: 10.0rem; background:linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 5.0rem 0; border-radius: 100px 0 0 0; }
    .top_menu > .inner { width: 86.66%; min-width: auto; margin: 0 auto; }
    .tab_menu { display: flex; justify-content: center; margin: 50px -5%; border-bottom: 1px solid #475D6D; }
    .tab_menu_item { font-size: 1.4rem; background: #475D6D; color: #fff; padding: 10px 0; text-align: center; width: 200px; line-height: 1.5; }
.tab_menu_item:first-child { border-radius: 10px 0 0; }
.tab_menu_item:last-child { border-radius: 0 10px 0 0; }
    .tab_menu_item + .tab_menu_item { margin-left: 1px; }
.tab_menu_item.active { background: #E3808F; }
    
    .tab_body { max-width: 600px; margin: 0 auto;}
    .common_menu_pickup {  display: flex; flex-wrap: wrap; justify-content: flex-start; }
    .common_menu_pickup .common_menu_item { width: 47.2%; margin-bottom: 2.0rem; position: relative; }
    .common_menu_pickup .common_menu_item:nth-child(3n+1) { margin-left: 0; }
    .common_menu_pickup .common_menu_item:nth-child(2n) { margin-left: 5.6%; }
    .common_menu_pickup .circle { padding-bottom: calc(100% - 20px); background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50%; position: relative; box-sizing: border-box; }
.common_menu_pickup .circle .num { font-size: 5.0rem; position: absolute; top: 0; left: 0; line-height: 0; -webkit-transform: translateX(-10px); transform: translateX(-10px); }
    .common_menu_pickup .circle .name { font-size: 1.6rem; line-height: 1.5; text-align: center; width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }
    .common_menu_pickup .circle .arrow { width: 2.0rem; position: absolute; bottom: 0; left: 50%; transform: translate(-50%, -100%); }
    .common_menu_pickup .circle .ico { width: 5.0rem; position: absolute; top: calc(50% - 5px); left: 50%; -webkit-transform: translate(-50%,-100%); transform: translate(-50%,-100%); }
    .common_menu_pickup .circle .ico._datsumo { width: 8.0rem; }
    .common_menu_pickup .circle .ico._wakiga { width: 5.3rem; }
    
    .common_menu { width: 86.66%; min-width: auto; margin: 125px auto 0; }

    .common_menu_list { display: flex; flex-wrap: wrap; justify-content: flex-start; }
    .common_menu_list { margin-top: 0; }
    .common_menu_list .common_menu_item { width: 31.2%; margin: 20px 0 0 3.2%; margin-left: 3.2%; padding: 5px 0; font-size: 1.6rem; text-align: center; background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50px; box-sizing: border-box; position: relative; }
    .common_menu_list .common_menu_item:nth-child(5n+1) { margin-left: 3.2%; }
    .common_menu_list .common_menu_item:nth-child(3n+1) { margin-left: 0; }
    .common_menu_list .arrow { width: 2.0rem; position: absolute; top: 50%; right: 15px; -webkit-transform: translateY(-50%); transform: translateY(-50%); line-height: 0; }
    
    .category_menu_box { display: grid; grid-template-columns: repeat(1, 1fr); grid-column-gap: 5%; }
.category_menu_item { margin-bottom: 50px; }
.category_menu_item:nth-child(3n + 1) { margin-left: 0; }
.category_menu_item .common_menu_item { display: block; width: 100%; margin: 0 0 0 1.25%; padding: 15px 10px; font-size: 1.6rem; line-height: 1.25; text-align: left; box-sizing: border-box; position: relative; border-bottom: 1px solid #ccc; }
.category_menu_item .common_menu_item .name { width: calc(100% - 3em); position: relative; }
.category_menu_item .arrow { display: block; width: 20px; position: absolute; top: 50%; right: 5px; -webkit-transform: translateY(-50%); transform: translateY(-50%); line-height: 0; }
.category_menu_box .category_name { font-size: 1.6rem; color: #E3808F; padding-bottom: 10px; text-align: center; border-bottom: 1px solid #ccc; }

    .top_column { margin-top: 0; background:linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 100px 0; border-radius: 0 100px 0 0; }
    .top_column > .inner { width: 86.66%; min-width: auto; margin: 0 auto; }
    .top_column_body { display: flex; flex-direction: column; justify-content: space-between; margin: 70px 0 50px; }
    .top_column_body .column_item { width: 100%; display: flex; }
    .column_item + .column_item { margin-top: 2.0rem; }
    .column_item .ph { width: 40%;aspect-ratio: 3 / 2; position: relative; }
    .column_item .ph img { width: 100%; height: 100%; object-fit: cover;  }
.column_item .ph img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; object-fit: cover; border-radius: 15px; }
.column_item .meta { font-size: 1.2rem; margin-top: 15px; }
.column_item .ttl { font-size: 1.6rem; margin-top: 5px; line-height: 1.5; }
    .column_item .txt { width: 55%; margin-left: 5%;}

    .top_news { margin-top: 0; }
    .top_news > .inner { width: 100%; min-width: auto; background: linear-gradient(180deg, rgba(255,255,255,1) 30%, rgba(255,255,255,0.0)); padding: 50px 6.67% 0; margin: 0 auto; border-radius: 50px; box-sizing: border-box; }
.top_news_body { max-width: 800px; margin: 50px auto 0; border-top: 1px solid #ccc; }
    .news_item { display: flex; flex-wrap: wrap; border-bottom: 1px solid #ccc; padding: 20px 0; }
    .news_item .meta { width: 100%; font-size: 1.2rem; display: flex; }
    .news_item .date { width: 7em; }
    .news_item .cat { width: 20em; font-size: 1.2rem; }
.news_item .meta .type { width: 10em; }
.news_item .meta .oroshimachi { color: #B3C500; }
.news_item .meta .nagamachi { color: #E3CE4C; }
.news_item .ttl { width: 100%; font-size: 1.6rem; line-height: 1.5; }

    .common_reservation { margin-top: 75px; background: rgba(255,255,255,1); padding: 50px 0; }
    .common_reservation > .inner { width: 86.66%; min-width: auto; margin: 0 auto; }
    .reservation_list { display: block; justify-content: space-between; margin-top: 50px; }
    .reservation_list_item { width: auto; }
    .reservation_list_item + .reservation_list_item { margin: 5.0rem 0 0; }
.reservation_list_item .data { display: flex; justify-content: space-between; }
.reservation_list_item .ph { width: 48.00%; }
.reservation_list_item .txt { width: 48.00%; }
    .reservation_list_item .name { font-size: 1.6rem; line-height: 1.5; }
    .reservation_list_item .address { font-size: 1.2rem; line-height: 1.5; margin-top: 5px; }
    .reservation_list_item .tel { font-size: 1.4rem; margin-top: 15px; display: inline-block; border-bottom: 1px solid #E3808F; }
.reservation_list_item .tel span { font-size: 1.2rem; }
.reservation_list_item .map { margin-top: 10px; }
    .reservation_list_item .map a { font-size: 1.4rem; display: flex; justify-content: flex-end; align-items: center; }
.reservation_list_item .map .ico { width: 40px; height: 40px; margin-left: 10px; border-radius: 50%; background: #E3808F; border: 5px solid #F1B9B9; position: relative; }
.reservation_list_item .map .ico img { width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
    .reservation_list_item .calender { display: none;}
.reservation_list_item .calender table { border-collapse: separate; border-spacing: 0; border: 1px solid #475D6D; border-radius: 10px; width: 100%; }
.reservation_list_item .calender table th, .reservation_list_item .calender table td { font-size: 1.4rem; padding: 7px 0; border-bottom: 1px solid #475D6D; border-right: 1px solid #475D6D; line-height: 1.25; vertical-align: middle;}
.reservation_list_item .calender table th { padding: 7px; text-align: center; }
.reservation_list_item .calender table td { width: 10%; text-align: center; box-sizing: border-box; }
.reservation_list_item .calender table tbody td { height: 50px; }
.reservation_list_item .calender table td:last-child { border-right: none; }
.reservation_list_item .calender table tbody tr:last-child th, .reservation_list_item .calender table tbody tr:last-child td { border-bottom: none; } 
.reservation_list_item .calender table .notes { font-size: 1.2rem; }
.reservation_list_item .calender .cl_pink { color: #E3808F; }
.reservation_list_item .calender_notes { font-size: 1.2rem; margin-top: 5px; }
    .reservation_list_item .function { display: flex; justify-content: space-between; margin-top: 30px; }
    .reservation_list_item .function a { width: 49%; text-align: left; border-radius: 30px; padding: 10px 20px; font-size: 1.6rem; box-sizing: border-box; }
    .reservation_list_item .function .reservation_btn_detail { background: #F9F7F4; color: #475D6D; }
    .reservation_list_item .function .reservation_btn_reservation { background: #E3808F; color: #fff; }

.contents_footer { background: rgba(255,255,255,1);  }
.contents_footer_ph01 { width: 42.85%; border-radius: 0 500px 500px 0; overflow: hidden; }
.contents_footer_ph02 { margin: -17.5% 0 0 39.29%; border-radius: 500px 0 0 500px; overflow: hidden; }

    footer { background: rgba(255,255,255,1); display: block; }
    .footer_data { width: auto; margin-top: 0px; background: url("../img/footer_bg.png") no-repeat center / cover; box-sizing: border-box; border-radius: 0 50px 0 0; }
    .footer_data > .inner { width: 65%; padding: 65px 0 65px 13%; }
    .footer_nav { display: none; }

.footer_data .logo { max-width: 268px; margin-bottom: 50px; }
.footer_data_clinic { margin-top: 30px; }
.footer_data .name { font-size: 1.6rem; display: flex; }
.footer_data address { font-size: 1.2rem; line-height: 1.5; margin-top: 5px; }
.footer_data .tel { font-size: 1.2rem; margin-top: 15px; }
.footer_data .map { display: inline-block; width: 30px; height: 30px; margin-left: 10px; background: #E3808F; border-radius: 50%; position: relative; }
.footer_data .map .ico { width: 8px; line-height: 0; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.footer_data .sns { display: flex; margin-top: 5.0rem; }
    .footer_data .sns li { width: 3.0rem; margin-right: 2.0rem; }
    .footer_copyrights { font-size: 1.4rem; position: absolute; left: 4%; bottom: 50px; -webkit-transform: rotate(90deg) translateX(-100%); transform: rotate(90deg) translateX(-100%); transform-origin:bottom left; }

.footer_nav_item { width: 35%; }
.footer_nav_item:last-child { width: 25%; }
.footer_nav_item .main { font-size: 1.6rem; color: #E3808F; line-height: 1.5; }
.footer_nav_item ul { font-size: 1.4rem; margin-top: 5px; }
.footer_nav_item .main + .main { margin-top: 10px; }
.footer_nav_item ul + .main { margin-top: 20px; }
}

@media screen and (max-width: 900px) {
    .common_menu_list .common_menu_item { width: 48.0%; margin: 20px 0 0 4%; padding: 5px 0; font-size: 1.6rem; text-align: center; background: #F9F7F4; border: 5px solid #fff; box-shadow: 0 0 10px rgba(237,192,192,0.7); border-radius: 50px; box-sizing: border-box; position: relative; }
    .common_menu_list .common_menu_item:nth-child(3n+1) { margin-left: 4%; }
    .common_menu_list .common_menu_item:nth-child(2n+1) { margin-left: 0; }
}

/*menu*/
.page_ttl { font-size: 4.0rem; text-align: center; color: #EC8498; margin: 50px 0; line-height: 1.2; }
.page_ttl small { font-size: 2.5rem; color: inherit; }
.aioseo-breadcrumbs { width: 80%; margin: 0 auto; font-size: 1.3rem; }
.aioseo-breadcrumbs br { display: none; }
.aioseo-breadcrumbs small { display: none; }

.menu_mainph,
.menu_mainph02 { width: 71.42%; max-width: 1000px; min-width: 900px; margin: 50px auto; text-align: center; }
.menu_mainph img { width: 100%; height: 372px; object-fit: cover; border-radius: 300px; }
.menu_mainph02 img { width: 100%; height: 372px; object-fit: contain; border-radius: 0; }

.common_mokuji { width: 57.14%; max-width: 800px; min-width: 600px; margin: 70px auto; background: #fff; padding: 50px; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 15px; display: flex; box-sizing: border-box; }
.common_mokuji_hd { font-size: 1.4rem; width: 180px; }
.common_mokuji_hd span { display: block; }
.common_mokuji_hd .ja { color: #9B9B9B; }
.common_mokuji_list { font-size: 1.6rem; }
.common_mokuji_list ul ul { font-size: 1.4rem; margin: 5px 0 0 20px; }
.common_mokuji_list a { position: relative; }
.common_mokuji_list a:before { content: ""; display: block; width: 10px; height: 1px; background: #ccc; position: absolute; left: -20px; top: 10px; }
.common_mokuji_list li + li { margin-top: 5px; }
.common_mokuji_list ul ul li + li { margin-top: 0; }
.common_mokuji_list._cosme .hd { margin: 0 0 1.0rem -2.0rem; font-size: 1.3rem; }
.common_mokuji_list._cosme ul + .hd { margin-top: 3.0rem; }

.menu_read { width: 57.14%; max-width: 688px; margin: 0 auto; }
.menu_read .topcopy,
.common_read .topcopy { font-size: 3.0rem; text-align: center; line-height: 1.8; margin-bottom: 30px; }
.menu_read .topcopy span,
.common_read .topcopy span { border-bottom: 3px solid #EACCD0; }
.pediatric_menu .common_read .topcopy span { border-bottom: 3px solid #EBD986; }
.general_menu .common_read .topcopy span { border-bottom: 3px solid #C9DC81; }
.menu_read p { text-align: center; }
.menu_read p + p { margin-top: 2em; }
.menu_read .hd { font-size: 2.4rem; text-align: center; line-height: 1.8; margin: 30px 0 20px; }

.common_mark { width: 56px; margin: 0 auto; }
.common_ttl { font-size: 3.0rem; line-height: 1.5; text-align: center; }
.common_ttl .small_font { font-size: 2.0rem; }

.menu_symptom_ttl { text-align: center; font-size: 1.6rem; }
.menu_symptom {  max-width: 450px; margin: 45px auto 0; display: flex; flex-wrap: wrap; }
.menu_symptom_ttl + .menu_symptom { margin-top: 15px; }
.menu_symptom + .menu_symptom_ttl { margin-top: 25px; }
.menu_symptom dl { display: flex; justify-content: space-between; width: 32%; margin: 0 0 2% 2%; padding: 5px 15px; box-sizing: border-box;  font-size: 1.3rem; border-radius: 30px; background: #fff; border-bottom: 1px solid rgba(236,191,191,0.5); }
.menu_symptom dl:nth-child(3n + 1) { margin-left: 0; }
.menu_symptom dd span { display: inline-block; width: 10px; height: 10px; }
.menu_symptom dd span.ico_star_half { display: inline-block; width: 10px; height: 10px; background: url("../img/ico_star02.svg") no-repeat center / contain; }

.menu_symptom dd.point0 span:nth-child(1),
.menu_symptom dd.point0 span:nth-child(2),
.menu_symptom dd.point0 span:nth-child(3),
.menu_symptom dd.point0 span:nth-child(4),
.menu_symptom dd.point0 span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point0half span:nth-child(1) { background: url("../img/ico_star02.svg") no-repeat center / contain; }
.menu_symptom dd.point0half span:nth-child(2),
.menu_symptom dd.point0half span:nth-child(3),
.menu_symptom dd.point0half span:nth-child(4),
.menu_symptom dd.point0half span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point1 span:nth-child(1) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point1 span:nth-child(2),
.menu_symptom dd.point1 span:nth-child(3),
.menu_symptom dd.point1 span:nth-child(4),
.menu_symptom dd.point1 span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point1half span:nth-child(1) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point1half span:nth-child(2) { background: url("../img/ico_star02.svg") no-repeat center / contain; }
.menu_symptom dd.point1half span:nth-child(3),
.menu_symptom dd.point1half span:nth-child(4),
.menu_symptom dd.point1half span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point2 span:nth-child(1),
.menu_symptom dd.point2 span:nth-child(2) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point2 span:nth-child(3),
.menu_symptom dd.point2 span:nth-child(4),
.menu_symptom dd.point2 span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point2half span:nth-child(1),
.menu_symptom dd.point2half span:nth-child(2) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point2half span:nth-child(3) { background: url("../img/ico_star02.svg") no-repeat center / contain; }
.menu_symptom dd.point2half span:nth-child(4),
.menu_symptom dd.point2half span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point3 span:nth-child(1),
.menu_symptom dd.point3 span:nth-child(2),
.menu_symptom dd.point3 span:nth-child(3) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point3 span:nth-child(4),
.menu_symptom dd.point3 span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point3half span:nth-child(1),
.menu_symptom dd.point3half span:nth-child(2),
.menu_symptom dd.point3half span:nth-child(3) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point3half span:nth-child(4) { background: url("../img/ico_star02.svg") no-repeat center / contain; }
.menu_symptom dd.point3half span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point4 span:nth-child(1),
.menu_symptom dd.point4 span:nth-child(2),
.menu_symptom dd.point4 span:nth-child(3),
.menu_symptom dd.point4 span:nth-child(4) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point4 span:nth-child(5) { background: url("../img/ico_star03.svg") no-repeat center / contain; }

.menu_symptom dd.point4half span:nth-child(1),
.menu_symptom dd.point4half span:nth-child(2),
.menu_symptom dd.point4half span:nth-child(3),
.menu_symptom dd.point4half span:nth-child(4) { background: url("../img/ico_star01.svg") no-repeat center / contain; }
.menu_symptom dd.point4half span:nth-child(5) { background: url("../img/ico_star02.svg") no-repeat center / contain; }

.menu_symptom dd.point5 span:nth-child(1),
.menu_symptom dd.point5 span:nth-child(2),
.menu_symptom dd.point5 span:nth-child(3),
.menu_symptom dd.point5 span:nth-child(4),
.menu_symptom dd.point5 span:nth-child(5) { background: url("../img/ico_star01.svg") no-repeat center / contain; }

.menu_features { margin-top: 100px;}
.menu_features_body { width: 71.42%; max-width: 1000px; min-width: 750px; margin: 45px auto 0; background: #fff; border:5px solid #EACCD0; padding: 70px 0; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 15px; display: flex; box-sizing: border-box; }
.menu_features_body .inner { width: 78%; max-width: 688px; margin: 0 auto; }
.menu_features_item { position: relative; padding-left: 70px; }
.menu_features_item .ttl { font-size: 2.5rem; color: #EC8498; line-height: 1.5; margin-bottom: 10px; }
.menu_features_item .point { font-size: 1.7rem; position: relative; text-align: center; line-height: 1; position: absolute; left: 0; top: -15px; color: #EC8498; }
.menu_features_item .point .num { display: block; font-size: 3.4rem; color: inherit; }
.menu_features_item + .menu_features_item { margin-top: 50px;}
.menu_features_item h4 { font-size: 2.0rem; margin-bottom: 5px; }

.menu_basic { margin-top: 100px; }
.menu_basic_read { width: 71.42%; max-width: 700px; margin: 3.0rem auto 1.0rem; }
.menu_basic_body { width: 71.42%; max-width: 1000px; min-width: 750px; margin: 45px auto 0; background: #fff; padding: 45px 0 70px; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 15px; display: flex; box-sizing: border-box; position: relative; }
.menu_basic_body .inner { width: 78%; max-width: 688px; margin: 0 auto; }
/*.menu_basic_nobg .inner { width: 78%; max-width: 688px; margin: 0 auto; }*/
.menu_basic_body .ttl { font-size: 2.5rem; color: #EC8498; margin-bottom: 10px; }
.ico_hoken { display: inline-block; margin-left: 10px; padding: 2px 10px; font-size: 1.2rem; color: #fff; background: #B3C500; border-radius: 15px; vertical-align: middle; }
.ico_jiyu { display: inline-block; margin-left: 10px; padding: 2px 10px; font-size: 1.2rem; color: #fff; background: #E3CE4C; border-radius: 15px; vertical-align: middle; }
.common_normal_list .ico_hoken,
.common_normal_list .ico_jiyu { padding: 0 10px; }

.menu_basic_body * + .ttl { margin: 30px 0 10px; }
.menu_basic_body h4 { font-size: 2.0rem; margin: 0 0 5px; }
.menu_basic_body p + p { margin-top: 2em; }
.common_check_list { background: #F9EFF1; border-radius: 10px; padding: 20px 5%; margin-top: 20px; display: flex; justify-content: space-between; flex-wrap: wrap; font-size: 1.8rem; }
.common_check_list .half { width: 48%; }
.common_check_list li { padding-left: 34px; position: relative; }
.common_check_list li + li { margin-top: 10px; }
.common_check_list li:before { content: ""; display: block; width: 26px; height: 22px; background: url("../img/common_ico_check.svg") no-repeat center / contain; position: absolute; left: 0; top: 5px;}
.common_check_list li p { margin-top: 10px; font-size: 1.4rem; }

.chart_picolaser { width: 100%; margin-top: 50px; display: flex; justify-content: center; }
.chart_picolaser_item { margin: 0 5px; }
.chart_picolaser_item .hd { text-align: center; margin-bottom: 10px; }

.menu_basic_nobg { width: 71.42%; max-width: 1000px; min-width: 750px; margin: 45px auto 0; border-radius: 15px; display: flex; box-sizing: border-box; position: relative; }
.menu_basic_nobg .inner { width: 100%; }
.menu_basic_nobg .common_check_list { border: 5px solid #fff;box-shadow: 0 3px 10px rgba(236,191,191,0.3); }
.menu_basic_nobg .common_check_list ul { align-self: center; margin-right: 20px; }

.menu_type_list { margin-top: 45px; }
.menu_type_item { display: flex; justify-content: space-between; }
.menu_type_item + .menu_type_item { margin-top: 35px; }
.menu_type_item .ph { width: 150px; }
.menu_type_item .ph img { border-radius: 50%; }
.menu_type_item .txt { width: calc(100% - 180px); }
.menu_type_item .ttl { font-size: 2.0rem; color: #EC8498; margin-bottom: 5px; }

.menu_basic_body._therapy .ttl { font-size: 2.5rem; color: #EC8498; text-align: center; margin-bottom: 45px; }
.menu_basic_body._therapy .ttl .only { font-size: 1.5rem; }
.menu_basic_body._therapy .ttl span { border-bottom: 2px solid #EACCD0; }
.menu_basic_body._therapy .place { font-size: 1.4em; text-align: center; margin: -45px 0 45px; }
.menu_therapy_head { display: flex; justify-content: space-between; margin-top: 30px; }
.menu_therapy_head .ph { width: 200px; }
.menu_therapy_head .txt { width: calc(100% - 250px); }
* + .menu_therapy_price { margin-top: 50px; }
.price_data { border-collapse: separate; border-spacing: 0; border: 1px solid #EACCD0; border-radius: 10px; width: 100%; overflow: hidden; }
.price_data th, .price_data td { font-size: 1.4rem; padding: 7px 10px; border-bottom: 1px solid #EACCD0; border-right: 1px solid #EACCD0; line-height: 1.25; vertical-align: middle; }
.price_data._hikaku th, .price_data._hikaku td { vertical-align: top; }
.price_data th { padding: 7px; text-align: center; background: #F9EFF1; }
.price_data td { height: 50px; width: 25%; text-align: center; box-sizing: border-box; background: #fff; }
.price_data._column5 td { width: 20%; }
.price_data._hz5 td { width: 20%; }
.price_data.txt_l td { text-align: left; }
.price_data .wd10 { width: 10%; }
.price_data .wd25 { width: 25%; }
.price_data .wd50 { width: 50%; }
.price_data .wd75 { width: 75%; }
.price_data th:last-child, .price_data td:last-child { border-right: none; }
.price_data tr:last-child th, .price_data tr:last-child td, .price_data .bb_none { border-bottom: none; } 
.price_data .small_font,
.price_data small { font-size: 1.0rem; }
.price_data ul li:before { content: "・"; }
.price_data .mark { font-size: 3.0rem; }
.price_data .vatop td { vertical-align: top; }
.price_data .merit { display: block; background: #D68082; border-radius: 5px; padding: 10px; color: #fff; text-align: left; }
.price_data .merit + .merit { margin-top: 5px; }
.price_data strong { color: #E3808F; }
.price_data .caption_hd {font-size: 1.6rem; color: #EC8498; text-align: left; margin: 3rem 0 1rem; }
.menu_basic_body .link_detail {text-align: left; font-size: 1.6rem; margin: 0.5rem 0 0; }
.menu_basic_body .link_detail a { text-decoration: underline!important; }

.menu_therapy_detail h4:not(.normal_hd),
.menu_therapy_price h4,
.hd_circle,
.single_body h4 { font-size: 1.6rem!important; color: #EC8498; margin: 0 0 5px; padding-left: 1.5rem; position: relative; }
.menu_therapy_detail h4:not(.normal_hd):before,
.menu_therapy_price h4:before,
.hd_circle:before,
.single_body h4:before { content: ""; display: block; width: 1.0rem; height: 1.0rem; border-radius: 50%; position: absolute; left: 0; top: 1.2rem; background: linear-gradient(45deg, #EC8498 30%, #D6C14C); }
.menu_therapy_detail h4.normal_hd { font-size: 1.8rem; }

.btn_detail { margin-top: 50px; text-align: center; }
.btn_detail a { color: #fff; display: inline-block; min-width: 300px; margin: 0 auto; padding: 5px 30px; border: 5px solid #F1B9B9; background: #E3808F; text-align: center; font-size: 1.6rem; border-radius: 30px; position: relative; box-sizing: border-box; }
.btn_detail a .ico { width: 20px; display: block; position: absolute; right: 20px; top: 50%; line-height: 0; }

.menu_therapy_detail { display: flex; justify-content: space-between; }
.menu_therapy_detail .ph { width: 220px; }
.menu_therapy_detail .txt { width: calc(100% - 250px); }
.menu_therapy_detail._noph .txt { width: 100%; }
.menu_therapy_detail dl,
.symptoms_item dl { font-size: 1.6rem; display: flex; flex-wrap: wrap; line-height: 1.5; }
.menu_therapy_detail dt,
.symptoms_item dt { width: 5em; margin-bottom: 10px; }
.menu_therapy_detail dd,
.symptoms_item dd { width: calc(100% - 5em); margin-bottom: 10px; }

.explanation_list { margin: 50px 0; }
.explanation_item { display: flex; border-bottom: 1px solid #ccc; padding: 20px 0; }
.explanation_item .ttl { font-size: 2.0rem; width: 12em; line-height: 1.5; }
.explanation_item .body { width: calc(100% - 12em); margin-bottom: 10px; }

.common_normal_list li { font-size: 1.6rem; position: relative; padding-left: 1.5rem; }
.common_normal_list li:before { content: ""; display: block; width: 1.0rem; height: 1.0rem; border-radius: 50%; position: absolute; left: 0; top: 1.2rem; background: linear-gradient(-45deg, #EC8498 30%, #D6C14C); }

.common_simple_list li { font-size: 1.6rem; position: relative; }

.common_number_list li { font-size: 1.6rem; position: relative; list-style: decimal; margin-left:20px; }

.menu_case_ico { position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); background: #EC8498; border-radius: 30px; color: #fff; width: 150px; padding: 5px 0; text-align: center; font-size: 1.6rem; }
.menu_basic_body._case .ttl { font-size: 2.5rem; text-align: center; margin-top: -20px; line-height: 1.5; }
.menu_case_bfaf { display: flex; justify-content: space-between; margin-top: 30px; }
.menu_case_bfaf .item { text-align: center; width: 44.77%; font-size: 2.0rem; }
.menu_case_bfaf .item .ph { margin-top: 10px; }
.menu_case_bfaf .item_single { text-align: center; width: 100%; font-size: 2.0rem; }
.menu_basic_body._case h4 { font-size: 1.6rem; color: #EC8498; margin: 30px 0 10px; }
.menu_case_data { background: #F9EFF1; padding: 30px; border-radius: 10px; }
.menu_case_data table { font-size: 1.6rem; }
.menu_case_data table th, .menu_case_data table td { line-height: 1.7; padding: 8px 0; }
.menu_case_data table th { padding-right: 35px; }

.menu_faq_item { width: 57.14%; max-width: 800px; min-width: 600px; margin: 30px auto; background: #fff; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 15px; }
.menu_faq_item .inner { width: 86%; max-width: 688px; margin: 0 auto; }
.menu_faq_item .q { font-size: 1.8rem; position: relative; padding: 2.5rem 5.0rem 2.5rem 2.7rem; line-height: 1.5; cursor: pointer; }
.menu_faq_item .q:before { content: "Q"; font-size: 2.0rem; color: #EC8498; position: absolute; left: 0; top: 24px; }
.menu_faq_item .q .ico { position: absolute; width: 3.5rem; height: 3.5rem; right: 0; top: 2.5rem; background: #EC8498; border-radius: 50%; }
.menu_faq_item .q .ico:before { content: ""; display: block; width: 1.5rem; height: 1px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); background: #fff; }
.menu_faq_item .q .ico:after { content: ""; display: block; width: 1.5rem; height: 1px; position: absolute; top: 50%; left: 50%; -webkit-transform: rotate(90deg) translate(-50%,-50%); transform: rotate(90deg) translate(-50%,-50%); transform-origin: left;  background: #fff; -webkit-transition: transform 0.5s cubic-bezier(.16,1,.3,1); transition: transform 0.5s cubic-bezier(.16,1,.3,1); -webkit-transform-origin: left top; transform-origin: left top; }
.menu_faq_item .q.active .ico:after { position: absolute; top: 50%; left: 50%; -webkit-transform: rotate(0) translate(-50%,-50%); transform: rotate(0) translate(-50%,-50%); }
.menu_faq_item .a { font-size: 1.4rem; padding: 0 50px 25px 27px; display: none; }
.menu_faq_item.active .a { display: block; }

.menu_column { width: 71.42%; max-width: 1120px; margin: 100px auto 0; }
.menu_column .top_column_body .column_item { width: 30%; }

.menu_flow_ph { max-width: 1280px; margin: 150px auto 0; }
.menu_flow_ph img { width: 100%; height: 450px; object-fit: cover; object-position: top center; border-radius: 50px 50px 0 0; }
.menu_basic_body._flow { margin-top: -50px;}

.menu_flow_list { margin-top: 35px; }
.menu_flow_item { display: flex; background: #F9EFF1; border-radius: 10px; padding: 30px 30px 30px 50px; position: relative;}
.menu_flow_item p { line-height: 1.75; }
.menu_flow_item + .menu_flow_item { margin-top: 10px;}
.menu_flow_item .ph { min-width: 250px; width: 250px; margin-left: 30px; }
.menu_flow_item .ph img { border-radius: 10px; }
.menu_flow_item .num { width: 60px; height: 60px; position: absolute; left: 0; background: #E3808F; color: #fff; border-radius: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.menu_flow_item .num span { font-size: 2.0rem; display: block; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.menu_flow_item .txt { flex-grow: 2; }
.menu_flow_item .ttl { color: #E3808F; font-size: 2.0rem; }

.menu_list { display: grid; grid-template-columns: repeat(2,1fr); gap: 3.0rem 5%; margin-bottom: 50px; }
.menu_item { border: 3px solid #F9EFF1; border-radius: 10px; padding: 0.5rem 2.0rem 2.0rem; font-size: 1.6rem; line-height: 1.5; }
.menu_item._recommend { display: block; padding: 2.0rem; }
.menu_item .small_font { font-size: 1.1rem; }
.menu_item .name { font-size: 1.8rem; color: #EC8498; line-height: 1.2; margin-bottom: 15px; }
.menu_item .ill { width: 15.0rem; margin: 0 auto; }
.menu_item .ico { width: 15.0rem; margin: 0 auto; text-align: center; background: #EC8498; border-radius: 30px; color: #fff; position: absolute; top: 0; transform: translateY(-50%); }

.ph_single { text-align: center; }
.ph_single._wide500 { max-width: 500px; margin: 0 auto; }
.ph_single img { border-radius: 20px; }
.ph_single.no_br img { border-radius: 0; }
.ph_single figcaption { font-size: 1.4rem; margin-top: 5px; }
.ph_single + *,
* + .ph_single { margin-top: 30px; }

.txt_line { background: linear-gradient(to bottom, rgba(227,206,76,0.0) 49%, rgba(227,206,76,0.5) 50%); }

.box_movie { text-align: center; }
.box_movie iframe { margin: 0 auto; }

.hydrafacial_step { display: flex; justify-content: space-between; }

.general_menu .page_ttl { color: #96BA07; }
.general_menu .page_ttl small { font-size: 2.5rem; color: inherit; }
.general_menu .menu_basic_body .ttl,
.general_menu .menu_therapy_price h4,
.general_menu .hd_circle { color: #96BA07; }
.general_menu .menu_flow_item .num { background: #B7C900; }
.general_menu .menu_flow_item { background: #F4F7D9; }
.general_menu .menu_therapy_price h4:before,
.general_menu .hd_circle:before,
.general_menu .common_normal_list li:before { background: linear-gradient(-45deg, #B7C900 30%, #E7D24D); }

.general_menu .common_read .read { color: #96BA07; }
.general_menu .menu_features_item .point { color: #96BA07; }
.general_menu .menu_features_item .ttl { color: #96BA07; }
.general_menu .menu-index_list .ttl { background: #96BA07; }
.general_menu .menu_features_body { border: 5px solid #E7EDAB; }
.general_menu .menu-index_list .item .name { color: #96BA07; }

.general_menu .link_more  a { color: #96BA07; }
.general_menu .link_more .ico { border: 5px solid #E7EDAB; background: #96BA07; }
.general_menu .top_common_head .ttl { color: #96BA07; }
.general_menu .menu-index_menu .top_common_head .ttl:before { display: none; }

.pediatric_menu .common_read .read { color: #D8B512; }
.pediatric_menu .menu_features_item .point { color: #D8B512; }
.pediatric_menu .menu_features_item .ttl { color: #D8B512; }
.pediatric_menu .menu-index_list .ttl { background: #D8B512; }
.pediatric_menu .menu_features_body { border: 5px solid #E7EDAB; }
.pediatric_menu .menu-index_list .item .name { color: #475D6D; }
/*.pediatric_menu .menu-index_list .item .name a { color: #D8B512; }*/

.pediatric_menu .link_more a { color: #D8B512; }
.pediatric_menu .link_more .ico { border: 5px solid #E7EDAB; background: #D8B512; }
.pediatric_menu .top_common_head .ttl { color: #D8B512; }
.pediatric_menu .menu-index_menu .top_common_head .ttl:before { display: none; }

.pediatric_menu .page_ttl { color: #D8B512; }
.pediatric_menu .page_ttl small { font-size: 2.5rem; color: inherit; }
.pediatric_menu .menu_basic_body .ttl,
.pediatric_menu .menu_therapy_price h4,
.pediatric_menu .hd_circle { color: #D8B512; }
.pediatric_menu .menu_flow_item .num { background: #E7D24D; }
.pediatric_menu .menu_flow_item { background: #FBF8E4; }
.pediatric_menu .menu_therapy_price h4:before,
.pediatric_menu .hd_circle:before,
.pediatric_menu .common_normal_list li:before { background: linear-gradient(-45deg, #E7D24D 30%, #B7C900); }

.symptoms_item { display: flex; justify-content: space-between; }
.symptoms_item + .symptoms_item { margin-top: 45px; }
.symptoms_item .ph { width: 35%; margin-top: 10px; }
.symptoms_item .ph img { border-radius: 15px; }
.symptoms_item .txt { width: 60%; }
.symptoms_item._noph .txt { width: 100%; }

.surgery_img01_set { width: 120%; margin: 50px 0 0 -10%; display: flex; justify-content: space-between; }
.surgery_img01_set > div { width: 48%; border: 1px solid #ccc; }

.menu_hosho { display: grid; grid-template-columns: repeat(3,1fr); gap: 3% 3%; margin-bottom: 80px; }
.menu_hosho_item { border: 3px solid #F9EFF1; border-radius: 10px; padding: 2.0rem 2.0rem; font-size: 1.6rem; line-height: 1.5; text-align: center; }
.menu_hosho_item .ico { width: 100px; margin: 0 auto; }
.menu_hosho_item .num { margin: 10px 0 5px; font-size: 2.0rem; color: #E3808F; }

.dcosme_item { display: flex; justify-content: space-between; }
.dcosme_item { margin-top: 6.0rem; }
.dcosme_item_ph { width: 40%; }
.dcosme_item_ph img { width: 100%; border-radius: 1.0rem; }
.dcosme_item_txt { width: 50%; }
.dcosme_item_txt .ttl { font-size: 2.0rem; line-height: 1.5; }


@media screen and (max-width: 1300px) {
    .chart_picolaser { width: 100%; margin-top: 50px; display: flex; flex-wrap: wrap; justify-content: center; }
}


@media screen and (max-width: 900px) {
    .page_ttl { font-size: 3.0rem; text-align: center; color: #EC8498; margin: 50px 0 30px; }
    .aioseo-breadcrumbs { width: 86.66%; margin: 0 auto; }
    .menu_mainph,
    .menu_mainph02 { width: 100%; min-width: auto; margin: 30px auto; }
    .menu_mainph img { width: 100%; height: 66.66vw; border-radius: 50px; }
    .menu_mainph02 img { border-radius: 15px; }

    .common_mokuji { width: 86.66%; max-width: 800px; min-width: auto; margin: 50px auto; background: #fff; padding: 30px 25px; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 10px; display: block; box-sizing: border-box; }
    .common_mokuji_hd { font-size: 1.3rem; width: auto; }
    .common_mokuji_hd span { display: inline-block; }
    .common_mokuji_hd .ja { color: #9B9B9B; margin-left: 10px; }
    .common_mokuji_list { font-size: 1.4rem; margin-top: 15px; }
    .common_mokuji_list a { position: relative; margin-left: 30px; }
.common_mokuji_list a:before { content: ""; display: block; width: 10px; height: 1px; background: #ccc; position: absolute; left: -20px; top: 10px; }
.common_mokuji_list li + li { margin-top: 5px; }

    .menu_read { width: 86.66%; max-width: 688px; margin: 0 auto; }
    .menu_read .topcopy { font-size: 2.4rem; text-align: center; line-height: 1.8; margin-bottom: 30px; }
.menu_read .topcopy span { border-bottom: 3px solid #EACCD0; }
.menu_read p { text-align: center; }

    .common_mark { width: 44px; margin: 0 auto; }
    .common_ttl { font-size: 2.4rem; line-height: 1.5; text-align: center; }
    .common_ttl .small_font { font-size: 1.8rem; }
    
    .menu_features { margin-top: 65px;}
    .menu_features_body { width: 86.66%; max-width: 1000px; min-width: auto; margin: 30px auto 0; background: #fff; border:5px solid #EACCD0; padding: 35px 0; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 10px; display: flex; box-sizing: border-box; }
    .menu_features_body .inner { width: 84.61%; max-width: 688px; margin: 0 auto; }
    .menu_features_item { position: relative; padding-left: 30px; }
    .menu_features_item .ttl { font-size: 2.0rem; color: #EC8498; line-height: 1.5; margin-bottom: 10px; }
    .menu_features_item .point { font-size: 1.6rem; position: relative; text-align: left; line-height: 1; position: relative; left: 0; top: 0; color: #EC8498; margin: 0 0 15px -30px; }
    .menu_features_item .point .num { display: inline-block; font-size: 2.8rem; color: inherit; margin-left: 5px; }
.menu_features_item + .menu_features_item { margin-top: 50px;}
    .menu_features_item h4 { font-size: 1.6rem; margin-bottom: 5px; }

    .menu_basic { margin-top: 50px;}
    .menu_basic_body { width: 86.66%; max-width: 1000px; min-width: auto; margin: 30px auto 0; background: #fff; padding: 35px 0; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 10px; display: flex; box-sizing: border-box; position: relative; }
    ._feature01 .menu_basic_body,
    ._feature02 .menu_basic_body,
    ._feature03 .menu_basic_body { width: auto; border-radius: 0 0 10px 10px; }
    ._mission01 .menu_basic_body,
    ._mission02 .menu_basic_body,
    ._mission03 .menu_basic_body { width: auto; border-radius: 0 0 10px 10px; }
    .menu_basic_body .inner { width: 84.61%; max-width: 688px; margin: 0 auto; }
    .common_check_list { background: #F9EFF1; border-radius: 10px; padding: 6.67%; margin-top: 30px; display: flex; flex-direction: column-reverse; font-size: 1.6rem; }
    .common_check_list .half { width: 100%; }
    .common_check_list .half li { padding-left: 28px; position: relative; }
    .common_check_list .half li + li, .common_check_list .half + .half { margin-top: 8px; }
    .common_check_list .half li:before { content: ""; display: block; width: 25px; height: 20px; background: url("../img/common_ico_check.svg") no-repeat center / contain; position: absolute; left: 0; top: 6px; }
    
    .menu_basic_nobg { width: 86.66%; max-width: 1000px; min-width: auto; margin: 15px auto 0; border-radius: 15px; display: flex; box-sizing: border-box; position: relative; }
    .menu_basic_nobg .inner { width: 100%; }
    .menu_basic_body .ttl { font-size: 1.8rem; color: #EC8498; margin-bottom: 10px; }

    .menu_type_list { margin-top: 30px; }
    .menu_type_item { display: block; justify-content: space-between; }
.menu_type_item + .menu_type_item { margin-top: 35px; }
    .menu_type_item .ph { width: 150px; margin: 0 auto; }
.menu_type_item .ph img { border-radius: 50%; }
    .menu_type_item .txt { width: auto; margin-top: 15px; }
    .menu_type_item .ttl { font-size: 1.6rem; color: #EC8498; margin-bottom: 5px; text-align: center;}

    .menu_basic_body._therapy .ttl { font-size: 2.0rem; color: #EC8498; margin-bottom: 25px; }
    .menu_therapy_head { display: block; justify-content: space-between; margin-top: 15px; }
    .menu_therapy_head .ph { width: 200px; margin: 20px auto 0; }
    .menu_therapy_head .txt { width: auto; }
    .menu_therapy_price { margin-top: 35px; }
    .price_data { border-collapse: separate; border-spacing: 0; border: 1px solid #EACCD0; border-radius: 5px; width: 100%; overflow: hidden; margin-bottom: 25px; }
    .price_data th, .price_data td { font-size: 1.2rem; padding: 7px 0; border-bottom: 1px solid #EACCD0; border-right: 1px solid #EACCD0; line-height: 1.25; vertical-align: middle; }
.price_data th { padding: 7px; text-align: center; background: #F9EFF1; }
.price_data td { height: 50px; width: 10%; text-align: center; box-sizing: border-box; }
.price_data th:last-child, .price_data td:last-child { border-right: none; }
.price_data tr:last-child th, .price_data tr:last-child td { border-bottom: none; } 
.menu_therapy_price h4 { font-size: 1.6rem; color: #EC8498; margin: 0 0 10px; padding-left: 15px; position: relative; }
.menu_therapy_price h4:before { content: ""; display: block; width: 10px; height: 10px; border-radius: 50%; position: absolute; left: 0; top: 12px; background: linear-gradient(45deg, #EC8498 30%, #D6C14C); }
.menu_therapy_price .notes { font-size: 1.2rem; margin-top: -20px; }
    .btn_detail { margin-top: 30px; }
    .btn_detail a { color: #fff; display: block; width: 100%; margin: 0 auto; padding: 5px 0; border: 5px solid #F1B9B9; background: #E3808F; text-align: center; font-size: 1.6rem; border-radius: 30px; position: relative; }
.btn_detail a .ico { width: 20px; display: block; position: absolute; right: 20px; top: 50%; line-height: 0; }

    .menu_therapy_detail { display: flex; justify-content: space-between; flex-wrap: wrap; flex-direction: column-reverse; }
    .menu_therapy_detail .ph { width: 100%; }
    .menu_therapy_detail .txt { width: 100%; }
.menu_therapy_detail._noph .txt { width: 100%; }
.menu_therapy_detail dl,
.symptoms_item dl { font-size: 1.6rem; display: flex; flex-wrap: wrap; line-height: 1.5; }
.menu_therapy_detail dt,
.symptoms_item dt { width: 5em; margin-bottom: 10px; }
.menu_therapy_detail dd,
.symptoms_item dd { width: calc(100% - 5em); margin-bottom: 10px; }

    .surgery_img01_set { width: 100%; margin: 50px 0 0; display: flex; justify-content: space-between; }
.surgery_img01_set > div { width: 48%; border: 1px solid #ccc; }

.explanation_list { margin: 50px 0; }
.explanation_item { display: flex; border-bottom: 1px solid #ccc; padding: 20px 0; }
.explanation_item .ttl { width: 12em; line-height: 1.5; }
.explanation_item .body { width: calc(100% - 12em); margin-bottom: 10px; }

.common_normal_list li { font-size: 1.6rem; position: relative; padding-left: 15px; }
.common_normal_list li:before { content: ""; display: block; width: 10px; height: 10px; border-radius: 50%; position: absolute; left: 0; top: 12px; background: linear-gradient(45deg, #EC8498 30%, #D6C14C); }

    .menu_case_ico { position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); background: #EC8498; border-radius: 30px; color: #fff; width: 120px; padding: 2px 0; text-align: center; font-size: 1.3rem; }
    .menu_basic_body._case .ttl { font-size: 1.8rem; text-align: center; margin-top: 0px; line-height: 1.5; }
    .menu_case_bfaf { display: flex; justify-content: space-between; margin-top: 20px; }
    .menu_case_bfaf .item { text-align: center; width: 46.00%; font-size: 1.4rem; }
    .menu_case_bfaf .item .ph { margin-top: 5px; }
    .menu_basic_body._case h4 { font-size: 1.6rem; color: #EC8498; margin: 20px 0 5px; }
    .menu_case_data { background: #F9EFF1; padding: 6.67%; border-radius: 5px; }
    .menu_case_data table { font-size: 1.4rem; }
    .menu_case_data table th { padding-right: 20px; white-space: nowrap; }

    .menu_faq_item { width: 86.66%; max-width: 800px; min-width: auto; margin: 20px auto; padding: 0 0 15px; background: #fff; box-shadow: 0 3px 10px rgba(236,191,191,0.3); border-radius: 10px; }
.menu_faq_item .inner { width: 86%; max-width: 688px; margin: 0 auto; }
    .menu_faq_item .q { font-size: 1.6rem; position: relative; padding: 20px 50px 5px 27px; }
    .menu_faq_item .q:before { content: "Q"; font-size: 1.8rem; color: #EC8498; position: absolute; left: 0; top: 18px; }
    .menu_faq_item .q .ico { position: absolute; width: 25px; height: 25px; right: 0; top: 20px; background: #EC8498; border-radius: 50%; }
    .menu_faq_item .q .ico:before { content: ""; display: block; width: 10px; height: 1px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); background: #fff; }
    .menu_faq_item .q .ico:after { content: ""; display: block; width: 10px; height: 1px; position: absolute; top: 50%; left: 50%; -webkit-transform: rotate(90deg) translate(-50%,-50%); transform: rotate(90deg) translate(-50%,-50%); transform-origin: left;  background: #fff; }
.menu_faq_item .a { font-size: 1.4rem; padding: 0 0 10px 27px; display: none; }
.menu_faq_item.active .a { display: block; }

.menu_column { width: 71.42%; max-width: 1120px; margin: 100px auto 0; }
.menu_column .top_column_body .column_item { width: 30%; }

    .menu_flow_ph { margin-top: 80px; }
    .menu_flow_ph img { width: 100%; height: 225px; object-fit: cover; object-position: bottom center; border-radius: 25px 25px 0 0; }
    .menu_basic_body._flow { margin-top: -20px;}

.menu_flow_list { margin-top: 35px; }
    .menu_flow_item { display: block; background: #F9EFF1; border-radius: 5px; padding: 20px 20px 20px 30px; position: relative;}
.menu_flow_item + .menu_flow_item { margin-top: 10px;}
    .menu_flow_item .ph { min-width: 200px; margin: 20px auto 0; }
    .menu_flow_item .num { width: 40px; height: 40px; position: absolute; left: 0; background: #E3808F; color: #fff; border-radius: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
    .menu_flow_item .num span { font-size: 1.6rem; display: block; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.menu_flow_item .ttl { color: #E3808F; font-size: 2.0rem; }
    
    .symptoms_item { display: flex; flex-direction: column-reverse; }
.symptoms_item + .symptoms_item { margin-top: 45px; }
    .symptoms_item .ph { width: 100%; margin-top: 10px; }
.symptoms_item .ph img { border-radius: 15px; }
    .symptoms_item .txt { width: 100%; margin-top: 2.0rem; }
.symptoms_item._noph .txt { width: 100%; }

    .dcosme_item { display: flex; flex-direction: column; justify-content: space-between; }
.dcosme_item { margin-top: 6.0rem; }
    .dcosme_item_ph { width: 100%; }
    .dcosme_item_txt { width: 100%; margin-top: 2.0rem; }
.dcosme_item_txt .ttl { font-size: 2.0rem; line-height: 1.5; }
}

/*about*/
.menu_basic._about .common_ttl { margin-bottom: 30px; color: #EC8498; }
.menu_basic._about * + .common_ttl { margin-top: 70px; }
.menu_basic._about .ph { margin-top: 30px; }
.menu_basic._about .ph img { border-radius: 20px; }
.greeting_name { font-size: 3.0rem; line-height: 1.2; margin-top: 50px; }
.greeting_name small { font-size: 1.8rem; }

.career_ph { width: 50%; position: absolute; left: -10%; }
.career_ph img { width: 100%; border-radius: 300px 300px 0 0; }
.career_txt { padding-left: 50%; padding-top: 50px; }
.career_txt .name01,
.career_txt .name03 { font-size: 1.8rem; }
.career_txt .name02 { font-size: 3.0rem; line-height: 1; }
.career_txt .name02 .main { color: #EC8498; }
.career_txt .name02 small { font-size: 1.4rem; }
.career_txt dl { font-size: 1.6rem; display: flex; flex-wrap: wrap; line-height: 1.5; }
.career_txt dt { width: 5em; margin-bottom: 5px; }
.career_txt dd { width: calc(100% - 5em); margin-bottom: 5px; }

.feature_read { font-size: 2.0rem; text-align: center; }
.common_read { max-width: 50.0rem; width: 86.66%; margin: 0 auto 50px; }
.common_read .read { font-size: 2.5rem; text-align: center; line-height: 1.5; margin-bottom: 30px; color: #EC8498; }
.general_menu .common_read .read { color: #96BA07; }
.pediatric_menu .common_read .read { color: #D8B512; }

.menu_basic._feature01 .feature_hd { background: #B6C800; }
.menu_basic._feature02 .feature_hd { background: #EC8498; }
.menu_basic._feature03 .feature_hd { background: #E6D14C; }
.feature_hd { width: 57.14%; max-width: 800px; min-width: 600px; margin: 0 auto; padding: 20px 0; text-align: center; border-radius: 20px 20px 0 0; position: relative; }
.feature_hd * { color: #fff; }
.feature_hd + .menu_basic_body { margin-top: 0; }
.feature_hd .ttl { font-size: 1.8rem; }
.feature_hd .read { font-size: 3.0rem; line-height: 1.5; }
.feature_hd .num { position: absolute; left: 20px; top: 20px; font-size: 2.4rem; line-height: 1.2; width: 50px; height: 50px; padding: 10px; box-sizing: border-box; text-align: center; border: 1px solid #fff; border-radius: 50%; }
.menu_basic._feature01 .common_ttl { color: #B6C800; margin-bottom: 30px; }
.menu_basic._feature02 .common_ttl { color: #EC8498; margin-bottom: 30px; }
.menu_basic._feature03 .common_ttl { color: #E6D14C; margin-bottom: 30px; }
.menu_basic._feature01 * + .common_ttl,
.menu_basic._feature02 * + .common_ttl,
.menu_basic._feature03 * + .common_ttl { margin-top: 70px; }
.menu_basic._feature01 .ph,
.menu_basic._feature02 .ph,
.menu_basic._feature03 .ph { margin-top: 30px; }
.menu_basic._feature01 img,
.menu_basic._feature02 img,
.menu_basic._feature03 img { border-radius: 20px; }
.feature_item { display: flex; justify-content: space-between; }
.feature_item + .feature_item { margin-top: 70px; }
.feature_item_txt { width: 40.96%; }
.feature_item_ph { width: 48.48%; }
.feature_item_txt .ttl { line-height: 1.5; }
.feature_item_txt .ttl small { font-size: 1.6rem; }
.menu_basic._feature02 .sub_ttl { color: #EC8498; margin-top: 50px; }

.credo_top { width: 71.42%; min-width: 800px; margin: 0 auto; position: relative; z-index: 2;}
.credo_top > .inner {background: #F5F5F5; border-radius: 50%; padding-bottom: 100%; position: relative; }
.credo_top .body { width: 100%; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); text-align: center; }
.credo_top .img { width: 53.5%; margin: 0 auto; }
.credo_top .ttl { font-size: 3.0rem; color: #EC8498; line-height: 1.5; margin-top: 20px; }
.credo_top .en { font-size: 1.5rem; }
.credo_top .read { font-size: 1.8rem; margin-top: 10px; }
.menu_basic._credo { margin-top: 0; }
.menu_basic._credo .menu_basic_body { margin-top: -100px; padding-top: 150px; }
.credo_item { display: flex; justify-content: space-between; }
.credo_item:nth-child(2n) { flex-direction: row-reverse; }
.credo_item + .credo_item { margin-top: 50px; }
.credo_item .credo_item_txt { width: 44.44%; }
.credo_item .credo_item_ph { width: 50%; }
.credo_item .credo_item_ph img { width: 128.6%; max-width: none; border-radius: 20px; }
.credo_item:nth-child(2n) img { margin-left: -28.6%; }
.credo_item .ttl { font-size: 1.8rem; display: flex; align-items: center; flex-wrap: wrap; }
.credo_item .main { margin-left: 15px; }
.credo_item .en { margin-left: 10px; }
.credo_item .num { font-size: 2.4rem; min-width: 50px; min-height: 50px; border-radius: 50%; text-align: center; }
.credo_item:nth-child(3n + 1) .num { border: 1px solid #EC8498; color: #EC8498; }
.credo_item:nth-child(3n + 2) .num { border: 1px solid #E6D14C; color: #E6D14C; }
.credo_item:nth-child(3n + 3) .num { border: 1px solid #B6C800; color: #B6C800; }
.credo_item .read { font-size: 3.0rem; line-height: 1.5; margin: 15px 0; }
.credo_item:nth-child(3n + 1) .ttl,
.credo_item:nth-child(3n + 1) .read { color: #EC8498; }
.credo_item:nth-child(3n + 2) .ttl,
.credo_item:nth-child(3n + 2) .read { color: #E6D14C; }
.credo_item:nth-child(3n + 3) .ttl,
.credo_item:nth-child(3n + 3) .read { color: #B6C800; }

.mission_top { width: 71.42%; min-width: 800px; max-width: 1000px; margin: 0 auto; position: relative; }
.mission_top .mainimg { position: relative; z-index: 2; }
.mission_top .body { width: 100%; padding-bottom: 100%; background: #fff; border-radius: 50%;  margin-top: -50%; position: relative;}
.mission_top .body > .inner { width: 100%; position: absolute; top: 50%; text-align: center; }

.mission_top .logo { width: 27%; margin: 20px auto 0; }
.mission_top .ttl { font-size: 3.0rem; color: #EC8498; margin-top: 5%; }
.mission_top .en { font-size: 1.5rem; }
.mission_top .read { font-size: 1.8rem; margin-top: 20px; }
.menu_basic._mission01 .mission_hd { background: #B6C800; }
.menu_basic._mission02 .mission_hd { background: #EC8498; }
.menu_basic._mission03 .mission_hd { background: #E6D14C; }
.mission_hd { width: 57.14%; max-width: 800px; min-width: 600px; margin: 0 auto; padding: 20px 0; text-align: center; border-radius: 20px 20px 0 0; position: relative; }
.mission_hd * { color: #fff; }
.mission_hd + .menu_basic_body { margin-top: 0; }
.mission_hd .ttl { font-size: 3.0rem; }
.mission_hd .read { font-size: 1.6rem; line-height: 1.5; }

.menu_basic._mission01 .catch { font-size: 2.5rem; line-height: 2; color: #B6C800; text-align: center; }
.menu_basic._mission01 .ph { margin: 50px 0;}
.menu_basic._mission01 .ph img { border-radius: 20px; }

.menu_basic._mission02 .catch { font-size: 2.5rem; line-height: 2; color: #EC8498; text-align: center; }
.menu_basic._mission02 .ph01 { margin: 50px 0; }
.menu_basic._mission02 .ph02 { width: 60%; margin: 100px auto 50px; }

.menu_basic._mission03 .catch { font-size: 2.5rem; line-height: 2; color: #E6D14C; text-align: center; }
.menu_basic._mission03 .ph { margin: 50px 0; }
.menu_basic._mission03 .ph img { border-radius: 50%;}

.mission_end { width: 71.42%; min-width: 900px; max-width: 1000px; margin: 100px auto 0; }
.mission_end > .bg { padding-bottom: 105%; position: relative; background: url("../img/mission_item04_box.png") no-repeat center / contain; }
.mission_end > .bg > .inner { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 100%; text-align: center; }
.mission_end .ttl { font-size: 3.0rem; line-height: 1.5; color: #EC8498; }
.mission_end .en { font-size: 1.5rem; }
.mission_end .read { font-size: 1.8rem; line-height: 1.5; }
.mission_end .read + .ttl { margin-top: 50px; }
.mission_end .catch { font-size: 2.0rem; line-height: 1.5; margin-top: 30px; }
.mission_end .logo { width: 100px; margin: 30px auto 0; }

@media screen and (max-width: 900px) {
.menu_basic._about .common_ttl { margin-bottom: 30px; color: #EC8498; }
    .menu_basic._about * + .common_ttl { margin-top: 50px; }
.menu_basic._about .ph { margin-top: 30px; }
    .greeting_name { font-size: 1.8rem; line-height: 1.5; margin-top: 20px; }
    .greeting_name small { font-size: 1.4rem; }

    .career_ph { width: auto; max-width: 390px; margin: 30px auto 0; position: relative; left: auto; }
.career_ph img { width: 100%; border-radius: 300px 300px 0 0; }
    .career_txt { padding-left: 0; padding-top: 50px; }
    .career_txt .name01,
    .career_txt .name03 { font-size: 1.4rem; }
    .career_txt .name02 { font-size: 2.0rem; line-height: 1; }
.career_txt .name02 .main { color: #EC8498; }
    .career_txt .name02 small { font-size: 1.0rem; }
    .career_txt dl { font-size: 1.4rem; display: flex; flex-wrap: wrap; line-height: 1.5; }
.career_txt dt { width: 5em; margin-bottom: 5px; }
.career_txt dd { width: calc(100% - 5em); margin-bottom: 5px; }

    .feature_read { font-size: 1.6rem; text-align: center; }
    .common_read { font-size: 1.6rem; } 
.menu_basic._feature01 .feature_hd { background: #B6C800; }
.menu_basic._feature02 .feature_hd { background: #EC8498; }
.menu_basic._feature03 .feature_hd { background: #E6D14C; }
    .feature_hd { width: auto; max-width: 800px; min-width: auto; margin: 0 auto; padding: 20px 0; text-align: center; border-radius: 20px 20px 0 0; position: relative; }
.feature_hd * { color: #fff; }
.feature_hd + .menu_basic_body { margin-top: 0; }
    .feature_hd .ttl { font-size: 1.6rem; margin-top: 5px; }
    .feature_hd .read { font-size: 2.0rem; line-height: 1.5; margin-top: 10px; }
    .feature_hd .num { position: absolute; left: 50%; top: 0; font-size: 2.0rem; width: 50px; height: 50px; padding: 12px; box-sizing: border-box; text-align: center; border: 1px solid #fff; background: #fff; border-radius: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
    .menu_basic._feature01 .feature_hd .num { border: 2px solid #B6C800; color: #B6C800; }
    .menu_basic._feature02 .feature_hd .num { border: 2px solid #EC8498; color: #EC8498; }
    .menu_basic._feature03 .feature_hd .num { border: 2px solid #E6D14C; color: #E6D14C; }
    .menu_basic._feature01 .common_ttl { color: #B6C800; margin-bottom: 20px; }
    .menu_basic._feature02 .common_ttl { color: #EC8498; margin-bottom: 20px; }
    .menu_basic._feature03 .common_ttl { color: #E6D14C; margin-bottom: 20px; }
    .menu_basic._feature01 * + .common_ttl,
    .menu_basic._feature02 * + .common_ttl,
    .menu_basic._feature03 * + .common_ttl { margin-top: 50px; }
.menu_basic._feature01 .ph,
.menu_basic._feature02 .ph,
.menu_basic._feature03 .ph { margin-top: 30px; }
    .feature_item { display: block; justify-content: space-between; margin-top: 50px; }
    .feature_item + .feature_item { margin-top: 50px; }
    .feature_item_txt { width: auto; }
    .feature_item_ph { width: auto; margin-top: 20px; }
.feature_item_txt .ttl { line-height: 1.5; }
.feature_item_txt .ttl small { font-size: 1.6rem; }
    .menu_basic._feature02 .sub_ttl { font-size: 1.6rem; color: #EC8498; margin-top: 35px; }

    .credo_top { width: 100%; min-width: auto; height: 153.84vw; margin: 0 auto; position: relative; z-index: 2;}
    .credo_top > .inner { width: 153.84vw; background: #F5F5F5; border-radius: 50%; padding-bottom: 153.84vw; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.credo_top .body { width: 100%; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); text-align: center; }
.credo_top .img { width: 51.28%; margin: 0 auto; }
    .credo_top .ttl { font-size: 2.0rem; color: #EC8498; line-height: 1.5; margin-top: 20px; }
    .credo_top .en { font-size: 1.2rem; }
    .credo_top .read { font-size: 1.5rem; margin-top: 10px; }
.menu_basic._credo { margin-top: 0; }
.menu_basic._credo .menu_basic_body { margin-top: -100px; padding-top: 150px; }
    .credo_item { display: flex; flex-wrap: wrap; flex-direction: column-reverse; justify-content: space-between; }
    .credo_item:nth-child(2n) { flex-direction: column-reverse; }
.credo_item + .credo_item { margin-top: 50px; }
    .credo_item .credo_item_txt { width: 100%; }
    .credo_item .credo_item_ph { width: 100%; }
    .credo_item .credo_item_ph img { width: 109.09%; margin-left: 0; max-width: none; }
.credo_item:nth-child(2n) img { margin-left: -9.09%; }
.credo_item .ttl { font-size: 1.8rem; display: flex; align-items: center; flex-wrap: wrap; margin-top: -10px; }
.credo_item .main { margin-left: 15px; }
.credo_item .en { margin-left: 10px; }
    .credo_item .num { font-size: 2.4rem; min-width: 50px; min-height: 50px; border-radius: 50%; text-align: center; background: #fff; }
.credo_item:nth-child(3n + 1) .num { border: 1px solid #EC8498; color: #EC8498; }
.credo_item:nth-child(3n + 2) .num { border: 1px solid #E6D14C; color: #E6D14C; }
.credo_item:nth-child(3n + 3) .num { border: 1px solid #B6C800; color: #B6C800; }
    .credo_item .read { font-size: 2.4rem; line-height: 1.5; margin: 15px 0; }
.credo_item:nth-child(3n + 1) .ttl,
.credo_item:nth-child(3n + 1) .read { color: #EC8498; }
.credo_item:nth-child(3n + 2) .ttl,
.credo_item:nth-child(3n + 2) .read { color: #E6D14C; }
.credo_item:nth-child(3n + 3) .ttl,
.credo_item:nth-child(3n + 3) .read { color: #B6C800; }

    .mission_box { width: 100%; overflow-x: hidden; }
    .mission_top { width: 128.20%; min-width: auto; max-width: 1000px; margin: 0 0 0 -14.10%; position: relative; }
.mission_top .mainimg { position: relative; z-index: 2; }
    .mission_top .body { width: 128.20%; padding-bottom: 128.20%; background: #fff; border-radius: 50%;  margin: -50% 0 0 -14.10%; position: relative;}
    .mission_top .body > .inner { width: 100%; position: absolute; top: 40%; text-align: center; }

    .mission_top .logo { width: 200px; margin: 20px auto 0; }
    .mission_top .ttl { font-size: 2.0rem; color: #EC8498; margin-top: 5%; }
    .mission_top .en { font-size: 1.0rem; }
    .mission_top .read { font-size: 1.6rem; margin-top: 20px; }
.menu_basic._mission01 .mission_hd { background: #B6C800; }
.menu_basic._mission02 .mission_hd { background: #EC8498; }
.menu_basic._mission03 .mission_hd { background: #E6D14C; }
    .mission_hd { width: 100%; max-width: 800px; min-width: auto; margin: 0 auto; padding: 20px 6.67%; box-sizing: border-box; text-align: center; border-radius: 20px 20px 0 0; position: relative; }
.mission_hd * { color: #fff; }
.mission_hd + .menu_basic_body { margin-top: 0; }
    .mission_hd .ttl { font-size: 2.4rem; }
.mission_hd .read { font-size: 1.6rem; line-height: 1.5; }

    .menu_basic._mission01 .catch { font-size: 1.8rem; line-height: 2; color: #B6C800; text-align: center; }
    .menu_basic._mission01 .ph { margin: 30px 0;}

    .menu_basic._mission02 .catch { font-size: 1.8rem; line-height: 2; color: #EC8498; text-align: center; }
    .menu_basic._mission02 .ph01 { margin: 30px 0; }
    .menu_basic._mission02 .ph02 { width: 80%; margin: 70px auto 30px; }

    .menu_basic._mission03 .catch { font-size: 1.8rem; line-height: 2; color: #E6D14C; text-align: center; }
    .menu_basic._mission03 .ph { margin: 30px 0; }
.menu_basic._mission03 .ph img { border-radius: 50%;}

    .mission_end { width: 100%; height: 840px; min-width: auto; max-width: 1000px; margin: 60px auto 0; overflow-x: hidden; }
.mission_end > .bg { width: 800px; height: 840px; padding-bottom: 0; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); background: url("../img/mission_item04_box.png") no-repeat center / cover; }
.mission_end > .bg > .inner { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 100%; text-align: center; }
    .mission_end .ttl { font-size: 1.8rem; line-height: 1.5; color: #EC8498; }
    .mission_end .en { font-size: 1.2rem; }
    .mission_end .read { font-size: 1.6rem; line-height: 1.5; }
.mission_end .read + .ttl { margin-top: 50px; }
    .mission_end .catch { font-size: 1.6rem; line-height: 1.5; margin-top: 30px; }
    .mission_end .logo { width: 80px; margin: 30px auto 0; } 
}

/*first time*/
.first-time_greeting > .inner { display: flex; align-items: center; width: 71.42%; min-width: 800px; max-width: 1000px; margin: 0 auto 80px; }
.first-time_greeting .ph { width: 40%; }
.first-time_greeting .ph img { margin-left: -25%; border-radius: 300px 300px 0 0; }
.first-time_greeting .txt { width: 60%; }
.first-time_greeting .txt .ttl { font-size: 3.0rem; color: #D48080; margin-bottom: 30px; }
.first-time_greeting .txt p + p { margin-top: 20px; }
.first-time_greeting .ttl { font-size: 3.0rem; color: #D48080; margin-bottom: 30px; }
.first-time_greeting .set02 { display: flex; justify-content: flex-end; }
.first-time_greeting .set02 .ph02 { width: 50%; margin-left: 5%; }
.first-time_greeting .set02 .ph02 img { border-radius: 300px 0 0 300px; }
.first-time_greeting .set02 .txt02 { width: 35%; margin-left: 10%; }
.first-time_greeting .set02 .hd { font-size: 2.0rem; color: #D48080; }

.first-time_clinic { background: #F3F2F2; padding: 125px 0 100px; margin-top: 100px; }
.first-time_clinic > .inner { width: 71.42%; min-width: 800px; max-width: 1000px; margin: 0 auto 50px; }
.first-time_clinic .ttl { font-size: 3.0rem; color: #D48080; margin-bottom: 30px; text-align: center;}
.first-time_clinic .item { display: flex; justify-content: space-between; margin-top: 75px;  }
.first-time_clinic .item .ph { width: 43.5%; }
.first-time_clinic .item .ph img { border-radius: 20px; }
.first-time_clinic .item .txt { width: 48%; }
.first-time_clinic .item .name { font-size: 2.2rem; color: #D48080; }
.first-time_clinic .item .address { font-size: 1.4rem; }
.first-time_clinic .item .tel { font-size: 1.8rem; }
.first-time_clinic .item .date { font-size: 1.4rem; }

.first-time_clinic .function { display: flex; justify-content: space-between; margin-top: 30px; }
.first-time_clinic .function a { width: 48%; text-align: left; border-radius: 30px; padding: 10px 20px; font-size: 1.6rem; box-sizing: border-box; position: relative; }
.first-time_clinic .function .reservation_btn_detail { background: #fff; color: #475D6D; }
.first-time_clinic .function .reservation_btn_reservation { background: #E3808F; color: #fff; }

.common_subject { width: 71.42%; min-width: 800px; max-width: 1000px; margin: 125px auto 50px;  }
.top_subject { width: 100%; margin: 0 auto; background: none }
.common_subject .ttl { font-size: 3.0rem; color: #fff; text-align: center; width: 80%; margin: 0 auto; padding: 20px; background: #D48080; border-radius: 20px 20px 0 0; }
.common_subject > .inner { background: #fff; border-radius: 20px; display: flex; flex-wrap: wrap; padding: 48px; }
.common_subject.top_subject > .inner { background: none; padding: 0 48px; }
.common_subject > .inner .pickup_item { width: 48.33%; margin-bottom: 50px; }
.common_subject > .inner .pickup_item + .pickup_item { margin-left: 3.34%; }
.common_subject > .inner .item { width: 22.22%; }
.common_subject > .inner .item + .item { margin-left: 3.70%; }
.common_subject .ph { overflow: hidden; border-radius: 15px; }
.common_subject .ph img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.common_subject .name { font-size: 2.0rem; color: #D48080; line-height: 1.4; position: relative; margin-top: 10px; }
.common_subject .ico { display: block; width: 50px; height: 50px; border: 5px solid #F1B9B9; background: #E3808F; border-radius: 50%; box-sizing: border-box; position: absolute; right: 0; top: -20px; }

.first-time_flow_ph { max-width: 1280px; margin: 150px auto 0; }
.first-time_flow_ph img { width: 100%; height: 450px; object-fit: cover; object-position: top center; border-radius: 50px; }
.first-time_flow > .inner { display: flex; background: #F9EFF1; border-radius: 10px; padding: 30px 30px 30px 50px; position: relative;}

.first-time_payment { display: flex; flex-wrap: wrap; }
.first-time_payment > div { margin: 10px 20px 0 0; }
.first-time_payment > div img { height: 40px; }

@media screen and (max-width: 900px) {
    .first-time_greeting { position: relative; }
    .first-time_greeting > .inner { display: flex; flex-direction: column-reverse; align-items: flex-start; width: 86.66%; min-width: auto; max-width: 1000px; margin: 0 auto; position: relative; }
    .first-time_greeting .ph { width: 65%; margin: 5.0rem auto 0; }
    .first-time_greeting .ph img { margin-left: 0%; border-radius: 300px 300px 0 0; }
    .first-time_greeting .txt { width: auto; }
    .first-time_greeting .txt .ttl { font-size: 2.4rem; color: #D48080; margin-bottom: 30px; }
.first-time_greeting .txt p + p { margin-top: 20px; }
    .first-time_greeting .ttl { font-size: 2.4rem; color: #D48080; margin-bottom: 30px; }
    .first-time_greeting .set02 { display: flex; justify-content: flex-end; flex-direction: column; margin-top: 5.0rem; }
    .first-time_greeting .set02 .ph02 { width: 95%; margin-left: 5%; margin-top: 5.0rem; }
.first-time_greeting .set02 .ph02 img { border-radius: 300px 0 0 300px; }
    .first-time_greeting .set02 .txt02 { width: auto; margin: 0 6.67%; }
    .first-time_greeting .set02 .hd { font-size: 1.6rem; color: #D48080; }

.first-time_clinic { background: #F3F2F2; padding: 125px 0 50px; margin-top: -50px; }
    .first-time_clinic > .inner { width: 86.66%; min-width: auto; max-width: 1000px; margin: 0 auto 50px; }
    .first-time_clinic .ttl { font-size: 2.4rem; color: #D48080; margin-bottom: 30px; text-align: center;}
    .first-time_clinic .item { display: block; justify-content: space-between; margin-top: 50px;  }
    .first-time_clinic .item .ph { width: auto; }
    .first-time_clinic .item .ph img { border-radius: 15px; }
    .first-time_clinic .item .txt { width: auto; margin-top: 15px; }
    .first-time_clinic .item .name { font-size: 1.8rem; color: #D48080; }
.first-time_clinic .item .address { font-size: 1.4rem; }
    .first-time_clinic .item .tel { font-size: 1.6rem; }
.first-time_clinic .item .date { font-size: 1.4rem; }

.first-time_clinic .function { display: flex; flex-direction: column; justify-content: space-between; margin-top: 30px; }
    .first-time_clinic .function a { width: auto; text-align: left; border-radius: 30px; padding: 10px 20px; font-size: 1.6rem; box-sizing: border-box; }
    .first-time_clinic .function .reservation_btn_detail { background: #F9F7F4; }
    .first-time_clinic .function .reservation_btn_reservation { background: #E3808F; color: #fff; margin-top: 10px; }

    .common_subject { width: 86.66%; min-width: auto; max-width: 1000px; margin: 75px auto 50px;  }
    .common_subject .ttl { font-size: 2.2rem; color: #fff; text-align: center; width: 86.66%; margin: 0 auto; padding: 10px; background: #D48080; border-radius: 15px 15px 0 0; }
    .common_subject.top_subject { width: 100%; }
    .common_subject.top_subject > .inner { background: none; padding: 0; }
    .common_subject > .inner { background: #fff; border-radius: 20px; display: flex; flex-wrap: wrap; padding: 6.67%; }
    .common_subject > .inner .pickup_item { width: 48.00%; margin-bottom: 30px; }
.common_subject > .inner .pickup_item + .pickup_item { margin-left: 4%; }
    .common_subject > .inner .item { width: 48.00%; margin-left: 0!important; margin-bottom: 30px; }
    .common_subject > .inner .item:nth-child(2n) { margin-left: 4%!important; }
    .common_subject .name { font-size: 1.6rem; color: #D48080; line-height: 1.4; position: relative; margin-top: 10px; }
.common_subject .ico { display: block; width: 50px; height: 50px; border: 5px solid #F1B9B9; background: #E3808F; border-radius: 50%; box-sizing: border-box; position: absolute; right: 0; top: -20px; }

    .first-time_flow_ph { max-width: 1280px; margin: 100px auto 0; }
    .first-time_flow_ph img { width: 100%; height: 225px; object-fit: cover; object-position: top center; border-radius: 30px }
.first-time_flow > .inner { display: flex; background: #F9EFF1; border-radius: 10px; padding: 30px 30px 30px 50px; position: relative;}

.first-time_payment { display: flex; flex-wrap: wrap; }
    .first-time_payment > div { margin: 10px 15px 0 0; }
    .first-time_payment > div img { height: 20px; }
}

/*menu-index*/
.menu-index_list { width: 71.42%; min-width: 800px; max-width: 1000px; margin: 125px auto 50px;  }
.menu-index_list > .inner { background: #fff; border-radius: 20px; display: flex; flex-wrap: wrap; padding: 48px; }
.menu-index_list .ttl { font-size: 3.0rem; color: #fff; text-align: center; width: 80%; margin: 0 auto; padding: 20px; background: #D48080; border-radius: 20px 20px 0 0; line-height: 1.5; }
.menu-index_list .item { width: 100%; display: flex; justify-content: space-between; }
.menu-index_list .item._noph { justify-content: center; }
.menu-index_list:not(._pediatric) .item + .item { margin-top: 75px; }
.menu-index_list .item .ph { width: 43.5%; }
.menu-index_list .item .ph img { border-radius: 20px; }
.menu-index_list .item > .txt { width: 48%; position: relative; }
.menu-index_list .item._noph > .txt { width: 68%; }
.menu-index_list._allergy .item._noph > .txt { width: 74.61%; margin-left: 17.95%;}
.menu-index_list .item .name { font-size: 2.2rem; color: #D48080; }

.menu-index_list .item .point { font-size: 1.7rem; position: relative; text-align: center; line-height: 1; position: absolute; left: -60px; top: -0; color: #96BA07; }
.menu-index_list .item .point .num { display: block; font-size: 3.4rem; color: inherit; }


.menu-index_list._pediatric .item { display: block; width: 30%; margin: 0 0 30px 5%; }
.menu-index_list._pediatric .item:nth-child(3n + 1) { margin-left: 0; }
.menu-index_list._pediatric .item .ph { width: auto; }
.menu-index_list._pediatric .item .txt { width: auto; }
.menu-index_list._pediatric .item .name { font-size: 1.6rem; line-height: 1.5; margin-top: 10px; }

.menu-index_list .link_more { margin-top: 15px;}
.menu-index_list .link_more a { justify-content: flex-start; }
.menu-index_list .link_more a .txt { width: auto; }

.menu-index_menu { width: 71.42%; min-width: 800px; max-width: 1000px; margin: 125px auto 50px;  }

@media screen and (max-width: 900px) {
    .menu-index_list { width: 86.66%; min-width: auto; margin: 75px auto 50px; }
    .menu-index_list > .inner { background: #fff; border-radius: 20px; display: flex; flex-wrap: wrap; padding: 7.69%; }
    .menu-index_list .ttl { font-size: 2.2rem; color: #fff; text-align: center; width: 80%; margin: 0 auto; padding: 20px; background: #D48080; border-radius: 20px 20px 0 0; }
    .menu-index_list .item { display: block; }
    .menu-index_list .item + .item { margin-top: 45px; }
    .menu-index_list._pediatric .item + .item { margin-top: 0; }
    .menu-index_list .item .name { font-size: 1.8rem; color: #D48080; margin-top: 10px; }
    .menu-index_list .item .ph { width: auto; }
    .menu-index_list .item .ph img { border-radius: 15px; }
    .menu-index_list .item .txt { width: auto; }
    
    .menu-index_menu  { width: 86.66%; min-width: auto; margin: 75px auto 50px;  }
}

/*access*/
.access_head { width: 71.42%; max-width: 1000px; min-width: 800px; display: flex; margin: 50px auto; text-align: center; background: #D48080; border-radius: 300px; overflow: hidden; }
.access_head .txt { width: 50%; position: relative; }
.access_head .ph { width: 50%; }
.access_head .txt > .inner { width: 70%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);  text-align: left; }
.access_head .ttl { font-size: 3.0rem; color: #fff; line-height: 1.5; margin-top: 5px; }
.access_head .read { font-size: 1.4rem; color: #fff; }
.access_head .ico { margin-top: 25px; }
.access_head .ico span { display: inline-block; background: #fff; color: #475D6D; margin-bottom: 10px; padding: 3px 15px; border-radius: 20px; font-size: 1.2rem; }

.access_news_ttl { font-size: 3.0rem; color: #D48080; text-align: center; }

.access_box { margin-top: 100px;}
.access_box .inner { width: 71.42%; max-width: 1000px; min-width: 800px; display: flex; justify-content: space-between; margin: 50px auto;  }
.access_data { width: 46%; }
.access_map { width: 46%; }
.access_data .address { font-size: 1.6rem; }
.access_data .tel { font-size: 1.8rem; }
.access_data .ph img { border-radius: 15px; }
.access_box .ttl { font-size: 3.0rem; color: #D48080; text-align: center; }
.access_data .name { font-size: 2.2rem; color: #D48080; margin-top: 5px;}
.access_item { display: flex; margin-top: 35px; }
.access_item .ico { width: 50px; }
.access_item .txt { width: calc(100% - 70px); margin-left: 20px; }
.access_item .hd { font-size: 2.2rem; color: #D48080; }

.access_parking { width: 71.42%; max-width: 900px; min-width: 800px; margin: 100px auto 0; }
.access_parking > .inner { display: flex; justify-content: space-between; margin-top: 50px; }
.access_parking > .inner .item { width: 48.33%; }
.access_parking > .inner .item .ph { position: relative; overflow: hidden; border-radius: 15px; overflow: hidden; }
.access_parking > .inner .item .ph:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; background: rgba(0,0,0,0.3); }
.access_parking > .inner .item .ph:after { content: ""; display: block; width: 64px; height: 44px; background: url("../img/ico_movie.svg") no-repeat center / contain; z-index: 2; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.access_parking > .inner .item img { border-radius: 15px; }
.access_parking .ttl { font-size: 3.0rem; color: #D48080; text-align: center; }
.access_parking .caption { font-size: 2.2rem; color: #D48080; text-align: center; margin-top: 10px; } 

.access_feature_ttl { font-size: 3.0rem; color: #fff; text-align: center; width: 71.42%; max-width: 800px; min-width: 700px; margin: 100px auto 0; padding: 20px; background: #D48080; border-radius: 20px 20px 0 0; }
.access_feature { background: #F3F2F2; padding: 0 0 100px; overflow: hidden; }
.access_feature_pickup { width: 71.42%; max-width: 1000px; min-width: 800px; margin: 0 auto; padding: 75px 0 0; display: flex; justify-content: space-between; }
.access_feature_pickup .ph { width: 43.5%; }
.access_feature_pickup .txt { width: 45.0%; }
.access_feature_pickup .hd { font-size: 2.5rem; color: #D48080; line-height: 1.5; margin-bottom: 20px; }
.access_feature_pickup img { border-radius: 15px; }
.access_feature .intro_ttl,
.calender_ttl { font-size: 3.0rem; color: #D48080; text-align: center; margin-top: 50px; }
.calender_ttl { margin-top: 10.0rem; }
.access_slide_box { width: 100%; overflow: hidden; }
.access_slide { width: 115%; margin: 30px -7.5% 0; }
.access_slide .caption { font-size: 1.6rem;}
.access_slide img { border-radius: 15px; }

@media screen and (max-width: 900px) {
    .access_head { width: auto; max-width: 1000px; min-width: auto; display: block; margin: 50px auto; text-align: center; background: none; border-radius: 0; overflow: hidden; }
    .access_head .txt { width: 100%; position: relative; }
    .access_head .ph { width: auto; padding-bottom: 66.66%; position: relative; margin-top: 30px; }
    .access_head .ph img { border-radius: 50px; width: 100%; height: 100%; position: absolute; left: 0; top: 0; object-fit: cover; }
    .access_head .txt > .inner { width: 100%; position: relative; top: auto; left: auto; -webkit-transform: translate(0,0); transform: translate(0,0);  text-align: center; }
    .access_head .ttl { font-size: 3.0rem; color: #D48080; line-height: 1.5; margin-top: 10px; }
    .access_head .read { font-size: 1.4rem; color: #475D6D; }
    .access_head .read span { display: inline-block; background: #fff; margin-top: 10px; padding: 3px 15px; border-radius: 20px; }

    .access_news_ttl { font-size: 2.4rem; color: #D48080; text-align: center; }
    .access_news { width: 86.66%; margin: 0 auto; }

.access_box { margin-top: 100px; width: 86.66%; margin: 50px auto 0; }
    .access_box .inner { width: 100%; max-width: 1000px; min-width: auto; display: block; justify-content: space-between; margin: 30px auto;  }
    .access_data { width: auto; }
    .access_map { width: auto; margin-top: 50px; }
    .access_data .address { font-size: 1.4rem; }
    .access_data .tel { font-size: 1.6rem; }
.access_data .ph img { border-radius: 15px; }
    .access_box .ttl { font-size: 2.4rem; color: #D48080; text-align: center; }
    .access_data .name { font-size: 1.8rem; color: #D48080;}
.access_item { display: flex; margin-top: 35px; }
.access_item .ico { width: 50px; }
.access_item .txt { width: calc(100% - 70px); margin-left: 20px; }
    .access_item .hd { font-size: 1.8rem; color: #D48080; }

    .access_parking { width: 86.66%; max-width: 900px; min-width: auto; margin: 100px auto 0; }
    .access_parking > .inner { display: block; justify-content: space-between; margin-top: 30px; }
    .access_parking > .inner .item { width: auto; }
    .access_parking > .inner .item + .item { margin-top: 50px; }
.access_parking > .inner .item .ph { position: relative; overflow: hidden; border-radius: 15px; overflow: hidden; }
.access_parking > .inner .item .ph:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; background: rgba(0,0,0,0.3); }
.access_parking > .inner .item .ph:after { content: ""; display: block; width: 64px; height: 44px; background: url("../img/ico_movie.svg") no-repeat center / contain; z-index: 2; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.access_parking > .inner .item img { border-radius: 15px; }
    .access_parking .ttl { font-size: 2.4rem; color: #D48080; text-align: center; }
    .access_parking .caption { font-size: 1.8rem; color: #D48080; text-align: center; margin-top: 10px; } 

    .access_feature_ttl { font-size: 2.2rem; color: #fff; text-align: center; width: 86.66%; max-width: 800px; min-width: auto; margin: 100px auto 0; padding: 20px; background: #D48080; border-radius: 20px 20px 0 0; box-sizing: border-box; line-height: 1.5; }
.access_feature { background: #F3F2F2; padding: 0 0 100px; }
    .access_feature_pickup { width: 86.66%; max-width: 1000px; min-width: auto; margin: 0 auto; padding: 75px 0 0; display: block; justify-content: space-between; }
    .access_feature_pickup .ph { width: auto; }
    .access_feature_pickup .txt { width: auto; margin-top: 20px; }
    .access_feature_pickup .hd { font-size: 1.8rem; color: #D48080; line-height: 1.5; margin-bottom: 20px; }
.access_feature_pickup img { border-radius: 15px; }
    .access_feature .intro_ttl,
    .calender_ttl { font-size: 2.2rem; color: #D48080; text-align: center; margin-top: 50px; },
    .calender_ttl { margin-top: 7.0rem; }
    .access_slide { width: 71.79%; margin: 30px auto 0; }
.access_slide .caption { font-size: 1.6rem;}
.access_slide img { border-radius: 15px; }
    
}






/* Google Mapを囲う要素 */
.googlemap {
  position: relative;
  width: 100%;
  height: 0;
}
 
/* Google Mapのiframe */
.googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.access_map .googlemap {padding-top: 100%; margin-top: 40px; border-radius: 15px; overflow: hidden; }

.archive_news { padding: 0 6.67% 0; }

/*column*/
.column_archive { width: 71.42%; min-width: 800px; margin: 0 auto; }
.column_cat a { display: inline-block; padding: 0.8rem 2.5rem; margin: 0 1.0rem 1.0rem 0; font-size: 1.6rem; line-height: 1.5; background: #fff; border-radius: 3.0rem; }
.column_cat .active { background: #EC8498; color: #fff; }

.wp-pagenavi { display: flex; justify-content: center; margin-top: 8.0rem; }
.wp-pagenavi .prev.page-numbers,
.wp-pagenavi .next.page-numbers { width: 3.0rem; height: 3.0rem; margin: 0 1.15rem; background: #EC8498; color: #fff; text-align: center; border-radius: 50%; } 
.wp-pagenavi .page-numbers:not(.prev):not(.next),
.wp-pagenavi .page-numbers.current { width: 3.0rem; height: 3.0rem; padding: 0.3rem 0; margin: 0 1.15rem; font-size: 1.4rem; line-height: 1.5; box-sizing: border-box; text-align: center; border-radius: 50%; color: #EC8498; } 
.wp-pagenavi .page-numbers.current { color: #475D6D!important; }
.wp-pagenavi .extend { margin: 0 1.15rem; }
.wp-pagenavi .page-numbers.dots { background: none!important; }

#ez-toc-container { margin: 70px auto; background: #f7f7f7; padding: 50px; border-radius: 15px; display: flex; box-sizing: border-box; }
.ez-toc-title-container { font-size: 1.4rem; width: 180px; }
.ez-toc-list { font-size: 1.6rem; }
.ez-toc-list a { position: relative; }
.ez-toc-list a:before { content: ""; display: block; width: 10px; height: 1px; background: #ccc; position: absolute; left: -20px; top: 10px; }
.ez-toc-list li + li { margin-top: 5px; }

@media screen and (max-width: 900px) { 
    .column_archive { width: 86.66%; min-width: auto; margin: 0 auto; }
    
.wp-pagenavi { display: flex; justify-content: center; margin-top: 8.0rem; }
.wp-pagenavi .prev.page-numbers,
.wp-pagenavi .next.page-numbers { width: 3.0rem; height: 3.0rem; margin: 0 1.15rem; background: #EC8498; color: #fff; text-align: center; border-radius: 50%; } 
    .wp-pagenavi .prev.page-numbers svg,
    .wp-pagenavi .next.page-numbers svg { width: 0.6rem; line-height: 0; }
.wp-pagenavi .page-numbers:not(.prev):not(.next),
.wp-pagenavi .current { width: 3.0rem; height: 3.0rem; padding: 0.3rem 0; margin: 0 0.55rem; font-size: 1.4rem; line-height: 1.5; box-sizing: border-box; text-align: center; border-radius: 50%; } 
.wp-pagenavi .extend { margin: 0 1.15rem; }
    
    #ez-toc-container { margin: 45px auto; background: #f7f7f7; padding: 30px 50px; border-radius: 15px; display: block; box-sizing: border-box; }
    .ez-toc-title-container { font-size: 1.4rem; width: 180px; margin-bottom: 10px; }
    
}

/*column single*/
.single_head { margin-bottom: 30px; }
.single_head .ttl { margin: 5px 0 10px; }
.single_head .cat a { display: inline-block; background: #eee; border-radius: 30px; padding: 5px 15px; }

.single_body > * + * { margin-top: 3.0rem; }
.single_body h2 { font-size: 2.5rem; color: #EC8498; line-height: 1.5; margin: 30px 0 20px; padding-bottom: 10px; border-bottom: 1px solid #ccc; position: relative; }
.single_body h2:before { content: ""; display: block; width: 2.0rem; height: 1px; background: #EC8498; position: absolute; left: 0; bottom: -1px; }

.single_body h3 { font-size: 2.0rem; color: #EC8498; line-height: 1.5; margin: 30px 0 20px; }
.single_body h4 { margin: 20px 0 10px; }

.single_body .menu_faq_item { width: auto; }

.single_body .item_list { display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 4.0rem 3.0rem; font-size: 1.6rem; }
.single_body .item_list img { margin-bottom: 1.0rem; }
.single_body .catch { font-size: 3.0rem; line-height: 1.8; margin-bottom: 30px; }
.single_body .catch span { border-bottom: 3px solid #EACCD0; }
.single_body .read { font-size: 2.5rem; line-height: 1.5; margin-bottom: 30px; color: #EC8498; }



.recommend_works { width: 90%; margin: 0 auto; position: relative; display: flex; }
.recommend_works .column_item + .column_item { margin-left: 3.5%; }

.post_recommend { margin: 70px; }
.post_recommend .common_hd .ttl { font-size: 3.0rem; line-height: 1.5; color: #E3808F; position: relative; margin: 0 0 50px; text-align: center; }
.recommend_works .column_item { width: 31%; }
.post_recommend .swiper-button-prev, .post_recommend .swiper-button-next { display: none; }

.btn_index { font-size: 1.6rem; text-align: center; margin-top: 70px;}

ul.wp-block-list li { font-size: 1.6rem; position: relative; padding-left: 1.5rem; }
ul.wp-block-list li:before { content: ""; display: block; width: 1.0rem; height: 1.0rem; border-radius: 50%; position: absolute; left: 0; top: 1.2rem; background: linear-gradient(-45deg, #EC8498 30%, #D6C14C); }

ol.wp-block-list li { font-size: 1.6rem; position: relative; list-style: decimal; margin-left:20px; }

ul.wp-block-list,ol.wp-block-list { margin: 3.0rem 0; }

@media screen and (max-width: 768px) {
    .single_body .item_list { display: grid; grid-template-columns: repeat(1,1fr); grid-gap: 4.0rem 3.0rem; font-size: 1.6rem; }
}



/*contact*/
.contact_wrapper { display: flex; justify-content: space-between; width: 67.28%; margin: 127px 0 0 18.43%; }
.contact_head { width: 36.39%; }
.contact_head .en { font-size: 3.0rem; color: #B7282E; }
.contact_head .page_ttl { font-size: 5.5rem; line-height: 1.0; margin-bottom: 53px; }
.contact_head .page_ttl_s { font-size: 3.0rem; line-height: 1.33; margin: 5px 0 35px; }
.contact_head p + p { margin-top: 2em; }
.contact_help { margin-top: 88px; }
.contact_help .hd { font-size: 1.6rem; line-height: 1.75; }
.contact_help .detail { margin-top: 18px; padding: 24px 32px; border: 1px solid #999; border-radius: 10px; }
.contact_help .detail h3 { font-size: 1.6rem; margin-bottom: 9px; }
.contact_help .detail p + h3 { margin-top: 25px; }
.contact_help.sp { display: none; }

.contact_body { width: 54.50%; margin-bottom: 55px; }
.contact_body .ttl { font-size: 3.0rem; color: #B7282E; }
.contact_item { width: 100%; font-size: 1.6rem; }
.contact_item th, .contact_item td { padding: 30px 0 0; vertical-align: top; }
.contact_item th { width: 160px; font-weight: 500; }
.privacy_notes { font-size: 1.2rem; margin-top: 15px; }

.required { display: inline-block; position: relative; color: #B7282E; }
.contact_item .required { margin-left: 5px; }
.input_txt,select.select { width: 100%; box-sizing: border-box; border: none; font-size: 1.8rem; padding: 12px 20px; color: #333; }
textarea.message { width: 100%; height: 212px; box-sizing: border-box; border: none; font-size: 1.8rem; padding: 12px 20px; }
.input_txt::placeholder, textarea.message::placeholder { color: #999999; }
.label_type { display: flex; flex-wrap: wrap; }
.label_type label { width: 100%; margin-bottom: 5px; }
.check_privacy { font-size: 1.8rem; text-align: center; margin-top: 65px; }
.btn_submit input { background: #B7282E; color: #fff; font-size: 2.0rem; font-weight: 700; text-align: center; width: 100%; padding: 30px 0; margin-top: 45px; border-radius: 5px; }
.btn_submit input:disabled { background: #ccc; }

.contact_privacy .formErrorContent { display: none!important; }

@media screen and (max-width: 1250px) {
    .contact_wrapper { display: flex; justify-content: space-between; width: 86.66%; margin: 127px auto 0; }
}

@media screen and (max-width: 1024px) {
    .contact_wrapper { display: block; justify-content: space-between; width: 86.66%; margin: 127px auto 0; }
    .contact_head { width: auto; }
    
    .contact_body { width: auto; margin-bottom: 55px; margin-top: 50px; }
    .contact_help.pc { display: none; }
    .contact_help.sp { display: block; }

}

@media screen and (max-width: 768px) {
    .contact_wrapper { display: block; justify-content: space-between; width: 86.66%; margin: 70px auto 0; }
    .contact_head .en { font-size: 1.6rem; color: #B7282E; }
    .contact_head .page_ttl { font-size: 2.5rem; line-height: 1.5; margin-bottom: 22px; }
    .contact_head .page_ttl_s { font-size: 2.5rem; line-height: 1.5; margin: 0 0 22px; }
    .contact_help { margin-top: 39px; }
    .contact_help .hd { font-size: 1.3rem; line-height: 1.75; }
    .contact_help .detail { margin-top: 18px; padding: 22px; border: 1px solid #999; border-radius: 10px; }
    .contact_help .detail h3 { font-size: 1.3rem; margin-bottom: 9px; }
    
    .contact_body { width: auto; margin-bottom: 55px; margin-top: 0; }
    .contact_body .ttl { font-size: 1.5rem; margin-bottom: 10px; }
    .contact_item { font-size: 1.3rem; margin-top: 25px; }
    .contact_item, .contact_item thead, .contact_item tbody, .contact_item tr, .contact_item th, .contact_item td { display: block; width: 100%; }
    .contact_item th, .contact_item td { padding: 8px 0 0; vertical-align: top; }
    .contact_item th { width: auto; border: none; padding: 20px 0 0; }
    .privacy_notes { font-size: 1.2rem; margin-top: 15px; }

    .required { font-size: 1.36rem; font-weight: 700; display: inline-block; position: relative; color: #B7282E; }
    .contact_item .required { margin-left: 5px; }
    .input_txt { width: 100%; box-sizing: border-box; border: none; font-size: 1.4rem; }
    textarea.message { width: 100%; height: 50px; box-sizing: border-box; border: none; font-size: 1.4rem; }
    select.pref { width: 100%; border: none; font-size: 1.4rem; }
    .label_type { display: flex; flex-wrap: wrap; }
.label_type label { max-width: none; width: 100%; margin-bottom: 10px; }
    .check_privacy { font-size: 1.4rem; text-align: left; margin-top: 49px; }
    .btn_submit input { background: #B7282E; color: #fff; font-size: 1.6rem; font-weight: 700; text-align: center; width: 100%; padding: 30px 0; margin-top: 39px; border-radius: 5px; }
    .btn_submit input:disabled { background: #ccc; }

.contact_privacy .formErrorContent { display: none!important; }
}

/*thanks*/
.thanks_body { margin-top: 133px; }
.thanks_txt { text-align: center; }
body.thanks .contents_footer_illust,
body.error404 .contents_footer_illust { margin-top: 100px;}

@media screen and (max-width: 768px) {
    body.thanks .common_page_ttl { display: none; }
    .thanks_body { margin: 80px auto 0; width: 81.53%; }
    .thanks_txt { text-align: left; }
    body.thanks .contents_footer_illust,
    body.error404 .contents_footer_illust { margin-top: 73px;}
}

/*form*/
.wpcf7-not-valid-tip { display: none!important; }
.formError .formErrorContent { font-size: 1.4rem!important; color: #B51C1F!important; margin-top: 5px; background: none!important; }
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output { display: none!important; }

/*link*/
.single_body a,
*.link_txt { text-decoration: underline!important; }

/*レーダーチャート*/
.radar-chart-3 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 220px;
    height: 220px;
    padding: 35px;
    box-sizing: content-box;
    background: #fff;
    border-radius: 5px;
}

.radar-chart-3 svg {
    width: 100%;
    height: 100%;
    padding: 10px;
}

.radar-chart-3 dl {
    position: absolute;
    width: 100%;
    height: 100%;
}

.radar-chart-3 dl > div {
    position: absolute;
    color: #777;
    font-size: .6em;
    text-align: center;
}

.radar-chart-3 dl > div:nth-child(1) {
    top: 1%;
    left: 50%;
    transform: translateX(-50%);
}

.radar-chart-3 dl > div:nth-child(2) {
    top: 24%;
    right: 10%;
    transform: translateX(50%);
}

.radar-chart-3 dl > div:nth-child(3) {
    bottom: 24%;
    right: 10%;
    transform: translateX(50%);
}

.radar-chart-3 dl > div:nth-child(4) {
    bottom: 3%;
    left: 50%;
    transform: translateX(-50%);
}

.radar-chart-3 dl > div:nth-child(5) {
    bottom: 24%;
    left: 10%;
    transform: translateX(-50%);
}

.radar-chart-3 dl > div:nth-child(6) {
    top: 24%;
    left: 10%;
    transform: translateX(-50%);
}

.radar-chart-3 dd {
    margin: 0;
    font-size: 1.6rem;
    line-height: 0.8;
}

@media screen and (max-width: 900px) {   
    .radar-chart-3 { width: 200px; height: 200px; margin: 0 auto 30px; }
}

@keyframes fly-arrow {
  0% { 
    transform: translate(-50%,-50%); 
    opacity: 1; 
  }
  40% { 
    transform: translate(calc(-50% + 15px),-50%); /* 右へ移動して消える */
    opacity: 0; 
  }
  50% { 
    transform: translate(calc(-50% - 15px),-50%); /* 見えない状態で左へワープ */
    opacity: 0; 
  }
  100% { 
    transform: translate(-50%,-50%); /* 元の位置に戻りながら現れる */
    opacity: 1; 
  }
}

@media screen and (min-width: 900px) {   
    
    .link_more a:hover .ico svg { animation: fly-arrow 0.5s ease forwards; }
    
    .single_body a:hover,
    *.link_txt:hover,
    .menu_basic_body .link_detail a:hover { text-decoration: none!important; }
    
    .service_menu a:not(.here) span { -webkit-transition: opacity 0.3s cubic-bezier(0.19, 1, 0.22, 1); transition: opacity 0.3s cubic-bezier(0.19, 1, 0.22, 1);}
    .service_menu a:not(.here):hover span { opacity: 0.6; }
    
    .btn_contanct .font_en,
    .btn_contanct .ja .txt { -webkit-transition: color 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: color 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    .btn_contanct:hover .font_en,
    .btn_contanct:hover .ja .txt { color: #B7282E; }
    .btn_contanct .circle { -webkit-transition: transform 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: transform 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    .btn_contanct:hover .circle { -webkit-transform: scale(1.05) translate(-50%, -50%); transform: scale(1.4); }
    
    .case_item .ph img,
    .news_item .ph img { -webkit-transition: transform 1.0s cubic-bezier(.16,1,.3,1); transition: transform 1.0s cubic-bezier(.16,1,.3,1); -webkit-transform-origin: left top; transform-origin: left top; }
    .case_item:hover .ph img,
    .news_item:hover .ph img { -webkit-transform: scale(1.07) translate(-50%, -50%); transform: scale(1.07) translate(-50%, -50%); }
    
    .page_head .btn a { -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    .page_head .btn a:hover { opacity: 0.7; }
    
    .top_service_item .ph ._cover { display: block; padding-bottom: 66.66%;
    -webkit-clip-path: inset(0);
    clip-path: inset(0);
    transition: clip-path .8s cubic-bezier(.16,1,.3,1);
    transition: clip-path .8s cubic-bezier(.16,1,.3,1), -webkit-clip-path .8s cubic-bezier(.16,1,.3,1); }
    .top_service_item .ph ._cover img { position: absolute; top: 0; left: 0; transition: all .8s cubic-bezier(.16,1,.3,1); }
    .top_service_item:hover .ph ._cover { -webkit-clip-path: inset(3%);clip-path: inset(3%); overflow: hidden; }
    .top_service_item:hover .ph ._cover img { position: absolute; top: 0; left: 0; transform: scale(1.05) rotate(.1deg); }
    
    
    
    .mega-menu .item a,
    .news_item .ttl,
    .main_nav a,
    .common_menu_item .name { transition: color 0.8s cubic-bezier(0.36, 0.14, 0, 1); }
    .mega-menu .item a:hover,
    .news_item:hover .ttl,
    .main_nav a:hover,
    .common_menu_item:hover .name { color: #E3808F; }
    
    .btn_fix_reservation { transition: transform 0.8s cubic-bezier(0.36, 0.14, 0, 1); }
    .btn_fix_reservation:hover { transform: scale(1.05); }
    
    .top_point_item .arrow { transition: transform 0.8s cubic-bezier(0.36, 0.14, 0, 1); }
    .top_point_item:hover .arrow { transform: scale(1.05); }
    
    .common_menu_pickup .circle,
    .common_menu_list .common_menu_item,
    .top_point_item .ph { transition: border 0.8s cubic-bezier(0.36, 0.14, 0, 1); }
    .common_menu_pickup .common_menu_item:hover .circle,
    .common_menu_list .common_menu_item:hover { border-color: #E3808F; }
    .top_point_item:hover:nth-child(1) .ph { border-color: #B3C500; }
    .top_point_item:hover:nth-child(2) .ph { border-color: #E3808F; }
    .top_point_item:hover:nth-child(3) .ph { border-color: #E3CE4C; }
    
    .link_more a .ico { transition: border 0.8s cubic-bezier(0.36, 0.14, 0, 1); }
    .link_more a:hover .ico { border-width: 8px; }
    
    .common_subject .ph img,
    .column_item .ph img { transition: all 1.2s cubic-bezier(.16,1,.3,1); }
    .common_subject a:hover .ph img,
    .column_item:hover .ph img { transform: scale(1.05);}
    
    .footer_nav_item a:hover { text-decoration: underline; }
    
    .reservation_list_item .function a { transition: opacity 0.8s cubic-bezier(.16,1,.3,1); }
    .reservation_list_item .function a:hover { opacity: 0.7; }
}











