@charset "UTF-8";

/* ------------------------------------
  style.css
  Date: 2022-03-10
------------------------------------ */


/* ------------------------------------
  Reset
------------------------------------ */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    border: 0;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

blockquote,
q {
    quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
    content: "";
}

input,
textarea {
    margin: 0;
    padding: 0;
}

ol,
ul {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

h1,
h2,
h3,
h4 {
    font-weight: 500;
}

i,
em {
    font-style: normal;
}


/* ------------------------------------
  Base
------------------------------------ */

html {
    font-size: 62.5%;
}

body {
    background: #fff;
    color: #525252;
    font-family: "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1;
    -webkit-text-size-adjust: none;
}

html.wf-active body {
    font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", sans-serif;
}

*:focus {
    outline: none;
}

* {
    box-sizing: border-box;
}

img {
    border: 0;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
}

a {
    color: #525252;
    text-decoration: none;
}

a:hover {
    color: #525252;
    transition: all 0.3s ease-in-out;
}

a:visited {
    color: #525252;
}

a:active,
a:focus {
    outline: none;
}

body:not(.mobile) a.sp_link {
    pointer-events: none;
}

body:not(.mobile) a:hover {
    opacity: 0.65;
}

.wrapper {
    background: #fff;
    letter-spacing: 0.1em;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}

.wrapper h1,
.wrapper h2,
.wrapper h3,
.wrapper h4,
.wrapper h5 {
    letter-spacing: 0.1em;
}

.content {
    position: relative;
    z-index: 100;
}

.sec_inner {
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}

.sec_title {
    font-size: 4.2rem;
    font-weight: 400;
    line-height: 1.5;
}

.sec_title.title_01 {
    margin-bottom: 77px;
    position: relative;
}

.sec_title.title_01 em {
    display: block;
    font-size: 12.4rem;
    left: 0;
    line-height: 1.4;
    position: absolute;
    text-align: center;
    top: -118px;
    width: 100%;
    z-index: 1;
}

.sec_title.title_01 em.white {
    color: #fff;
}

.sec_title.title_01 em.purple {
    color: #f3dff7;
}

.sec_title.title_01 span {
    display: block;
    position: relative;
    text-align: center;
    z-index: 2;
}

.sec_title.title_02 {
    align-items: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 380px auto;
    display: flex;
    flex-direction: column;
    font-size: 4.2rem;
    height: 380px;
    justify-content: center;
    margin-bottom: 20px;
    width: 100%;
}

.sec_title.title_02 em {
    display: block;
    margin-bottom: 20px;
}

.sec_title.title_02 em.green {
    color: #66aca8;
}

.sec_title.title_02 em.purple {
    color: #c36cd4;
}

.sec_title.title_02 span {
    display: block;
}

.sec_title.title_02.bg_green {
    background-image: url(../img/title_bg_green.png);
}

.sec_title.title_02.bg_white {
    background-image: url(../img/title_bg_white.png);
}

.sec_title.title_03 {
    align-items: flex-end;
    background-position: 118px bottom;
    background-repeat: no-repeat;
    background-size: 284px auto;
    display: flex;
    font-weight: 400;
    margin-bottom: 80px;
    padding-bottom: 30px;
}

.sec_title.title_03 em {
    font-size: 6.2rem;
    line-height: 1;
}

.sec_title.title_03 span {
    font-size: 3rem;
    margin-left: 60px;
}

.sec_title.title_03.green {
    background-image: url(../img/title_bg_stripe_green.svg);
}

.sec_title.title_03.green em {
    color: #66aca8;
}

.sec p {
    hanging-punctuation: allow-end;
    letter-spacing: 0.1em;
    line-break: strict;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.font_min {
    font-family: "Noto Serif JP", serif;
}

.taC {
    text-align: center;
}

.bold {
    font-weight: 700;
}

.cv_wrap {
    background: #f2ebeb;
}

.cv_btn {
    max-width: 480px;
    width: 100%;
}

.cv_btn a {
    align-items: center;
    background-image: linear-gradient(to bottom, #8cd6d2 3%, #66aca8 98%);
    border-radius: 10px;
    color: #fff;
    display: flex;
    font-size: 2.2rem;
    font-weight: 700;
    height: 80px;
    justify-content: center;
    letter-spacing: 0.1em;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.cv_btn a::after {
    background: url(../img/btn_arr.svg) center center/100% no-repeat;
    content: "";
    height: 20px;
    margin-left: 8px;
    width: 20px;
    z-index: 2;
}

.cv_btn a::before {
    background-image: linear-gradient(to bottom, #66aca8 3%, #8cd6d2 98%);
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: all 0.3s ease-in-out;
    width: 100%;
    z-index: 1;
}

.cv_btn a span {
    position: relative;
    z-index: 2;
}

body:not(.mobile) .cv_btn a:hover {
    opacity: 1;
}

body:not(.mobile) .cv_btn a:hover::before {
    opacity: 1;
}

.anim_up_in {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    transition: all 0.6s ease-in-out 0.2s;
}

.anim_up_in.show {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.anim_scale {
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: anim_scale;
    animation-name: anim_scale;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
}


/* ------------------------------------
  Header
------------------------------------ */

.header {
    z-index: 200;
}

.header_inner {
    display: flex;
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}

.header_logo small {
    display: block;
    font-size: 1.2rem;
    letter-spacing: normal;
    line-height: 1.5;
    margin-bottom: 10px;
}

.header_logo a,
.header_logo span {
    display: block;
    width: 100%;
}

.header_logo img {
    height: auto;
    width: 100%;
}

.header_time {
    margin: 0 0 0 auto;
    width: 275px;
}

.header_time .tel {
    border-bottom: 1px solid #b7b7b7;
    margin-bottom: 5px;
    padding-bottom: 15px;
}

.header_time .tel a {
    align-items: flex-end;
    display: flex;
    font-size: 3.1rem;
    font-weight: 500;
    line-height: 1.45;
    margin-right: -5%;
}

.header_time .time {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.header_time .time dd {
    width: calc(100% - 75px);
}

.header_time .time dd:nth-of-type(3) {
    color: #f08080;
    width: auto;
}

.header .cv_btn {
    margin: 0 0 0 40px;
    width: 330px;
}

body.fixed {
    height: 100vh;
    left: 0;
    overflow-y: hidden;
    position: fixed;
    width: 100%;
}


/* ------------------------------------
  footer
------------------------------------ */

.footer {
    background: #fff;
}

.footer_copy {
    align-items: center;
    display: flex;
    font-size: 1.4rem;
    height: 60px;
    justify-content: center;
    letter-spacing: 0.1em;
}


/* ------------------------------------
  フローティングバナー
------------------------------------ */

.floating_btn {
    background: #fff;
    bottom: 0;
    display: none;
    left: 0;
    padding: 15px 5px;
    position: fixed;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    transition: -webkit-transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
    width: 100%;
    z-index: 100;
}

.floating_btn .inner {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 480px;
}

.floating_btn .cv_btn {
    margin: 0 auto;
    width: 90%;
}

.floating_btn .cv_btn a {
    font-size: 1.6rem;
    height: 100%;
    line-height: 1.31;
    padding-left: 14px;
    text-align: center;
}

.floating_btn .cv_btn a::after {
    height: 14px;
    margin-left: 11px;
    width: 14px;
}

.floating_btn .tel_wrap {
    width: 47.95%;
}

.floating_btn .tel_wrap .tel {
    border-bottom: 1px solid #b7b7b7;
    margin-bottom: 5px;
    padding-bottom: 15px;
}

.floating_btn .tel_wrap .tel a {
    align-items: flex-end;
    display: flex;
    font-size: 3.1rem;
    font-weight: 500;
    line-height: 1.45;
    margin-right: -5%;
}

.floating_btn .tel_wrap .time {
    display: inline-flex;
    flex-wrap: wrap;
    margin: 0 auto;
}

.floating_btn .tel_wrap .time li {
    align-items: center;
    display: flex;
    font-size: 1.1rem;
    margin-top: 5px;
}

.floating_btn .tel_wrap .time li.weekday span:first-of-type {
    color: #66aca8;
}

.floating_btn .tel_wrap .time li.saturday {
    margin-right: 5px;
}

.floating_btn .tel_wrap .time li.saturday span:first-of-type {
    color: #6495ed;
}

.floating_btn .tel_wrap .time li.holiday {
    font-size: 0.8rem;
}

.floating_btn .tel_wrap .time li.holiday span {
    color: #f08080;
}

.floating_btn .tel_wrap .time li.holiday span:first-of-type {
    font-size: 0.8rem;
    margin-right: 0;
}

.floating_btn .tel_wrap .time li.holiday span:first-of-type::after {
    content: "：";
}

.floating_btn .tel_wrap .time li span:first-of-type {
    font-size: 0.9rem;
    margin-right: 5px;
}

.floating_btn.fixed {
    -webkit-transform: translateY(0);
    transform: translateY(0);
}


/* ------------------------------------
  コンテンツ
------------------------------------ */

.sec_hero {
    background: #f2ebeb;
    position: relative;
}

.sec_hero .sec_inner {
    padding: 263px 0 40px 555px;
}

.sec_hero .hero_txt_01 {
    align-items: center;
    border: 1px solid #66aca8;
    border-radius: 6px;
    display: flex;
    font-size: 2.8rem;
    height: 46px;
    justify-content: center;
    margin-bottom: 10px;
    position: relative;
    transition-delay: 0.4s;
    width: 222px;
    z-index: 2;
}

.sec_hero .hero_txt_02 {
    font-size: 3.5rem;
    font-weight: 400;
    line-height: 1.6;
    position: relative;
    transition-delay: 0.4s;
    z-index: 2;
}

.sec_hero .hero_txt_02 em,
.sec_hero .hero_txt_02 b {
    display: inline-block;
    font-size: 128.57%;
    font-weight: 400;
    line-height: 1.38;
}

.sec_hero .hero_txt_02 em {
    color: #66aca8;
}

.sec_hero .hero_txt_03 {
    position: relative;
    transition-delay: 0.4s;
    z-index: 2;
}

.sec_hero .hero_txt_03::after {
    background-image: url(../img/hero_txt_bg_01.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

.sec_hero .hero_txt_03 p {
    position: relative;
    z-index: 2;
}

.sec_hero .hero_txt_03 p span {
    display: block;
}

.sec_hero .hero_txt_03 p .txt_01 {
    display: block;
    font-size: 100%;
    line-height: 1.8;
    margin-bottom: 10px;
}

.sec_hero .hero_txt_03 p .txt_02 {
    font-size: 112.5%;
    line-height: 1.3;
    margin-bottom: 10px;
    letter-spacing: 0;
}

.sec_hero .hero_txt_03 p .txt_02 em {
    color: #cd5c5c;
    font-size: 148.14%;
    line-height: 1;
    margin: 0 5px;
}

.sec_hero .hero_txt_03 p .txt_03 {
    align-items: center;
    color: #66aca8;
    display: flex;
    font-size: 75%;
    line-height: 1.8;
}

.sec_hero .hero_txt_03 p .txt_03 b {
    color: #cd5c5c;
    font-weight: 400;
    margin-left: 15px;
}

.sec_hero .hero_txt_03 figure {
    align-items: center;
    display: inline-flex;
    position: absolute;
    z-index: 2;
}

.sec_hero .hero_txt_03 figure .logo {
    width: 90%;
}

.sec_hero .hero_txt_03 figure .img {
    width: 50%;
}

.sec_hero .hero_cv {
    background: rgb(255 255 255 / 0.7);
    border-radius: 10px;
    padding: 30px;
    position: relative;
    transition-delay: 0.6s;
    z-index: 2;
}

.sec_hero .hero_cv .cv_title {
    align-items: center;
    display: flex;
}

.sec_hero .hero_cv .cv_title em {
    font-size: 3.5rem;
    width: 180px;
}

.sec_hero .hero_cv .cv_title span {
    border-left: 1px solid #b7b7b7;
    flex: 1;
    font-size: 2.2rem;
    line-height: 1.4;
    padding-left: 30px;
}

.sec_hero .hero_cv .cv_title span b {
    color: #cd5c5c;
    display: block;
    font-weight: 400;
}

.sec_hero .hero_cv .cv_price {
    align-items: flex-end;
    display: flex;
    line-height: 0.8;
    margin: 15px 0 40px;
    width: 100%;
}

.sec_hero .hero_cv .cv_price dt {
    align-items: center;
    background: #66aca8;
    border-radius: 6px;
    color: #fff;
    display: flex;
    font-size: 2.6rem;
    font-weight: 400;
    height: 46px;
    justify-content: center;
    width: 80px;
}

.sec_hero .hero_cv .cv_price dd {
    align-items: center;
    display: flex;
    padding-left: 30px;
}

.sec_hero .hero_cv .cv_price dd span {
    letter-spacing: 0.1em;
}

.sec_hero .hero_cv .cv_price dd span:first-of-type {
    color: #66aca8;
    font-size: clamp(6rem, 1vw, 6.3rem);
}

body.ie .sec_hero .hero_cv .cv_price dd span:first-of-type {
    font-size: 6.3rem;
}

.sec_hero .hero_cv .cv_price dd span:first-of-type em {
    font-size: 139.68%;
}

.sec_hero .hero_cv .cv_price dd span:nth-of-type(2) {
    align-items: center;
    display: inline-flex;
    flex-direction: column;
    justify-content: flex-end;
    line-height: 1;
    margin: 0 25px 0 15px;
}

.sec_hero .hero_cv .cv_price dd span:nth-of-type(2) b {
    font-size: clamp(4rem, 1vw, 4.7rem);
    font-weight: 400;
    order: 2;
}

body.ie .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) b {
    font-size: 4.7rem;
}

.sec_hero .hero_cv .cv_price dd span:nth-of-type(2) small {
    font-size: 2rem;
    order: 1;
}

.sec_hero .hero_cv .cv_price dd span:last-of-type {
    font-size: clamp(5rem, 1vw, 5.5rem);
}

body.ie .sec_hero .hero_cv .cv_price dd span:last-of-type {
    font-size: 5.5rem;
}

.sec_hero .hero_cv .cv_att {
    font-size: 1.8rem;
    line-height: 1.5;
}

.sec_hero .hero_cv .cv_btn {
    margin: 15px auto 0;
    width: 330px;
}

.sec_hero .hero_cv .cv_btn a {
    font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", sans-serif;
}

.sec_intro.show {
    background: #f7f5f8 url(../img/intro_visual.png) center center/auto 100% no-repeat;
}

.sec_intro .sec_inner {
    padding-bottom: 120px;
    padding-top: 120px;
}

.sec_intro .sec_title {
    font-size: 4.2rem;
    font-weight: 400;
    letter-spacing: 0.1em;
    margin-bottom: 60px;
}

.sec_intro .intro_list li {
    display: flex;
}

.sec_intro .intro_list li::before {
    background: url(../img/icon_check_purle.svg) center center/100% 100% no-repeat;
    content: "";
    display: block;
    height: 32px;
    margin-right: 20px;
    width: 36px;
}

.sec_intro .intro_list li p {
    font-size: 2rem;
    line-height: 1.5;
}

.sec_intro .intro_list li+li {
    margin-top: 20px;
}

.sec_invisa {
    background: #fff;
    position: relative;
    z-index: 20;
}

.sec_invisa .sec_title {
    font-size: 4.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.58;
    position: relative;
    z-index: 2;
}

.sec_invisa .sec_title span {
    position: relative;
    z-index: 2;
}

.sec_invisa .sec_title b {
    color: #66aca8;
    font-weight: 500;
}

.sec_invisa .sec_title::before {
    background: url(../img/bg_stripe_green.svg) center center/cover no-repeat;
    content: "";
    height: 340px;
    left: 0;
    position: absolute;
    top: 0;
    width: 340px;
    z-index: 1;
}

.sec_invisa .sec_arr {
    background: url(../img/scroll_arr.svg) center center/100% 100% no-repeat;
    height: 95px;
    left: calc(50% - 24px);
    opacity: 0;
    position: absolute;
    top: calc(100% - 120px);
    transition: all 0.6s ease-in-out 0.4s;
    width: 48px;
}

.sec_invisa .sec_arr.show {
    opacity: 1;
    top: calc(100% - 47px);
}

.sec_invisa .img {
    position: relative;
    z-index: 1;
}

.sec_invisa .txt {
    max-width: 855px;
    width: 44.53%;
}

.sec_reason {
    background: #f2ebeb;
    position: relative;
    z-index: 10;
}

.sec_reason .sec_inner {
    padding-bottom: 100px;
    padding-top: 220px;
}

.sec_reason .reason_list {
    counter-reset: number;
}

.sec_reason .reason_list li {
    counter-increment: number;
    margin: 0 22.5px 90px;
    width: calc(33.333% - 45px);
}

.sec_reason .reason_list .tit {
    letter-spacing: 0.1em;
    margin-bottom: 30px;
    min-height: 100px;
    padding-left: 92px;
    position: relative;
}

.sec_reason .reason_list .tit span {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.6;
}

.sec_reason .reason_list .tit span b {
    color: #c36cd4;
}

.sec_reason .reason_list .tit::before {
    color: #c36cd4;
    content: counter(number);
    font-family: "Noto Serif JP", serif;
    font-size: 6.3rem;
    font-weight: 400;
    left: 0;
    line-height: 0.75;
    position: absolute;
    top: -10px;
}

.sec_reason .reason_list .tit::after {
    background: #c36cd4;
    content: "";
    height: 100px;
    left: 52px;
    position: absolute;
    top: 0;
    -webkit-transform: rotate(21deg);
    transform: rotate(21deg);
    width: 1px;
}

.sec_reason .reason_list .img {
    background: #fff;
    height: 0;
    margin-bottom: 30px;
    overflow: hidden;
    padding-top: 70.27%;
    position: relative;
    width: 100%;
}

.sec_reason .reason_list .img img {
    height: auto;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
}

.sec_reason .reason_list .txt {
    font-size: 1.4rem;
    line-height: 1.8;
}

.sec_reason .reason_list[data-scroll] li:nth-child(1) {
    transition-delay: 0.4s;
}

.sec_reason .reason_list[data-scroll] li:nth-child(2) {
    transition-delay: 0.8s;
}

.sec_reason .reason_list[data-scroll] li:nth-child(3) {
    transition-delay: 1.2s;
}

.sec_reason .reason_list[data-scroll] li:nth-child(4) {
    transition-delay: 1.6s;
}

.sec_reason .reason_list[data-scroll] li:nth-child(5) {
    transition-delay: 2s;
}

.sec_reason .reason_list[data-scroll] li:nth-child(6) {
    transition-delay: 2.4s;
}

.sec_design.show {
    background: #fff url(../img/design_visual.png) center top no-repeat;
}

.sec_design .txt p {
    font-size: 1.8rem;
    line-height: 1.77;
    margin-bottom: 30px;
}

.sec_design .img {
    position: relative;
}

.sec_design .img::after {
    background: url(../img/bg_stripe_purple.svg) center center/100% 100% no-repeat;
    content: "";
    height: 350px;
    left: 40px;
    position: absolute;
    top: 40px;
    width: 635px;
}

.sec_design .img img {
    position: relative;
    z-index: 2;
}

.sec_design .box {
    background: #f9f0fb;
    margin-top: 104px;
    padding: 30px;
    text-align: center;
}

.sec_design .box p {
    font-family: "Noto Serif JP", serif;
    font-size: 3.4rem;
    font-weight: 400;
    line-height: 1.76;
}

.sec_merit.show {
    background: #f2f9ff url(../img/merit_visual.jpg) center top/cover no-repeat;
}

.sec_merit .sec_title {
    width: 100%;
}

.sec_merit .sec_title span,
.sec_merit .sec_title em {
    text-align: left;
}

.sec_merit .txt p {
    font-size: 1.8rem;
    line-height: 1.77;
    margin-bottom: 35px;
}

.sec_merit .img {
    background: #fff;
    opacity: 1;
    position: relative;
}

.sec_merit .img img {
    position: relative;
    z-index: 2;
}

.sec_available {
    background: #fff;
}

.sec_available .sec_inner {
    padding-bottom: 100px;
    padding-top: 90px;
}

.sec_available .available_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: -70px;
    width: 100%;
}

.sec_available .available_list li {
    margin-bottom: 70px;
    width: 25%;
}

.sec_available .available_list li figure {
    text-align: center;
}

.sec_available .available_list li figure .img img {
    width: 189.5px;
}

.sec_available .available_list li figure figcaption {
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.6;
    text-align: center;
}

.sec_available .available_list[data-scroll] li:nth-child(1) {
    transition-delay: 0.2s;
}

.sec_available .available_list[data-scroll] li:nth-child(2) {
    transition-delay: 0.4s;
}

.sec_available .available_list[data-scroll] li:nth-child(3) {
    transition-delay: 0.6s;
}

.sec_available .available_list[data-scroll] li:nth-child(4) {
    transition-delay: 0.8s;
}

.sec_available .available_list[data-scroll] li:nth-child(5) {
    transition-delay: 1s;
}

.sec_available .available_list[data-scroll] li:nth-child(6) {
    transition-delay: 1.2s;
}

.sec_available .available_list[data-scroll] li:nth-child(7) {
    transition-delay: 1.4s;
}

.sec_available .available_list[data-scroll].show li {
    opacity: 1;
}

.sec_flow.show {
    background: #fff url(../img/flow_visual.png) center top no-repeat;
}

.sec_flow .sec_inner {
    padding-bottom: 100px;
    padding-top: 90px;
}

.sec_flow .flow_list li {
    margin: 0 13px;
    width: calc(25% - 26px);
}

.sec_flow .flow_list .flow_num {
    background: url(../img/arr_purple.svg) center top/16px auto no-repeat;
    color: #c36cd4;
    display: block;
    font-size: 6.3rem;
    font-weight: 200;
    line-height: 1.42;
    margin-bottom: 10px;
    text-align: center;
}

.sec_flow .flow_list .flow_img {
    margin: 0 auto 30px;
    max-width: 214px;
    width: 76.42%;
}

.sec_flow .flow_list .flow_tit {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 20px;
    text-align: center;
}

.sec_flow .flow_list .flow_txt {
    font-size: 1.4rem;
    line-height: 1.875;
}

.sec_price {
    background: #fff;
}

.sec_price .sec_inner {
    padding-bottom: 100px;
    padding-top: 90px;
}

.sec_price .plan_cnt {
    border: 1px solid #e5e5e5;
    margin-bottom: 60px;
    width: calc(50% - 30px);
}

.sec_price .plan_tit {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: clamp(2.2rem, 2.33vw, 2.8rem);
    font-weight: 400;
    height: 80px;
    justify-content: center;
    width: 100%;
}

.sec_price .plan_price li {
    align-items: center;
    border-bottom: 1px solid #e5e5e5;
    display: flex;
    padding: 30px;
    width: 100%;
}

.sec_price .plan_price li>div {
    align-items: center;
    border-radius: 6px;
    color: #fff;
    display: flex;
    font-size: clamp(2rem, 2.16vw, 2.6rem);
    font-weight: 400;
    height: 46px;
    justify-content: center;
    width: 80px;
}

.sec_price .plan_price li>p {
    flex: 1;
    padding-left: 30px;
}

.sec_price .plan_price li.price_01 {
    height: 106px;
}

.sec_price .plan_price li.price_01>p {
    font-size: clamp(2.2rem, 2.33vw, 2.8rem);
}

.sec_price .plan_price li.price_02 {
    height: 156px;
}

.sec_price .plan_price li.price_02>p {
    align-items: center;
    display: flex;
    line-height: 0.8;
}

.sec_price .plan_price li.price_02>p span:first-of-type {
    font-size: clamp(4.5rem, 5.25vw, 6.3rem);
}

.sec_price .plan_price li.price_02>p span:first-of-type em {
    font-size: clamp(6rem, 6vw, 8.8rem);
    letter-spacing: 0.1em;
    line-height: 0.5;
}

.sec_price .plan_price li.price_02>p span:nth-of-type(2) {
    align-items: baseline;
    display: inline-flex;
    flex-direction: column;
    justify-content: flex-end;
    line-height: 1;
    margin: 0 25px 0 15px;
}

.sec_price .plan_price li.price_02>p span:nth-of-type(2) b {
    font-size: clamp(3.7rem, 3.9vw, 4.7rem);
    font-weight: 400;
    order: 2;
}

.sec_price .plan_price li.price_02>p span:nth-of-type(2) small {
    font-size: clamp(1.5rem, 1.6vw, 2rem);
    order: 1;
}

.sec_price .plan_price li.price_02>p span:last-of-type {
    font-size: clamp(4rem, 4.58vw, 5.5rem);
}

.sec_price .plan_attention {
    padding: 25px 30px;
}

.sec_price .plan_attention li {
    font-size: 1.5rem;
    line-height: 2;
}

.sec_price .plan_cnt.green .plan_tit {
    background: #66aca8;
}

.sec_price .plan_cnt.green .plan_price li>div {
    background: #66aca8;
}

.sec_price .plan_cnt.green .plan_price li:last-of-type p span:first-of-type {
    color: #66aca8;
}

.sec_price .plan_cnt.red {
    border-color: #f08080;
    position: relative;
}

.sec_price .plan_cnt.red .plan_fuki {
    align-items: center;
    background: url(../img/plan_fuki_red.svg) center top/100% 100% no-repeat;
    color: #f08080;
    display: flex;
    font-size: 2.4rem;
    height: 98px;
    justify-content: center;
    left: 0;
    padding-bottom: 20px;
    position: absolute;
    text-align: center;
    top: -120px;
    width: 100%;
}

.sec_price .plan_cnt.red .plan_tit {
    background: #f08080;
}

.sec_price .plan_cnt.red .plan_price li {
    border-color: #f08080;
}

.sec_price .plan_cnt.red .plan_price li>div {
    background: #f08080;
}

.sec_price .plan_cnt.red .plan_price li:last-of-type p span:first-of-type {
    color: #f08080;
}

/* .sec_price .bnr_loan {
    margin-bottom: 60px;
} */

.child_banner {
    display: block;
    position: relative;
    z-index: 3;
}

.sec_price .sec_inner.show .reason_list li {
    opacity: 1;
}

.sec_koujo.show {
    background: #fff url(../img/koujo_visual.png) center top no-repeat;
}

.sec_koujo .sec_inner {
    padding-bottom: 100px;
    padding-top: 100px;
}

.sec_koujo .sec_title {
    font-size: 3.6rem;
    margin-bottom: 80px;
    text-align: center;
}

.sec_koujo .koujo_flow {
    margin-bottom: 60px;
}

.sec_koujo .koujo_flow_tit {
    border-bottom: 1px solid #66aca8;
    border-top: 1px solid #66aca8;
    font-size: 2.8rem;
    font-weight: 500;
    margin-bottom: 50px;
    padding: 20px 10px;
    text-align: center;
}

.sec_koujo .koujo_flow ol>li {
    text-align: center;
}

.sec_koujo .koujo_flow ol>li+li {
    margin-top: 120px;
    position: relative;
}

.sec_koujo .koujo_flow ol>li+li::before {
    background: url(../img/arr_green.svg) center center/100% 100% no-repeat;
    content: "";
    height: 31px;
    left: calc(50% - 24px);
    position: absolute;
    top: -70px;
    width: 48px;
}

.sec_koujo .koujo_flow ol>li .flow_tit {
    align-items: center;
    display: flex;
    font-size: 2.6rem;
    justify-content: center;
    margin-bottom: 30px;
}

.sec_koujo .koujo_flow ol>li .flow_tit i {
    margin-right: 50px;
    width: 60px;
}

.sec_koujo .koujo_flow ol>li .flow_tit em {
    color: #66aca8;
    font-family: "Noto Serif JP", serif;
    font-size: 153.85%;
    margin: 0 10px;
}

.sec_koujo .koujo_flow ol>li .flow_att {
    font-family: "Noto Serif JP", serif;
}

.sec_koujo .koujo_flow ol>li .flow_att li {
    font-size: 2rem;
    line-height: 1.7;
    text-align: center;
}

.sec_koujo .koujo_flow ol>li .flow_att li b {
    color: #cd5c5c;
    font-weight: 700;
}

.sec_koujo .koujo_example {
    background: #eff6f6;
    padding: 30px;
}

.sec_koujo .koujo_example .tit {
    color: #66aca8;
    font-size: 2.2rem;
    font-weight: 500;
    margin-bottom: 30px;
}

.sec_koujo .koujo_example .formula {
    margin: 40px 0;
}

.sec_koujo .koujo_example .box_01 {
    border: 6px solid #cdeae8;
    padding: 40px 25px 30px;
}

.sec_koujo .koujo_example .box_01 ul li span {
    font-weight: 500;
}

.sec_koujo .koujo_example .box_01 ul li span::after {
    content: "/";
    margin: 0 10px;
}

.sec_koujo .koujo_example .box_01 ul li b {
    color: #66aca8;
    font-size: 130.77%;
    font-weight: 500;
}

.sec_koujo .koujo_example .box_02 {
    background: #fff;
    border: 1px solid #66aca8;
    padding: 40px;
    text-align: center;
}

.sec_koujo .koujo_example .box_02 .total {
    font-weight: 500;
}

.sec_koujo .koujo_example .box_02 .total span:first-of-type::after {
    content: "/";
    margin: 0 10px;
}

.sec_koujo .koujo_example .box_02 .total b {
    color: #66aca8;
    font-family: "Noto Serif JP", serif;
    font-size: 130.77%;
    font-weight: 400;
}

.sec_koujo .koujo_example .box_02 .total b em {
    font-size: 129.41%;
}

.sec_koujo .koujo_example .box_02 .attention {
    font-family: "Noto Serif JP", serif;
    font-size: 2rem;
    line-height: 1.7;
    margin-top: 20px;
}

.sec_faq {
    background-color: #f8f8f8;
}

.sec_faq .sec_inner {
    padding-bottom: 100px;
    padding-top: 90px;
}

.sec_faq .sec_title.title_02 {
    margin-bottom: 20px;
}

.sec_faq .faq_wrap {
    border-top: 1px solid #b4b4b4;
}

.sec_faq .faq_wrap:last-of-type {
    border-bottom: 1px solid #b4b4b4;
}

.sec_faq .faq_question {
    cursor: pointer;
    display: flex;
    font-weight: 400;
    padding: 30px 30px 25px 0;
    position: relative;
    transition: 0.3s opacity;
    width: 100%;
}

body:not(.mobile) .sec_faq .faq_question:hover {
    opacity: 0.65;
}

.sec_faq .faq_question span {
    align-items: center;
    display: flex;
    flex: 1;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
}

.sec_faq .faq_question::before {
    color: #66aca8;
    content: "Q";
    font-family: "Noto Serif JP", serif;
    font-size: 4.2rem;
    width: 60px;
}

.sec_faq .faq_question::after {
    background: url(../img/acc_icon_plus.svg) center center/100% 100% no-repeat;
    content: "";
    height: 40px;
    position: absolute;
    right: 0;
    top: calc(50% - 20px);
    width: 40px;
}

.sec_faq .faq_question.is_active::after {
    background-image: url(../img/acc_icon_minus.svg);
}

.sec_faq .faq_answer {
    display: flex;
    padding-bottom: 35px;
    width: 100%;
}

.sec_faq .faq_answer .txt_wrap {
    flex: 1;
}

.sec_faq .faq_answer .txt_wrap p {
    font-size: 1.4rem;
    line-height: 1.875;
}

.sec_faq .faq_answer::before {
    color: #f08080;
    content: "A";
    font-family: "Noto Serif JP", serif;
    font-size: 4.2rem;
    width: 60px;
}

.sec_doctor {
    background: #fff;
}

.sec_doctor .sec_inner {
    padding-bottom: 100px;
    padding-top: 110px;
}

.sec_doctor .staff_wrap p,
.sec_doctor .staff_wrap li,
.sec_doctor .staff_wrap dl {
    font-size: 1.4rem;
    line-height: 1.875;
}

.sec_doctor .staff_wrap .tit {
    font-family: "Noto Serif JP", serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt {
    margin-bottom: 50px;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name {
    font-family: "Noto Serif JP", serif;
    line-height: 1.5;
    margin-bottom: 40px;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span b {
    font-weight: 400;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span small {
    color: #66aca8;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his dl {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his dl dt {
    width: 80px;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his dl dd {
    width: calc(100% - 80px);
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong {
    background: #eff6f6;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong .tit {
    margin-bottom: 20px;
    width: 100%;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong ul li {
    padding-left: 20px;
    text-indent: -20px;
}

.sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong ul li::before {
    content: "〇";
    margin-right: 4px;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt:last-of-type {
    padding-right: 0;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .tit {
    margin: 0 0 15px;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name {
    font-weight: 400;
    line-height: 1.5;
    margin: 0 0 20px;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name em {
    border-bottom: 1px solid #66aca8;
    display: block;
    padding-bottom: 5px;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name span {
    font-family: "Noto Serif JP", serif;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name span b {
    font-size: 137.5%;
    font-weight: 400;
    margin-right: 20px;
}

.sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name span small {
    color: #66aca8;
    font-size: 125%;
}

.sec_doctor .staff_cnt .staff_img {
    background: #f8f8f8;
}

.sec_clinic {
    background-image: linear-gradient(262deg, #f2ebeb, #f7ebea);
}

.sec_clinic .sec_inner {
    padding-bottom: 100px;
    padding-top: 110px;
}

.sec_clinic .sec_inner p {
    font-size: 1.4rem;
    line-height: 1.6;
}

.sec_clinic .sec_title_sb {
    background: url(../img/title_bg_stripe_green.svg) left bottom/283px auto no-repeat;
    font-size: 3rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
    margin-bottom: 40px;
    padding-bottom: 22px;
}

.sec_clinic .clinic_gallary .gallary_slider {
    position: relative;
}

.sec_clinic .clinic_gallary .gallary_slider .slide {
    padding-left: 24px;
    text-align: center;
}

.sec_clinic .clinic_gallary .gallary_slider .slide figure {
    background: #f8f8f8;
    height: 0;
    overflow: hidden;
    padding-top: 64.95%;
    position: relative;
    width: 100%;
}

.sec_clinic .clinic_gallary .gallary_slider .slide figure img {
    height: auto;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
}

.sec_clinic .clinic_gallary .slick-list {
    overflow: visible;
}

.sec_clinic .clinic_gallary .slick_dots {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 20px;
    width: 100%;
}

.sec_clinic .clinic_gallary .slick_dots li {
    height: 58px;
    margin: 0 10px;
    width: 58px;
}

.sec_clinic .clinic_gallary .slick_dots li button {
    align-items: center;
    background: #fff;
    border: 0;
    border-radius: 0;
    color: #525252;
    display: flex;
    font-family: "Noto Serif JP", serif;
    font-size: 3rem;
    font-weight: 200;
    height: 100%;
    justify-content: center;
    width: 100%;
}

.sec_clinic .clinic_gallary .slick_dots li:not(.slick-active) button {
    cursor: pointer;
    transition: 0.3s opacity;
}

body:not(.mobile) .sec_clinic .clinic_gallary .slick_dots li:not(.slick-active) button:hover {
    opacity: 0.65;
}

.sec_clinic .clinic_gallary .slick_dots li.slick-active button {
    background: #66aca8;
    color: #fff;
}

.sec_clinic .clinic_info {
    border-top: 1px solid #b4b4b4;
    padding: 70px 0;
}

.sec_clinic .clinic_info.access .address {
    font-size: 2.2rem;
    margin-bottom: 50px;
}

.sec_clinic .clinic_info.access .gmap {
    height: 600px;
    position: relative;
}

.sec_clinic .clinic_info.access .gmap iframe {
    height: 100%;
    left: 50%;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
}

.sec_clinic .clinic_info.time {
    padding-bottom: 60px;
}

.sec_clinic .clinic_info.time .time_table_pc {
    background: #fff;
    border: 1px solid #b4b4b4;
    border-bottom: 0;
    margin-bottom: 30px;
    width: 100%;
}

.sec_clinic .clinic_info.time .time_table_pc th,
.sec_clinic .clinic_info.time .time_table_pc td {
    border-bottom: 1px solid #b4b4b4;
    font-size: 2rem;
    height: 50px;
    text-align: center;
    vertical-align: middle;
}

.sec_clinic .clinic_info.time .time_table_pc th {
    font-weight: 400;
    width: 194px;
}

.sec_clinic .clinic_info.time .time_table_pc td {
    border-left: 1px solid #b4b4b4;
    width: calc((100% - 194px) / 7);
}

.sec_clinic .clinic_info.time .time_table_pc td span {
    display: inline-block;
}

.sec_clinic .clinic_info.time .time_table_pc td span.on {
    background: url(../img/time_icon_on.svg) center center/100% 100% no-repeat;
    height: 20px;
    width: 20px;
}

.sec_clinic .clinic_info.time .time_table_pc td span.off {
    background: url(../img/time_icon_off.svg) center center/100% 100% no-repeat;
    height: 19px;
    width: 7px;
}

.sec_clinic .clinic_info.time .time_table_pc td span.att {
    background: url(../img/time_icon_att.svg) center center/100% 100% no-repeat;
    height: 16px;
    width: 14px;
}

.sec_clinic .clinic_info.time .time_table_sp {
    background: #fff;
    border: 1px solid #b4b4b4;
    border-bottom: 0;
    margin-bottom: 5.3333vw;
    width: 100%;
}

.sec_clinic .clinic_info.time .time_table_sp th,
.sec_clinic .clinic_info.time .time_table_sp td {
    background: #fff;
    border-bottom: 1px solid #b4b4b4;
    font-size: 4.2667vw;
    font-weight: 400;
    line-height: 1.5;
    padding: 2.6667vw;
    text-align: center;
    vertical-align: middle;
    width: 50%;
}

.sec_clinic .clinic_info.time .time_table_sp td {
    border-left: 1px solid #b4b4b4;
}

.sec_clinic .clinic_info.time .time_table_sp .saturday {
    color: #66aca8;
}

.sec_clinic .clinic_info.time .time_table_sp .holiday {
    color: #f08080;
}

.sec_clinic .clinic_info.time .time_info b {
    color: #f08080;
    font-weight: 400;
}

.sec_clinic .clinic_pp {
    background: #fff;
    height: 315px;
    overflow-y: auto;
    padding: 30px;
}

.sec_clinic .clinic_pp .sec_title_sb {
    background: none;
    font-size: 2.2rem;
    margin-bottom: 20px;
    padding-bottom: 0;
    text-align: center;
}

.sec_clinic .clinic_pp p+.pp_tit {
    margin-top: 30px;
}

.sec_clinic .clinic_pp .pp_tit {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.6;
}

@media only screen {
    .sec_title.title_01[data-scroll] span {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_title.title_01[data-scroll].show span {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_title.title_02[data-scroll] span,
    .sec_title.title_02[data-scroll] em {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_title.title_02[data-scroll].show span,
    .sec_title.title_02[data-scroll].show em {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_title.title_03[data-scroll] span,
    .sec_title.title_03[data-scroll] em {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_title.title_03[data-scroll].show span,
    .sec_title.title_03[data-scroll].show em {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    [data-scroll] {
        opacity: 0;
        transition: all 0.6s ease-in-out 0s;
    }
    [data-scroll].show {
        opacity: 1;
    }
    [data-scroll].up_in {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0s;
    }
    [data-scroll].up_in.show {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_intro {
        transition-property: opacity;
    }
    .sec_intro .sec_title[data-scroll] {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_intro .sec_title[data-scroll].show {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_intro .intro_list[data-scroll] {
        opacity: 0;
        transition: all 0.6s ease-in-out 0.6s;
    }
    .sec_intro .intro_list[data-scroll].show {
        opacity: 1;
    }
    .sec_invisa .sec_title[data-scroll] span {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.2s;
    }
    .sec_invisa .sec_title[data-scroll].show span {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_reason .reason_list[data-scroll] li {
        opacity: 0;
        transition: all 0.4s ease 0.2s;
    }
    .sec_reason .reason_list[data-scroll].show li {
        opacity: 1;
    }
    .sec_design {
        transition-property: opacity;
    }
    .sec_design .img[data-scroll] img {
        opacity: 0;
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_design .img[data-scroll].show img {
        opacity: 1;
    }
    .sec_merit {
        transition-property: opacity;
    }
    .sec_merit .img[data-scroll] img {
        opacity: 0;
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_merit .img[data-scroll].show img {
        opacity: 1;
    }
    .sec_available .available_list[data-scroll] li {
        opacity: 0;
        transition: all 0.4s ease 0.2s;
    }
    .sec_flow {
        transition-property: opacity;
    }
    .sec_flow .flow_list[data-scroll] li {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.4s ease-in-out 0.4s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(1) {
        transition-delay: 0.4s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(2) {
        transition-delay: 0.8s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(3) {
        transition-delay: 1.2s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(4) {
        transition-delay: 1.6s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(5) {
        transition-delay: 2s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(6) {
        transition-delay: 2.4s;
    }
    .sec_flow .flow_list[data-scroll] li:nth-child(7) {
        transition-delay: 2.8s;
    }
    .sec_flow .flow_list[data-scroll].show li {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .sec_koujo {
        transition-property: opacity;
    }
    .sec_doctor .staff_cnt .staff_img img {
        opacity: 0;
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_doctor .staff_cnt.show .staff_img img {
        opacity: 1;
    }
    .sec_clinic .clinic_info[data-scroll] .sec_title_sb span {
        opacity: 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        transition: all 0.6s ease-in-out 0.4s;
    }
    .sec_clinic .clinic_info[data-scroll].show .sec_title_sb span {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@media not screen,
screen and (min-width: 601px) {
    .vsp600 {
        display: none;
    }
}

@media screen and (min-width: 601px),
print {
    .sec_hero .hero_txt_03 figure .img {
        margin-left: 4.72%;
    }
    .sec_reason .reason_list {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -10px -30px;
        width: calc(100% + 20px);
    }
    .sec_reason .reason_list .txt {
        letter-spacing: 0.07em;
        margin-right: -2%;
    }
    .sec_flow .flow_list {
        display: flex;
        justify-content: center;
        margin: 0 -13px;
        width: calc(100% + 26px);
    }
    .sec_price .plan_wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: -30px;
        width: 100%;
    }
    .sec_koujo .koujo_example .box_01 ul li {
        align-items: flex-end;
        display: flex;
        justify-content: center;
        margin: 0 0 15px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name {
        align-items: center;
        display: flex;
        width: 100%;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name em {
        width: 80px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span {
        flex: 1;
        font-size: 2.2rem;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span b {
        margin-right: 20px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his {
        display: flex;
        width: 100%;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his .tit {
        width: 80px;
    }
    .sec_doctor .staff_list.wrap_02 .inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: -60px;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt {
        margin-bottom: 70px;
        width: 100%;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .staff_his li br {
        display: none;
    }
    .sec_clinic .clinic_gallary {
        margin-left: calc(-50vw + 50%);
        margin-right: calc(-50vw + 50%);
        overflow: hidden;
    }
    .sec_clinic .clinic_gallary .gallary_inner {
        margin: 0 auto;
        max-width: 1200px;
        width: 100%;
    }
    .sec_clinic .clinic_gallary .gallary_slider .slider {
        margin: 0 0 70px -24px;
        width: calc(100% + 24px);
    }
    .sec_clinic .clinic_info.time .time_table_sp {
        display: none;
    }
}

@media not screen,
screen and (min-width: 961px) {
    .vsp960 {
        display: none;
    }
}

@media screen and (min-width: 961px),
print {
    .cv_wrap {
        align-items: center;
        display: flex;
        height: 260px;
        justify-content: center;
        width: 100%;
    }
    .header {
        left: 0;
        padding-top: 40px;
        position: absolute;
        top: 0;
        width: 100%;
    }
    .header_logo {
        width: 222px;
    }
    .header_time .tel a::before {
        content: "TEL.";
        font-size: 1.6rem;
        line-height: 1.9;
        margin-right: 15px;
    }
    .header_time .time dt,
    .header_time .time dd {
        font-size: 1.6rem;
        margin-top: 10px;
    }
    .header_time .time dt {
        align-items: center;
        border-radius: 4px;
        color: #fff;
        display: flex;
        height: 26px;
        justify-content: center;
        margin-right: 15px;
        width: 60px;
    }
    .header_time .time dt:first-of-type {
        background: #66aca8;
    }
    .header_time .time dt:nth-of-type(2) {
        background: #6495ed;
    }
    .header_time .time dt:nth-of-type(3) {
        background: #f08080;
    }
    .floating_btn .tel_wrap .tel a::before {
        content: "TEL.";
        font-size: 1.6rem;
        line-height: 1.9;
        margin-right: 15px;
    }
    .sec_hero {
        height: 1080px;
    }
    .sec_hero .hero_txt_03 {
        align-items: center;
        display: flex;
        height: 245px;
        justify-content: space-between;
        margin: -10px 0 10px -15px;
        padding: 39px 0;
        width: calc(100% + 15px);
    }
    .sec_hero .hero_txt_03 p {
        font-size: 2.4rem;
        padding-left: 40px;
    }
    .sec_hero .hero_txt_03 figure {
        right: 0;
        top: calc(50% + 10px);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 52%;
    }
    .sec_hero .hero_visual {
        background: url(../img/hero_visual_pc.png) center center/auto 100% no-repeat;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1;
    }
    .sec_invisa .sec_inner {
        align-items: center;
        display: flex;
        padding-bottom: 100px;
        padding-top: 100px;
        width: 100%;
    }
    .sec_invisa .sec_title {
        align-items: center;
        display: flex;
        height: 340px;
        margin-right: -10px;
        padding: 0 0 0 155px;
    }
    .sec_invisa .txt {
        bottom: 0;
        position: absolute;
        right: 0;
    }
    .sec_design .sec_inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding-bottom: 110px;
        padding-top: 220px;
    }
    .sec_design .sec_title {
        order: 1;
        width: 100%;
    }
    .sec_design .txt {
        order: 2;
        width: 55%;
    }
    .sec_design .img {
        order: 3;
        width: 41.66%;
    }
    .sec_design .box {
        order: 4;
        width: 100%;
    }
    .sec_merit .sec_inner {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding-bottom: 100px;
        padding-top: 220px;
    }
    .sec_merit .txt {
        margin-bottom: -35px;
        width: 55%;
    }
    .sec_merit .img {
        order: 2;
        width: 41.66%;
    }
    .sec_available .available_list li figure figcaption {
        align-items: center;
        display: flex;
        height: 64px;
        justify-content: center;
        margin-top: 20px;
    }
    .sec_price .plan_wrap {
        margin-bottom: -60px;
    }
    body.ie .sec_price .plan_tit {
        font-size: 2.8rem;
    }
    body.ie .sec_price .plan_price li>div {
        font-size: 2.6rem;
    }
    body.ie .sec_price .plan_price li.price_01>p {
        font-size: 2.8rem;
    }
    body.ie .sec_price .plan_price li.price_02>p span:first-of-type {
        font-size: 6.3rem;
    }
    body.ie .sec_price .plan_price li.price_02>p span:first-of-type em {
        font-size: 8.8rem;
    }
    body.ie .sec_price .plan_price li.price_02>p span:nth-of-type(2) b {
        font-size: 4.7rem;
    }
    body.ie .sec_price .plan_price li.price_02>p span:nth-of-type(2) small {
        font-size: 2rem;
    }
    body.ie .sec_price .plan_price li.price_02>p span:last-of-type {
        font-size: 5.5rem;
    }
    .sec_price .plan_cnt.red {
        border-width: 2px;
        margin-top: 120px;
    }
    .sec_price .plan_cnt.red .plan_price li {
        border-width: 2px;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit span {
        align-items: center;
        display: inline-flex;
    }
    .sec_koujo .koujo_example .box_01 ul {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        font-size: 2.6rem;
        justify-content: center;
    }
    .sec_koujo .koujo_example .box_01 ul li {
        display: inline-flex;
        margin-right: 15px;
    }
    .sec_koujo .koujo_example .box_01 ul li:first-child {
        width: 100%;
    }
    .sec_koujo .koujo_example .box_02 .total {
        align-items: flex-end;
        display: flex;
        font-size: 2.6rem;
        justify-content: center;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt {
        align-items: flex-start;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_info {
        flex: 1;
        padding-left: 50px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_img {
        width: 35%;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 35px;
        padding: 30px 30px 25px;
        width: 100%;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong ul {
        width: calc(50% - 20px);
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt {
        width: calc(50% - 30px);
    }
}

@media screen and (min-width: 1201px),
print {
    .sec_reason .reason_list {
        margin: 0 -22.5px -90px;
        width: calc(100% + 45px);
    }
}

@media screen and (min-width: 1921px),
print {
    .sec_koujo.show {
        background-size: cover;
    }
}

@media screen and (max-width: 1200px) {
    .sec_inner {
        padding: 0 20px;
    }
    .header_inner {
        padding: 0 20px;
    }
    .sec_hero .sec_inner {
        padding-left: 40%;
        padding-right: 20px;
    }
    .sec_hero .hero_txt_02 {
        font-size: 3.6rem;
    }
    .sec_hero .hero_cv .cv_title em {
        font-size: 3rem;
        width: 150px;
    }
    .sec_hero .hero_cv .cv_title span {
        font-size: 2rem;
        line-height: 1.65;
    }
    .sec_hero .hero_cv .cv_att {
        font-size: 1.6rem;
    }
    .sec_invisa .sec_title {
        font-size: 3.8rem;
        padding-left: 6%;
    }
    .sec_reason .reason_list li {
        margin: 0 10px 30px;
        width: calc(50% - 20px);
    }
    .sec_price .plan_price li.price_02>p span:nth-of-type(2) {
        margin: 0 10px 0 5px;
    }
}

@media screen and (max-width: 960px) {
    .wrapper {
        background: #f2ebeb;
    }
    .sec_title {
        font-size: 2.6rem;
        line-height: 1.5;
    }
    .sec_title.title_01 {
        margin-bottom: 40px;
    }
    .sec_title.title_01 em {
        font-size: 4.5rem;
        top: -60px;
    }
    .sec_title.title_02 {
        background-size: 214px auto;
        font-size: 2.2rem;
        height: 214px;
        margin-bottom: 30px;
    }
    .sec_title.title_02 em {
        margin-bottom: 5px;
    }
    .sec_title.title_03 {
        background-position: 60px bottom;
        background-size: auto 32px;
        margin-bottom: 40px;
        padding-bottom: 15px;
    }
    .sec_title.title_03 em {
        font-size: 3.2rem;
    }
    .sec_title.title_03 span {
        font-size: 1.8rem;
        margin-left: 40px;
    }
    .vpc960 {
        display: none;
    }
    .cv_wrap {
        padding: 30px 20px;
    }
    .cv_btn {
        margin: 0 auto;
    }
    .cv_btn a {
        font-size: 1.8rem;
        height: 70px;
    }
    .header {
        position: relative;
    }
    .header_inner {
        justify-content: space-between;
        padding: 20px 20px 0;
    }
    .header_logo small {
        display: none;
    }
    .header_logo a,
    .header_logo span {
        height: 100%;
    }
    .header_logo img {
        width: 222px;
    }
    .header_time {
        width: 175px;
    }
    .header_time .tel a {
        font-size: 2rem;
        line-height: 20px;
    }
    .header_time .tel a::before {
        background: url(../img/icon_tel.svg) center center/100% 100% no-repeat;
        content: "";
        height: 20px;
        margin-right: 9px;
        width: 20px;
    }
    .header_time .time dt,
    .header_time .time dd {
        margin-top: 5px;
    }
    .header_time .time dt {
        font-size: 0.9rem;
        width: 25px;
    }
    .header_time .time dt:first-of-type {
        color: #66aca8;
    }
    .header_time .time dt:nth-of-type(2) {
        color: #6495ed;
    }
    .header_time .time dt:nth-of-type(3) {
        color: #f08080;
        font-size: 0.8rem;
        width: auto;
    }
    .header_time .time dd {
        font-size: 1.1rem;
        letter-spacing: 0.09em;
        width: calc(100% - 25px);
    }
    .header_time .time dd:nth-of-type(3) {
        font-size: 0.8rem;
    }
    .header .cv_btn {
        display: none;
    }
    .floating_btn .tel_wrap .tel a {
        font-size: 2rem;
        line-height: 20px;
    }
    .floating_btn .tel_wrap .tel a::before {
        background: url(../img/icon_tel.svg) center center/100% 100% no-repeat;
        content: "";
        height: 20px;
        margin-right: 9px;
        width: 20px;
    }
    .sec_hero {
        background: #f2ebeb url(../img/hero_visual_sp.png) center top/100% auto no-repeat;
    }
    .sec_hero .sec_inner {
        padding: 4vw 2.6667vw 0;
    }
    .sec_hero .hero_txt_01 {
        border-radius: 0.5333vw;
        font-size: 2.4vw;
        height: 4.8vw;
        margin: 0 0 1.3333vw 31.2vw;
        width: 21.3333vw;
    }
    .sec_hero .hero_txt_02 {
        font-size: 4.8vw;
        margin: 0 0 2.6667vw 31.2vw;
    }
    .sec_hero .hero_txt_02 em,
    .sec_hero .hero_txt_02 b {
        font-size: 122.22%;
        line-height: 1.32;
    }
    .sec_hero .hero_txt_03 {
        margin-top: 28.8vw;
        padding: 4.8vw 0;
    }
    .sec_hero .hero_txt_03::after {
        background-color: #f2ebeb;
        left: -5%;
        width: 110%;
    }
    .sec_hero .hero_txt_03 p {
        font-size: 3.7333vw;
        text-align: center;
    }
    .sec_hero .hero_txt_03 p .txt_01 {
        margin-bottom: 0;
    }
    .sec_hero .hero_txt_03 p .txt_02 em {
        font-size: 131.25%;
    }
    .sec_hero .hero_txt_03 p .txt_02 br {
        display: none;
    }
    .sec_hero .hero_txt_03 p .txt_03 {
        font-size: 107%;
        justify-content: center;
    }
    .sec_hero .hero_txt_03 p .txt_03 b {
        margin-left: 4vw;
    }
    .sec_hero .hero_txt_03 figure {
        bottom: calc(100% + 4.5333vw);
        justify-content: space-between;
        right: 0;
        width: 66%;
    }
    .sec_hero .hero_txt_03 figure .logo {
        width: 100%;
    }
    .sec_hero .hero_txt_03 figure .img {
        width: 52.08%;
    }
    .sec_hero .hero_cv {
        background: rgb(255 255 255 / 0.9);
        padding: 15px;
        text-align: center;
        width: 100%;
    }
    .sec_hero .hero_cv .cv_title {
        display: inline-flex;
        text-align: left;
    }
    .sec_hero .hero_cv .cv_title em {
        font-size: 2rem;
        width: 100px;
    }
    .sec_hero .hero_cv .cv_title span {
        font-size: 1.4rem;
        padding-left: 15px;
    }
    .sec_hero .hero_cv .cv_title span b {
        display: inline;
    }
    .sec_hero .hero_cv .cv_price {
        justify-content: center;
        margin: 10px 0 15px;
    }
    .sec_hero .hero_cv .cv_price dt {
        border-radius: 4px;
        font-size: 1.4rem;
        height: 26px;
        width: 46px;
    }
    .sec_hero .hero_cv .cv_price dd {
        align-items: flex-end;
        padding-left: 15px;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) {
        margin: 0 10px 0 5px;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) b {
        font-size: 2.6rem;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) small {
        font-size: 1rem;
    }
    .sec_hero .hero_cv .cv_price dd span:last-of-type {
        font-size: 3rem;
    }
    .sec_hero .hero_cv .cv_att {
        font-size: 1.2rem;
        text-align: center;
    }
    .sec_hero .hero_cv .cv_btn a {
        height: 50px;
    }
    .sec_hero .hero_visual {
        display: none;
    }
    .sec_intro .sec_inner {
        padding-bottom: 30px;
        padding-top: 30px;
    }
    .sec_intro .sec_title {
        font-size: 2.2rem;
        margin-bottom: 30px;
        text-align: center;
    }
    .sec_intro .intro_list li::before {
        height: 26px;
        margin-right: 15px;
        width: 30px;
    }
    .sec_intro .intro_list li p {
        flex: 1;
        font-size: 1.45rem;
    }
    .sec_intro .intro_list li+li {
        margin-top: 10px;
    }
    .sec_invisa .sec_inner {
        padding-bottom: 45px;
        padding-top: 60px;
    }
    .sec_invisa .sec_title {
        font-size: 3rem;
        margin-bottom: 0;
    }
    .sec_invisa .sec_title::before {
        height: 180px;
        left: -30px;
        top: calc(50% - 90px);
        width: 180px;
    }
    .sec_invisa .sec_arr {
        height: 60px;
        left: calc(50% - 15px);
        top: calc(100% - 60px);
        width: 30px;
    }
    .sec_invisa .sec_arr.show {
        top: calc(100% - 30px);
    }
    .sec_invisa .img {
        margin: 0 auto;
        width: 360px;
    }
    .sec_invisa .txt {
        margin: 0 -20px 0 auto;
    }
    .sec_reason .sec_inner {
        padding-bottom: 50px;
        padding-top: 110px;
    }
    .sec_reason .reason_list .tit {
        margin-bottom: 20px;
        padding-left: 88px;
    }
    .sec_reason .reason_list .tit span {
        font-size: 1.8rem;
    }
    .sec_reason .reason_list .tit::before {
        font-size: 5.9rem;
    }
    .sec_reason .reason_list .img {
        margin-bottom: 20px;
    }
    .sec_design.show {
        background-size: 100% auto;
    }
    .sec_design .sec_inner {
        padding-bottom: 55px;
        padding-top: 110px;
    }
    .sec_design .txt p {
        font-size: 1.4rem;
    }
    .sec_design .img {
        margin-bottom: 80px;
        width: 72.05%;
    }
    .sec_design .img::after {
        height: 126.9%;
        left: 20px;
        top: 20px;
        width: 127%;
    }
    .sec_design .box {
        margin-top: 0;
        padding: 20px;
    }
    .sec_design .box p {
        font-size: 2rem;
        line-height: 1.5;
    }
    .sec_merit .sec_inner {
        overflow: hidden;
        padding-bottom: 0;
        padding-top: 110px;
    }
    .sec_merit .txt p {
        font-size: 1.4rem;
        margin-bottom: 20px;
    }
    .sec_merit .img {
        margin-bottom: 20px;
        text-align: center;
    }
    .sec_available .sec_inner {
        padding-bottom: 50px;
        padding-top: 45px;
    }
    .sec_available .sec_title.title_02 {
        margin-bottom: 10px;
    }
    .sec_available .available_list {
        margin-bottom: 0;
        overflow: hidden;
    }
    .sec_available .available_list li {
        margin-bottom: 20px;
        width: 33.333%;
    }
    .sec_available .available_list li figure .img {
        align-items: center;
        display: flex;
        height: 100px;
        justify-content: center;
    }
    .sec_available .available_list li figure .img img {
        width: 70.59%;
    }
    .sec_available .available_list li figure figcaption {
        font-size: 1.6rem;
        margin-top: 0;
    }
    .sec_flow .sec_inner {
        padding-bottom: 50px;
        padding-top: 45px;
    }
    .sec_flow .flow_list li {
        width: calc(50% - 26px);
    }
    .sec_flow .flow_list .flow_num {
        background-size: 14px 8px;
        font-size: 4.8rem;
    }
    .sec_price .sec_inner {
        padding-bottom: 50px;
        padding-top: 45px;
    }
    .sec_price .plan_cnt {
        margin-bottom: 30px;
        width: calc(50% - 10px);
    }
    .sec_price .plan_tit {
        font-size: 1.8rem;
        height: 50px;
    }
    .sec_price .plan_price li {
        padding: 15px 20px;
    }
    .sec_price .plan_price li>div {
        border-radius: 4px;
        font-size: 1.6rem;
        height: 28px;
        width: 50px;
    }
    .sec_price .plan_price li>p {
        padding-left: 20px;
    }
    .sec_price .plan_price li.price_01 {
        height: 68px;
    }
    .sec_price .plan_price li.price_01>p {
        font-size: 1.6rem;
    }
    .sec_price .plan_price li.price_02 {
        height: 105px;
    }
    .sec_price .plan_price li.price_02>p span:first-of-type {
        font-size: 3.9rem;
    }
    .sec_price .plan_price li.price_02>p span:first-of-type em {
        font-size: 128.21%;
    }
    .sec_price .plan_price li.price_02>p span:nth-of-type(2) b {
        font-size: 2.9rem;
    }
    .sec_price .plan_price li.price_02>p span:nth-of-type(2) small {
        font-size: 1.2rem;
    }
    .sec_price .plan_price li.price_02>p span:last-of-type {
        font-size: 3.3rem;
    }
    .sec_price .plan_cnt.red {
        margin-top: 72px;
    }
    .sec_price .plan_cnt.red .plan_fuki {
        font-size: 1.8rem;
        height: 68px;
        margin-bottom: 15px;
        top: -78px;
    }
    .sec_price .bnr_loan {
        margin-top: 30px;
        text-align: center;
    }
    .sec_koujo .sec_inner {
        padding-bottom: 50px;
        padding-top: 50px;
    }
    .sec_koujo .sec_title {
        font-size: 2.2rem;
        margin-bottom: 30px;
    }
    .sec_koujo .koujo_flow {
        margin-bottom: 30px;
    }
    .sec_koujo .koujo_flow_tit {
        border: 1px solid #66aca8;
        font-size: 1.8rem;
        line-height: 1.67;
        margin-bottom: 35px;
        padding: 10px;
    }
    .sec_koujo .koujo_flow ol>li+li {
        margin-top: 70px;
    }
    .sec_koujo .koujo_flow ol>li+li::before {
        height: 18px;
        left: calc(50% - 14px);
        top: -46px;
        width: 28px;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit {
        font-size: 1.8rem;
        line-height: 1.4;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit i {
        margin-right: 20px;
        width: 32px;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit span {
        text-align: left;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit em {
        font-size: 155.56%;
        margin: 0 0 0 10px;
    }
    .sec_koujo .koujo_flow ol>li .flow_att li {
        font-size: 1.6rem;
    }
    .sec_koujo .koujo_example {
        padding: 20px;
    }
    .sec_koujo .koujo_example .tit {
        font-size: 1.8rem;
        margin-bottom: 20px;
        text-align: center;
    }
    .sec_koujo .koujo_example .formula {
        margin: 20px 0;
        text-align: center;
    }
    .sec_koujo .koujo_example .box_01 {
        border-width: 4px;
        padding: 15px;
    }
    .sec_koujo .koujo_example .box_01 ul {
        font-size: 1.6rem;
    }
    .sec_koujo .koujo_example .box_01 ul li+li {
        margin-top: 15px;
    }
    .sec_koujo .koujo_example .box_01 ul li span {
        display: block;
    }
    .sec_koujo .koujo_example .box_01 ul li span::after {
        margin: 0 5px;
    }
    .sec_koujo .koujo_example .box_01 ul li b {
        display: block;
        font-size: 125%;
    }
    .sec_koujo .koujo_example .box_02 {
        padding: 20px;
    }
    .sec_koujo .koujo_example .box_02 .total {
        font-size: 1.6rem;
        line-height: 1.63;
    }
    .sec_koujo .koujo_example .box_02 .total span:first-of-type::after {
        margin: 0 5px;
    }
    .sec_koujo .koujo_example .box_02 .total b {
        font-size: 137.5%;
        margin-right: 5px;
    }
    .sec_koujo .koujo_example .box_02 .attention {
        font-size: 1.4rem;
        margin-top: 15px;
        text-align: left;
    }
    .sec_faq .sec_inner {
        padding-bottom: 50px;
        padding-top: 45px;
    }
    .sec_faq .sec_title.title_02 {
        margin-bottom: 15px;
    }
    .sec_faq .faq_question {
        padding: 20px 30px 20px 0;
    }
    .sec_faq .faq_question span {
        font-size: 1.7rem;
        line-height: 1.78;
    }
    .sec_faq .faq_question::before {
        font-size: 211.11%;
        text-align: center;
        width: 50px;
    }
    .sec_faq .faq_question::after {
        height: 30px;
        width: 30px;
    }
    .sec_faq .faq_answer {
        padding-bottom: 20px;
    }
    .sec_faq .faq_answer::before {
        font-size: 3.8rem;
        text-align: center;
        width: 50px;
    }
    .sec_doctor .sec_inner {
        padding-bottom: 50px;
        padding-top: 45px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_img {
        margin-bottom: 30px;
        text-align: center;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong {
        margin-top: 20px;
        padding: 20px;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong .tit {
        margin-bottom: 15px;
    }
    .sec_clinic .sec_inner {
        padding-bottom: 50px;
        padding-top: 55px;
    }
    .sec_clinic .clinic_gallary .slick_dots li {
        height: 30px;
        margin: 0 5px;
        width: 30px;
    }
    .sec_clinic .clinic_gallary .slick_dots li button {
        font-size: 1.3rem;
    }
    .sec_clinic .clinic_info {
        padding: 35px 0;
    }
    .sec_clinic .clinic_info.access .address {
        font-size: 1.8rem;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .sec_inner {
        padding: 0 5.3333vw;
    }
    .sec_title {
        font-size: 5.8667vw;
    }
    .sec_title.title_01 {
        margin-bottom: 6.6667vw;
    }
    .sec_title.title_01 em {
        font-size: 16vw;
        top: -14.4vw;
    }
    .sec_title.title_02 {
        background-size: 57.0667vw auto;
        font-size: 5.8667vw;
        height: 57.0667vw;
        margin-bottom: 8vw;
    }
    .sec_title.title_02 em {
        margin-bottom: 1.3333vw;
    }
    .sec_title.title_03 {
        background-position: 16vw bottom;
        background-size: auto 8.5333vw;
        margin-bottom: 8vw;
        padding-bottom: 4vw;
    }
    .sec_title.title_03 em {
        font-size: 8.5333vw;
    }
    .sec_title.title_03 span {
        font-size: 4.8vw;
        margin-left: 10.6667vw;
    }
    .vpc600 {
        display: none;
    }
    .cv_wrap {
        padding: 8vw 5.3333vw;
    }
    .cv_btn a {
        border-radius: 2.6667vw;
        font-size: 4.8vw;
        height: 18.6667vw;
    }
    .cv_btn a::after {
        height: 4.8vw;
        margin-left: 2.1333vw;
        width: 4.8vw;
    }
    .anim_up_in {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .header_inner {
        padding: 5.3333vw 2.6667vw 1.3333vw;
    }
    .header_logo img {
        width: 42.6667vw;
    }
    .header_time {
        width: 46.6667vw;
    }
    .header_time .tel {
        margin-bottom: 0.8vw;
        padding-bottom: 1.3333vw;
    }
    .header_time .tel a {
        font-size: 5.3333vw;
        line-height: 5.3333vw;
    }
    .header_time .tel a::before {
        height: 5.3333vw;
        margin-right: 2.4vw;
        width: 5.3333vw;
    }
    .header_time .time dt,
    .header_time .time dd {
        margin-top: 1.3333vw;
    }
    .header_time .time dt {
        font-size: 2.4vw;
        width: 6.6667vw;
    }
    .header_time .time dt:nth-of-type(3) {
        font-size: 2.1333vw;
    }
    .header_time .time dd {
        font-size: 2.9333vw;
        width: calc(100% - 6.6667vw);
    }
    .header_time .time dd:nth-of-type(3) {
        font-size: 2.1333vw;
    }
    .footer_copy {
        font-family: "Noto Serif JP", serif;
        font-size: 3.2vw;
        height: auto;
        padding: 2.6667vw 5.3333vw;
    }
    .floating_btn {
        padding: 4vw 1.3333vw;
    }
    .floating_btn .cv_btn a {
        font-size: 4.2667vw;
        padding-left: 3.7333vw;
        padding: 8px 0;
    }
    .floating_btn .cv_btn a::after {
        height: 3.7333vw;
        margin-left: 2.9333vw;
        width: 3.7333vw;
    }
    .floating_btn .tel_wrap .tel {
        margin-bottom: 0.8vw;
        padding-bottom: 1.3333vw;
    }
    .floating_btn .tel_wrap .tel a {
        font-size: 5.3333vw;
        line-height: 5.3333vw;
    }
    .floating_btn .tel_wrap .tel a::before {
        height: 5.3333vw;
        margin-right: 2.4vw;
        width: 5.3333vw;
    }
    .floating_btn .tel_wrap .time li {
        font-size: 2.9333vw;
        letter-spacing: 0.08em;
        margin-top: 1.3333vw;
    }
    .floating_btn .tel_wrap .time li.saturday {
        margin-right: 1.3333vw;
    }
    .floating_btn .tel_wrap .time li.holiday {
        font-size: 2.1333vw;
    }
    .floating_btn .tel_wrap .time li.holiday span:first-of-type {
        font-size: 2.1333vw;
    }
    .floating_btn .tel_wrap .time li span:first-of-type {
        font-size: 2.4vw;
        margin-right: 1.3333vw;
    }
    .sec_hero {
        margin-top: -8vw;
        padding-top: 8vw;
    }
    .sec_hero .hero_txt_02 b {
        display: block;
        letter-spacing: 0.06em;
        margin-right: -3%;
    }
    .sec_hero .hero_txt_03 p .txt_02 {
        font-size: 114%;
        line-height: 1.4;
        margin-bottom: 0;
    }
    .sec_hero .hero_cv {
        border-radius: 2.6667vw;
        padding: 4vw;
    }
    .sec_hero .hero_cv .cv_title em {
        font-size: 5.3333vw;
        width: 26.6667vw;
    }
    .sec_hero .hero_cv .cv_title span {
        font-size: 3.7333vw;
        padding-left: 4vw;
    }
    .sec_hero .hero_cv .cv_title span b {
        display: block;
    }
    .sec_hero .hero_cv .cv_price {
        margin: 2.6667vw 0 5.3333vw;
    }
    .sec_hero .hero_cv .cv_price dt {
        border-radius: 1.0667vw;
        font-size: 3.7333vw;
        height: 6.9333vw;
        width: 12.2667vw;
    }
    .sec_hero .hero_cv .cv_price dd {
        padding-left: 4vw;
    }
    .sec_hero .hero_cv .cv_price dd span:first-of-type {
        font-size: 9.6vw;
    }
    .sec_hero .hero_cv .cv_price dd span:first-of-type em {
        font-size: 138.89%;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) {
        margin: 0 2.6667vw 0 1.3333vw;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) b {
        font-size: 6.9333vw;
    }
    .sec_hero .hero_cv .cv_price dd span:nth-of-type(2) small {
        font-size: 2.6667vw;
    }
    .sec_hero .hero_cv .cv_price dd span:last-of-type {
        font-size: 8vw;
    }
    .sec_hero .hero_cv .cv_att {
        font-size: 3.2vw;
        text-align: left;
    }
    .sec_hero .hero_cv .cv_btn {
        margin-top: 2.6667vw;
        width: 100%;
    }
    .sec_hero .hero_cv .cv_btn a {
        height: 13.3333vw;
    }
    .sec_intro.show {
        background: #f2ebeb url(../img/intro_visual_sp.png) center center/cover no-repeat;
    }
    .sec_intro .sec_inner {
        padding-bottom: 8vw;
        padding-top: 8vw;
    }
    .sec_intro .sec_title {
        font-size: 5.8667vw;
        margin-bottom: 8vw;
    }
    .sec_intro .intro_list li::before {
        height: 4.8vw;
        margin-right: 1.3333vw;
        margin-top: 0.8vw;
        width: 5.8667vw;
    }
    .sec_intro .intro_list li p {
        font-size: 4vw;
        margin-right: -2%;
    }
    .sec_intro .intro_list li+li {
        margin-top: 2.6667vw;
    }
    .sec_invisa .sec_inner {
        padding-bottom: 12vw;
        padding-top: 16vw;
    }
    .sec_invisa .sec_title {
        font-size: 6.4vw;
    }
    .sec_invisa .sec_title::before {
        height: 48vw;
        left: -8vw;
        top: calc(50% - 24vw);
        width: 48vw;
    }
    .sec_invisa .sec_arr {
        height: 16vw;
        left: calc(50% - 4vw);
        top: calc(100% - 16vw);
        width: 8vw;
    }
    .sec_invisa .sec_arr.show {
        top: calc(100% - 8vw);
    }
    .sec_invisa .img {
        width: 74.6667vw;
    }
    .sec_invisa .txt {
        margin: 0 -5.3333vw;
        width: calc(100% + (5.3333vw * 2));
    }
    .sec_reason .sec_inner {
        overflow: hidden;
        padding-bottom: 0;
        padding-top: 22.4vw;
    }
    .sec_reason .reason_list li {
        margin: 0 0 8vw;
        width: 100%;
    }
    .sec_reason .reason_list .tit {
        margin-bottom: 5.3333vw;
        min-height: 24vw;
        padding-left: 23.4667vw;
    }
    .sec_reason .reason_list .tit span {
        font-size: 4.8vw;
    }
    .sec_reason .reason_list .tit::before {
        font-size: 15.7333vw;
        top: -1.3333vw;
    }
    .sec_reason .reason_list .tit::after {
        height: 24vw;
        left: 13.3333vw;
    }
    .sec_reason .reason_list .img {
        margin-bottom: 5.3333vw;
    }
    .sec_reason .reason_list .txt {
        font-size: 3.7333vw;
        line-height: 1.88;
    }
    .sec_design.show {
        background-image: url(../img/design_visual_sp.png);
    }
    .sec_design .sec_inner {
        overflow: hidden;
        padding-bottom: 8vw;
        padding-top: 22.4vw;
    }
    .sec_design .txt p {
        font-size: 3.7333vw;
        margin-bottom: 5.3333vw;
    }
    .sec_design .img {
        margin-bottom: 21.3333vw;
        width: 70.1333vw;
    }
    .sec_design .img::after {
        left: 5.3333vw;
        top: 5.3333vw;
        width: calc(100vw - 5.3333vw - (5.3333vw * 4));
    }
    .sec_design .box {
        padding: 5.3333vw;
    }
    .sec_design .box p {
        font-size: 5.3333vw;
    }
    .sec_merit.show {
        background-image: url(../img/merit_visual_sp.jpg);
    }
    .sec_merit .sec_inner {
        padding-top: 22.4vw;
    }
    .sec_merit .txt p {
        font-size: 3.7333vw;
        margin-bottom: 5.3333vw;
    }
    .sec_merit .img {
        margin-bottom: 5.3333vw;
    }
    .sec_available .sec_inner {
        overflow: hidden;
        padding-bottom: 0;
        padding-top: 8vw;
    }
    .sec_available .sec_title.title_02 {
        margin-bottom: 2.6667vw;
    }
    .sec_available .available_list li {
        margin-bottom: 5.3333vw;
        width: 50%;
    }
    .sec_available .available_list li figure .img {
        height: 26.6667vw;
    }
    .sec_available .available_list li figure figcaption {
        font-size: 4.2667vw;
    }
    .sec_flow.show {
        background: #fafafa url(../img/flow_visual_sp.png) center top/100% auto no-repeat;
    }
    .sec_flow .sec_inner {
        overflow: hidden;
        padding-bottom: 0;
        padding-top: 8vw;
    }
    .sec_flow .flow_list li {
        margin: 0 0 8vw;
        width: 100%;
    }
    .sec_flow .flow_list .flow_num {
        background-size: 3.7333vw 2.1333vw;
        font-size: 12.8vw;
        margin-bottom: 2.6667vw;
    }
    .sec_flow .flow_list .flow_img {
        max-width: 45.3333vw;
    }
    .sec_flow .flow_list .flow_tit {
        font-size: 4.8vw;
        font-weight: 500;
        margin-bottom: 2.6667vw;
    }
    .sec_flow .flow_list .flow_txt {
        font-size: 3.7333vw;
        line-height: 1.88;
    }
    .sec_price .sec_inner {
        overflow: hidden;
        padding: 8vw 2.6667vw;
    }
    .sec_price .plan_cnt {
        margin-bottom: 5.3333vw;
        width: 100%;
    }
    .sec_price .plan_tit {
        font-size: 4.8vw;
        height: 13.3333vw;
    }
    .sec_price .plan_price li {
        padding: 4vw 5.3333vw;
    }
    .sec_price .plan_price li>div {
        border-radius: 1.0667vw;
        font-size: 4.2667vw;
        height: 7.4667vw;
        width: 13.3333vw;
    }
    .sec_price .plan_price li>p {
        padding-left: 5.3333vw;
    }
    .sec_price .plan_price li.price_01 {
        height: 18.1333vw;
    }
    .sec_price .plan_price li.price_01>p {
        font-size: 4.2667vw;
    }
    .sec_price .plan_price li.price_02 {
        height: 28vw;
    }
    .sec_price .plan_price li.price_02>p span:first-of-type {
        font-size: 10.4vw;
    }
    .sec_price .plan_price li.price_02>p span:nth-of-type(2) b {
        font-size: 7.7333vw;
    }
    .sec_price .plan_price li.price_02>p span:nth-of-type(2) small {
        font-size: 3.2vw;
    }
    .sec_price .plan_price li.price_02>p span:last-of-type {
        font-size: 8.8vw;
    }
    .sec_price .plan_cnt.red {
        margin-top: 27.4667vw;
    }
    .sec_price .plan_cnt.red .plan_fuki {
        font-size: 4.8vw;
        height: 18.1333vw;
        margin-bottom: 2.6667vw;
        padding-bottom: 4vw;
        top: -20.8vw;
    }
    .sec_price .plan_cnt.red .plan_tit {
        letter-spacing: 0.04em;
        text-align: center;
    }
    .sec_price .bnr_loan {
        margin-top: 5.3333vw;
    }
    .sec_price .bnr_loan img {
        width: 100%;
    }
    .sec_koujo.show {
        background-image: url(../img/koujo_visual_sp.png);
        background-size: 100% auto;
    }
    .sec_koujo .sec_inner {
        overflow: hidden;
        padding: 8vw 2.6667vw;
    }
    .sec_koujo .sec_title {
        font-size: 5.8667vw;
        margin-bottom: 8vw;
    }
    .sec_koujo .koujo_flow {
        margin-bottom: 8vw;
    }
    .sec_koujo .koujo_flow_tit {
        border: 1px solid #66aca8;
        font-size: 4.8vw;
        margin-bottom: 9.3333vw;
        padding: 2.6667vw;
    }
    .sec_koujo .koujo_flow ol>li+li {
        margin-top: 18.6667vw;
    }
    .sec_koujo .koujo_flow ol>li+li::before {
        height: 4.8vw;
        left: calc(50% - 3.7333vw);
        top: -12.2667vw;
        width: 7.4667vw;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit {
        font-size: 4.8vw;
        margin-bottom: 8vw;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit i {
        margin-right: 5.3333vw;
        width: 8.5333vw;
    }
    .sec_koujo .koujo_flow ol>li .flow_tit em {
        margin-left: 2.6667vw;
    }
    .sec_koujo .koujo_flow ol>li .flow_att li {
        font-size: 4.2667vw;
    }
    .sec_koujo .koujo_example {
        padding: 5.3333vw 2.6667vw;
    }
    .sec_koujo .koujo_example .tit {
        font-size: 4.5333vw;
        margin-bottom: 5.3333vw;
    }
    .sec_koujo .koujo_example .formula {
        margin: 5.3333vw 0;
    }
    .sec_koujo .koujo_example .formula img {
        width: 100%;
    }
    .sec_koujo .koujo_example .box_01 {
        padding: 4vw;
    }
    .sec_koujo .koujo_example .box_01 ul {
        font-size: 4.2667vw;
    }
    .sec_koujo .koujo_example .box_01 ul li {
        line-height: 1.38;
        text-align: center;
    }
    .sec_koujo .koujo_example .box_01 ul li+li {
        margin-top: 4vw;
    }
    .sec_koujo .koujo_example .box_02 {
        padding: 5.3333vw;
    }
    .sec_koujo .koujo_example .box_02 .total {
        font-size: 4.2667vw;
    }
    .sec_koujo .koujo_example .box_02 .attention {
        font-size: 3.7333vw;
        margin-top: 4vw;
    }
    .sec_faq .sec_inner {
        overflow: hidden;
        padding: 8vw 2.6667vw;
    }
    .sec_faq .sec_title.title_02 {
        margin-bottom: 4vw;
    }
    .sec_faq .faq_question {
        padding: 5.3333vw 8vw 5.3333vw 0;
    }
    .sec_faq .faq_question span {
        font-size: 4.5333vw;
    }
    .sec_faq .faq_question::before {
        width: 13.3333vw;
    }
    .sec_faq .faq_question::after {
        height: 8vw;
        width: 8vw;
    }
    .sec_faq .faq_answer {
        padding-bottom: 5.3333vw;
    }
    .sec_faq .faq_answer .txt_wrap p {
        font-size: 3.7333vw;
        line-height: 1.88;
    }
    .sec_faq .faq_answer::before {
        font-size: 10.1333vw;
        width: 13.3333vw;
    }
    .sec_doctor .sec_inner {
        overflow: hidden;
        padding-bottom: 8vw;
        padding-top: 8vw;
    }
    .sec_doctor .staff_wrap p,
    .sec_doctor .staff_wrap li,
    .sec_doctor .staff_wrap dl {
        font-size: 3.7333vw;
        line-height: 1.88;
    }
    .sec_doctor .staff_wrap .tit {
        font-size: 4.2667vw;
        line-height: 1.88;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt {
        margin-bottom: 8vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_img {
        margin-bottom: 8vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name {
        margin-bottom: 8vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name em {
        display: block;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span {
        font-size: 4.8vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_name span b {
        margin-right: 5.3333vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his {
        margin-bottom: 5.3333vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his dl dt {
        width: 21.3333vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_his dl dd {
        width: calc(100% - 21.3333vw);
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong {
        margin-top: 5.3333vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong .tit {
        margin-bottom: 4vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong ul li {
        padding-left: 5.3333vw;
        text-indent: -5.3333vw;
    }
    .sec_doctor .staff_list.wrap_01 .staff_cnt .staff_belong ul li::before {
        margin-right: 1.0667vw;
    }
    .sec_doctor .staff_list.wrap_02 {
        position: relative;
        width: 63.01%;
    }
    .sec_doctor .staff_list.wrap_02 .inner {
        padding-bottom: 26.6667vw;
        position: relative;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt {
        opacity: 1;
        padding-right: 5.3333vw;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .tit {
        margin-bottom: 2.6667vw;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name {
        margin-bottom: 2.6667vw;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name em {
        letter-spacing: 0.03em;
        padding-bottom: 0;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name span b {
        display: block;
        font-size: 4.8vw;
        margin: 0;
    }
    .sec_doctor .staff_list.wrap_02 .staff_cnt .staff_name span small {
        font-size: 112.5%;
    }
    .sec_doctor .slick-list {
        overflow: visible;
    }
    .sec_doctor .staff_slider_arrow {
        bottom: 8vw;
        display: flex;
        justify-content: center;
        left: 0;
        position: absolute;
        width: calc(100vw - (5.3333vw * 2));
    }
    .sec_doctor .staff_slider_arrow .arr {
        background: url(../img/slider_arr.svg) center center/cover no-repeat;
        border-radius: 4px;
        height: 10.6667vw;
        margin: 0 2.6667vw;
        width: 10.6667vw;
    }
    .sec_doctor .staff_slider_arrow .slick_prev {
        -webkit-transform: scale(-1, 1);
        transform: scale(-1, 1);
    }
    .sec_doctor .slick_dots {
        align-items: center;
        bottom: 0;
        display: flex;
        justify-content: center;
        left: 0;
        position: absolute;
        width: calc(100vw - (5.3333vw * 2));
    }
    .sec_doctor .slick_dots li {
        height: 2.6667vw;
        margin: 0 1.3333vw;
        width: 2.6667vw;
    }
    .sec_doctor .slick_dots li.slick-active button {
        background: #66aca8;
    }
    .sec_doctor .slick_dots li button {
        background: #dbdbdb;
        border: 0;
        border-radius: 2.6667vw;
        height: 0;
        margin: 0;
        overflow: hidden;
        padding: 0;
        padding-top: 100%;
        width: 100%;
    }
    .sec_clinic .sec_inner {
        overflow: hidden;
        padding-bottom: 8vw;
        padding-top: 8vw;
    }
    .sec_clinic .sec_inner p {
        font-size: 3.7333vw;
    }
    .sec_clinic .sec_title.title_03 span {
        letter-spacing: 0.02em;
        margin: 0 0 0 2.6667vw;
    }
    .sec_clinic .sec_title_sb {
        background-size: 47.7333vw 8.5333vw;
        font-size: 5.3333vw;
        margin-bottom: 5.3333vw;
        padding-bottom: 5.8667vw;
    }
    .sec_clinic .clinic_gallary .gallary_inner {
        width: 84.38%;
    }
    .sec_clinic .clinic_gallary .gallary_slider .slide {
        padding: 0 4vw 0 0;
    }
    .sec_clinic .clinic_gallary .slick_dots {
        margin-top: 5.3333vw;
        width: calc(100vw - (5.3333vw * 2));
    }
    .sec_clinic .clinic_gallary .slick_dots li {
        height: 8vw;
        margin: 0 1.3333vw;
        width: 8vw;
    }
    .sec_clinic .clinic_gallary .slick_dots li button {
        font-size: 3.4667vw;
    }
    .sec_clinic .clinic_info {
        padding: 8vw 0;
    }
    .sec_clinic .clinic_info.access .address {
        margin-bottom: 8vw;
    }
    .sec_clinic .clinic_info.access .gmap {
        height: 93.3333vw;
    }
    .sec_clinic .clinic_info.time {
        padding-bottom: 8vw;
    }
    .sec_clinic .clinic_info.time .time_table_pc {
        display: none;
    }
    .sec_clinic .clinic_info.time .time_info {
        font-size: 3.7333vw;
        line-height: 2;
    }
    .sec_clinic .clinic_pp {
        height: 85.3333vw;
        padding: 5.3333vw;
    }
    .sec_clinic .clinic_pp .sec_title_sb {
        font-size: 4.8vw;
        margin-bottom: 5.3333vw;
    }
    .sec_clinic .clinic_pp p+.pp_tit {
        margin-top: 5.3333vw;
    }
    .sec_clinic .clinic_pp .pp_tit {
        font-size: 4.2667vw;
    }
}

@media only screen and (max-width: 600px) {
    .sec_title.title_01[data-scroll] span {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_title.title_02[data-scroll] span,
    .sec_title.title_02[data-scroll] em {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_title.title_03[data-scroll] span,
    .sec_title.title_03[data-scroll] em {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    [data-scroll].up_in {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_intro .sec_title[data-scroll] {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_invisa .sec_title[data-scroll] span {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_flow .flow_list[data-scroll] li {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .sec_clinic .clinic_info[data-scroll] .sec_title_sb span {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
}

@media print {
    body {
        min-width: 1200px !important;
        position: relative !important;
        -webkit-print-color-adjust: exact;
        -webkit-transform: scale(0.8);
        transform: scale(0.8);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        width: 100%;
    }
    *,
    [data-scroll] {
        opacity: 1 !important;
    }
    .sec_intro {
        background: #f7f5f8 url(../img/intro_visual.png) center center/auto 100% no-repeat;
    }
    .sec_design {
        background: #fff url(../img/design_visual.png) center top no-repeat;
    }
    .sec_merit {
        background: #f2f9ff url(../img/merit_visual.jpg) center top no-repeat;
    }
    .sec_flow {
        background: #fff url(../img/koujo_visual.png) center top no-repeat;
    }
    .sec_koujo {
        background: #fff url(../img/koujo_visual.png) center top no-repeat;
    }
}

@-webkit-keyframes anim_scale {
    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@keyframes anim_scale {
    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

.muryou{
    padding: 20px;
    font-size: 24px;
    padding-top: 0;
}
.muryou span{
    display: inline !important;
    color: #66aca8;
}
.muryou2{
    padding: 20px;
    font-size: 20px;
    padding-top: 0;
    text-align: center;
}
.muryou2 span{
    display: inline;
    color: #66aca8;
}
@media screen and (max-width: 960px) {
    .sec_hero .hero_txt_03 figure {
        display: flex;
        flex-direction: column;
    }
    .muryou{
        padding: 0px;
        font-size: 18px;
        padding-top: 0;
        margin-top: 12px;
    }
}

@media screen and (min-width: 961px), print {
    .cv_wrap {
        align-items: center;
        display: flex
;
        height: 260px;
        justify-content: center;
        width: 100%;
        flex-direction: column;
        
    }
}