@charset "UTF-8";
@media screen and (min-width: 768px) {
  .pcNone {
    display: none !important;
  }
  body {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    line-height: 2;
    font-size: 14px;
    color: #586166;
  }
  #svgList {
    display: none;
  }
  .textAnimation {
    opacity: 0;
  }
  .fadeIn {
    opacity: 0 !important;
    -webkit-transform: translateY(20px) !important;
            transform: translateY(20px) !important;
    -webkit-transition: all 1s ease !important;
    transition: all 1s ease !important;
  }
  .fadeOut {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
  }
  .padding-top0 {
    padding-top: 0 !important;
  }
  .margin-top0 {
    margin-top: 0 !important;
  }
  .padding-bottom0 {
    padding-bottom: 0 !important;
  }
  a:hover {
    opacity: 0.5;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .flex .right {
    width: 50%;
    margin-top: 40px;
  }
  .button {
    width: 200px;
    height: 40px;
    color: #FFFFFF;
    background-color: #586166;
    display: block;
    text-align: center;
    line-height: 40px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid #586166;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .button:hover {
    background-color: transparent;
    color: #586166;
  }
  .arrowWrap {
    width: 40px;
    height: 40px;
    position: relative;
    display: inline-block;
  }
  .arrowWrap .arrow {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .arrowWrap:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .textLink {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
  }
  .textLink .flex {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .textLink .arrowWrap {
    width: 20px;
    height: 20px;
    margin-left: 12px;
  }
  .textLink .arrowWrap .arrow {
    width: 12px;
    height: 12px;
  }
  .textLink:hover .arrowWrap .arrow {
    top: 30%;
    left: 70%;
  }
  .section {
    width: 100vw;
  }
  .section .inner {
    width: calc(100vw - 160px);
    margin: 0 auto;
    padding: 160px 0;
  }
  .section .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .section .flex .left {
    width: calc(50% - 120px);
  }
  .section .flex .right {
    width: 50%;
  }
  .section .sectionTitle h2 {
    font-family: "Playfair Display", serif;
    font-size: max(60px, 5vw);
    font-weight: 200;
    font-style: normal;
    line-height: 1;
    margin-bottom: 40px;
  }
  .section .jp_title_Wrap .jp_title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(30px, 3vw);
    font-weight: 500;
    font-style: normal;
  }
  .section .jp_title_Wrap .en_title {
    font-family: "Playfair Display", serif;
    font-size: 14px;
    font-weight: 200;
    font-style: normal;
    margin-top: 8px;
  }
  .section .indexText {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    margin-left: auto;
    margin-top: 40px;
  }
  .section .indexText li {
    margin-right: 20px;
    margin-top: 12px;
    font-size: max(12px, 0.7vw);
  }
  .layout_a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .layout_a li {
    border-top: 1px solid #E2E2E2;
    padding-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .layout_a li .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .layout_a li .en_title {
    font-family: "Playfair Display", serif;
    width: 14.0625vw;
    font-size: max(14px, 1.09375vw);
  }
  .layout_a li .textWrap {
    width: 50%;
  }
  .layout_a li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(24px, 1.875vw);
    margin-bottom: 40px;
  }
  .layout_a li .textWrap p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    font-size: max(14px, 1.09375vw);
  }
  .layout_a li .textWrap p strong {
    display: block;
    margin-bottom: 20px;
    font-weight: bold;
  }
  .layout_a li .img {
    width: 19.53125vw;
    aspect-ratio: 250/167;
    overflow: hidden;
  }
  .layout_a li .img img {
    width: 100%;
    height: auto;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .layout_a li a:hover .img img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .layout_a li + li {
    margin-top: 80px;
  }
  .layout_b li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    margin-bottom: 80px;
  }
  .layout_b li .flex {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .layout_b li .textWrap {
    width: 25.78125vw;
  }
  .layout_b li .textWrap .number {
    font-family: "Playfair Display", serif;
    font-size: 20px;
  }
  .layout_b li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin: 40px 0 24px;
  }
  .layout_b li .textWrap .caption {
    line-clamp: 2;
    display: -webkit-box;
    /* Flexboxの古い仕様を利用 */
    -webkit-box-orient: vertical;
    /* 縦方向に揃える */
    -webkit-line-clamp: 2;
    /* 最大行数を指定（ここでは2行） */
    overflow: hidden;
    /* はみ出した部分を隠す */
    text-overflow: ellipsis;
    /* 省略記号を付ける */
  }
  .layout_b li .img {
    width: 11.71875vw;
    height: 11.71875vw;
    aspect-ratio: 1/1;
    overflow: hidden;
  }
  .layout_b li .img img {
    width: auto;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .layout_c {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .layout_c li {
    width: calc(33.3333333333% - 80px);
    border-right: 1px solid #E2E2E2;
    margin-right: 80px;
  }
  .layout_c li .head .number {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 40px;
  }
  .layout_c li .head img {
    width: 15.625vw;
    height: 9.609375vw;
    overflow: hidden;
  }
  .layout_c li .head img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .layout_c li .head .en_title {
    font-family: "Playfair Display", serif;
    font-size: 10px;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    width: 10px;
    margin-right: 20px;
  }
  .layout_c li .textWrap {
    margin-top: 40px;
    width: calc(100% - 20px);
  }
  .layout_c li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  .layout_c li:last-child {
    margin-right: 0;
  }
  .layout_d li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    margin-bottom: 80px;
  }
  .layout_d li .imgWrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .layout_d li .textWrap {
    margin-top: 40px;
  }
  .layout_d li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  .layout_d li .img {
    margin-top: 0;
    width: 15.625vw !important;
    height: 15.625vw;
  }
  .layout_d li .en_title {
    font-family: "Playfair Display", serif;
    font-size: 12px;
  }
  .layout_e {
    width: 100%;
  }
  .layout_e li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: max(16px, 1.25vw);
    padding-bottom: 40px;
    border-bottom: 1px solid #E2E2E2;
  }
  .layout_e li .titleWrap {
    width: calc(30% - 40px);
    font-weight: bold;
  }
  .layout_e li .titleWrap h5 {
    font-size: max(16px, 1.25vw);
  }
  .layout_e li .textWrap {
    width: 70%;
    padding-left: 40px;
  }
  .layout_e li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(16px, 1.25vw);
    margin-bottom: 24px;
  }
  .layout_e li + li {
    margin-top: 40px;
  }
  .qAndaWrap li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 80px;
    margin-bottom: 80px;
    width: 100%;
  }
  .qAndaWrap li .text {
    width: calc(100% - 3vw - 40px);
  }
  .qAndaWrap li .q, .qAndaWrap li .a {
    font-family: "Playfair Display", serif;
    font-size: max(30px, 2.34375vw);
    font-weight: 600;
    width: 3vw;
    margin-right: 40px;
  }
  .qAndaWrap li .question {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-weight: bold;
    font-size: max(18px, 1.40625vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .qAndaWrap li .answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 24px 0 0;
  }
  .qAndaWrap li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .qAndaWrap li + li {
    margin-top: 40px;
  }
  .subPageTitle {
    padding-top: 120px;
  }
  .subPageTitle h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(120px, 9.375vw);
    margin-bottom: 10px;
    line-height: 1;
  }
  .subPageTitle .flex {
    margin-top: 120px;
  }
  .subPageTitle .jp_title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(30px, 2.34375vw);
    font-weight: 400;
    font-style: normal;
  }
  .subPageTitle .caption {
    margin-top: 10px;
  }
  .bulletPoints {
    margin-top: 20px;
  }
  .bulletPoints li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: max(12px, 0.7vw);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .bulletPoints li:before {
    content: "・";
    display: block;
  }
  .bulletPoints li + li {
    margin-top: 4px;
  }
  .color {
    background-color: #fafafa;
  }
  .categoryList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .categoryList li {
    font-size: 12px;
    border: 1px solid #586166;
    padding: 10px 32px;
    border-radius: 30px;
    line-height: 1;
    margin-left: 8px;
    margin-bottom: 8px;
  }
  .categoryList li:hover {
    background-color: #586166;
    color: #FFFFFF;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .pagenation {
    margin-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-family: "Playfair Display", serif;
  }
  .pagenation .pageNumber {
    font-family: "Playfair Display", serif;
    margin: 0 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: -10px;
  }
  .pagenation .pageNumber li {
    font-family: "Playfair Display", serif;
    opacity: 0.5;
    margin-right: 20px;
    font-size: 30px;
  }
  .pagenation .pageNumber .current {
    opacity: 1;
    font-weight: bold;
  }
  .closeButton {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 40px;
    right: 40px;
    cursor: pointer;
    z-index: 9999;
    border: none;
    outline: none;
  }
  .closeButton::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .closeButton::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  header {
    /* 表示状態 */
    /* メニュー → X（中間：中央で重なってから回転） */
    /* X → メニュー（逆順：回転を戻してから離れる） */
  }
  header #menuWrap {
    width: 100vw;
    height: 100vh;
    background-color: #FFFFFF;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    z-index: 9998;
  }
  header #menuWrap .inner {
    height: 100%;
    padding: 0 40px 0 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  header #menuWrap .inner .menuListWrap .menuList {
    margin-bottom: 80px;
  }
  header #menuWrap .inner .menuListWrap .menuList .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  header #menuWrap .inner .menuListWrap .menuList .flex .menuTitle {
    font-size: 30px;
    margin-right: 40px;
  }
  header #menuWrap .inner .menuListWrap .menuList .menuTitle {
    font-family: "Playfair Display", serif;
    font-size: 45px;
    color: #586166;
  }
  header #menuWrap .inner .menuListWrap .menuList .subPageList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    width: calc(50vw - 80px);
  }
  header #menuWrap .inner .menuListWrap .menuList .subPageList li {
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    color: #586166;
    margin-right: 20px;
    margin-top: 20px;
  }
  header #menuWrap .inner .shopInfo {
    text-align: right;
  }
  header #menuWrap .inner .shopInfo h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    line-height: 2;
    text-align: right;
  }
  header #menuWrap .inner .shopInfo p {
    font-family: "Playfair Display", serif;
    line-height: 1;
    text-align: right;
    margin-top: 12px;
    margin: 40px 0;
    margin-top: 20px;
  }
  header #menuWrap .inner .shopInfo .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 65px;
    margin-bottom: 20px;
  }
  header #menuWrap .inner .shopInfo .snsList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  header #menuWrap .inner .shopInfo .snsList li {
    width: 40px;
    height: 40px;
    margin-right: 20px;
  }
  header #menuWrap .inner .shopInfo .snsList li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
  }
  header #menuWrap .inner .shopInfo .snsList li svg {
    width: 30px;
    height: 30px;
  }
  header #menuWrap .inner .shopInfo .button {
    margin-left: auto;
    margin-top: 40px;
    margin-bottom: 80px;
  }
  header .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  header #headerLogo {
    width: 70px;
    height: auto;
    position: fixed;
    top: 40px;
    left: 40px;
    z-index: 9999;
  }
  header #menuIcon {
    width: 40px;
    height: 15px;
    position: fixed;
    top: 40px;
    right: 40px;
    cursor: pointer;
    z-index: 9999;
    /* クリック時に一気に再生（メニュー → X） */
    /* クリック時に一気に再生（X → メニュー） */
  }
  header #menuIcon .innerWrap {
    position: relative;
    width: 100%;
    height: 100%;
  }
  header #menuIcon .innerWrap span {
    position: absolute;
    left: 0;
    height: 1px;
    width: 100%;
    background-color: #586166;
    -webkit-transform-origin: center;
            transform-origin: center;
    will-change: top, transform, width;
  }
  header #menuIcon .innerWrap span:nth-child(1) {
    top: 0;
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  header #menuIcon .innerWrap span:nth-child(2) {
    top: 100%;
    -webkit-transform: translateY(-100%) rotate(0);
            transform: translateY(-100%) rotate(0);
    width: 25px;
    right: 0;
    left: auto;
  }
  header #menuIcon.active .innerWrap span:nth-child(1) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(30deg);
            transform: translateY(-50%) rotate(30deg);
  }
  header #menuIcon.active .innerWrap span:nth-child(2) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-30deg);
            transform: translateY(-50%) rotate(-30deg);
    width: 100%;
  }
  header #menuIcon.anim-toX .innerWrap span:nth-child(1) {
    -webkit-animation: menuToX_line1 0.6s ease forwards;
            animation: menuToX_line1 0.6s ease forwards;
  }
  header #menuIcon.anim-toX .innerWrap span:nth-child(2) {
    -webkit-animation: menuToX_line2 0.6s ease forwards;
            animation: menuToX_line2 0.6s ease forwards;
  }
  header #menuIcon.anim-toMenu .innerWrap span:nth-child(1) {
    -webkit-animation: xToMenu_line1 0.6s ease forwards;
            animation: xToMenu_line1 0.6s ease forwards;
  }
  header #menuIcon.anim-toMenu .innerWrap span:nth-child(2) {
    -webkit-animation: xToMenu_line2 0.6s ease forwards;
            animation: xToMenu_line2 0.6s ease forwards;
  }
  @-webkit-keyframes menuToX_line1 {
    0% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
  }
  @keyframes menuToX_line1 {
    0% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
  }
  @-webkit-keyframes menuToX_line2 {
    0% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
  }
  @keyframes menuToX_line2 {
    0% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
  }
  @-webkit-keyframes xToMenu_line1 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @keyframes xToMenu_line1 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @-webkit-keyframes xToMenu_line2 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
  }
  @keyframes xToMenu_line2 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
  }
  header .active span:nth-child(1) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(30deg);
            transform: translateY(-50%) rotate(30deg);
  }
  header .active span:nth-child(2) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-30deg);
            transform: translateY(-50%) rotate(-30deg);
    width: 100%;
  }
  .home .firstView {
    width: 100vw;
    height: 100vh;
    position: relative;
    overflow: hidden;
  }
  .home .firstView .siteInfo {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
  }
  .home .firstView .siteInfo .inner {
    width: calc(100vw - 80px);
    height: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 40px;
  }
  .home .firstView .siteInfo .inner .info .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 70px;
    color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .button {
    background-color: #FFFFFF;
    color: #586166;
    margin-top: 40px;
    border-color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .button:hover {
    background-color: transparent;
    color: #FFFFFF;
    border-color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .caption {
    font-size: 12px;
    color: #FFFFFF;
    margin-top: 8%;
    margin-bottom: 40px;
  }
  .home .firstView .siteInfo .inner .info .caption span {
    font-family: "Playfair Display", serif;
    display: block;
    margin-top: 20px;
    font-size: 10px;
  }
  .home .firstView .siteInfo .inner .siteLink li {
    text-align: right;
    font-family: "Playfair Display", serif;
    color: #FFFFFF;
    margin-bottom: 32px;
    font-size: max(70px, 6.5vw);
    line-height: 1;
    position: relative;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .home .firstView .siteInfo .inner .siteLink li span {
    position: absolute;
    top: 50%;
    right: -20px;
    width: 100%;
    opacity: 0;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-align: right;
    font-size: max(3px, 4vw);
  }
  .home .firstView .siteInfo .inner .siteLink li h3 {
    text-align: right;
    font-family: "Playfair Display", serif;
    color: #FFFFFF;
    margin-bottom: 32px;
    font-size: max(70px, 6.5vw);
    font-weight: 400;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .home .firstView .siteInfo .inner .siteLink li:hover a {
    opacity: 1;
  }
  .home .firstView .siteInfo .inner .siteLink li:hover span {
    opacity: 1;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  .home .firstView .siteInfo .inner .siteLink li:hover h3 {
    opacity: 0;
    margin-right: -30px;
  }
  .home .firstView .videoWrap {
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
  }
  .home .firstView .videoWrap .shadow {
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
  }
  .home .firstView .videoWrap video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .home .lead h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(50px, 4vw);
    line-height: 1.5;
  }
  .home .lead .flex {
    margin-top: 80px;
  }
  .home .lead #textScroll_animation {
    width: 100vw;
    overflow: hidden;
    /* スライドの幅は内容に合わせる（テロップ化の肝） */
    /* イージングを無効化して完全に等速にする */
    /* “触って止まる”のを防止（ティッカー用途） */
  }
  .home .lead #textScroll_animation .flex {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .home .lead #textScroll_animation .flex p {
    font-family: "Playfair Display", serif;
    font-size: 100px;
  }
  .home .lead #textScroll_animation .flex .cross {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 40px;
    margin-top: 10px;
  }
  .home .lead #textScroll_animation .flex .cross span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .home .lead #textScroll_animation .flex .cross span:nth-child(2) {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .home .lead #textScroll_animation .text-swiper .swiper-slide {
    width: auto !important;
  }
  .home .lead #textScroll_animation .text-swiper .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
            transition-timing-function: linear !important;
  }
  .home .lead #textScroll_animation .text-swiper .swiper-slide,
  .home .lead #textScroll_animation .text-swiper .swiper-slide * {
    pointer-events: none;
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
    -webkit-user-select: none;
    cursor: default;
  }
  .home .palalaxImg {
    width: 100vw;
    height: 600px;
    background-image: url("../images/top/lead_img.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
  }
  .home .ourService {
    background-color: #fafafa;
  }
  .home .ourService .orthodontic .jp_title_Wrap:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .ourService .implant a:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .ourService .mainMenu {
    margin-top: 80px;
    margin-bottom: 160px;
  }
  .home .ourService .mainMenu .textLink {
    display: block;
    margin-left: auto;
  }
  .home .ourService .mainMenu .textLink .flex {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .home .ourService .mainMenu .arrowWrap {
    margin-top: 10px;
  }
  .home .ourService .mainMenu .flex {
    margin-top: 80px;
  }
  .home .ourService .mainMenu .flex .right {
    margin-top: 40px;
  }
  .home .ourService .mainMenu .flex .right strong {
    display: block;
    margin-bottom: 20px;
  }
  .home .ourService .mainMenu .flex .right img {
    margin-top: 64px;
  }
  .home .ourService .mainMenu .flex .right h5 {
    margin-top: 40px;
    margin-bottom: 24px;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
  }
  .home .ourService .otherMenu {
    margin-top: 240px;
  }
  .home .ourService .otherMenu .jp_title_Wrap {
    margin-bottom: 40px;
  }
  .home .about {
    padding: 240px 0;
    width: 100vw;
    position: relative;
  }
  .home .about .textWrap {
    position: relative;
    z-index: 3;
    margin: 0 auto;
    color: #FFFFFF;
    text-align: center;
  }
  .home .about .textWrap h5 {
    font-family: "Playfair Display", serif;
    font-size: max(40px, 3.125vw);
    font-weight: 200;
    margin-bottom: 40px;
    line-height: 1.2;
  }
  .home .about .textWrap .lead {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(30px, 2.34375vw);
    line-height: 2;
    margin: 80px auto 40px;
  }
  .home .about .backgournd {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url("../images/top/about_img.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
  }
  .home .point {
    background-color: #fafafa;
  }
  .home .point .layout_c {
    margin-top: 80px;
  }
  .home .news .newsList li {
    padding-top: 40px;
    border-top: 1px solid #E2E2E2;
  }
  .home .news .newsList li .date {
    font-family: "Playfair Display", serif;
    font-size: 14px;
    margin-bottom: 24px;
  }
  .home .news .newsList li + li {
    margin-top: 40px;
  }
  .home .cansellpolicy {
    background-color: #fafafa;
  }
  .home .shopInfo a:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .shopInfo .info {
    width: calc(40% - 80px);
  }
  .home .shopInfo .info .img {
    width: 18.75vw;
    height: 11.71875vw;
    overflow: hidden;
    margin-top: 80px;
  }
  .home .shopInfo .info .img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .home .shopInfo .info .img:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .home .shopInfo .info .sectionTitle {
    margin-bottom: 80px;
  }
  .home .shopInfo .info .sectionTitle h2 {
    font-size: max(30px, 2.34375vw);
  }
  .home .shopInfo .info .sectionTitle p {
    font-size: 12px;
  }
  .home .shopInfo .info .sectionTitle .arrow {
    margin-top: 10px;
    width: 15px;
    height: 15px;
  }
  .home .shopInfo .time {
    width: 50%;
    /* 小さめ画面での横スクロール許可（必要なら） */
  }
  .home .shopInfo .time .sectionTitle h2 {
    font-size: max(30px, 2.34375vw);
  }
  .home .shopInfo .time .sectionTitle p {
    font-size: 12px;
  }
  .home .shopInfo .time .sectionTitle .arrow {
    margin-top: 10px;
    width: 15px;
    height: 15px;
  }
  .home .shopInfo .time .clinic-hours {
    margin-top: 40px;
    --ink: $mainColor;
    --line: #e6e6e6;
    --strong-line: #cfcfcf;
    --muted: #999;
    --holiday: #d80000;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: var(--ink);
  }
  .home .shopInfo .time .clinic-hours__inner {
    width: min(1100px, 100%);
    margin: 0 auto;
  }
  .home .shopInfo .time .clinic-hours__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-bottom: 1px solid #586166;
  }
  .home .shopInfo .time .clinic-hours__table thead th {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    text-align: center;
    padding: 10px 8px;
    border-bottom: 1px solid #586166;
  }
  .home .shopInfo .time .clinic-hours__table thead th.is-holiday {
    color: var(--holiday);
  }
  .home .shopInfo .time .clinic-hours__table tbody th,
  .home .shopInfo .time .clinic-hours__table tbody td {
    padding: 24px 10px;
    text-align: center;
    vertical-align: middle;
    width: 100px;
  }
  .home .shopInfo .time .clinic-hours__table tbody tr + tr {
    border-top: 1px solid #E2E2E2;
  }
  .home .shopInfo .time .clinic-hours__head--blank {
    width: 12.5rem;
  }
  .home .shopInfo .time .clinic-hours__time {
    text-align: left;
    font-weight: 500;
    font-size: clamp(16px, 1.8vw, 22px);
    line-height: 1.2;
    padding-left: 0;
  }
  .home .shopInfo .time .clinic-hours__time .from {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    text-align: left;
  }
  .home .shopInfo .time .clinic-hours__time .to {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    margin-top: 0.35em;
    text-align: left;
  }
  .home .shopInfo .time .clinic-hours .cell--open::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid currentColor;
    border-radius: 50%;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  .home .shopInfo .time .clinic-hours .cell--dash::before {
    content: "—";
    color: var(--muted);
    font-size: 18px;
    letter-spacing: 0.05em;
  }
  .home .shopInfo .time .clinic-hours .cell--note::before {
    content: "※";
    font-size: 18px;
    color: var(--ink);
  }
  .home .shopInfo .time .clinic-hours__note {
    margin-top: 18px;
    font-size: 14px;
    color: var(--ink);
  }
  .home .shopInfo .time .clinic-hours__inner {
    overflow-x: auto;
  }
  .home #access {
    width: 100vw;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
  }
  .home #access iframe {
    width: 100%;
    height: 600px;
    border: none;
  }
  #privacy .textWrap {
    margin-top: 0;
  }
  #privacy .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  #privacy .textWrap p + h5 {
    margin-top: 80px;
  }
  #privacy .textWrap .bulletPoints + h5 {
    margin-top: 80px;
  }
  footer {
    width: 100vw;
    padding-top: 160px;
    background-color: #FFFFFF;
  }
  footer #guidLineWrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    background-color: #586166;
    height: 100vh;
    z-index: 9999;
    color: #FFFFFF;
    /* フェード制御（初期は非表示） */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
  }
  footer #guidLineWrap .inner {
    padding: 240px 80px;
    overflow-y: scroll;
  }
  footer #guidLineWrap .inner .left {
    width: calc(50% - 120px);
  }
  footer #guidLineWrap .inner h3 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(50px, 4vw);
    margin-bottom: 120px;
  }
  footer #guidLineWrap .inner .textWrap {
    width: 100%;
  }
  footer #guidLineWrap .inner .textWrap .right {
    margin-top: 0;
  }
  footer #guidLineWrap .inner .textWrap .right li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  footer #guidLineWrap .inner .textWrap .right li + li {
    margin-top: 20px;
  }
  footer #guidLineWrap .inner .textWrap .right li:before {
    color: #FFFFFF;
    display: block;
    content: "・";
    margin-right: 4px;
  }
  footer #guidLineWrap .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  footer #guidLineWrap .inner .textWrap + .textWrap {
    margin-top: 160px;
  }
  footer .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  footer .is-open .modal-panel {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
  }
  footer .inner {
    height: 100%;
    padding: 0 40px 0 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  footer .inner .menuListWrap .menuList {
    margin-bottom: 80px;
  }
  footer .inner .menuListWrap .menuList .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  footer .inner .menuListWrap .menuList .flex .menuTitle {
    font-size: 30px;
    margin-right: 40px;
  }
  footer .inner .menuListWrap .menuList .menuTitle {
    font-family: "Playfair Display", serif;
    font-size: 45px;
    color: #586166;
  }
  footer .inner .menuListWrap .menuList .subPageList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    margin-top: 20px;
    width: calc(50vw - 80px);
  }
  footer .inner .menuListWrap .menuList .subPageList li {
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    color: #586166;
    margin-right: 20px;
    margin-top: 20px;
  }
  footer .inner .shopInfo {
    text-align: right;
  }
  footer .inner .shopInfo h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    line-height: 2;
    text-align: right;
  }
  footer .inner .shopInfo p {
    font-family: "Playfair Display", serif;
    line-height: 1;
    text-align: right;
    margin-top: 12px;
    margin: 40px 0;
    margin-top: 20px;
  }
  footer .inner .shopInfo .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 65px;
    margin-bottom: 20px;
  }
  footer .inner .shopInfo .snsList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 80px;
  }
  footer .inner .shopInfo .snsList li {
    width: 40px;
    height: 40px;
    margin-right: 20px;
  }
  footer .inner .shopInfo .snsList li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
  }
  footer .inner .shopInfo .snsList li svg {
    width: 30px;
    height: 30px;
  }
  footer .inner .shopInfo .button {
    margin-left: auto;
    margin-top: 20px;
    margin-bottom: 80px;
  }
  footer .inner .shopInfo .link {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: right;
  }
  footer .inner .shopInfo .link li {
    font-size: 12px;
  }
  footer .inner .shopInfo .link li .plusIcon {
    width: 8px;
    height: 8px;
    margin-left: 4px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin-top: -2px;
  }
  footer .inner .shopInfo .link li .plusIcon span {
    height: 1px;
    background-color: #586166;
    position: absolute;
  }
  footer .inner .shopInfo .link li .plusIcon span:nth-child(1) {
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  footer .inner .shopInfo .link li .plusIcon span:nth-child(2) {
    width: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
            transform: translateX(-50%) rotate(90deg);
  }
  footer .inner .shopInfo .link li + li {
    margin-left: 20px;
  }
  footer .inner .shopInfo .link #guidLine {
    cursor: pointer;
  }
  footer .inner .shopInfo .link #guidLine:hover {
    opacity: 0.5;
  }
  footer .inner .shopInfo .copyright {
    font-family: "Playfair Display", serif;
    font-size: 10px;
  }
  #about .lead .leadList li {
    padding-bottom: 80px;
    border-bottom: 1px solid #E2E2E2;
  }
  #about .lead .leadList li + li {
    margin-top: 80px;
  }
  #about .lead .flex {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #about .lead .flex h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 80px;
  }
  #about .lead .img {
    width: 23.4375vw;
  }
  #about .achievements {
    background-color: #fafafa;
  }
  #about .pointList .layout_a {
    margin-top: 80px;
  }
  #about .pointList .layout_a .wrap {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #clinic .indexText {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    width: 100%;
    margin-top: 80px;
  }
  #clinic .clinic {
    background-color: #fafafa;
  }
  #doctor .doctorList .inner {
    padding-top: 0;
  }
  #doctor .doctorListWrap .doctor {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #doctor .doctorListWrap .doctor .textWrap {
    margin-top: 0 !important;
  }
  #doctor .doctorListWrap .doctor .textWrap .catch {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
    margin-bottom: 64px;
  }
  #doctor .doctorListWrap .doctor .textWrap .position {
    font-size: 12px;
  }
  #doctor .doctorListWrap .doctor .textWrap .jp_name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 40px;
  }
  #doctor .doctorListWrap .doctor .textWrap .jp_name span {
    font-size: 12px;
  }
  #doctor .doctorListWrap .doctor .textWrap .en_name {
    font-family: "Playfair Display", serif;
    font-size: 15px;
    letter-spacing: 0.1em;
  }
  #doctor .doctorListWrap .doctor .textWrap .skill {
    font-size: 14px;
    margin: 40px 0;
  }
  #doctor .doctorListWrap .doctor .textWrap .message {
    font-size: 14px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList {
    margin-top: 40px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .left {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 80px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right {
    margin-top: 10px;
    width: calc(100% - 160px);
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap {
    position: relative;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .border {
    width: 100%;
    height: 1px;
    background-color: #E2E2E2;
    position: absolute;
    top: 23px;
    left: 0;
    z-index: -1;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .month {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    width: 30px;
    margin-right: 30px;
    background-color: #FFFFFF;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .caption {
    margin-top: 0;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12px;
    width: calc(100% - 60px);
    background-color: #FFFFFF;
    padding-left: 20px;
    margin-top: 11px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap + .monthWrap {
    margin-top: 20px;
  }
  #doctor .doctorListWrap .doctor .img {
    width: calc(50% - 120px);
  }
  #doctor .doctorListWrap .doctor + .doctor {
    margin-top: 160px;
  }
  .doctorModals {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .doctorModals li {
    width: calc(25% - 30px);
    margin-right: 40px;
  }
  .doctorModals li .modalTag .imgWrap {
    width: 100%;
    overflow: hidden;
    aspect-ratio: 250/350;
  }
  .doctorModals li .modalTag .imgWrap img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .doctorModals li .modalTag .imgWrap:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .doctorModals li .modalTag .lead {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    margin-top: 16px;
  }
  .doctorModals li .modalTag .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    margin-top: 8px;
  }
  .doctorModals li .modalTag .name span {
    font-size: 12px;
  }
  .doctorModals li .modalTag .engName {
    font-family: "Playfair Display", serif;
    font-size: 12px;
    margin-top: -5px;
    letter-spacing: 0.1em;
  }
  .doctorModals li .modalTag .position {
    margin-top: 20px;
  }
  .doctorModals li:nth-child(4n) {
    margin-right: 0;
  }
  .doctorModals .open {
    display: block !important;
  }
  .doctorModal {
    display: none !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 9999;
  }
  .doctorModal .closeButton {
    width: 30px;
    height: 30px;
    position: fixed;
    top: 40px;
    right: 40px;
    cursor: pointer;
    z-index: 9999;
  }
  .doctorModal .closeButton span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .doctorModal .closeButton span:nth-child(2) {
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .doctorModal .modalInner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: calc(100vw - 160px);
    height: calc(100vh - 160px);
    background-color: #FFFFFF;
    padding: 80px;
    overflow-y: scroll;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .doctorModal .modalInner .textWrap {
    margin-top: 0 !important;
  }
  .doctorModal .modalInner .textWrap .catch {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
    margin-bottom: 64px;
  }
  .doctorModal .modalInner .textWrap .position {
    font-size: 12px;
  }
  .doctorModal .modalInner .textWrap .jp_name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 40px;
  }
  .doctorModal .modalInner .textWrap .jp_name span {
    font-size: 12px;
  }
  .doctorModal .modalInner .textWrap .en_name {
    font-family: "Playfair Display", serif;
    font-size: 15px;
    letter-spacing: 0.1em;
  }
  .doctorModal .modalInner .textWrap .skill {
    font-size: 14px;
    margin: 40px 0;
  }
  .doctorModal .modalInner .textWrap .message {
    font-size: 14px;
  }
  .doctorModal .modalInner .textWrap .historyList {
    margin-top: 40px;
  }
  .doctorModal .modalInner .textWrap .historyList li {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .doctorModal .modalInner .textWrap .historyList li .left {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 80px;
  }
  .doctorModal .modalInner .textWrap .historyList li .right {
    margin-top: 10px;
    width: calc(100% - 160px);
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap {
    position: relative;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .border {
    width: 100%;
    height: 1px;
    background-color: #E2E2E2;
    position: absolute;
    top: 23px;
    left: 0;
    z-index: -1;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .month {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    width: 30px;
    margin-right: 30px;
    background-color: #FFFFFF;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .caption {
    margin-top: 0;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12px;
    width: calc(100% - 60px);
    background-color: #FFFFFF;
    padding-left: 20px;
    margin-top: 11px;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap + .monthWrap {
    margin-top: 20px;
  }
  .doctorModal .modalInner .img {
    position: sticky;
    top: 0px;
    width: calc(50% - 120px);
  }
  .doctorModal .modalInner .historyList li {
    width: 100%;
  }
  .open {
    display: block !important;
  }
  #price .subPageTitle .priceWrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 80px 0 20px;
  }
  #price .subPageTitle .priceWrap li p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    margin-bottom: -20px;
  }
  #price .subPageTitle .priceWrap li h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(50px, 3.90625vw);
  }
  #price .subPageTitle .priceWrap li + li {
    margin-left: 64px;
  }
  #price .palalaxImg {
    width: 100vw;
    height: 600px;
    background-image: url("../images/top/lead_img.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
  }
  #price .priceMenuWrap .sectionTitle {
    margin-bottom: 120px;
  }
  #price .priceMenuWrap .priceMenu .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .price {
    font-family: "Playfair Display", serif;
    font-size: max(50px, 3.90625vw);
    margin-bottom: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap h5 + .price {
    margin-top: -30px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
    margin-top: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanImg {
    margin-top: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList li::before {
    content: "・";
    display: inline-block;
    margin-right: 4px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList li {
    margin-bottom: 20px;
    margin-right: 20px;
  }
  #price .implant {
    background-color: #fafafa;
  }
  #price .implant .price {
    margin-bottom: 10px !important;
  }
  #price .ceramic .price {
    margin-bottom: 40px !important;
  }
  #price .ceramic .bulletPoints {
    margin-top: -50px !important;
  }
  #price .whitening {
    background-color: #fafafa;
  }
  #price .reservation {
    margin-top: 120px;
    text-align: center;
    margin: 120px auto;
  }
  #price .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: max(80px, 6.25vw);
    font-weight: 200;
  }
  #price .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #price .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
  }
  #price .reservation .flex .arrowWrap {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #price .reservation .flex .arrowWrap .arrow {
    width: 15px;
    height: 15px;
  }
  #price .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  #price .medical strong {
    display: block;
    margin: 20px 0;
  }
  #price .medical .bulletPoints li::before {
    content: "※";
  }
  #price .medical .target li {
    font-size: max(14px, 1.09375vw);
  }
  #price .medical .target li::before {
    content: "・";
  }
  #price .medical .target li + li {
    margin-top: 20px;
  }
  #recruit .lead .inner {
    padding-top: 0;
  }
  #recruit .lead .leadList {
    border-top: 1px solid #E2E2E2;
    padding-top: 80px;
  }
  #recruit .lead .leadList li {
    padding-bottom: 80px;
    border-bottom: 1px solid #E2E2E2;
  }
  #recruit .lead .leadList li + li {
    margin-top: 80px;
  }
  #recruit .lead .flex {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #recruit .lead .flex h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 80px;
  }
  #recruit .lead .img {
    width: 23.4375vw;
  }
  #recruit .qAndA {
    background-color: #fafafa;
  }
  #recruit .qAndA .right {
    margin-top: 0;
  }
  #recruit .contact .inner {
    padding-bottom: 0;
  }
  #recruit .contact .textWrap {
    margin-top: 0;
  }
  #recruit .contact .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  #recruit .contact .textWrap .button {
    width: 300px;
    height: 60px;
    font-size: 15px;
    line-height: 60px;
    margin-top: -10px;
    margin-bottom: 40px;
  }
  #recruit .contact .textWrap .telNumber {
    display: block;
    font-family: "Playfair Display", serif;
    font-size: max(85px, 6.640625vw);
    margin-top: -5px;
    line-height: 1;
    margin-bottom: 40px;
  }
  #faq .subPageTitle .inner {
    padding-bottom: 0;
  }
  #access {
    /* 小さめ画面での横スクロール許可（必要なら） */
  }
  #access #access {
    width: 100vw;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
  }
  #access #access iframe {
    width: 100%;
    height: 600px;
    border: none;
  }
  #access .textSection .inner {
    padding-top: 0;
  }
  #access .textSection .inner .textWrap .bulletPoints li {
    font-size: max(14px, 1.09375vw);
  }
  #access .textSection .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-top: 40px;
  }
  #access .color .right {
    margin-top: 0;
  }
  #access .clinic-hours {
    margin-top: 0px;
    --ink: $mainColor;
    --line: #e6e6e6;
    --strong-line: #cfcfcf;
    --muted: #999;
    --holiday: #d80000;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: var(--ink);
  }
  #access .clinic-hours__inner {
    width: min(1100px, 100%);
    margin: 0 auto;
  }
  #access .clinic-hours__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-bottom: 1px solid #586166;
  }
  #access .clinic-hours__table thead th {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    text-align: center;
    padding: 10px 8px;
    border-bottom: 1px solid #586166;
  }
  #access .clinic-hours__table thead th.is-holiday {
    color: var(--holiday);
  }
  #access .clinic-hours__table tbody th,
  #access .clinic-hours__table tbody td {
    padding: 24px 10px;
    text-align: center;
    vertical-align: middle;
    width: 100px;
  }
  #access .clinic-hours__table tbody tr + tr {
    border-top: 1px solid #E2E2E2;
  }
  #access .clinic-hours__head--blank {
    width: 12.5rem;
  }
  #access .clinic-hours__time {
    text-align: left;
    font-weight: 500;
    font-size: clamp(16px, 1.8vw, 22px);
    line-height: 1.2;
    padding-left: 0;
  }
  #access .clinic-hours__time .from {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    text-align: left;
  }
  #access .clinic-hours__time .to {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    margin-top: 0.35em;
    text-align: left;
  }
  #access .clinic-hours .cell--open::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid currentColor;
    border-radius: 50%;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  #access .clinic-hours .cell--dash::before {
    content: "—";
    color: var(--muted);
    font-size: 18px;
    letter-spacing: 0.05em;
  }
  #access .clinic-hours .cell--note::before {
    content: "※";
    font-size: 18px;
    color: var(--ink);
  }
  #access .clinic-hours__note {
    margin-top: 18px;
    font-size: 14px;
    color: var(--ink);
  }
  #access .clinic-hours__inner {
    overflow-x: auto;
  }
  #news .subPageTitle .inner {
    padding-bottom: 0;
  }
  #news .subPageTitle .right {
    margin-top: 0;
  }
  #news .subPageTitle .right p {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 20px;
  }
  #news .news .inner {
    padding-top: 40px;
  }
  #news .news .newsList {
    border-bottom: 1px solid #586166;
    padding-bottom: 80px;
  }
  #news .news .newsList .right {
    margin-top: 0;
  }
  #news .news .newsList li {
    padding-top: 80px;
    border-top: 1px solid #586166;
  }
  #news .news .newsList li .dateWrap {
    width: calc(40vw - 240px);
    margin-top: 5px;
  }
  #news .news .newsList li .dateWrap time {
    font-family: "Playfair Display", serif;
  }
  #news .news .newsList li .title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
  }
  #news .news .newsList li + li {
    margin-top: 80px;
  }
  .single-post .titleWrap, .single-column .titleWrap {
    margin-top: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 80px;
  }
  .single-post .titleWrap .data, .single-column .titleWrap .data {
    margin-top: 10px;
  }
  .single-post .titleWrap .data .category, .single-column .titleWrap .data .category {
    font-size: 14px;
    margin-top: 4px;
  }
  .single-post .titleWrap .data data, .single-column .titleWrap .data data {
    display: block;
    font-family: "Playfair Display", serif;
    font-size: 18px;
  }
  .single-post .titleWrap .title, .single-column .titleWrap .title {
    width: 70%;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(30px, 2.34375vw);
    font-weight: bold;
  }
  .single-post .contents, .single-column .contents {
    margin-top: 120px;
  }
  .single-post .contents .left, .single-column .contents .left {
    width: calc(40vw - 240px);
    margin-right: 240px;
  }
  .single-post .contents .right, .single-column .contents .right {
    margin-top: 0;
    /* =========
        WordPress Blog Base (Gutenberg/Classic)
        ========= */
    /* 見出しスケール */
    /* 本文 */
    /* リスト */
    /* 引用 */
    /* 画像・図版 */
    /* Gutenberg アライメント対応 */
    /* キャプション（クラシック互換） */
    /* コード */
    /* 表 */
    /* 区切り線 */
    /* 埋め込み（YouTubeなど比率維持） */
    /* Gutenberg ボタン（最低限） */
    /* Gutenberg カラム */
    /* ページネーション */
    /* スクリーンリーダーテキスト（WP標準） */
    /* 画像の下に余白が出るのを防ぐ */
    /* クリアフィックス（クラシック互換） */
  }
  .single-post .contents .right h1:first-child,
  .single-post .contents .right h2:first-child,
  .single-post .contents .right h3:first-child,
  .single-post .contents .right h4:first-child,
  .single-post .contents .right h5:first-child,
  .single-post .contents .right h6:first-child,
  .single-post .contents .right p:first-child,
  .single-post .contents .right a:first-child,
  .single-post .contents .right img:first-child,
  .single-post .contents .right blockquote:first-child,
  .single-post .contents .right ul:first-child,
  .single-post .contents .right ol:first-child,
  .single-post .contents .right dl:first-child, .single-column .contents .right h1:first-child,
  .single-column .contents .right h2:first-child,
  .single-column .contents .right h3:first-child,
  .single-column .contents .right h4:first-child,
  .single-column .contents .right h5:first-child,
  .single-column .contents .right h6:first-child,
  .single-column .contents .right p:first-child,
  .single-column .contents .right a:first-child,
  .single-column .contents .right img:first-child,
  .single-column .contents .right blockquote:first-child,
  .single-column .contents .right ul:first-child,
  .single-column .contents .right ol:first-child,
  .single-column .contents .right dl:first-child {
    margin-top: 0;
  }
  .single-post .contents .right h1,
  .single-post .contents .right h2,
  .single-post .contents .right h3,
  .single-post .contents .right h4,
  .single-post .contents .right h5,
  .single-post .contents .right h6, .single-column .contents .right h1,
  .single-column .contents .right h2,
  .single-column .contents .right h3,
  .single-column .contents .right h4,
  .single-column .contents .right h5,
  .single-column .contents .right h6 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
    margin: 1.6em 0 0.6em;
    font-weight: 700;
    margin-top: 80px;
  }
  .single-post .contents .right h1, .single-column .contents .right h1 {
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  }
  .single-post .contents .right h2, .single-column .contents .right h2 {
    font-size: clamp(1.6rem, 3vw, 2rem);
  }
  .single-post .contents .right h3, .single-column .contents .right h3 {
    font-size: clamp(1.3rem, 2.4vw, 1.6rem);
  }
  .single-post .contents .right h4, .single-column .contents .right h4 {
    font-size: 1.2rem;
  }
  .single-post .contents .right h5, .single-column .contents .right h5 {
    font-size: 1.05rem;
  }
  .single-post .contents .right h6, .single-column .contents .right h6 {
    font-size: 0.95rem;
    color: var(--c-ink-muted);
  }
  .single-post .contents .right p, .single-column .contents .right p {
    margin: 1em 0;
  }
  .single-post .contents .right a, .single-column .contents .right a {
    color: var(--c-accent);
    text-decoration: underline;
    opacity: 0.5;
  }
  .single-post .contents .right a:hover, .single-column .contents .right a:hover {
    text-decoration: none;
    opacity: 1;
  }
  .single-post .contents .right strong,
  .single-post .contents .right b, .single-column .contents .right strong,
  .single-column .contents .right b {
    font-weight: 700;
  }
  .single-post .contents .right em,
  .single-post .contents .right i, .single-column .contents .right em,
  .single-column .contents .right i {
    font-style: italic;
  }
  .single-post .contents .right small,
  .single-post .contents .right .has-small-font-size, .single-column .contents .right small,
  .single-column .contents .right .has-small-font-size {
    font-size: 0.875rem;
  }
  .single-post .contents .right big,
  .single-post .contents .right .has-large-font-size, .single-column .contents .right big,
  .single-column .contents .right .has-large-font-size {
    font-size: 1.25rem;
  }
  .single-post .contents .right ul,
  .single-post .contents .right ol, .single-column .contents .right ul,
  .single-column .contents .right ol {
    margin-top: 20px;
  }
  .single-post .contents .right ul li,
  .single-post .contents .right ol li, .single-column .contents .right ul li,
  .single-column .contents .right ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .single-post .contents .right ul li:before,
  .single-post .contents .right ol li:before, .single-column .contents .right ul li:before,
  .single-column .contents .right ol li:before {
    content: "・";
    display: block;
  }
  .single-post .contents .right ul li + li,
  .single-post .contents .right ol li + li, .single-column .contents .right ul li + li,
  .single-column .contents .right ol li + li {
    margin-top: 4px;
  }
  .single-post .contents .right ol, .single-column .contents .right ol {
    counter-reset: list-counter;
    /* カウンターを初期化 */
    padding-left: 0;
    /* 左余白は好みで */
  }
  .single-post .contents .right ol li, .single-column .contents .right ol li {
    list-style: none;
    /* デフォルトの番号は消す */
    counter-increment: list-counter;
    /* 1つ進める */
    /* 番号用のスペース確保 */
    position: relative;
  }
  .single-post .contents .right ol li::before, .single-column .contents .right ol li::before {
    content: counter(list-counter) ".";
    margin-right: 10px;
    /* 番号の色 */
  }
  .single-post .contents .right li, .single-column .contents .right li {
    margin: 0.3em 0;
  }
  .single-post .contents .right dl, .single-column .contents .right dl {
    margin: 1em 0;
  }
  .single-post .contents .right dt, .single-column .contents .right dt {
    font-weight: 700;
  }
  .single-post .contents .right dd, .single-column .contents .right dd {
    margin-left: 0;
  }
  .single-post .contents .right blockquote, .single-column .contents .right blockquote {
    margin: 1.5em 0;
    padding: 1rem 1.2rem;
    background: var(--c-quote);
    border-left: 4px solid var(--c-accent);
    border-radius: calc(var(--radius) - 4px);
  }
  .single-post .contents .right blockquote p, .single-column .contents .right blockquote p {
    margin: 0.6em 0;
  }
  .single-post .contents .right blockquote cite, .single-column .contents .right blockquote cite {
    display: block;
    margin-top: 0.5em;
    color: var(--c-ink-muted);
    font-style: normal;
  }
  .single-post .contents .right img,
  .single-post .contents .right svg,
  .single-post .contents .right video, .single-column .contents .right img,
  .single-column .contents .right svg,
  .single-column .contents .right video {
    max-width: 100%;
    height: auto;
  }
  .single-post .contents .right figure, .single-column .contents .right figure {
    margin: 80px 0 0;
  }
  .single-post .contents .right figcaption, .single-column .contents .right figcaption {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
    text-align: center;
  }
  .single-post .contents .right .alignnone, .single-column .contents .right .alignnone {
    margin: 0;
  }
  .single-post .contents .right .alignleft, .single-column .contents .right .alignleft {
    float: left;
    margin: 0.4em 1em 0.8em 0;
  }
  .single-post .contents .right .alignright, .single-column .contents .right .alignright {
    float: right;
    margin: 0.4em 0 0.8em 1em;
  }
  .single-post .contents .right .aligncenter, .single-column .contents .right .aligncenter {
    display: block;
    margin-inline: auto;
    text-align: center;
  }
  .single-post .contents .right .alignwide, .single-column .contents .right .alignwide {
    width: 100%;
    margin-inline: auto;
  }
  .single-post .contents .right .alignfull, .single-column .contents .right .alignfull {
    width: 100vw;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .single-post .contents .right .wp-caption, .single-column .contents .right .wp-caption {
    max-width: 100%;
  }
  .single-post .contents .right .wp-caption img, .single-column .contents .right .wp-caption img {
    display: block;
  }
  .single-post .contents .right .wp-caption-text, .single-column .contents .right .wp-caption-text {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
  }
  .single-post .contents .right code,
  .single-post .contents .right kbd,
  .single-post .contents .right samp, .single-column .contents .right code,
  .single-column .contents .right kbd,
  .single-column .contents .right samp {
    font-family: var(--ff-mono);
    font-size: 0.95em;
  }
  .single-post .contents .right pre,
  .single-post .contents .right .wp-block-code, .single-column .contents .right pre,
  .single-column .contents .right .wp-block-code {
    background: var(--c-code-bg);
    color: var(--c-code-ink);
    padding: 1rem 1.2rem;
    border-radius: var(--radius);
    overflow: auto;
    -webkit-box-shadow: var(--shadow);
            box-shadow: var(--shadow);
  }
  .single-post .contents .right pre code, .single-column .contents .right pre code {
    background: transparent;
    padding: 0;
  }
  .single-post .contents .right table, .single-column .contents .right table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-variant-numeric: tabular-nums;
  }
  .single-post .contents .right thead th, .single-column .contents .right thead th {
    text-align: left;
    border-bottom: 2px solid var(--c-border);
  }
  .single-post .contents .right th,
  .single-post .contents .right td, .single-column .contents .right th,
  .single-column .contents .right td {
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid var(--c-border);
  }
  .single-post .contents .right tbody tr:hover, .single-column .contents .right tbody tr:hover {
    background: color-mix(in oklab, var(--c-border) 35%, transparent);
  }
  .single-post .contents .right hr,
  .single-post .contents .right .wp-block-separator, .single-column .contents .right hr,
  .single-column .contents .right .wp-block-separator {
    border: 0;
    height: 1px;
    background: var(--c-border);
    margin: 2rem 0;
  }
  .single-post .contents .right .embed__ratio, .single-column .contents .right .embed__ratio {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background: rgba(0, 0, 0, 0.1333333333);
    border-radius: var(--radius);
    overflow: hidden;
  }
  .single-post .contents .right .embed__ratio iframe,
  .single-post .contents .right .embed__ratio video, .single-column .contents .right .embed__ratio iframe,
  .single-column .contents .right .embed__ratio video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .single-post .contents .right .wp-block-button .wp-block-button__link, .single-column .contents .right .wp-block-button .wp-block-button__link {
    display: inline-block;
    padding: 0.7rem 1.1rem;
    border-radius: 999px;
    background: var(--c-accent);
    color: var(--c-accent-ink);
    text-decoration: none;
    font-weight: 700;
  }
  .single-post .contents .right .wp-block-button.is-style-outline .wp-block-button__link, .single-column .contents .right .wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    color: var(--c-accent);
    border: 2px solid var(--c-accent);
  }
  .single-post .contents .right .wp-block-columns, .single-column .contents .right .wp-block-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .single-post .contents .right .wp-block-columns .wp-block-column, .single-column .contents .right .wp-block-columns .wp-block-column {
    width: calc(50% - 20px);
  }
  .single-post .contents .right .pagination .nav-links, .single-column .contents .right .pagination .nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .single-post .contents .right .page-numbers, .single-column .contents .right .page-numbers {
    display: inline-block;
    padding: 0.4rem 0.7rem;
    border: 1px solid var(--c-border);
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--c-ink);
  }
  .single-post .contents .right .page-numbers.current, .single-column .contents .right .page-numbers.current {
    background: var(--c-accent);
    color: var(--c-accent-ink);
    border-color: var(--c-accent);
  }
  .single-post .contents .right .page-numbers:hover, .single-column .contents .right .page-numbers:hover {
    background: color-mix(in oklab, var(--c-accent) 12%, transparent);
  }
  .single-post .contents .right .screen-reader-text, .single-column .contents .right .screen-reader-text {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
    border: 0;
    padding: 0;
    margin: -1px;
  }
  .single-post .contents .right img, .single-column .contents .right img {
    vertical-align: middle;
  }
  .single-post .contents .right .entry-content::after, .single-column .contents .right .entry-content::after {
    content: "";
    display: block;
    clear: both;
  }
  .single-post .reservation, .single-column .reservation {
    margin-top: 120px;
    text-align: center;
    margin: 120px auto;
    padding-top: 120px;
    border-top: 1px solid #E2E2E2;
    width: calc(100vw - 160px);
  }
  .single-post .reservation h5, .single-column .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: max(80px, 6.25vw);
    font-weight: 200;
  }
  .single-post .reservation .flex, .single-column .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .single-post .reservation .flex p, .single-column .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
  }
  .single-post .reservation .flex .arrowWrap, .single-column .reservation .flex .arrowWrap {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
  }
  .single-post .reservation .flex .arrowWrap .arrow, .single-column .reservation .flex .arrowWrap .arrow {
    width: 15px;
    height: 15px;
  }
  .single-post .reservation a:hover .arrowWrap .arrow, .single-column .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  #case .subPageTitle .inner,
  .tax-case-category .subPageTitle .inner {
    padding-bottom: 0;
  }
  #case .subPageTitle .right,
  .tax-case-category .subPageTitle .right {
    margin-top: 0;
  }
  #case .subPageTitle .right p,
  .tax-case-category .subPageTitle .right p {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 20px;
  }
  #case .section .inner,
  .tax-case-category .section .inner {
    padding-top: 80px;
  }
  #case .caseList,
  .tax-case-category .caseList {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 120px;
  }
  #case .caseList li,
  .tax-case-category .caseList li {
    border-top: 1px solid #E2E2E2;
    padding-top: 80px;
  }
  #case .caseList li .left .name,
  .tax-case-category .caseList li .left .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    margin-bottom: 32px;
  }
  #case .caseList li .left .name span,
  .tax-case-category .caseList li .left .name span {
    margin-top: 10px;
  }
  #case .caseList li .left li,
  .tax-case-category .caseList li .left li {
    border: none;
    padding-top: 0;
    margin-top: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #case .caseList li .left li span,
  .tax-case-category .caseList li .left li span {
    font-size: 16px;
    display: inline-block;
    margin-left: 20px;
    width: 150px;
  }
  #case .caseList li .left li p,
  .tax-case-category .caseList li .left li p {
    width: calc(100% - 170px);
  }
  #case .caseList li .right,
  .tax-case-category .caseList li .right {
    margin-top: 100px;
  }
  #case .caseList li .right h5,
  .tax-case-category .caseList li .right h5 {
    margin-bottom: 40px;
  }
  #case .caseList li .right .imgWrap,
  .tax-case-category .caseList li .right .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #case .caseList li .right .imgWrap img,
  .tax-case-category .caseList li .right .imgWrap img {
    width: calc(50% - 20px);
  }
  #case .caseList li + li,
  .tax-case-category .caseList li + li {
    margin-top: 80px;
  }
  .casestudies-template-default .left .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 50px;
    margin-bottom: 32px;
  }
  .casestudies-template-default .left .name span {
    margin-top: 30px;
  }
  .casestudies-template-default .left li {
    border: none;
    padding-top: 0;
    margin-top: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .casestudies-template-default .left li span {
    font-size: 16px;
    display: inline-block;
    margin-left: 20px;
    width: 150px;
  }
  .casestudies-template-default .left li p {
    width: calc(100% - 170px);
  }
  .casestudies-template-default .right {
    margin-top: 100px;
  }
  .casestudies-template-default .right h5 {
    margin-bottom: 40px;
  }
  .casestudies-template-default .right .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .casestudies-template-default .right .imgWrap img {
    width: calc(50% - 20px);
  }
  .casestudies-template-default .imgWrapSection {
    margin-top: 40px;
  }
  .casestudies-template-default .imgWrapSection .inner {
    padding-top: 0;
  }
  .casestudies-template-default .imgWrapSection .inner .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .casestudies-template-default .imgWrapSection .inner .imgWrap img {
    width: calc(50% - 40px);
    margin-bottom: 30px;
  }
  .casestudies-template-default .contents {
    margin-top: 0px;
  }
  .casestudies-template-default .contents .inner {
    padding-top: 0px;
    padding-bottom: 80px;
  }
  .casestudies-template-default .contents .left {
    width: calc(40vw - 240px);
    margin-right: 240px;
  }
  .casestudies-template-default .contents .right {
    margin-top: 0;
    /* =========
    WordPress Blog Base (Gutenberg/Classic)
    ========= */
    /* 見出しスケール */
    /* 本文 */
    /* リスト */
    /* 引用 */
    /* 画像・図版 */
    /* Gutenberg アライメント対応 */
    /* キャプション（クラシック互換） */
    /* コード */
    /* 表 */
    /* 区切り線 */
    /* 埋め込み（YouTubeなど比率維持） */
    /* Gutenberg ボタン（最低限） */
    /* Gutenberg カラム */
    /* ページネーション */
    /* スクリーンリーダーテキスト（WP標準） */
    /* 画像の下に余白が出るのを防ぐ */
    /* クリアフィックス（クラシック互換） */
  }
  .casestudies-template-default .contents .right h1:first-child,
  .casestudies-template-default .contents .right h2:first-child,
  .casestudies-template-default .contents .right h3:first-child,
  .casestudies-template-default .contents .right h4:first-child,
  .casestudies-template-default .contents .right h5:first-child,
  .casestudies-template-default .contents .right h6:first-child,
  .casestudies-template-default .contents .right p:first-child,
  .casestudies-template-default .contents .right a:first-child,
  .casestudies-template-default .contents .right img:first-child,
  .casestudies-template-default .contents .right blockquote:first-child,
  .casestudies-template-default .contents .right ul:first-child,
  .casestudies-template-default .contents .right ol:first-child,
  .casestudies-template-default .contents .right dl:first-child {
    margin-top: 0;
  }
  .casestudies-template-default .contents .right h1,
  .casestudies-template-default .contents .right h2,
  .casestudies-template-default .contents .right h3,
  .casestudies-template-default .contents .right h4,
  .casestudies-template-default .contents .right h5,
  .casestudies-template-default .contents .right h6 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
    margin: 1.6em 0 0.6em;
    font-weight: 700;
    margin-top: 80px;
  }
  .casestudies-template-default .contents .right h1 {
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  }
  .casestudies-template-default .contents .right h2 {
    font-size: clamp(1.6rem, 3vw, 2rem);
  }
  .casestudies-template-default .contents .right h3 {
    font-size: clamp(1.3rem, 2.4vw, 1.6rem);
  }
  .casestudies-template-default .contents .right h4 {
    font-size: 1.2rem;
  }
  .casestudies-template-default .contents .right h5 {
    font-size: 1.05rem;
  }
  .casestudies-template-default .contents .right h6 {
    font-size: 0.95rem;
    color: var(--c-ink-muted);
  }
  .casestudies-template-default .contents .right p {
    margin: 1em 0;
  }
  .casestudies-template-default .contents .right a {
    color: var(--c-accent);
    text-decoration: underline;
    opacity: 0.5;
  }
  .casestudies-template-default .contents .right a:hover {
    text-decoration: none;
    opacity: 1;
  }
  .casestudies-template-default .contents .right strong,
  .casestudies-template-default .contents .right b {
    font-weight: 700;
  }
  .casestudies-template-default .contents .right em,
  .casestudies-template-default .contents .right i {
    font-style: italic;
  }
  .casestudies-template-default .contents .right small,
  .casestudies-template-default .contents .right .has-small-font-size {
    font-size: 0.875rem;
  }
  .casestudies-template-default .contents .right big,
  .casestudies-template-default .contents .right .has-large-font-size {
    font-size: 1.25rem;
  }
  .casestudies-template-default .contents .right ul,
  .casestudies-template-default .contents .right ol {
    margin-top: 20px;
  }
  .casestudies-template-default .contents .right ul li,
  .casestudies-template-default .contents .right ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .casestudies-template-default .contents .right ul li:before,
  .casestudies-template-default .contents .right ol li:before {
    content: "・";
    display: block;
  }
  .casestudies-template-default .contents .right ul li + li,
  .casestudies-template-default .contents .right ol li + li {
    margin-top: 4px;
  }
  .casestudies-template-default .contents .right ol {
    counter-reset: list-counter;
    /* カウンターを初期化 */
    padding-left: 0;
    /* 左余白は好みで */
  }
  .casestudies-template-default .contents .right ol li {
    list-style: none;
    /* デフォルトの番号は消す */
    counter-increment: list-counter;
    /* 1つ進める */
    /* 番号用のスペース確保 */
    position: relative;
  }
  .casestudies-template-default .contents .right ol li::before {
    content: counter(list-counter) ".";
    margin-right: 10px;
    /* 番号の色 */
  }
  .casestudies-template-default .contents .right li {
    margin: 0.3em 0;
  }
  .casestudies-template-default .contents .right dl {
    margin: 1em 0;
  }
  .casestudies-template-default .contents .right dt {
    font-weight: 700;
  }
  .casestudies-template-default .contents .right dd {
    margin-left: 0;
  }
  .casestudies-template-default .contents .right blockquote {
    margin: 1.5em 0;
    padding: 1rem 1.2rem;
    background: var(--c-quote);
    border-left: 4px solid var(--c-accent);
    border-radius: calc(var(--radius) - 4px);
  }
  .casestudies-template-default .contents .right blockquote p {
    margin: 0.6em 0;
  }
  .casestudies-template-default .contents .right blockquote cite {
    display: block;
    margin-top: 0.5em;
    color: var(--c-ink-muted);
    font-style: normal;
  }
  .casestudies-template-default .contents .right img,
  .casestudies-template-default .contents .right svg,
  .casestudies-template-default .contents .right video {
    max-width: 100%;
    height: auto;
  }
  .casestudies-template-default .contents .right figure {
    margin: 80px 0 0;
  }
  .casestudies-template-default .contents .right figcaption {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
    text-align: center;
  }
  .casestudies-template-default .contents .right .alignnone {
    margin: 0;
  }
  .casestudies-template-default .contents .right .alignleft {
    float: left;
    margin: 0.4em 1em 0.8em 0;
  }
  .casestudies-template-default .contents .right .alignright {
    float: right;
    margin: 0.4em 0 0.8em 1em;
  }
  .casestudies-template-default .contents .right .aligncenter {
    display: block;
    margin-inline: auto;
    text-align: center;
  }
  .casestudies-template-default .contents .right .alignwide {
    width: 100%;
    margin-inline: auto;
  }
  .casestudies-template-default .contents .right .alignfull {
    width: 100vw;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .casestudies-template-default .contents .right .wp-caption {
    max-width: 100%;
  }
  .casestudies-template-default .contents .right .wp-caption img {
    display: block;
  }
  .casestudies-template-default .contents .right .wp-caption-text {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
  }
  .casestudies-template-default .contents .right code,
  .casestudies-template-default .contents .right kbd,
  .casestudies-template-default .contents .right samp {
    font-family: var(--ff-mono);
    font-size: 0.95em;
  }
  .casestudies-template-default .contents .right pre,
  .casestudies-template-default .contents .right .wp-block-code {
    background: var(--c-code-bg);
    color: var(--c-code-ink);
    padding: 1rem 1.2rem;
    border-radius: var(--radius);
    overflow: auto;
    -webkit-box-shadow: var(--shadow);
            box-shadow: var(--shadow);
  }
  .casestudies-template-default .contents .right pre code {
    background: transparent;
    padding: 0;
  }
  .casestudies-template-default .contents .right table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-variant-numeric: tabular-nums;
  }
  .casestudies-template-default .contents .right thead th {
    text-align: left;
    border-bottom: 2px solid var(--c-border);
  }
  .casestudies-template-default .contents .right th,
  .casestudies-template-default .contents .right td {
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid var(--c-border);
  }
  .casestudies-template-default .contents .right tbody tr:hover {
    background: color-mix(in oklab, var(--c-border) 35%, transparent);
  }
  .casestudies-template-default .contents .right hr,
  .casestudies-template-default .contents .right .wp-block-separator {
    border: 0;
    height: 1px;
    background: var(--c-border);
    margin: 2rem 0;
  }
  .casestudies-template-default .contents .right .embed__ratio {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background: rgba(0, 0, 0, 0.1333333333);
    border-radius: var(--radius);
    overflow: hidden;
  }
  .casestudies-template-default .contents .right .embed__ratio iframe,
  .casestudies-template-default .contents .right .embed__ratio video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .casestudies-template-default .contents .right .wp-block-button .wp-block-button__link {
    display: inline-block;
    padding: 0.7rem 1.1rem;
    border-radius: 999px;
    background: var(--c-accent);
    color: var(--c-accent-ink);
    text-decoration: none;
    font-weight: 700;
  }
  .casestudies-template-default .contents .right .wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    color: var(--c-accent);
    border: 2px solid var(--c-accent);
  }
  .casestudies-template-default .contents .right .wp-block-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .casestudies-template-default .contents .right .wp-block-columns .wp-block-column {
    width: calc(50% - 20px);
  }
  .casestudies-template-default .contents .right .pagination .nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .casestudies-template-default .contents .right .page-numbers {
    display: inline-block;
    padding: 0.4rem 0.7rem;
    border: 1px solid var(--c-border);
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--c-ink);
  }
  .casestudies-template-default .contents .right .page-numbers.current {
    background: var(--c-accent);
    color: var(--c-accent-ink);
    border-color: var(--c-accent);
  }
  .casestudies-template-default .contents .right .page-numbers:hover {
    background: color-mix(in oklab, var(--c-accent) 12%, transparent);
  }
  .casestudies-template-default .contents .right .screen-reader-text {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
    border: 0;
    padding: 0;
    margin: -1px;
  }
  .casestudies-template-default .contents .right img {
    vertical-align: middle;
  }
  .casestudies-template-default .contents .right .entry-content::after {
    content: "";
    display: block;
    clear: both;
  }
  .casestudies-template-default .reservation {
    margin-top: 0px;
    text-align: center;
    margin: 120px auto;
    padding-top: 120px;
    border-top: 1px solid #E2E2E2;
    width: calc(100vw - 160px);
  }
  .casestudies-template-default .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: max(80px, 6.25vw);
    font-weight: 200;
  }
  .casestudies-template-default .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .casestudies-template-default .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
  }
  .casestudies-template-default .reservation .flex .arrowWrap {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
  }
  .casestudies-template-default .reservation .flex .arrowWrap .arrow {
    width: 15px;
    height: 15px;
  }
  .casestudies-template-default .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  .error404 .section, #thanks .section {
    position: relative;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
  }
  .error404 .section .errorText, #thanks .section .errorText {
    font-family: "Playfair Display", serif;
    font-size: 31.25vw;
    position: absolute;
    bottom: 10px;
    right: -10px;
    opacity: 0.1;
    line-height: 1;
  }
  .error404 .section .inner, #thanks .section .inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .error404 .section .inner h2, #thanks .section .inner h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 35px;
    font-weight: 200;
    margin-bottom: 40px;
  }
  .error404 .section .inner .button, #thanks .section .inner .button {
    margin-top: 64px;
  }
  .error404 #footer, #thanks #footer {
    display: none;
  }
  #contact .subPageTitle {
    padding-top: 240px;
  }
  #contact .buttonWrap {
    text-align: center;
  }
  #contact .buttonWrap .button {
    margin: 80px auto 20px;
  }
  #contact .buttonWrap .back {
    margin-top: 20px;
    border: 1px solid #586166;
    background-color: #FFFFFF;
    color: #586166;
  }
  #contact .buttonWrap .back:hover {
    background-color: #586166;
    color: #FFFFFF;
  }
  #contact .right {
    margin-top: 20px;
  }
  #contact .inner {
    padding-top: 0;
  }
  #contact .wpcf7-submit {
    width: 200px;
    height: 40px;
    color: #FFFFFF;
    background-color: #586166;
    display: block;
    text-align: center;
    line-height: 40px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid #586166;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin: 80px auto;
  }
  #contact .wpcf7-submit:hover {
    background-color: transparent;
    color: #586166;
  }
  #contact .wpcf7-acceptance {
    text-align: center;
    margin: 0 auto;
    display: block;
  }
  #contact .wpcf7-acceptance a {
    text-decoration: underline;
    opacity: 0.5;
  }
  #contact .wpcf7-acceptance a:hover {
    opacity: 1;
  }
  #contact #wpcf7cpcnf {
    font-size: 15px;
  }
  #contact #wpcf7cpcnf .table {
    width: 100%;
  }
  #contact #wpcf7cpcnf tr {
    width: 100%;
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    display: inline-block;
  }
  #contact #wpcf7cpcnf th {
    font-weight: bold;
    display: inline-block;
    width: 40%;
  }
  #contact #wpcf7cpcnf td {
    display: inline-block;
    width: 60%;
  }
  #contact #wpcf7cpcnf tr + tr {
    margin-top: 40px;
  }
  #contact #wpcf7cpcnf .wpcf7cp-cfm-edit-btn {
    display: inline-block;
    text-align: center;
    text-decoration: underline;
    display: block;
    margin: 80px auto -70px;
    font-size: 12px;
  }
  #contact #wpcf7cpcnf .wpcf7cp-cfm-edit-btn:hover {
    opacity: 0.7;
  }
  #contact .c-form {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    --ink: $mainColor;
    --muted: #9aa0a6;
    --line: #E2E2E2;
    --accent: #0053A5;
  }
  #contact .c-form .title-contactform7 {
    font-weight: bold;
  }
  #contact .c-form .c-form__field {
    margin-bottom: 40px;
  }
  #contact .c-form * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #contact .c-form .c-form__req {
    display: inline-block;
    margin-left: 0.5em;
    font-size: 0.85em;
    color: #d80000;
  }
  #contact .c-form .c-form__field + .c-form__field {
    margin-top: 40px;
  }
  #contact .c-form .c-form__label {
    display: block;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 8px;
    line-height: 1.6;
    font-size: 13px;
  }
  #contact .c-form .c-form__control {
    position: relative;
  }
  #contact .c-form .c-form__control input,
  #contact .c-form .c-form__control select,
  #contact .c-form .c-form__control textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    padding: 14px 0;
    font-size: 16px;
    line-height: 1.6;
    color: var(--ink);
    outline: none;
  }
  #contact .c-form .c-form__control input::-webkit-input-placeholder, #contact .c-form .c-form__control select::-webkit-input-placeholder, #contact .c-form .c-form__control textarea::-webkit-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::-moz-placeholder, #contact .c-form .c-form__control select::-moz-placeholder, #contact .c-form .c-form__control textarea::-moz-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input:-ms-input-placeholder, #contact .c-form .c-form__control select:-ms-input-placeholder, #contact .c-form .c-form__control textarea:-ms-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::-ms-input-placeholder, #contact .c-form .c-form__control select::-ms-input-placeholder, #contact .c-form .c-form__control textarea::-ms-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::placeholder,
  #contact .c-form .c-form__control select::placeholder,
  #contact .c-form .c-form__control textarea::placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input:focus,
  #contact .c-form .c-form__control select:focus,
  #contact .c-form .c-form__control textarea:focus {
    border-bottom-color: var(--ink);
  }
  #contact .c-form .c-form__control select {
    background-image: linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);
    background-position: right 8px top 55%, right 0px top 55%;
    background-size: 8px 8px, 8px 8px;
    background-repeat: no-repeat;
    padding-right: 28px;
  }
  #contact .c-form .c-form__control textarea {
    resize: vertical;
  }
  #contact .c-form .c-form__agree {
    margin-top: 64px;
    text-align: center;
  }
  #contact .c-form .c-form__agree .c-form__check {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    font-size: 14px;
    color: var(--ink);
  }
  #contact .c-form .c-form__agree .c-form__check input[type=checkbox] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--ink);
  }
  #contact .c-form .c-form__agree .c-form__check a {
    text-decoration: underline;
  }
  #contact .c-form .c-form__action {
    margin-top: 28px;
    width: 100%;
    text-align: center;
  }
  #contact .c-form .c-form__action .button {
    margin: 0 auto;
    display: inline-block;
  }
  #contact .c-form.is-error .c-form__control input:invalid, #contact .c-form.is-error .c-form__control textarea:invalid, #contact .c-form.is-error .c-form__control select:invalid {
    border-bottom-color: #d80000;
  }
  #servicemenu .subPageTitle .inner {
    padding-bottom: 0;
  }
  #servicemenu .menuWrap {
    margin-bottom: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #servicemenu .menuWrap li {
    margin-right: 20px;
    font-size: 12px;
  }
  #servicemenu strong {
    margin: 40px 0 20px;
  }
  #servicemenu .bulletPoints li {
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  #ceramic .jp_title, #generaldentistry .jp_title, #implant .jp_title, #mouthpieceinvisalign .jp_title, #orthodontictreatment .jp_title, #periodontaltreatment .jp_title, #whitening .jp_title {
    font-size: 30px;
    line-height: 1.7;
  }
  #ceramic small, #generaldentistry small, #implant small, #mouthpieceinvisalign small, #orthodontictreatment small, #periodontaltreatment small, #whitening small {
    font-size: 0.5em;
  }
  #ceramic .section:nth-child(2n), #generaldentistry .section:nth-child(2n), #implant .section:nth-child(2n), #mouthpieceinvisalign .section:nth-child(2n), #orthodontictreatment .section:nth-child(2n), #periodontaltreatment .section:nth-child(2n), #whitening .section:nth-child(2n) {
    background-color: #fafafa;
  }
  #ceramic .threeColum, #generaldentistry .threeColum, #implant .threeColum, #mouthpieceinvisalign .threeColum, #orthodontictreatment .threeColum, #periodontaltreatment .threeColum, #whitening .threeColum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 80px;
  }
  #ceramic .threeColum li, #generaldentistry .threeColum li, #implant .threeColum li, #mouthpieceinvisalign .threeColum li, #orthodontictreatment .threeColum li, #periodontaltreatment .threeColum li, #whitening .threeColum li {
    width: calc(33.3333% - 55px);
    margin-bottom: 80px;
    text-align: left;
    margin-right: 80px;
  }
  #ceramic .threeColum li h4, #generaldentistry .threeColum li h4, #implant .threeColum li h4, #mouthpieceinvisalign .threeColum li h4, #orthodontictreatment .threeColum li h4, #periodontaltreatment .threeColum li h4, #whitening .threeColum li h4 {
    margin-top: 24px;
    margin-bottom: 4px;
    font-weight: bold;
    font-size: 16px;
  }
  #ceramic .threeColum li p, #generaldentistry .threeColum li p, #implant .threeColum li p, #mouthpieceinvisalign .threeColum li p, #orthodontictreatment .threeColum li p, #periodontaltreatment .threeColum li p, #whitening .threeColum li p {
    font-size: 14px;
  }
  #ceramic .threeColum li:nth-child(3n), #generaldentistry .threeColum li:nth-child(3n), #implant .threeColum li:nth-child(3n), #mouthpieceinvisalign .threeColum li:nth-child(3n), #orthodontictreatment .threeColum li:nth-child(3n), #periodontaltreatment .threeColum li:nth-child(3n), #whitening .threeColum li:nth-child(3n) {
    margin-right: 0;
  }
  #ceramic .threeColumNumber, #generaldentistry .threeColumNumber, #implant .threeColumNumber, #mouthpieceinvisalign .threeColumNumber, #orthodontictreatment .threeColumNumber, #periodontaltreatment .threeColumNumber, #whitening .threeColumNumber {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 80px;
  }
  #ceramic .threeColumNumber li, #generaldentistry .threeColumNumber li, #implant .threeColumNumber li, #mouthpieceinvisalign .threeColumNumber li, #orthodontictreatment .threeColumNumber li, #periodontaltreatment .threeColumNumber li, #whitening .threeColumNumber li {
    width: calc(33.3333% - 80px);
    margin-bottom: 80px;
    text-align: center;
  }
  #ceramic .threeColumNumber li h5, #generaldentistry .threeColumNumber li h5, #implant .threeColumNumber li h5, #mouthpieceinvisalign .threeColumNumber li h5, #orthodontictreatment .threeColumNumber li h5, #periodontaltreatment .threeColumNumber li h5, #whitening .threeColumNumber li h5 {
    font-family: "Playfair Display", serif;
    font-size: 80px;
    font-weight: 200;
    line-height: 1;
  }
  #ceramic .threeColumNumber li h5:after, #generaldentistry .threeColumNumber li h5:after, #implant .threeColumNumber li h5:after, #mouthpieceinvisalign .threeColumNumber li h5:after, #orthodontictreatment .threeColumNumber li h5:after, #periodontaltreatment .threeColumNumber li h5:after, #whitening .threeColumNumber li h5:after {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background-color: #586166;
    margin: 40px auto 0;
  }
  #ceramic .threeColumNumber li h4, #generaldentistry .threeColumNumber li h4, #implant .threeColumNumber li h4, #mouthpieceinvisalign .threeColumNumber li h4, #orthodontictreatment .threeColumNumber li h4, #periodontaltreatment .threeColumNumber li h4, #whitening .threeColumNumber li h4 {
    margin-top: 40px;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
  }
  #ceramic .threeColumNumber li p, #generaldentistry .threeColumNumber li p, #implant .threeColumNumber li p, #mouthpieceinvisalign .threeColumNumber li p, #orthodontictreatment .threeColumNumber li p, #periodontaltreatment .threeColumNumber li p, #whitening .threeColumNumber li p {
    font-size: 14px;
  }
  #ceramic .textWrap, #generaldentistry .textWrap, #implant .textWrap, #mouthpieceinvisalign .textWrap, #orthodontictreatment .textWrap, #periodontaltreatment .textWrap, #whitening .textWrap {
    margin-top: 10px !important;
  }
  #ceramic .textWrap .button, #generaldentistry .textWrap .button, #implant .textWrap .button, #mouthpieceinvisalign .textWrap .button, #orthodontictreatment .textWrap .button, #periodontaltreatment .textWrap .button, #whitening .textWrap .button {
    margin: 40px auto 0 !important;
  }
  #ceramic .textWrap h5, #generaldentistry .textWrap h5, #implant .textWrap h5, #mouthpieceinvisalign .textWrap h5, #orthodontictreatment .textWrap h5, #periodontaltreatment .textWrap h5, #whitening .textWrap h5 {
    font-size: 18px;
    margin-bottom: 40px;
  }
  #ceramic .textWrap p + h5, #generaldentistry .textWrap p + h5, #implant .textWrap p + h5, #mouthpieceinvisalign .textWrap p + h5, #orthodontictreatment .textWrap p + h5, #periodontaltreatment .textWrap p + h5, #whitening .textWrap p + h5 {
    margin-top: 40px;
  }
  #ceramic .textWrap h5 + img, #generaldentistry .textWrap h5 + img, #implant .textWrap h5 + img, #mouthpieceinvisalign .textWrap h5 + img, #orthodontictreatment .textWrap h5 + img, #periodontaltreatment .textWrap h5 + img, #whitening .textWrap h5 + img {
    margin-top: 0;
  }
  #ceramic .textWrap img + p, #generaldentistry .textWrap img + p, #implant .textWrap img + p, #mouthpieceinvisalign .textWrap img + p, #orthodontictreatment .textWrap img + p, #periodontaltreatment .textWrap img + p, #whitening .textWrap img + p {
    margin-top: -40px;
  }
  #ceramic .textWrap h5 + p, #generaldentistry .textWrap h5 + p, #implant .textWrap h5 + p, #mouthpieceinvisalign .textWrap h5 + p, #orthodontictreatment .textWrap h5 + p, #periodontaltreatment .textWrap h5 + p, #whitening .textWrap h5 + p {
    margin-top: -20px;
  }
  #ceramic .textWrap h4, #generaldentistry .textWrap h4, #implant .textWrap h4, #mouthpieceinvisalign .textWrap h4, #orthodontictreatment .textWrap h4, #periodontaltreatment .textWrap h4, #whitening .textWrap h4 {
    font-size: 18px;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-weight: bold;
    margin-bottom: 20px;
  }
  #ceramic .textWrap .imgCaption, #generaldentistry .textWrap .imgCaption, #implant .textWrap .imgCaption, #mouthpieceinvisalign .textWrap .imgCaption, #orthodontictreatment .textWrap .imgCaption, #periodontaltreatment .textWrap .imgCaption, #whitening .textWrap .imgCaption {
    font-size: 12px;
    margin-top: -50px;
  }
  #ceramic .textWrap .imgColum, #generaldentistry .textWrap .imgColum, #implant .textWrap .imgColum, #mouthpieceinvisalign .textWrap .imgColum, #orthodontictreatment .textWrap .imgColum, #periodontaltreatment .textWrap .imgColum, #whitening .textWrap .imgColum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #ceramic .textWrap .imgColum li, #generaldentistry .textWrap .imgColum li, #implant .textWrap .imgColum li, #mouthpieceinvisalign .textWrap .imgColum li, #orthodontictreatment .textWrap .imgColum li, #periodontaltreatment .textWrap .imgColum li, #whitening .textWrap .imgColum li {
    width: calc(50% - 20px);
    margin: 20px 0;
  }
  #ceramic .textWrap .imgColum li img, #generaldentistry .textWrap .imgColum li img, #implant .textWrap .imgColum li img, #mouthpieceinvisalign .textWrap .imgColum li img, #orthodontictreatment .textWrap .imgColum li img, #periodontaltreatment .textWrap .imgColum li img, #whitening .textWrap .imgColum li img {
    margin: 0;
  }
  #ceramic .textWrap .imgColum li .imgCaption, #generaldentistry .textWrap .imgColum li .imgCaption, #implant .textWrap .imgColum li .imgCaption, #mouthpieceinvisalign .textWrap .imgColum li .imgCaption, #orthodontictreatment .textWrap .imgColum li .imgCaption, #periodontaltreatment .textWrap .imgColum li .imgCaption, #whitening .textWrap .imgColum li .imgCaption {
    font-size: 12px;
    margin-top: 10px;
  }
  #ceramic .textWrap img + .imgColum, #generaldentistry .textWrap img + .imgColum, #implant .textWrap img + .imgColum, #mouthpieceinvisalign .textWrap img + .imgColum, #orthodontictreatment .textWrap img + .imgColum, #periodontaltreatment .textWrap img + .imgColum, #whitening .textWrap img + .imgColum {
    margin-top: -40px;
  }
  #ceramic .textWrap img, #generaldentistry .textWrap img, #implant .textWrap img, #mouthpieceinvisalign .textWrap img, #orthodontictreatment .textWrap img, #periodontaltreatment .textWrap img, #whitening .textWrap img {
    margin: 64px 0;
  }
  #ceramic .textWrap img:last-child, #generaldentistry .textWrap img:last-child, #implant .textWrap img:last-child, #mouthpieceinvisalign .textWrap img:last-child, #orthodontictreatment .textWrap img:last-child, #periodontaltreatment .textWrap img:last-child, #whitening .textWrap img:last-child {
    margin-bottom: 0;
  }
  #ceramic .textWrap .bulletPoints, #generaldentistry .textWrap .bulletPoints, #implant .textWrap .bulletPoints, #mouthpieceinvisalign .textWrap .bulletPoints, #orthodontictreatment .textWrap .bulletPoints, #periodontaltreatment .textWrap .bulletPoints, #whitening .textWrap .bulletPoints {
    margin-top: -32px;
    margin-bottom: 20px;
  }
  #ceramic .textWrap .bulletPoints li, #generaldentistry .textWrap .bulletPoints li, #implant .textWrap .bulletPoints li, #mouthpieceinvisalign .textWrap .bulletPoints li, #orthodontictreatment .textWrap .bulletPoints li, #periodontaltreatment .textWrap .bulletPoints li, #whitening .textWrap .bulletPoints li {
    font-size: 14px;
  }
  #ceramic .priceMenu .bulletPoints, #generaldentistry .priceMenu .bulletPoints, #implant .priceMenu .bulletPoints, #mouthpieceinvisalign .priceMenu .bulletPoints, #orthodontictreatment .priceMenu .bulletPoints, #periodontaltreatment .priceMenu .bulletPoints, #whitening .priceMenu .bulletPoints {
    margin-top: 20px;
  }
  #ceramic .priceMenu h5, #generaldentistry .priceMenu h5, #implant .priceMenu h5, #mouthpieceinvisalign .priceMenu h5, #orthodontictreatment .priceMenu h5, #periodontaltreatment .priceMenu h5, #whitening .priceMenu h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  #ceramic .priceMenu .price, #generaldentistry .priceMenu .price, #implant .priceMenu .price, #mouthpieceinvisalign .priceMenu .price, #orthodontictreatment .priceMenu .price, #periodontaltreatment .priceMenu .price, #whitening .priceMenu .price {
    font-family: "Playfair Display", serif;
    font-size: max(50px, 3.90625vw);
    margin-bottom: 40px;
  }
  #ceramic .priceMenu h5 + .price, #generaldentistry .priceMenu h5 + .price, #implant .priceMenu h5 + .price, #mouthpieceinvisalign .priceMenu h5 + .price, #orthodontictreatment .priceMenu h5 + .price, #periodontaltreatment .priceMenu h5 + .price, #whitening .priceMenu h5 + .price {
    margin-top: -30px;
  }
  #ceramic .priceMenu .loanWrap, #generaldentistry .priceMenu .loanWrap, #implant .priceMenu .loanWrap, #mouthpieceinvisalign .priceMenu .loanWrap, #orthodontictreatment .priceMenu .loanWrap, #periodontaltreatment .priceMenu .loanWrap, #whitening .priceMenu .loanWrap {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
    margin-top: 40px;
  }
  #ceramic .priceMenu .loanWrap .loanImg, #generaldentistry .priceMenu .loanWrap .loanImg, #implant .priceMenu .loanWrap .loanImg, #mouthpieceinvisalign .priceMenu .loanWrap .loanImg, #orthodontictreatment .priceMenu .loanWrap .loanImg, #periodontaltreatment .priceMenu .loanWrap .loanImg, #whitening .priceMenu .loanWrap .loanImg {
    margin-top: 40px;
  }
  #ceramic .priceMenu .loanWrap .loanList, #generaldentistry .priceMenu .loanWrap .loanList, #implant .priceMenu .loanWrap .loanList, #mouthpieceinvisalign .priceMenu .loanWrap .loanList, #orthodontictreatment .priceMenu .loanWrap .loanList, #periodontaltreatment .priceMenu .loanWrap .loanList, #whitening .priceMenu .loanWrap .loanList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #ceramic .priceMenu .loanWrap .loanList li::before, #generaldentistry .priceMenu .loanWrap .loanList li::before, #implant .priceMenu .loanWrap .loanList li::before, #mouthpieceinvisalign .priceMenu .loanWrap .loanList li::before, #orthodontictreatment .priceMenu .loanWrap .loanList li::before, #periodontaltreatment .priceMenu .loanWrap .loanList li::before, #whitening .priceMenu .loanWrap .loanList li::before {
    content: "・";
    display: inline-block;
    margin-right: 4px;
  }
  #ceramic .priceMenu .loanWrap .loanList li, #generaldentistry .priceMenu .loanWrap .loanList li, #implant .priceMenu .loanWrap .loanList li, #mouthpieceinvisalign .priceMenu .loanWrap .loanList li, #orthodontictreatment .priceMenu .loanWrap .loanList li, #periodontaltreatment .priceMenu .loanWrap .loanList li, #whitening .priceMenu .loanWrap .loanList li {
    margin-bottom: 20px;
    margin-right: 20px;
  }
  #ceramic .reservation, #generaldentistry .reservation, #implant .reservation, #mouthpieceinvisalign .reservation, #orthodontictreatment .reservation, #periodontaltreatment .reservation, #whitening .reservation {
    margin-top: 120px;
    text-align: center;
    margin: 120px auto;
  }
  #ceramic .reservation h5, #generaldentistry .reservation h5, #implant .reservation h5, #mouthpieceinvisalign .reservation h5, #orthodontictreatment .reservation h5, #periodontaltreatment .reservation h5, #whitening .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: max(80px, 6.25vw);
    font-weight: 200;
  }
  #ceramic .reservation .flex, #generaldentistry .reservation .flex, #implant .reservation .flex, #mouthpieceinvisalign .reservation .flex, #orthodontictreatment .reservation .flex, #periodontaltreatment .reservation .flex, #whitening .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #ceramic .reservation .flex p, #generaldentistry .reservation .flex p, #implant .reservation .flex p, #mouthpieceinvisalign .reservation .flex p, #orthodontictreatment .reservation .flex p, #periodontaltreatment .reservation .flex p, #whitening .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
  }
  #ceramic .reservation .flex .arrowWrap, #generaldentistry .reservation .flex .arrowWrap, #implant .reservation .flex .arrowWrap, #mouthpieceinvisalign .reservation .flex .arrowWrap, #orthodontictreatment .reservation .flex .arrowWrap, #periodontaltreatment .reservation .flex .arrowWrap, #whitening .reservation .flex .arrowWrap {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #ceramic .reservation .flex .arrowWrap .arrow, #generaldentistry .reservation .flex .arrowWrap .arrow, #implant .reservation .flex .arrowWrap .arrow, #mouthpieceinvisalign .reservation .flex .arrowWrap .arrow, #orthodontictreatment .reservation .flex .arrowWrap .arrow, #periodontaltreatment .reservation .flex .arrowWrap .arrow, #whitening .reservation .flex .arrowWrap .arrow {
    width: 15px;
    height: 15px;
  }
  #ceramic .reservation a:hover .arrowWrap .arrow, #generaldentistry .reservation a:hover .arrowWrap .arrow, #implant .reservation a:hover .arrowWrap .arrow, #mouthpieceinvisalign .reservation a:hover .arrowWrap .arrow, #orthodontictreatment .reservation a:hover .arrowWrap .arrow, #periodontaltreatment .reservation a:hover .arrowWrap .arrow, #whitening .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  #ceramic .layout_a, #generaldentistry .layout_a, #implant .layout_a, #mouthpieceinvisalign .layout_a, #orthodontictreatment .layout_a, #periodontaltreatment .layout_a, #whitening .layout_a {
    margin-top: 40px;
  }
  #ceramic .layout_a .textWrap, #generaldentistry .layout_a .textWrap, #implant .layout_a .textWrap, #mouthpieceinvisalign .layout_a .textWrap, #orthodontictreatment .layout_a .textWrap, #periodontaltreatment .layout_a .textWrap, #whitening .layout_a .textWrap {
    margin-top: -10px !important;
  }
  #ceramic .layout_a h5, #generaldentistry .layout_a h5, #implant .layout_a h5, #mouthpieceinvisalign .layout_a h5, #orthodontictreatment .layout_a h5, #periodontaltreatment .layout_a h5, #whitening .layout_a h5 {
    font-size: max(24px, 1.875vw);
  }
  #ceramic #guidLine2Modal, #ceramic #guidLine3Modal, #generaldentistry #guidLine2Modal, #generaldentistry #guidLine3Modal, #implant #guidLine2Modal, #implant #guidLine3Modal, #mouthpieceinvisalign #guidLine2Modal, #mouthpieceinvisalign #guidLine3Modal, #orthodontictreatment #guidLine2Modal, #orthodontictreatment #guidLine3Modal, #periodontaltreatment #guidLine2Modal, #periodontaltreatment #guidLine3Modal, #whitening #guidLine2Modal, #whitening #guidLine3Modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    background-color: #586166;
    height: 100vh;
    z-index: 9999;
    color: #FFFFFF;
    overflow-y: scroll;
    /* フェード制御（初期は非表示） */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
  }
  #ceramic #guidLine2Modal .inner, #ceramic #guidLine3Modal .inner, #generaldentistry #guidLine2Modal .inner, #generaldentistry #guidLine3Modal .inner, #implant #guidLine2Modal .inner, #implant #guidLine3Modal .inner, #mouthpieceinvisalign #guidLine2Modal .inner, #mouthpieceinvisalign #guidLine3Modal .inner, #orthodontictreatment #guidLine2Modal .inner, #orthodontictreatment #guidLine3Modal .inner, #periodontaltreatment #guidLine2Modal .inner, #periodontaltreatment #guidLine3Modal .inner, #whitening #guidLine2Modal .inner, #whitening #guidLine3Modal .inner {
    padding: 240px 80px;
    overflow-y: scroll;
  }
  #ceramic #guidLine2Modal .inner .left, #ceramic #guidLine3Modal .inner .left, #generaldentistry #guidLine2Modal .inner .left, #generaldentistry #guidLine3Modal .inner .left, #implant #guidLine2Modal .inner .left, #implant #guidLine3Modal .inner .left, #mouthpieceinvisalign #guidLine2Modal .inner .left, #mouthpieceinvisalign #guidLine3Modal .inner .left, #orthodontictreatment #guidLine2Modal .inner .left, #orthodontictreatment #guidLine3Modal .inner .left, #periodontaltreatment #guidLine2Modal .inner .left, #periodontaltreatment #guidLine3Modal .inner .left, #whitening #guidLine2Modal .inner .left, #whitening #guidLine3Modal .inner .left {
    width: calc(50% - 120px);
  }
  #ceramic #guidLine2Modal .inner h3, #ceramic #guidLine3Modal .inner h3, #generaldentistry #guidLine2Modal .inner h3, #generaldentistry #guidLine3Modal .inner h3, #implant #guidLine2Modal .inner h3, #implant #guidLine3Modal .inner h3, #mouthpieceinvisalign #guidLine2Modal .inner h3, #mouthpieceinvisalign #guidLine3Modal .inner h3, #orthodontictreatment #guidLine2Modal .inner h3, #orthodontictreatment #guidLine3Modal .inner h3, #periodontaltreatment #guidLine2Modal .inner h3, #periodontaltreatment #guidLine3Modal .inner h3, #whitening #guidLine2Modal .inner h3, #whitening #guidLine3Modal .inner h3 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(50px, 4vw);
    margin-bottom: 120px;
  }
  #ceramic #guidLine2Modal .inner .textWrap, #ceramic #guidLine3Modal .inner .textWrap, #generaldentistry #guidLine2Modal .inner .textWrap, #generaldentistry #guidLine3Modal .inner .textWrap, #implant #guidLine2Modal .inner .textWrap, #implant #guidLine3Modal .inner .textWrap, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap, #orthodontictreatment #guidLine2Modal .inner .textWrap, #orthodontictreatment #guidLine3Modal .inner .textWrap, #periodontaltreatment #guidLine2Modal .inner .textWrap, #periodontaltreatment #guidLine3Modal .inner .textWrap, #whitening #guidLine2Modal .inner .textWrap, #whitening #guidLine3Modal .inner .textWrap {
    width: 100%;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right, #ceramic #guidLine3Modal .inner .textWrap .right, #generaldentistry #guidLine2Modal .inner .textWrap .right, #generaldentistry #guidLine3Modal .inner .textWrap .right, #implant #guidLine2Modal .inner .textWrap .right, #implant #guidLine3Modal .inner .textWrap .right, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right, #orthodontictreatment #guidLine2Modal .inner .textWrap .right, #orthodontictreatment #guidLine3Modal .inner .textWrap .right, #periodontaltreatment #guidLine2Modal .inner .textWrap .right, #periodontaltreatment #guidLine3Modal .inner .textWrap .right, #whitening #guidLine2Modal .inner .textWrap .right, #whitening #guidLine3Modal .inner .textWrap .right {
    margin-top: 0;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li, #ceramic #guidLine3Modal .inner .textWrap .right li, #generaldentistry #guidLine2Modal .inner .textWrap .right li, #generaldentistry #guidLine3Modal .inner .textWrap .right li, #implant #guidLine2Modal .inner .textWrap .right li, #implant #guidLine3Modal .inner .textWrap .right li, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li, #orthodontictreatment #guidLine3Modal .inner .textWrap .right li, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li, #periodontaltreatment #guidLine3Modal .inner .textWrap .right li, #whitening #guidLine2Modal .inner .textWrap .right li, #whitening #guidLine3Modal .inner .textWrap .right li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li + li, #ceramic #guidLine3Modal .inner .textWrap .right li + li, #generaldentistry #guidLine2Modal .inner .textWrap .right li + li, #generaldentistry #guidLine3Modal .inner .textWrap .right li + li, #implant #guidLine2Modal .inner .textWrap .right li + li, #implant #guidLine3Modal .inner .textWrap .right li + li, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li + li, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li + li, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li + li, #orthodontictreatment #guidLine3Modal .inner .textWrap .right li + li, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li + li, #periodontaltreatment #guidLine3Modal .inner .textWrap .right li + li, #whitening #guidLine2Modal .inner .textWrap .right li + li, #whitening #guidLine3Modal .inner .textWrap .right li + li {
    margin-top: 20px;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li:before, #ceramic #guidLine3Modal .inner .textWrap .right li:before, #generaldentistry #guidLine2Modal .inner .textWrap .right li:before, #generaldentistry #guidLine3Modal .inner .textWrap .right li:before, #implant #guidLine2Modal .inner .textWrap .right li:before, #implant #guidLine3Modal .inner .textWrap .right li:before, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li:before, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li:before, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li:before, #orthodontictreatment #guidLine3Modal .inner .textWrap .right li:before, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li:before, #periodontaltreatment #guidLine3Modal .inner .textWrap .right li:before, #whitening #guidLine2Modal .inner .textWrap .right li:before, #whitening #guidLine3Modal .inner .textWrap .right li:before {
    color: #FFFFFF;
    display: block;
    content: "・";
    margin-right: 4px;
  }
  #ceramic #guidLine2Modal .inner .textWrap h5, #ceramic #guidLine3Modal .inner .textWrap h5, #generaldentistry #guidLine2Modal .inner .textWrap h5, #generaldentistry #guidLine3Modal .inner .textWrap h5, #implant #guidLine2Modal .inner .textWrap h5, #implant #guidLine3Modal .inner .textWrap h5, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap h5, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap h5, #orthodontictreatment #guidLine2Modal .inner .textWrap h5, #orthodontictreatment #guidLine3Modal .inner .textWrap h5, #periodontaltreatment #guidLine2Modal .inner .textWrap h5, #periodontaltreatment #guidLine3Modal .inner .textWrap h5, #whitening #guidLine2Modal .inner .textWrap h5, #whitening #guidLine3Modal .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  #ceramic #guidLine2Modal .inner .textWrap + .textWrap, #ceramic #guidLine3Modal .inner .textWrap + .textWrap, #generaldentistry #guidLine2Modal .inner .textWrap + .textWrap, #generaldentistry #guidLine3Modal .inner .textWrap + .textWrap, #implant #guidLine2Modal .inner .textWrap + .textWrap, #implant #guidLine3Modal .inner .textWrap + .textWrap, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap + .textWrap, #mouthpieceinvisalign #guidLine3Modal .inner .textWrap + .textWrap, #orthodontictreatment #guidLine2Modal .inner .textWrap + .textWrap, #orthodontictreatment #guidLine3Modal .inner .textWrap + .textWrap, #periodontaltreatment #guidLine2Modal .inner .textWrap + .textWrap, #periodontaltreatment #guidLine3Modal .inner .textWrap + .textWrap, #whitening #guidLine2Modal .inner .textWrap + .textWrap, #whitening #guidLine3Modal .inner .textWrap + .textWrap {
    margin-top: 160px;
  }
  #ceramic .is-open, #generaldentistry .is-open, #implant .is-open, #mouthpieceinvisalign .is-open, #orthodontictreatment .is-open, #periodontaltreatment .is-open, #whitening .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  #ceramic .is-open .modal-panel, #generaldentistry .is-open .modal-panel, #implant .is-open .modal-panel, #mouthpieceinvisalign .is-open .modal-panel, #orthodontictreatment .is-open .modal-panel, #periodontaltreatment .is-open .modal-panel, #whitening .is-open .modal-panel {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
  }
  #ceramic #guidLine2, #ceramic #guidLine3, #generaldentistry #guidLine2, #generaldentistry #guidLine3, #implant #guidLine2, #implant #guidLine3, #mouthpieceinvisalign #guidLine2, #mouthpieceinvisalign #guidLine3, #orthodontictreatment #guidLine2, #orthodontictreatment #guidLine3, #periodontaltreatment #guidLine2, #periodontaltreatment #guidLine3, #whitening #guidLine2, #whitening #guidLine3 {
    cursor: pointer;
  }
  #ceramic #guidLine2:hover, #ceramic #guidLine3:hover, #generaldentistry #guidLine2:hover, #generaldentistry #guidLine3:hover, #implant #guidLine2:hover, #implant #guidLine3:hover, #mouthpieceinvisalign #guidLine2:hover, #mouthpieceinvisalign #guidLine3:hover, #orthodontictreatment #guidLine2:hover, #orthodontictreatment #guidLine3:hover, #periodontaltreatment #guidLine2:hover, #periodontaltreatment #guidLine3:hover, #whitening #guidLine2:hover, #whitening #guidLine3:hover {
    opacity: 0.5;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .mouse-stalker {
    position: fixed;
    pointer-events: none;
    z-index: 9999;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .mouse-stalker__dot {
    width: 6px;
    height: 6px;
    background-color: #5ABBFF;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  .mouse-stalker__ring {
    width: 80px;
    height: 80px;
    background-color: #5ABBFF;
    border-radius: 50%;
    opacity: 0.09;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .spNone {
    display: none !important;
  }
  body {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    line-height: 2;
    font-size: 13px;
    color: #586166;
    width: 100vw;
    overflow-x: hidden;
  }
  #svgList {
    display: none;
  }
  .textAnimation {
    opacity: 0;
  }
  a:hover {
    opacity: 0.5;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .fadeIn {
    opacity: 0 !important;
    -webkit-transform: translateY(20px) !important;
            transform: translateY(20px) !important;
    -webkit-transition: all 1s ease !important;
    transition: all 1s ease !important;
  }
  .fadeOut {
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
  }
  .padding-top0 {
    padding-top: 0 !important;
  }
  .padding-bottom0 {
    padding-bottom: 0 !important;
  }
  .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .flex .right {
    width: 50%;
    margin-top: 0px;
  }
  .button {
    width: 200px;
    height: 40px;
    color: #FFFFFF;
    background-color: #586166;
    display: block;
    text-align: center;
    line-height: 40px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid #586166;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin: 40px auto;
  }
  .button:hover {
    background-color: transparent;
    color: #586166;
  }
  .arrowWrap {
    width: 40px;
    height: 40px;
    position: relative;
    display: inline-block;
  }
  .arrowWrap .arrow {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .arrowWrap:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .textLink {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    font-size: 12px;
  }
  .textLink .flex {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
    -ms-flex-flow: wrap !important;
        flex-flow: wrap !important;
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .textLink .flex::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 1px;
    background-color: #E2E2E2;
    margin-right: 20px;
  }
  .textLink .arrowWrap {
    width: 20px;
    height: 20px;
    margin-left: 12px;
    display: none;
  }
  .textLink .arrowWrap .arrow {
    width: 12px;
    height: 12px;
  }
  .textLink:hover .arrowWrap .arrow {
    top: 30%;
    left: 70%;
  }
  .section {
    width: 100vw;
  }
  .section .inner {
    width: calc(100vw - 40px);
    margin: 0 auto;
    padding: 64px 0;
  }
  .section .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .section .flex .left {
    width: 100%;
  }
  .section .flex .right {
    width: 100%;
  }
  .section .sectionTitle h2 {
    font-family: "Playfair Display", serif;
    font-size: 40px;
    font-weight: 200;
    font-style: normal;
    line-height: 1;
    margin-bottom: 20px;
  }
  .section .sectionTitle p {
    font-size: 12px;
    margin-bottom: 64px;
  }
  .section .jp_title_Wrap .jp_title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
    font-weight: 400;
    font-style: normal;
  }
  .section .jp_title_Wrap .en_title {
    font-family: "Playfair Display", serif;
    font-size: 12px;
    font-weight: 200;
    font-style: normal;
    margin-top: 8px;
  }
  .section .indexText {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    margin-left: auto;
    margin-top: 24px;
  }
  .section .indexText li {
    margin-right: 20px;
    margin-top: 0px;
    font-size: 12px;
  }
  .layout_a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .layout_a li {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  .layout_a li .margin {
    margin-top: -60px !important;
  }
  .layout_a li .wrap {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    display: contents;
  }
  .layout_a li .en_title {
    width: calc(100% - 140px);
    font-size: 11px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .layout_a li .textLink {
    margin-top: 20px;
  }
  .layout_a li .textWrap {
    width: 100%;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin-top: -22px;
  }
  .layout_a li .textWrap h5 {
    width: calc(100% - 140px);
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    margin-bottom: 24px;
  }
  .layout_a li .textWrap p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    font-size: 14px;
  }
  .layout_a li .textWrap p strong {
    display: block;
    margin-bottom: 12px;
    font-weight: bold;
  }
  .layout_a li .img {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 120px;
    height: 120px;
    aspect-ratio: 1/1;
    overflow: hidden;
    position: relative;
  }
  .layout_a li .img img {
    width: auto;
    height: 100%;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .layout_a li + li {
    margin-top: 64px;
  }
  .layout_b li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    margin-bottom: 40px;
    position: relative;
  }
  .layout_b li .flex {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .layout_b li .textWrap {
    width: 100%;
  }
  .layout_b li .textWrap .number {
    font-family: "Playfair Display", serif;
    margin-bottom: 80px;
    font-size: 20px;
  }
  .layout_b li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin: 20px 0 12px;
  }
  .layout_b li .textWrap .caption {
    line-clamp: 2;
    display: -webkit-box;
    /* Flexboxの古い仕様を利用 */
    -webkit-box-orient: vertical;
    /* 縦方向に揃える */
    -webkit-line-clamp: 3;
    /* 最大行数を指定（ここでは2行） */
    overflow: hidden;
    /* はみ出した部分を隠す */
    text-overflow: ellipsis;
    /* 省略記号を付ける */
  }
  .layout_b li .img {
    width: 100px;
    height: 100px;
    aspect-ratio: 1/1;
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
  }
  .layout_b li .img img {
    width: auto;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .layout_c {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .layout_c li {
    width: 250px;
    border-right: 1px solid #E2E2E2;
    margin-right: 40px;
  }
  .layout_c li .flex {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  .layout_c li .head .number {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 40px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .layout_c li .head img {
    width: 180px;
    height: 100px;
    overflow: hidden;
  }
  .layout_c li .head img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .layout_c li .head .en_title {
    font-family: "Playfair Display", serif;
    font-size: 10px;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    width: 10px;
    margin-right: 10px;
  }
  .layout_c li .textWrap {
    margin-top: 40px;
    width: calc(100% - 20px);
  }
  .layout_c li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    margin-bottom: 12px;
  }
  .layout_c li:last-child {
    margin-right: 0;
  }
  .layout_d li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    margin-bottom: 64px;
  }
  .layout_d li .imgWrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  .layout_d li .textWrap {
    margin-top: 20px;
  }
  .layout_d li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    margin-bottom: 12px;
  }
  .layout_d li .img {
    margin-top: 0;
    width: 120px !important;
    height: 120px;
  }
  .layout_d li .en_title {
    font-family: "Playfair Display", serif;
    font-size: 12px;
    width: calc(100% - 140px) !important;
  }
  .layout_e {
    width: 100%;
  }
  .layout_e li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    padding-bottom: 32px;
    border-bottom: 1px solid #E2E2E2;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .layout_e li .titleWrap {
    width: calc(30% - 40px);
    font-weight: bold;
  }
  .layout_e li .titleWrap h5 {
    font-size: 14px;
  }
  .layout_e li .textWrap {
    width: 70%;
    padding-left: 40px;
  }
  .layout_e li .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  .layout_e li + li {
    margin-top: 32px;
  }
  .qAndaWrap li {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    margin-bottom: 40px;
    width: 100%;
  }
  .qAndaWrap li .text {
    width: calc(100% - 3vw - 40px);
  }
  .qAndaWrap li .q,
  .qAndaWrap li .a {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    font-weight: 600;
    width: 3vw;
    margin-right: 40px;
  }
  .qAndaWrap li .question {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.8;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .qAndaWrap li .answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 24px 0 0;
  }
  .qAndaWrap li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .qAndaWrap li + li {
    margin-top: 40px;
  }
  .subPageTitle {
    padding-top: 160px;
  }
  .subPageTitle h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 55px;
    margin-bottom: 0px;
    line-height: 1;
  }
  .subPageTitle .flex {
    margin-top: 120px;
  }
  .subPageTitle .jp_title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
  }
  .subPageTitle .right {
    margin-top: 24px;
  }
  .bulletPoints {
    margin-top: 20px;
  }
  .bulletPoints li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 11px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-flow: nowrap;
        flex-flow: nowrap;
  }
  .bulletPoints li:before {
    content: "・";
    display: block;
  }
  .bulletPoints li + li {
    margin-top: 4px;
  }
  .categoryList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .categoryList li {
    font-size: 12px;
    border: 1px solid #586166;
    padding: 9px 20px;
    border-radius: 30px;
    line-height: 1;
    margin-right: 8px;
    margin-bottom: 8px;
  }
  .categoryList li:hover {
    background-color: #586166;
    color: #FFFFFF;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .color {
    background-color: #fafafa;
  }
  .pagenation {
    margin-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-family: "Playfair Display", serif;
  }
  .pagenation .pageNumber {
    font-family: "Playfair Display", serif;
    margin: 0 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: -10px;
  }
  .pagenation .pageNumber li {
    font-family: "Playfair Display", serif;
    opacity: 0.5;
    margin-right: 16px;
    font-size: 20px;
  }
  .pagenation .pageNumber .current {
    opacity: 1;
    font-weight: bold;
  }
  .closeButton {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer;
    z-index: 9999;
    border: none;
    outline: none;
  }
  .closeButton::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .closeButton::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  header {
    /* メニュー → X（中間：中央で重なってから回転） */
    /* X → メニュー（逆順：回転を戻してから離れる） */
  }
  header #menuWrap {
    width: 100vw;
    height: 100vh;
    background-color: #FFFFFF;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    overflow-y: scroll;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    z-index: 9998;
    opacity: 0;
  }
  header #menuWrap .inner {
    height: 100%;
    padding: 120px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  header #menuWrap .inner .menuListWrap .menuList {
    margin-bottom: 40px;
  }
  header #menuWrap .inner .menuListWrap .menuList .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  header #menuWrap .inner .menuListWrap .menuList .flex .menuTitle {
    font-size: 25px;
    margin-bottom: 20px;
  }
  header #menuWrap .inner .menuListWrap .menuList .menuTitle {
    font-family: "Playfair Display", serif;
    font-size: 45px;
    color: #586166;
  }
  header #menuWrap .inner .menuListWrap .menuList .subPageList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    margin-top: 0px;
    width: 100%;
  }
  header #menuWrap .inner .menuListWrap .menuList .subPageList li {
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    color: #586166;
    margin-right: 20px;
    margin-top: 8px;
  }
  header #menuWrap .inner .shopInfo {
    text-align: left;
  }
  header #menuWrap .inner .shopInfo h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    line-height: 2;
    text-align: left;
  }
  header #menuWrap .inner .shopInfo p {
    font-family: "Playfair Display", serif;
    line-height: 1;
    text-align: left;
    margin-top: 12px;
    margin: 40px 0;
    margin-top: 20px;
  }
  header #menuWrap .inner .shopInfo .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 50px;
    margin-bottom: 20px;
  }
  header #menuWrap .inner .shopInfo .snsList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  header #menuWrap .inner .shopInfo .snsList li {
    width: 40px;
    height: 40px;
    margin-right: 20px;
  }
  header #menuWrap .inner .shopInfo .snsList li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
  }
  header #menuWrap .inner .shopInfo .snsList li svg {
    width: 30px;
    height: 30px;
  }
  header #menuWrap .inner .shopInfo .button {
    margin-left: 0;
    margin-top: 0px;
    margin-bottom: 80px;
  }
  header .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  header #headerLogo {
    width: 40px;
    height: auto;
    position: fixed;
    top: 20px;
    left: 20px;
    z-index: 9999;
  }
  header #menuIcon {
    width: 30px;
    height: 10px;
    position: fixed;
    top: 20px;
    right: 20px;
    cursor: pointer;
    z-index: 9999;
    /* クリック時に一気に再生（メニュー → X） */
    /* クリック時に一気に再生（X → メニュー） */
  }
  header #menuIcon .innerWrap {
    position: relative;
    width: 100%;
    height: 100%;
  }
  header #menuIcon .innerWrap span {
    position: absolute;
    left: 0;
    height: 1px;
    width: 100%;
    background-color: #586166;
    -webkit-transform-origin: center;
            transform-origin: center;
    will-change: top, transform, width;
  }
  header #menuIcon .innerWrap span:nth-child(1) {
    top: 0;
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  header #menuIcon .innerWrap span:nth-child(2) {
    top: 100%;
    -webkit-transform: translateY(-100%) rotate(0);
            transform: translateY(-100%) rotate(0);
    width: 25px;
    right: 0;
    left: auto;
  }
  header #menuIcon.active .innerWrap span:nth-child(1) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(30deg);
            transform: translateY(-50%) rotate(30deg);
  }
  header #menuIcon.active .innerWrap span:nth-child(2) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-30deg);
            transform: translateY(-50%) rotate(-30deg);
    width: 100%;
  }
  header #menuIcon.anim-toX .innerWrap span:nth-child(1) {
    -webkit-animation: menuToX_line1 0.6s ease forwards;
            animation: menuToX_line1 0.6s ease forwards;
  }
  header #menuIcon.anim-toX .innerWrap span:nth-child(2) {
    -webkit-animation: menuToX_line2 0.6s ease forwards;
            animation: menuToX_line2 0.6s ease forwards;
  }
  header #menuIcon.anim-toMenu .innerWrap span:nth-child(1) {
    -webkit-animation: xToMenu_line1 0.6s ease forwards;
            animation: xToMenu_line1 0.6s ease forwards;
  }
  header #menuIcon.anim-toMenu .innerWrap span:nth-child(2) {
    -webkit-animation: xToMenu_line2 0.6s ease forwards;
            animation: xToMenu_line2 0.6s ease forwards;
  }
  @-webkit-keyframes menuToX_line1 {
    0% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
  }
  @keyframes menuToX_line1 {
    0% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
  }
  @-webkit-keyframes menuToX_line2 {
    0% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
  }
  @keyframes menuToX_line2 {
    0% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
  }
  @-webkit-keyframes xToMenu_line1 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @keyframes xToMenu_line1 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
    }
    100% {
      top: 0;
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @-webkit-keyframes xToMenu_line2 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
  }
  @keyframes xToMenu_line2 {
    0% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(-30deg);
              transform: translateY(-50%) rotate(-30deg);
      width: 100%;
    }
    50% {
      top: 50%;
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 100%;
    }
    100% {
      top: 100%;
      -webkit-transform: translateY(-100%) rotate(0);
              transform: translateY(-100%) rotate(0);
      width: 25px;
    }
  }
  header .active span:nth-child(1) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(30deg);
            transform: translateY(-50%) rotate(30deg);
  }
  header .active span:nth-child(2) {
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-30deg);
            transform: translateY(-50%) rotate(-30deg);
    width: 100%;
  }
  .home .firstView {
    width: 100vw;
    height: 100vh;
    position: relative;
    overflow: hidden;
  }
  .home .firstView .button {
    margin-left: 0;
  }
  .home .firstView .siteInfo {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
  }
  .home .firstView .siteInfo .inner {
    width: calc(100vw - 40px);
    height: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .home .firstView .siteInfo .inner .info .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 50px;
    color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .button {
    background-color: #FFFFFF;
    color: #586166;
    margin-top: 0px;
    border-color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .button:hover {
    background-color: transparent;
    color: #FFFFFF;
    border-color: #FFFFFF;
  }
  .home .firstView .siteInfo .inner .info .caption {
    font-size: 12px;
    color: #FFFFFF;
    margin-top: 8%;
    margin-bottom: 40px;
  }
  .home .firstView .siteInfo .inner .info .caption span {
    font-family: "Playfair Display", serif;
    display: block;
    margin-top: 20px;
    font-size: 10px;
  }
  .home .firstView .siteInfo .inner .siteLink {
    display: none;
  }
  .home .firstView .siteInfo .inner .siteLink li {
    text-align: right;
    font-family: "Playfair Display", serif;
    color: #FFFFFF;
    margin-bottom: 32px;
    font-size: max(70px, 6.5vw);
    line-height: 1;
  }
  .home .firstView .videoWrap {
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
  }
  .home .firstView .videoWrap .shadow {
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    pointer-events: none;
    -ms-touch-action: none;
        touch-action: none;
  }
  .home .firstView .videoWrap video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .home .lead h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
  }
  .home .lead .flex {
    margin-top: 12px;
  }
  .home .lead #textScroll_animation {
    width: 100vw;
    overflow: hidden;
    /* スライドの幅は内容に合わせる（テロップ化の肝） */
    /* イージングを無効化して完全に等速にする */
    /* “触って止まる”のを防止（ティッカー用途） */
  }
  .home .lead #textScroll_animation .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: initial;
            flex-flow: initial;
  }
  .home .lead #textScroll_animation .flex p {
    font-family: "Playfair Display", serif;
    font-size: 60px;
  }
  .home .lead #textScroll_animation .flex .cross {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 40px;
    margin-top: 10px;
  }
  .home .lead #textScroll_animation .flex .cross span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .home .lead #textScroll_animation .flex .cross span:nth-child(2) {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .home .lead #textScroll_animation .text-swiper .swiper-slide {
    width: -webkit-max-content !important;
    width: -moz-max-content !important;
    width: max-content !important;
  }
  .home .lead #textScroll_animation .text-swiper .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
            transition-timing-function: linear !important;
  }
  .home .lead #textScroll_animation .text-swiper .swiper-slide,
  .home .lead #textScroll_animation .text-swiper .swiper-slide * {
    pointer-events: none;
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
    -webkit-user-select: none;
    cursor: default;
  }
  .home .lead .left {
    font-size: 11px;
  }
  .home .lead .right {
    margin-top: 64px;
  }
  .home .palalaxImg {
    width: 100vw;
    height: 100vw;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  .home .ourService {
    background-color: #fafafa;
  }
  .home .ourService .mainMenu {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .home .ourService .mainMenu img {
    width: 100vw;
    max-width: 100vw;
    margin-left: -20px;
  }
  .home .ourService .mainMenu .textLink {
    display: block;
    margin-left: auto;
  }
  .home .ourService .mainMenu .textLink .flex {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .home .ourService .mainMenu .arrowWrap {
    margin-top: 10px;
  }
  .home .ourService .mainMenu .flex {
    margin-top: 40px;
  }
  .home .ourService .mainMenu .flex .right {
    margin-top: 40px;
  }
  .home .ourService .mainMenu .flex .right strong {
    display: block;
    margin-bottom: 12px;
  }
  .home .ourService .mainMenu .flex .right img {
    width: 100%;
    margin: 40px auto 0;
  }
  .home .ourService .mainMenu .flex .right h5 {
    margin-top: 24px;
    margin-bottom: 12px;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
  }
  .home .ourService .orthodontic {
    margin-top: 40px;
  }
  .home .ourService .orthodontic .jp_title_Wrap:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .ourService .implant a:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .ourService .otherMenu {
    margin-top: 120px;
  }
  .home .ourService .otherMenu .layout_a li:first-child .textWrap {
    margin-top: -60px;
  }
  .home .ourService .otherMenu .jp_title_Wrap {
    margin-bottom: 40px;
  }
  .home .about {
    padding: 120px 0;
    width: 100vw;
    position: relative;
  }
  .home .about .textWrap {
    position: relative;
    z-index: 3;
    margin: 0 auto;
    color: #FFFFFF;
    text-align: center;
  }
  .home .about .textWrap h5 {
    font-family: "Playfair Display", serif;
    font-size: 40px;
    font-weight: 200;
    margin-bottom: 40px;
    line-height: 1.2;
  }
  .home .about .textWrap .lead {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    line-height: 2;
    margin: 64px auto 24px;
  }
  .home .about .backgournd {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url("../images/top/about_img.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
  }
  .home .point {
    background-color: #fafafa;
  }
  .home .point .innerScroll {
    width: 100vw;
    margin-left: -20px;
    overflow-x: scroll;
  }
  .home .point .layout_c {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin-top: 0px;
    padding: 0 20px;
  }
  .home .case .right {
    margin-top: 0;
  }
  .home .news .newsList li {
    padding-top: 40px;
    border-top: 1px solid #E2E2E2;
  }
  .home .news .newsList li .date {
    font-family: "Playfair Display", serif;
    font-size: 14px;
    margin-bottom: 24px;
  }
  .home .news .newsList li + li {
    margin-top: 40px;
  }
  .home .cansellpolicy {
    background-color: #fafafa;
  }
  .home .shopInfo a:hover .arrow {
    top: 30%;
    left: 70%;
  }
  .home .shopInfo .info {
    width: 100%;
  }
  .home .shopInfo .info .arrowWrap {
    display: none;
  }
  .home .shopInfo .info .img {
    width: 100%;
    height: auto;
    overflow: hidden;
    margin-top: 24px;
  }
  .home .shopInfo .info .img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .home .shopInfo .info .img:hover img {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .home .shopInfo .info .sectionTitle {
    margin-bottom: 0px;
  }
  .home .shopInfo .info .sectionTitle h2 {
    font-size: 40px;
  }
  .home .shopInfo .info .sectionTitle p {
    font-size: 12px;
    margin-bottom: 40px;
  }
  .home .shopInfo .info .sectionTitle .arrow {
    margin-top: 10px;
    width: 15px;
    height: 15px;
  }
  .home .shopInfo .time {
    width: 100vw;
    margin-left: -20px;
    background-color: #F8F8F8;
    margin-top: 80px;
    padding: 80px 0;
  }
  .home .shopInfo .time .innerScroll {
    width: 100vw;
    overflow-x: scroll;
  }
  .home .shopInfo .time .sectionTitle {
    margin-bottom: 0px;
    margin-left: 20px;
  }
  .home .shopInfo .time .sectionTitle h2 {
    font-size: 40px;
  }
  .home .shopInfo .time .sectionTitle p {
    font-size: 12px;
    margin-bottom: 40px;
  }
  .home .shopInfo .time .sectionTitle .arrowWrap {
    display: none;
  }
  .home .shopInfo .time .sectionTitle .arrow {
    margin-top: 10px;
    width: 15px;
    height: 15px;
  }
  .home .shopInfo .time .clinic-hours {
    margin-top: 0;
    width: 600px;
    padding: 0 20px;
    --ink: $mainColor;
    --line: #e6e6e6;
    --strong-line: #cfcfcf;
    --muted: #999;
    --holiday: #d80000;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: var(--ink);
  }
  .home .shopInfo .time .clinic-hours__inner {
    width: 100%;
    margin: 0 auto;
    overflow-x: auto;
  }
  .home .shopInfo .time .clinic-hours__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-bottom: 1px solid #586166;
  }
  .home .shopInfo .time .clinic-hours__table thead th.clinic-hours__head--blank,
  .home .shopInfo .time .clinic-hours__table tbody th.clinic-hours__time {
    width: 150px;
  }
  .home .shopInfo .time .clinic-hours__table thead th:not(.clinic-hours__head--blank),
  .home .shopInfo .time .clinic-hours__table tbody td {
    width: calc((100% - 100px) / 7);
  }
  .home .shopInfo .time .clinic-hours__table thead th {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    text-align: center;
    padding: 10px 8px;
    border-bottom: 1px solid #586166;
  }
  .home .shopInfo .time .clinic-hours__table thead th.is-holiday {
    color: var(--holiday);
  }
  .home .shopInfo .time .clinic-hours__table tbody th,
  .home .shopInfo .time .clinic-hours__table tbody td {
    padding: 24px 10px;
    text-align: center;
    vertical-align: middle;
  }
  .home .shopInfo .time .clinic-hours__table tbody tr + tr {
    border-top: 1px solid #e2e2e2;
  }
  .home .shopInfo .time .clinic-hours__time {
    text-align: left;
    font-weight: 500;
    font-size: clamp(16px, 1.8vw, 22px);
    line-height: 1.2;
    padding-left: 0;
  }
  .home .shopInfo .time .clinic-hours__time .from {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    text-align: left;
  }
  .home .shopInfo .time .clinic-hours__time .to {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    margin-top: 0.35em;
    text-align: left;
  }
  .home .shopInfo .time .clinic-hours .cell--open::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid currentColor;
    border-radius: 50%;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  .home .shopInfo .time .clinic-hours .cell--dash::before {
    content: "—";
    color: var(--muted);
    font-size: 18px;
    letter-spacing: 0.05em;
  }
  .home .shopInfo .time .clinic-hours .cell--note::before {
    content: "※";
    font-size: 18px;
    color: var(--ink);
  }
  .home .shopInfo .time .clinic-hours__note {
    margin-top: 18px;
    font-size: 14px;
    color: var(--ink);
  }
  .home #access {
    width: 100vw;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
  }
  .home #access iframe {
    width: 100%;
    height: 350px;
    border: none;
  }
  footer {
    width: 100vw;
    padding-top: 120px;
    background-color: #FFFFFF;
  }
  footer #guidLineWrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    background-color: #586166;
    height: 100vh;
    z-index: 1000;
    z-index: 9999;
    color: #FFFFFF;
    /* フェード制御（初期は非表示） */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
  }
  footer #guidLineWrap .inner {
    padding: 120px 20px;
    overflow-y: scroll;
  }
  footer #guidLineWrap .inner .left {
    width: 100%;
  }
  footer #guidLineWrap .inner h3 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
    margin-bottom: 64px;
  }
  footer #guidLineWrap .inner .textWrap {
    width: 100%;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  footer #guidLineWrap .inner .textWrap .right {
    margin-top: 0;
    width: 100%;
  }
  footer #guidLineWrap .inner .textWrap .right li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  footer #guidLineWrap .inner .textWrap .right li + li {
    margin-top: 12px;
  }
  footer #guidLineWrap .inner .textWrap .right li:before {
    color: #FFFFFF;
    display: block;
    content: "・";
    margin-right: 4px;
  }
  footer #guidLineWrap .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  footer #guidLineWrap .inner .textWrap + .textWrap {
    margin-top: 80px;
  }
  footer .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  footer .is-open .modal-panel {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
  }
  footer .inner {
    height: 100%;
    padding: 0 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  footer .inner .menuListWrap .menuList {
    margin-bottom: 40px;
  }
  footer .inner .menuListWrap .menuList .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  footer .inner .menuListWrap .menuList .flex .menuTitle {
    font-size: 25px;
    margin-right: 30px;
    margin-bottom: 20px;
  }
  footer .inner .menuListWrap .menuList .menuTitle {
    font-family: "Playfair Display", serif;
    font-size: 45px;
    color: #586166;
  }
  footer .inner .menuListWrap .menuList .subPageList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    margin-top: 0px;
    width: 100%;
  }
  footer .inner .menuListWrap .menuList .subPageList li {
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    color: #586166;
    margin-right: 20px;
    margin-top: 12px;
  }
  footer .inner .shopInfo {
    text-align: left;
    margin-top: 40px;
  }
  footer .inner .shopInfo h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    line-height: 2;
    text-align: left;
  }
  footer .inner .shopInfo p {
    font-family: "Playfair Display", serif;
    line-height: 1;
    text-align: left;
    margin-top: 12px;
    margin: 40px 0;
    margin-top: 20px;
  }
  footer .inner .shopInfo .telNumber {
    font-family: "Playfair Display", serif;
    font-size: 50px;
    margin-bottom: 20px;
  }
  footer .inner .shopInfo .snsList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 20px;
  }
  footer .inner .shopInfo .snsList li {
    width: 40px;
    height: 40px;
    margin-right: 20px;
  }
  footer .inner .shopInfo .snsList li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
  }
  footer .inner .shopInfo .snsList li svg {
    width: 30px;
    height: 30px;
  }
  footer .inner .shopInfo .button {
    margin-left: 0;
    margin-top: 0px;
    margin-bottom: 64px;
  }
  footer .inner .shopInfo .link {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: right;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  footer .inner .shopInfo .link li {
    font-size: 12px;
    margin-right: 20px;
    margin-bottom: 20px;
  }
  footer .inner .shopInfo .link li .plusIcon {
    width: 8px;
    height: 8px;
    margin-left: 4px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin-top: -2px;
  }
  footer .inner .shopInfo .link li .plusIcon span {
    height: 1px;
    background-color: #586166;
    position: absolute;
  }
  footer .inner .shopInfo .link li .plusIcon span:nth-child(1) {
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  footer .inner .shopInfo .link li .plusIcon span:nth-child(2) {
    width: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
            transform: translateX(-50%) rotate(90deg);
  }
  footer .inner .shopInfo .link li + li {
    margin-left: 0px;
  }
  footer .inner .shopInfo .link li:last-child {
    margin-right: 0;
  }
  footer .inner .shopInfo .link #guidLine {
    cursor: pointer;
  }
  footer .inner .shopInfo .link #guidLine:hover {
    opacity: 0.5;
  }
  footer .inner .shopInfo .copyright {
    font-family: "Playfair Display", serif;
    font-size: 10px;
  }
  #about .lead .leadList li {
    width: calc(100% - 40px);
    padding-bottom: 40px;
    border-bottom: 1px solid #E2E2E2;
    margin: 0 auto 40px;
  }
  #about .lead .leadList li + li {
    margin-top: 40px;
  }
  #about .lead .flex {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  #about .lead .flex .textWrap {
    width: 100%;
  }
  #about .lead .flex h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    margin-bottom: 12px;
    margin-top: 24px;
  }
  #about .lead .img {
    width: 100%;
  }
  #about .achievements {
    background-color: #fafafa;
  }
  #about .pointList .layout_a {
    margin-top: 80px;
  }
  #about .pointList .layout_a .en_title {
    width: 100%;
  }
  #about .pointList .layout_a li {
    padding-bottom: 0px;
    padding-top: 40px;
  }
  #about .pointList .layout_a li + li {
    margin-top: 40px;
  }
  #about .pointList .layout_a .img {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    aspect-ratio: 335/224;
    width: 100%;
    height: auto;
    margin-top: 40px;
  }
  #about .pointList .layout_a .img img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  #about .pointList .layout_a .textWrap {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: 40px;
  }
  #clinic .indexText {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    width: 100%;
    padding-bottom: 64px;
    border-bottom: 1px solid #E2E2E2;
    margin-bottom: 40px;
  }
  #clinic .clinic {
    background-color: #fafafa;
  }
  #clinic .facilities .inner {
    padding-bottom: 0;
  }
  #doctor .doctorList .inner {
    padding-top: 0;
  }
  #doctor .doctorListWrap .doctor {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #doctor .doctorListWrap .doctor .textWrap {
    margin-top: 40px !important;
  }
  #doctor .doctorListWrap .doctor .textWrap .catch {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    margin-bottom: 20px;
  }
  #doctor .doctorListWrap .doctor .textWrap .position {
    font-size: 14px;
  }
  #doctor .doctorListWrap .doctor .textWrap .jp_name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 40px;
    margin: -10px 0;
  }
  #doctor .doctorListWrap .doctor .textWrap .jp_name span {
    font-size: 12px;
  }
  #doctor .doctorListWrap .doctor .textWrap .en_name {
    font-family: "Playfair Display", serif;
    font-size: 15px;
    letter-spacing: 0.1em;
  }
  #doctor .doctorListWrap .doctor .textWrap .skill {
    font-size: 11px;
    margin: 12px 0 20px;
  }
  #doctor .doctorListWrap .doctor .textWrap .message {
    font-size: 14px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList {
    margin-top: 40px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 24px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .left {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 80px;
    width: 100%;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right {
    margin-top: 0px;
    width: 100%;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap {
    position: relative;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .border {
    width: 100%;
    height: 1px;
    background-color: #E2E2E2;
    position: absolute;
    top: 23px;
    left: 0;
    z-index: -1;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .month {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    width: 30px;
    margin-right: 30px;
    background-color: #FFFFFF;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap .caption {
    margin-top: 0;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12px;
    width: calc(100% - 60px);
    background-color: #FFFFFF;
    padding-left: 20px;
    margin-top: 11px;
  }
  #doctor .doctorListWrap .doctor .textWrap .historyList li .right .monthWrap + .monthWrap {
    margin-top: 10px;
  }
  #doctor .doctorListWrap .doctor .img {
    width: 100%;
  }
  #doctor .doctorListWrap .doctor:nth-child(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
  }
  #doctor .doctorListWrap .doctor + .doctor {
    margin-top: 80px;
  }
  .doctorModals {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .doctorModals li {
    width: calc(50% - 7px);
    margin-right: 14px;
    margin-top: 40px;
  }
  .doctorModals li .modalTag .imgWrap {
    width: 100%;
    overflow: hidden;
    aspect-ratio: 250/350;
  }
  .doctorModals li .modalTag .imgWrap img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .doctorModals li .modalTag .lead {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12px;
    margin-top: 8px;
  }
  .doctorModals li .modalTag .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    margin-top: 8px;
  }
  .doctorModals li .modalTag .name span {
    font-size: 10px;
  }
  .doctorModals li .modalTag .engName {
    font-family: "Playfair Display", serif;
    font-size: 10px;
    margin-top: -5px;
    letter-spacing: 0.1em;
  }
  .doctorModals li .modalTag .position {
    margin-top: 20px;
  }
  .doctorModals li:nth-child(2n) {
    margin-right: 0;
  }
  .doctorModal {
    display: none !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 9999;
  }
  .doctorModal .closeButton {
    width: 30px;
    height: 30px;
    position: fixed;
    top: 40px;
    right: 40px;
    cursor: pointer;
    z-index: 9999;
  }
  .doctorModal .closeButton span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .doctorModal .closeButton span:nth-child(2) {
    background-color: #586166;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .doctorModal .modalInner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: calc(100vw - 20px);
    height: calc(100vh - 20px);
    background-color: #FFFFFF;
    padding: 20px;
    overflow-y: scroll;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .doctorModal .modalInner .textWrap {
    margin-top: 40px !important;
    width: 100% !important;
  }
  .doctorModal .modalInner .textWrap .catch {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    margin-bottom: 20px;
  }
  .doctorModal .modalInner .textWrap .position {
    font-size: 14px;
  }
  .doctorModal .modalInner .textWrap .jp_name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 40px;
    margin: -10px 0;
  }
  .doctorModal .modalInner .textWrap .jp_name span {
    font-size: 12px;
  }
  .doctorModal .modalInner .textWrap .en_name {
    font-family: "Playfair Display", serif;
    font-size: 15px;
    letter-spacing: 0.1em;
  }
  .doctorModal .modalInner .textWrap .skill {
    font-size: 11px;
    margin: 12px 0 20px;
  }
  .doctorModal .modalInner .textWrap .message {
    font-size: 14px;
  }
  .doctorModal .modalInner .textWrap .historyList {
    margin-top: 40px;
  }
  .doctorModal .modalInner .textWrap .historyList li {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 24px;
  }
  .doctorModal .modalInner .textWrap .historyList li .left {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 80px;
    width: 100%;
  }
  .doctorModal .modalInner .textWrap .historyList li .right {
    margin-top: 0px;
    width: 100%;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap {
    position: relative;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .border {
    width: 100%;
    height: 1px;
    background-color: #E2E2E2;
    position: absolute;
    top: 23px;
    left: 0;
    z-index: -1;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .month {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    width: 30px;
    margin-right: 30px;
    background-color: #FFFFFF;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap .caption {
    margin-top: 0;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 12px;
    width: calc(100% - 60px);
    background-color: #FFFFFF;
    padding-left: 20px;
    margin-top: 11px;
  }
  .doctorModal .modalInner .textWrap .historyList li .right .monthWrap + .monthWrap {
    margin-top: 10px;
  }
  .doctorModal .modalInner .img {
    width: 100%;
  }
  .doctorModal .modalInner .historyList li {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .open {
    display: block !important;
  }
  #price .subPageTitle .priceWrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 40px 0 20px;
  }
  #price .subPageTitle .priceWrap li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: -10px;
  }
  #price .subPageTitle .priceWrap li p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    margin-bottom: -20px;
    margin-right: 20px;
  }
  #price .subPageTitle .priceWrap li h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(50px, 3.90625vw);
  }
  #price .subPageTitle .priceWrap li + li {
    margin-left: 0px;
  }
  #price .palalaxImg {
    width: 100vw;
    height: 100vw;
    background-image: url("../images/top/lead_img.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
  }
  #price .priceMenuWrap .sectionTitle {
    margin-bottom: 64px;
  }
  #price .priceMenuWrap .priceMenu .textWrap {
    margin-top: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .price {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    margin-bottom: 20px;
  }
  #price .priceMenuWrap .priceMenu .textWrap h5 + .price {
    margin-top: -30px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
    margin-top: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanImg {
    margin-top: 40px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList li::before {
    content: "・";
    display: inline-block;
    margin-right: 4px;
  }
  #price .priceMenuWrap .priceMenu .textWrap .loanWrap .loanList li {
    margin-bottom: 4px;
    margin-right: 10px;
  }
  #price .implant {
    background-color: #fafafa;
  }
  #price .implant .price {
    margin-bottom: 10px !important;
  }
  #price .ceramic .price {
    margin-bottom: 40px !important;
  }
  #price .ceramic .bulletPoints {
    margin-top: -50px !important;
  }
  #price .whitening {
    background-color: #fafafa;
  }
  #price .reservation {
    margin-top: 120px;
    text-align: center;
    margin: 120px auto;
  }
  #price .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: 50px;
  }
  #price .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #price .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
  }
  #price .reservation .flex .arrowWrap {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    margin-left: -5px;
    margin-top: 1px;
  }
  #price .reservation .flex .arrowWrap .arrow {
    width: 10px;
    height: 10px;
  }
  #price .medical strong {
    display: block;
    margin: 20px 0;
  }
  #price .medical .inner {
    padding-top: 0;
    padding-bottom: 0px;
  }
  #price .medical .sectionTitle p {
    margin-bottom: 0;
  }
  #price .medical .bulletPoints li::before {
    content: "※";
  }
  #price .medical .target li {
    font-size: max(14px, 1.09375vw);
  }
  #price .medical .target li::before {
    content: "・";
  }
  #price .medical .target li + li {
    margin-top: 20px;
  }
  #recruit .lead .inner {
    padding-top: 0;
    padding-bottom: 0;
  }
  #recruit .lead .leadList li {
    width: calc(100% - 40px);
    padding-bottom: 40px;
    border-bottom: 1px solid #E2E2E2;
    margin: 0 auto 40px;
  }
  #recruit .lead .leadList li + li {
    margin-top: 40px;
  }
  #recruit .lead .flex {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  #recruit .lead .flex .textWrap {
    width: 100%;
  }
  #recruit .lead .flex h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    margin-bottom: 12px;
    margin-top: 24px;
  }
  #recruit .lead .img {
    width: 100%;
  }
  #recruit .qAndA {
    background-color: #fafafa;
  }
  #recruit .qAndA .right {
    margin-top: 0;
  }
  #recruit .contact .inner {
    padding-bottom: 0;
  }
  #recruit .contact .textWrap {
    margin-top: 0;
    text-align: center;
  }
  #recruit .contact .textWrap h5 {
    text-align: center;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    margin-bottom: 40px;
  }
  #recruit .contact .textWrap .button {
    width: 300px;
    height: 60px;
    font-size: 15px;
    line-height: 60px;
    margin-top: -10px;
    margin-bottom: 40px;
  }
  #recruit .contact .textWrap .telNumber {
    display: block;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    margin-top: -5px;
    line-height: 1;
    margin-bottom: 40px;
  }
  #faq .subPageTitle .inner {
    padding-bottom: 0;
  }
  #faq .qAndaWrap {
    margin-top: 40px;
  }
  #faq #footer {
    padding-top: 40px;
  }
  #access #access {
    width: 100vw;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
  }
  #access #access iframe {
    width: 100%;
    height: 350px;
    border: none;
  }
  #access .textSection .inner {
    padding-top: 0;
  }
  #access .textSection .inner .textWrap {
    margin-top: 40px;
  }
  #access .textSection .inner .textWrap .bulletPoints {
    margin-top: 12px;
  }
  #access .textSection .inner .textWrap .bulletPoints li {
    font-size: 14px;
    margin-top: 4px;
  }
  #access .textSection .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    margin-top: 20px;
  }
  #access .color .inner {
    padding: 80px 0;
    width: 100vw;
  }
  #access .color .inner .sectionTitle {
    margin-bottom: 0;
    margin-left: 20px;
  }
  #access .color .inner .sectionTitle p {
    margin-bottom: 20px;
  }
  #access .color .right {
    margin-top: 0;
  }
  #access .innerScroll {
    width: 100vw;
    overflow-x: scroll;
  }
  #access .clinic-hours {
    margin-top: 0;
    width: 600px;
    padding: 0 20px;
    --ink: #333;
    --line: #e6e6e6;
    --strong-line: #cfcfcf;
    --muted: #999;
    --holiday: #d80000;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: var(--ink);
  }
  #access .clinic-hours__inner {
    width: 100%;
    margin: 0 auto;
    overflow-x: auto;
  }
  #access .clinic-hours__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-bottom: 1px solid #586166;
  }
  #access .clinic-hours__table thead th.clinic-hours__head--blank,
  #access .clinic-hours__table tbody th.clinic-hours__time {
    width: 150px;
  }
  #access .clinic-hours__table thead th:not(.clinic-hours__head--blank),
  #access .clinic-hours__table tbody td {
    width: calc((100% - 100px) / 7);
  }
  #access .clinic-hours__table thead th {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    color: #586166;
    text-align: center;
    padding: 10px 8px;
    border-bottom: 1px solid #586166;
  }
  #access .clinic-hours__table thead th.is-holiday {
    color: var(--holiday);
  }
  #access .clinic-hours__table tbody th,
  #access .clinic-hours__table tbody td {
    padding: 24px 10px;
    text-align: center;
    vertical-align: middle;
  }
  #access .clinic-hours__table tbody tr + tr {
    border-top: 1px solid #e2e2e2;
  }
  #access .clinic-hours__time {
    text-align: left;
    font-weight: 500;
    font-size: clamp(16px, 1.8vw, 22px);
    line-height: 1.2;
    padding-left: 0;
  }
  #access .clinic-hours__time .from {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    text-align: left;
  }
  #access .clinic-hours__time .to {
    font-family: "Playfair Display", serif;
    font-size: 18px;
    display: block;
    margin-top: 0.35em;
    text-align: left;
  }
  #access .clinic-hours .cell--open::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid currentColor;
    border-radius: 50%;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  #access .clinic-hours .cell--dash::before {
    content: "—";
    color: var(--muted);
    font-size: 18px;
    letter-spacing: 0.05em;
  }
  #access .clinic-hours .cell--note::before {
    content: "※";
    font-size: 18px;
    color: var(--ink);
  }
  #access .clinic-hours__note {
    margin-top: 18px;
    font-size: 14px;
    color: var(--ink);
  }
  #news .subPageTitle .inner {
    padding-bottom: 0;
  }
  #news .subPageTitle .right {
    margin-top: 40px;
  }
  #news .subPageTitle .right p {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 20px;
  }
  #news .news .inner {
    padding-top: 64px;
  }
  #news .news .newsList {
    border-bottom: 1px solid #586166;
    padding-bottom: 40px;
  }
  #news .news .newsList .right {
    margin-top: 0;
  }
  #news .news .newsList li {
    padding-top: 40px;
    border-top: 1px solid #586166;
  }
  #news .news .newsList li .dateWrap {
    width: 100%;
    margin-top: 5px;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #news .news .newsList li .dateWrap time {
    font-family: "Playfair Display", serif;
    display: inline-block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 20px;
    font-size: 15px;
  }
  #news .news .newsList li .dateWrap .categoryName {
    font-size: 12px;
  }
  #news .news .newsList li .title {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    line-height: 1.7;
    margin-top: 20px;
  }
  #news .news .newsList li + li {
    margin-top: 40px;
  }
  .single-post .titleWrap, .single-column .titleWrap {
    margin-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 64px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .single-post .titleWrap .data, .single-column .titleWrap .data {
    margin-top: 10px;
  }
  .single-post .titleWrap .data .category, .single-column .titleWrap .data .category {
    font-size: 14px;
    margin-top: 4px;
  }
  .single-post .titleWrap .data data, .single-column .titleWrap .data data {
    display: block;
    font-family: "Playfair Display", serif;
    font-size: 18px;
  }
  .single-post .titleWrap .title, .single-column .titleWrap .title {
    width: 100%;
    line-height: 1.7;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    font-weight: bold;
    margin-top: 40px;
  }
  .single-post .contents, .single-column .contents {
    margin-top: 64px;
  }
  .single-post .contents .left, .single-column .contents .left {
    width: 100%;
    margin-right: 0px;
    margin-bottom: 40px;
  }
  .single-post .contents .right, .single-column .contents .right {
    margin-top: 0;
    /* =========
    WordPress Blog Base (Gutenberg/Classic)
    ========= */
    /* 見出しスケール */
    /* 本文 */
    /* リスト */
    /* 引用 */
    /* 画像・図版 */
    /* Gutenberg アライメント対応 */
    /* キャプション（クラシック互換） */
    /* コード */
    /* 表 */
    /* 区切り線 */
    /* 埋め込み（YouTubeなど比率維持） */
    /* Gutenberg ボタン（最低限） */
    /* Gutenberg カラム */
    /* ページネーション */
    /* スクリーンリーダーテキスト（WP標準） */
    /* 画像の下に余白が出るのを防ぐ */
    /* クリアフィックス（クラシック互換） */
  }
  .single-post .contents .right h1:first-child,
  .single-post .contents .right h2:first-child,
  .single-post .contents .right h3:first-child,
  .single-post .contents .right h4:first-child,
  .single-post .contents .right h5:first-child,
  .single-post .contents .right h6:first-child,
  .single-post .contents .right p:first-child,
  .single-post .contents .right a:first-child,
  .single-post .contents .right img:first-child,
  .single-post .contents .right blockquote:first-child,
  .single-post .contents .right ul:first-child,
  .single-post .contents .right ol:first-child,
  .single-post .contents .right dl:first-child, .single-column .contents .right h1:first-child,
  .single-column .contents .right h2:first-child,
  .single-column .contents .right h3:first-child,
  .single-column .contents .right h4:first-child,
  .single-column .contents .right h5:first-child,
  .single-column .contents .right h6:first-child,
  .single-column .contents .right p:first-child,
  .single-column .contents .right a:first-child,
  .single-column .contents .right img:first-child,
  .single-column .contents .right blockquote:first-child,
  .single-column .contents .right ul:first-child,
  .single-column .contents .right ol:first-child,
  .single-column .contents .right dl:first-child {
    margin-top: 0;
  }
  .single-post .contents .right h1,
  .single-post .contents .right h2,
  .single-post .contents .right h3,
  .single-post .contents .right h4,
  .single-post .contents .right h5,
  .single-post .contents .right h6, .single-column .contents .right h1,
  .single-column .contents .right h2,
  .single-column .contents .right h3,
  .single-column .contents .right h4,
  .single-column .contents .right h5,
  .single-column .contents .right h6 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
    margin: 1.6em 0 0.6em;
    font-weight: 700;
    margin-top: 40px;
  }
  .single-post .contents .right h1, .single-column .contents .right h1 {
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  }
  .single-post .contents .right h2, .single-column .contents .right h2 {
    font-size: clamp(1.6rem, 3vw, 2rem);
  }
  .single-post .contents .right h3, .single-column .contents .right h3 {
    font-size: clamp(1.3rem, 2.4vw, 1.6rem);
  }
  .single-post .contents .right h4, .single-column .contents .right h4 {
    font-size: 1.2rem;
  }
  .single-post .contents .right h5, .single-column .contents .right h5 {
    font-size: 1.05rem;
  }
  .single-post .contents .right h6, .single-column .contents .right h6 {
    font-size: 0.95rem;
    color: var(--c-ink-muted);
  }
  .single-post .contents .right p, .single-column .contents .right p {
    margin: 1em 0;
  }
  .single-post .contents .right a, .single-column .contents .right a {
    color: var(--c-accent);
    text-decoration: underline;
    opacity: 0.5;
  }
  .single-post .contents .right a:hover, .single-column .contents .right a:hover {
    text-decoration: none;
    opacity: 1;
  }
  .single-post .contents .right strong,
  .single-post .contents .right b, .single-column .contents .right strong,
  .single-column .contents .right b {
    font-weight: 700;
  }
  .single-post .contents .right em,
  .single-post .contents .right i, .single-column .contents .right em,
  .single-column .contents .right i {
    font-style: italic;
  }
  .single-post .contents .right small,
  .single-post .contents .right .has-small-font-size, .single-column .contents .right small,
  .single-column .contents .right .has-small-font-size {
    font-size: 0.875rem;
  }
  .single-post .contents .right big,
  .single-post .contents .right .has-large-font-size, .single-column .contents .right big,
  .single-column .contents .right .has-large-font-size {
    font-size: 1.25rem;
  }
  .single-post .contents .right ul,
  .single-post .contents .right ol, .single-column .contents .right ul,
  .single-column .contents .right ol {
    margin-top: 20px;
  }
  .single-post .contents .right ul li,
  .single-post .contents .right ol li, .single-column .contents .right ul li,
  .single-column .contents .right ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .single-post .contents .right ul li:before,
  .single-post .contents .right ol li:before, .single-column .contents .right ul li:before,
  .single-column .contents .right ol li:before {
    content: "・";
    display: block;
  }
  .single-post .contents .right ul li + li,
  .single-post .contents .right ol li + li, .single-column .contents .right ul li + li,
  .single-column .contents .right ol li + li {
    margin-top: 4px;
  }
  .single-post .contents .right ol, .single-column .contents .right ol {
    counter-reset: list-counter;
    /* カウンターを初期化 */
    padding-left: 0;
    /* 左余白は好みで */
  }
  .single-post .contents .right ol li, .single-column .contents .right ol li {
    list-style: none;
    /* デフォルトの番号は消す */
    counter-increment: list-counter;
    /* 1つ進める */
    /* 番号用のスペース確保 */
    position: relative;
  }
  .single-post .contents .right ol li::before, .single-column .contents .right ol li::before {
    content: counter(list-counter) ".";
    margin-right: 10px;
    /* 番号の色 */
  }
  .single-post .contents .right li, .single-column .contents .right li {
    margin: 0.3em 0;
  }
  .single-post .contents .right dl, .single-column .contents .right dl {
    margin: 1em 0;
  }
  .single-post .contents .right dt, .single-column .contents .right dt {
    font-weight: 700;
  }
  .single-post .contents .right dd, .single-column .contents .right dd {
    margin-left: 0;
  }
  .single-post .contents .right blockquote, .single-column .contents .right blockquote {
    margin: 1.5em 0;
    padding: 1rem 1.2rem;
    background: var(--c-quote);
    border-left: 4px solid var(--c-accent);
    border-radius: calc(var(--radius) - 4px);
  }
  .single-post .contents .right blockquote p, .single-column .contents .right blockquote p {
    margin: 0.6em 0;
  }
  .single-post .contents .right blockquote cite, .single-column .contents .right blockquote cite {
    display: block;
    margin-top: 0.5em;
    color: var(--c-ink-muted);
    font-style: normal;
  }
  .single-post .contents .right img,
  .single-post .contents .right svg,
  .single-post .contents .right video, .single-column .contents .right img,
  .single-column .contents .right svg,
  .single-column .contents .right video {
    max-width: 100%;
    height: auto;
  }
  .single-post .contents .right figure, .single-column .contents .right figure {
    margin: 40px 0 0;
  }
  .single-post .contents .right figcaption, .single-column .contents .right figcaption {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
    text-align: center;
  }
  .single-post .contents .right .alignnone, .single-column .contents .right .alignnone {
    margin: 0;
  }
  .single-post .contents .right .alignleft, .single-column .contents .right .alignleft {
    float: left;
    margin: 0.4em 1em 0.8em 0;
  }
  .single-post .contents .right .alignright, .single-column .contents .right .alignright {
    float: right;
    margin: 0.4em 0 0.8em 1em;
  }
  .single-post .contents .right .aligncenter, .single-column .contents .right .aligncenter {
    display: block;
    margin-inline: auto;
    text-align: center;
  }
  .single-post .contents .right .alignwide, .single-column .contents .right .alignwide {
    width: 100%;
    margin-inline: auto;
  }
  .single-post .contents .right .alignfull, .single-column .contents .right .alignfull {
    width: 100vw;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .single-post .contents .right .wp-caption, .single-column .contents .right .wp-caption {
    max-width: 100%;
  }
  .single-post .contents .right .wp-caption img, .single-column .contents .right .wp-caption img {
    display: block;
  }
  .single-post .contents .right .wp-caption-text, .single-column .contents .right .wp-caption-text {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
  }
  .single-post .contents .right code,
  .single-post .contents .right kbd,
  .single-post .contents .right samp, .single-column .contents .right code,
  .single-column .contents .right kbd,
  .single-column .contents .right samp {
    font-family: var(--ff-mono);
    font-size: 0.95em;
  }
  .single-post .contents .right pre,
  .single-post .contents .right .wp-block-code, .single-column .contents .right pre,
  .single-column .contents .right .wp-block-code {
    background: var(--c-code-bg);
    color: var(--c-code-ink);
    padding: 1rem 1.2rem;
    border-radius: var(--radius);
    overflow: auto;
    -webkit-box-shadow: var(--shadow);
            box-shadow: var(--shadow);
  }
  .single-post .contents .right pre code, .single-column .contents .right pre code {
    background: transparent;
    padding: 0;
  }
  .single-post .contents .right table, .single-column .contents .right table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-variant-numeric: tabular-nums;
  }
  .single-post .contents .right thead th, .single-column .contents .right thead th {
    text-align: left;
    border-bottom: 2px solid var(--c-border);
  }
  .single-post .contents .right th,
  .single-post .contents .right td, .single-column .contents .right th,
  .single-column .contents .right td {
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid var(--c-border);
  }
  .single-post .contents .right tbody tr:hover, .single-column .contents .right tbody tr:hover {
    background: color-mix(in oklab, var(--c-border) 35%, transparent);
  }
  .single-post .contents .right hr,
  .single-post .contents .right .wp-block-separator, .single-column .contents .right hr,
  .single-column .contents .right .wp-block-separator {
    border: 0;
    height: 1px;
    background: var(--c-border);
    margin: 2rem 0;
  }
  .single-post .contents .right .embed__ratio, .single-column .contents .right .embed__ratio {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background: rgba(0, 0, 0, 0.1333333333);
    border-radius: var(--radius);
    overflow: hidden;
  }
  .single-post .contents .right .embed__ratio iframe,
  .single-post .contents .right .embed__ratio video, .single-column .contents .right .embed__ratio iframe,
  .single-column .contents .right .embed__ratio video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .single-post .contents .right .wp-block-button .wp-block-button__link, .single-column .contents .right .wp-block-button .wp-block-button__link {
    display: inline-block;
    padding: 0.7rem 1.1rem;
    border-radius: 999px;
    background: var(--c-accent);
    color: var(--c-accent-ink);
    text-decoration: none;
    font-weight: 700;
  }
  .single-post .contents .right .wp-block-button.is-style-outline .wp-block-button__link, .single-column .contents .right .wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    color: var(--c-accent);
    border: 2px solid var(--c-accent);
  }
  .single-post .contents .right .wp-block-columns, .single-column .contents .right .wp-block-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .single-post .contents .right .wp-block-columns .wp-block-column, .single-column .contents .right .wp-block-columns .wp-block-column {
    width: calc(50% - 20px);
  }
  .single-post .contents .right .pagination .nav-links, .single-column .contents .right .pagination .nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .single-post .contents .right .page-numbers, .single-column .contents .right .page-numbers {
    display: inline-block;
    padding: 0.4rem 0.7rem;
    border: 1px solid var(--c-border);
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--c-ink);
  }
  .single-post .contents .right .page-numbers.current, .single-column .contents .right .page-numbers.current {
    background: var(--c-accent);
    color: var(--c-accent-ink);
    border-color: var(--c-accent);
  }
  .single-post .contents .right .page-numbers:hover, .single-column .contents .right .page-numbers:hover {
    background: color-mix(in oklab, var(--c-accent) 12%, transparent);
  }
  .single-post .contents .right .screen-reader-text, .single-column .contents .right .screen-reader-text {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
    border: 0;
    padding: 0;
    margin: -1px;
  }
  .single-post .contents .right img, .single-column .contents .right img {
    vertical-align: middle;
  }
  .single-post .contents .right .entry-content::after, .single-column .contents .right .entry-content::after {
    content: "";
    display: block;
    clear: both;
  }
  .single-post .reservation, .single-column .reservation {
    margin-top: 0px;
    text-align: center;
    margin: 0px auto;
    padding-top: 64px;
    border-top: 1px solid #E2E2E2;
    width: calc(100vw - 40px);
  }
  .single-post .reservation h5, .single-column .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: 50px;
    font-weight: 200;
  }
  .single-post .reservation .flex, .single-column .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .single-post .reservation .flex p, .single-column .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
  }
  .single-post .reservation .flex .arrowWrap, .single-column .reservation .flex .arrowWrap {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
  }
  .single-post .reservation .flex .arrowWrap .arrow, .single-column .reservation .flex .arrowWrap .arrow {
    width: 12px;
    height: 12px;
  }
  .single-post .reservation a:hover .arrowWrap .arrow, .single-column .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  #case .subPageTitle .inner, .tax-case-category .subPageTitle .inner {
    padding-bottom: 0;
  }
  #case .subPageTitle .right, .tax-case-category .subPageTitle .right {
    margin-top: 40px;
  }
  #case .subPageTitle .right p, .tax-case-category .subPageTitle .right p {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    margin-bottom: 20px;
  }
  #case .section .inner, .tax-case-category .section .inner {
    padding-top: 40px;
  }
  #case .caseList, .tax-case-category .caseList {
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 64px;
  }
  #case .caseList li, .tax-case-category .caseList li {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
  }
  #case .caseList li .left .name, .tax-case-category .caseList li .left .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    margin-bottom: 16px;
  }
  #case .caseList li .left .name span, .tax-case-category .caseList li .left .name span {
    margin-top: 12px;
  }
  #case .caseList li .left li, .tax-case-category .caseList li .left li {
    border: none;
    padding-top: 0;
    margin-top: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-left: 0;
    font-size: 12px;
  }
  #case .caseList li .left li span, .tax-case-category .caseList li .left li span {
    font-size: 12px;
    display: inline-block;
    margin-left: 0px;
    width: 150px;
  }
  #case .caseList li .left li p, .tax-case-category .caseList li .left li p {
    width: calc(100% - 170px);
  }
  #case .caseList li .right, .tax-case-category .caseList li .right {
    margin-top: 40px;
  }
  #case .caseList li .right h5, .tax-case-category .caseList li .right h5 {
    margin-bottom: 20px;
    font-size: 12px;
  }
  #case .caseList li .right .imgWrap, .tax-case-category .caseList li .right .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #case .caseList li .right .imgWrap img, .tax-case-category .caseList li .right .imgWrap img {
    width: calc(50% - 10px);
  }
  #case .caseList li + li, .tax-case-category .caseList li + li {
    margin-top: 80px;
  }
  .casestudies-template-default .inner {
    padding-bottom: 40px;
  }
  .casestudies-template-default .left {
    margin-top: 120px;
  }
  .casestudies-template-default .left .name {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 50px;
    margin-bottom: 32px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    width: 100%;
  }
  .casestudies-template-default .left .name p {
    width: 100%;
  }
  .casestudies-template-default .left .name span {
    margin-top: 10px;
  }
  .casestudies-template-default .left li {
    border: none;
    padding-top: 0;
    margin-top: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .casestudies-template-default .left li span {
    font-size: 12px;
    display: inline-block;
    margin-left: 0px;
    width: 150px;
  }
  .casestudies-template-default .left li p {
    width: calc(100% - 170px);
  }
  .casestudies-template-default .right {
    margin-top: 40px;
  }
  .casestudies-template-default .right h5 {
    margin-bottom: 20px;
    font-size: 12px;
  }
  .casestudies-template-default .right .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .casestudies-template-default .right .imgWrap img {
    width: calc(50% - 20px);
  }
  .casestudies-template-default .imgWrapSection {
    margin-top: 40px;
  }
  .casestudies-template-default .imgWrapSection .inner {
    padding-top: 0;
  }
  .casestudies-template-default .imgWrapSection .inner .imgWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .casestudies-template-default .imgWrapSection .inner .imgWrap img {
    width: 100%;
    margin-bottom: 30px;
  }
  .casestudies-template-default .contents {
    margin-top: 0px;
  }
  .casestudies-template-default .contents .inner {
    padding-top: 0;
  }
  .casestudies-template-default .contents .left {
    width: 100%;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-top: 0px;
  }
  .casestudies-template-default .contents .right {
    margin-top: 0;
    /* =========
    WordPress Blog Base (Gutenberg/Classic)
    ========= */
    /* 見出しスケール */
    /* 本文 */
    /* リスト */
    /* 引用 */
    /* 画像・図版 */
    /* Gutenberg アライメント対応 */
    /* キャプション（クラシック互換） */
    /* コード */
    /* 表 */
    /* 区切り線 */
    /* 埋め込み（YouTubeなど比率維持） */
    /* Gutenberg ボタン（最低限） */
    /* Gutenberg カラム */
    /* ページネーション */
    /* スクリーンリーダーテキスト（WP標準） */
    /* 画像の下に余白が出るのを防ぐ */
    /* クリアフィックス（クラシック互換） */
  }
  .casestudies-template-default .contents .right h1:first-child,
  .casestudies-template-default .contents .right h2:first-child,
  .casestudies-template-default .contents .right h3:first-child,
  .casestudies-template-default .contents .right h4:first-child,
  .casestudies-template-default .contents .right h5:first-child,
  .casestudies-template-default .contents .right h6:first-child,
  .casestudies-template-default .contents .right p:first-child,
  .casestudies-template-default .contents .right a:first-child,
  .casestudies-template-default .contents .right img:first-child,
  .casestudies-template-default .contents .right blockquote:first-child,
  .casestudies-template-default .contents .right ul:first-child,
  .casestudies-template-default .contents .right ol:first-child,
  .casestudies-template-default .contents .right dl:first-child {
    margin-top: 0;
  }
  .casestudies-template-default .contents .right h1,
  .casestudies-template-default .contents .right h2,
  .casestudies-template-default .contents .right h3,
  .casestudies-template-default .contents .right h4,
  .casestudies-template-default .contents .right h5,
  .casestudies-template-default .contents .right h6 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
    margin: 1.6em 0 0.6em;
    font-weight: 700;
    margin-top: 40px;
  }
  .casestudies-template-default .contents .right h1 {
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  }
  .casestudies-template-default .contents .right h2 {
    font-size: clamp(1.6rem, 3vw, 2rem);
  }
  .casestudies-template-default .contents .right h3 {
    font-size: clamp(1.3rem, 2.4vw, 1.6rem);
  }
  .casestudies-template-default .contents .right h4 {
    font-size: 1.2rem;
  }
  .casestudies-template-default .contents .right h5 {
    font-size: 1.05rem;
  }
  .casestudies-template-default .contents .right h6 {
    font-size: 0.95rem;
    color: var(--c-ink-muted);
  }
  .casestudies-template-default .contents .right p {
    margin: 1em 0;
  }
  .casestudies-template-default .contents .right a {
    color: var(--c-accent);
    text-decoration: underline;
    opacity: 0.5;
  }
  .casestudies-template-default .contents .right a:hover {
    text-decoration: none;
    opacity: 1;
  }
  .casestudies-template-default .contents .right strong,
  .casestudies-template-default .contents .right b {
    font-weight: 700;
  }
  .casestudies-template-default .contents .right em,
  .casestudies-template-default .contents .right i {
    font-style: italic;
  }
  .casestudies-template-default .contents .right small,
  .casestudies-template-default .contents .right .has-small-font-size {
    font-size: 0.875rem;
  }
  .casestudies-template-default .contents .right big,
  .casestudies-template-default .contents .right .has-large-font-size {
    font-size: 1.25rem;
  }
  .casestudies-template-default .contents .right ul,
  .casestudies-template-default .contents .right ol {
    margin-top: 20px;
  }
  .casestudies-template-default .contents .right ul li,
  .casestudies-template-default .contents .right ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .casestudies-template-default .contents .right ul li:before,
  .casestudies-template-default .contents .right ol li:before {
    content: "・";
    display: block;
  }
  .casestudies-template-default .contents .right ul li + li,
  .casestudies-template-default .contents .right ol li + li {
    margin-top: 4px;
  }
  .casestudies-template-default .contents .right ol {
    counter-reset: list-counter;
    /* カウンターを初期化 */
    padding-left: 0;
    /* 左余白は好みで */
  }
  .casestudies-template-default .contents .right ol li {
    list-style: none;
    /* デフォルトの番号は消す */
    counter-increment: list-counter;
    /* 1つ進める */
    /* 番号用のスペース確保 */
    position: relative;
  }
  .casestudies-template-default .contents .right ol li::before {
    content: counter(list-counter) ".";
    margin-right: 10px;
    /* 番号の色 */
  }
  .casestudies-template-default .contents .right li {
    margin: 0.3em 0;
  }
  .casestudies-template-default .contents .right dl {
    margin: 1em 0;
  }
  .casestudies-template-default .contents .right dt {
    font-weight: 700;
  }
  .casestudies-template-default .contents .right dd {
    margin-left: 0;
  }
  .casestudies-template-default .contents .right blockquote {
    margin: 1.5em 0;
    padding: 1rem 1.2rem;
    background: var(--c-quote);
    border-left: 4px solid var(--c-accent);
    border-radius: calc(var(--radius) - 4px);
  }
  .casestudies-template-default .contents .right blockquote p {
    margin: 0.6em 0;
  }
  .casestudies-template-default .contents .right blockquote cite {
    display: block;
    margin-top: 0.5em;
    color: var(--c-ink-muted);
    font-style: normal;
  }
  .casestudies-template-default .contents .right img,
  .casestudies-template-default .contents .right svg,
  .casestudies-template-default .contents .right video {
    max-width: 100%;
    height: auto;
  }
  .casestudies-template-default .contents .right figure {
    margin: 40px 0 0;
  }
  .casestudies-template-default .contents .right figcaption {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
    text-align: center;
  }
  .casestudies-template-default .contents .right .alignnone {
    margin: 0;
  }
  .casestudies-template-default .contents .right .alignleft {
    float: left;
    margin: 0.4em 1em 0.8em 0;
  }
  .casestudies-template-default .contents .right .alignright {
    float: right;
    margin: 0.4em 0 0.8em 1em;
  }
  .casestudies-template-default .contents .right .aligncenter {
    display: block;
    margin-inline: auto;
    text-align: center;
  }
  .casestudies-template-default .contents .right .alignwide {
    width: 100%;
    margin-inline: auto;
  }
  .casestudies-template-default .contents .right .alignfull {
    width: 100vw;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .casestudies-template-default .contents .right .wp-caption {
    max-width: 100%;
  }
  .casestudies-template-default .contents .right .wp-caption img {
    display: block;
  }
  .casestudies-template-default .contents .right .wp-caption-text {
    color: var(--c-ink-muted);
    font-size: 0.9rem;
    margin-top: 0.4em;
  }
  .casestudies-template-default .contents .right code,
  .casestudies-template-default .contents .right kbd,
  .casestudies-template-default .contents .right samp {
    font-family: var(--ff-mono);
    font-size: 0.95em;
  }
  .casestudies-template-default .contents .right pre,
  .casestudies-template-default .contents .right .wp-block-code {
    background: var(--c-code-bg);
    color: var(--c-code-ink);
    padding: 1rem 1.2rem;
    border-radius: var(--radius);
    overflow: auto;
    -webkit-box-shadow: var(--shadow);
            box-shadow: var(--shadow);
  }
  .casestudies-template-default .contents .right pre code {
    background: transparent;
    padding: 0;
  }
  .casestudies-template-default .contents .right table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-variant-numeric: tabular-nums;
  }
  .casestudies-template-default .contents .right thead th {
    text-align: left;
    border-bottom: 2px solid var(--c-border);
  }
  .casestudies-template-default .contents .right th,
  .casestudies-template-default .contents .right td {
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid var(--c-border);
  }
  .casestudies-template-default .contents .right tbody tr:hover {
    background: color-mix(in oklab, var(--c-border) 35%, transparent);
  }
  .casestudies-template-default .contents .right hr,
  .casestudies-template-default .contents .right .wp-block-separator {
    border: 0;
    height: 1px;
    background: var(--c-border);
    margin: 2rem 0;
  }
  .casestudies-template-default .contents .right .embed__ratio {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background: rgba(0, 0, 0, 0.1333333333);
    border-radius: var(--radius);
    overflow: hidden;
  }
  .casestudies-template-default .contents .right .embed__ratio iframe,
  .casestudies-template-default .contents .right .embed__ratio video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .casestudies-template-default .contents .right .wp-block-button .wp-block-button__link {
    display: inline-block;
    padding: 0.7rem 1.1rem;
    border-radius: 999px;
    background: var(--c-accent);
    color: var(--c-accent-ink);
    text-decoration: none;
    font-weight: 700;
  }
  .casestudies-template-default .contents .right .wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    color: var(--c-accent);
    border: 2px solid var(--c-accent);
  }
  .casestudies-template-default .contents .right .wp-block-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .casestudies-template-default .contents .right .wp-block-columns .wp-block-column {
    width: calc(50% - 20px);
  }
  .casestudies-template-default .contents .right .pagination .nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .casestudies-template-default .contents .right .page-numbers {
    display: inline-block;
    padding: 0.4rem 0.7rem;
    border: 1px solid var(--c-border);
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--c-ink);
  }
  .casestudies-template-default .contents .right .page-numbers.current {
    background: var(--c-accent);
    color: var(--c-accent-ink);
    border-color: var(--c-accent);
  }
  .casestudies-template-default .contents .right .page-numbers:hover {
    background: color-mix(in oklab, var(--c-accent) 12%, transparent);
  }
  .casestudies-template-default .contents .right .screen-reader-text {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
    border: 0;
    padding: 0;
    margin: -1px;
  }
  .casestudies-template-default .contents .right img {
    vertical-align: middle;
  }
  .casestudies-template-default .contents .right .entry-content::after {
    content: "";
    display: block;
    clear: both;
  }
  .casestudies-template-default .reservation {
    margin-top: 0px;
    text-align: center;
    margin: 0px auto;
    padding-top: 64px;
    border-top: 1px solid #E2E2E2;
    width: calc(100vw - 40px);
  }
  .casestudies-template-default .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: 50px;
    font-weight: 200;
  }
  .casestudies-template-default .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .casestudies-template-default .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
  }
  .casestudies-template-default .reservation .flex .arrowWrap {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
  }
  .casestudies-template-default .reservation .flex .arrowWrap .arrow {
    width: 12px;
    height: 12px;
  }
  .casestudies-template-default .reservation a:hover .arrowWrap .arrow {
    top: 10%;
    left: 70%;
    -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
  }
  .error404 .section, #thanks .section {
    position: relative;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
  }
  .error404 .section .errorText, #thanks .section .errorText {
    font-family: "Playfair Display", serif;
    font-size: 270px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    opacity: 0.1;
    line-height: 1;
  }
  .error404 .section .inner, #thanks .section .inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .error404 .section .inner h2, #thanks .section .inner h2 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    font-weight: 200;
    margin-bottom: 20px;
  }
  .error404 .section .inner .button, #thanks .section .inner .button {
    margin-top: 64px;
    margin: 40px auto 0 0;
  }
  .error404 #footer, #thanks #footer {
    display: none;
  }
  #contact .subPageTitle {
    padding-top: 240px;
  }
  #contact .buttonWrap {
    text-align: center;
  }
  #contact .buttonWrap .button {
    margin: 80px auto 20px;
  }
  #contact .buttonWrap .back {
    margin-top: 20px;
    border: 1px solid #586166;
    background-color: #FFFFFF;
    color: #586166;
  }
  #contact .buttonWrap .back:hover {
    background-color: #586166;
    color: #FFFFFF;
  }
  #contact .right {
    margin-top: 20px;
  }
  #contact .inner {
    padding-top: 0;
  }
  #contact .c-form {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    --ink: $mainColor;
    --muted: #9aa0a6;
    --line: #E2E2E2;
    --accent: #0053A5;
  }
  #contact .c-form * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #contact .c-form .c-form__req {
    display: inline-block;
    margin-left: 0.5em;
    font-size: 0.85em;
    color: #d80000;
  }
  #contact .c-form .c-form__field + .c-form__field {
    margin-top: 40px;
  }
  #contact .c-form .c-form__label {
    display: block;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 8px;
    line-height: 1.6;
    font-size: 13px;
  }
  #contact .c-form .c-form__control {
    position: relative;
  }
  #contact .c-form .c-form__control input,
  #contact .c-form .c-form__control select,
  #contact .c-form .c-form__control textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    padding: 14px 0;
    font-size: 16px;
    line-height: 1.6;
    color: var(--ink);
    outline: none;
  }
  #contact .c-form .c-form__control input::-webkit-input-placeholder, #contact .c-form .c-form__control select::-webkit-input-placeholder, #contact .c-form .c-form__control textarea::-webkit-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::-moz-placeholder, #contact .c-form .c-form__control select::-moz-placeholder, #contact .c-form .c-form__control textarea::-moz-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input:-ms-input-placeholder, #contact .c-form .c-form__control select:-ms-input-placeholder, #contact .c-form .c-form__control textarea:-ms-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::-ms-input-placeholder, #contact .c-form .c-form__control select::-ms-input-placeholder, #contact .c-form .c-form__control textarea::-ms-input-placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input::placeholder,
  #contact .c-form .c-form__control select::placeholder,
  #contact .c-form .c-form__control textarea::placeholder {
    color: var(--ink);
  }
  #contact .c-form .c-form__control input:focus,
  #contact .c-form .c-form__control select:focus,
  #contact .c-form .c-form__control textarea:focus {
    border-bottom-color: var(--ink);
  }
  #contact .c-form .c-form__control select {
    background-image: linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);
    background-position: right 8px top 55%, right 0px top 55%;
    background-size: 8px 8px, 8px 8px;
    background-repeat: no-repeat;
    padding-right: 28px;
  }
  #contact .c-form .c-form__control textarea {
    resize: vertical;
  }
  #contact .c-form .c-form__agree {
    margin-top: 64px;
    text-align: center;
  }
  #contact .c-form .c-form__agree .c-form__check {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    font-size: 14px;
    color: var(--ink);
  }
  #contact .c-form .c-form__agree .c-form__check input[type=checkbox] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--ink);
  }
  #contact .c-form .c-form__agree .c-form__check a {
    text-decoration: underline;
  }
  #contact .c-form .c-form__action {
    margin-top: 28px;
    width: 100%;
    text-align: center;
  }
  #contact .c-form .c-form__action .button {
    margin: 0 auto;
    display: inline-block;
  }
  #contact .c-form.is-error .c-form__control input:invalid, #contact .c-form.is-error .c-form__control textarea:invalid, #contact .c-form.is-error .c-form__control select:invalid {
    border-bottom-color: #d80000;
  }
  #contact .wpcf7-submit {
    width: 200px;
    height: 40px;
    color: #FFFFFF;
    background-color: #586166;
    display: block;
    text-align: center;
    line-height: 40px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid #586166;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin: 0px auto;
  }
  #contact .wpcf7-submit:hover {
    background-color: transparent;
    color: #586166;
  }
  #contact .wpcf7-acceptance {
    text-align: center;
    margin: 40px auto;
    display: block;
  }
  #contact .wpcf7-acceptance a {
    text-decoration: underline;
    opacity: 0.5;
  }
  #contact .wpcf7-acceptance a:hover {
    opacity: 1;
  }
  #contact #wpcf7cpcnf {
    font-size: 12px;
  }
  #contact #wpcf7cpcnf .table {
    width: 100%;
  }
  #contact #wpcf7cpcnf tr {
    width: 100%;
    border-bottom: 1px solid #E2E2E2;
    padding-bottom: 40px;
    display: inline-block;
  }
  #contact #wpcf7cpcnf th {
    font-weight: bold;
    display: inline-block;
    width: 40%;
  }
  #contact #wpcf7cpcnf td {
    display: inline-block;
    width: 55%;
    margin-left: 5%;
  }
  #contact #wpcf7cpcnf tr + tr {
    margin-top: 40px;
  }
  #contact #wpcf7cpcnf .wpcf7cp-cfm-edit-btn {
    display: inline-block;
    text-align: center;
    text-decoration: underline;
    display: block;
    margin: 40px auto 20px;
    font-size: 12px;
  }
  #contact #wpcf7cpcnf .wpcf7cp-cfm-edit-btn:hover {
    opacity: 0.7;
  }
  #servicemenu .serviceWrap .inner {
    padding-bottom: 0;
  }
  #servicemenu .subPageTitle .inner {
    padding-bottom: 0;
  }
  #servicemenu .menuWrap {
    margin-bottom: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #servicemenu .menuWrap li {
    margin-right: 20px;
    font-size: 12px;
  }
  #servicemenu strong {
    margin: 40px 0 20px;
  }
  #servicemenu .bulletPoints li {
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-size: 13px;
  }
  #ceramic #guidLine2Modal,
  #ceramic #guidLine3Modal,
  #generaldentistry #guidLine2Modal,
  #generaldentistry #guidLine3Modal, #implant #guidLine2Modal,
  #implant #guidLine3Modal, #mouthpieceinvisalign #guidLine2Modal,
  #mouthpieceinvisalign #guidLine3Modal, #orthodontictreatment #guidLine2Modal,
  #orthodontictreatment #guidLine3Modal, #periodontaltreatment #guidLine2Modal,
  #periodontaltreatment #guidLine3Modal, #whitening #guidLine2Modal,
  #whitening #guidLine3Modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    background-color: #586166;
    height: 100vh;
    z-index: 1000;
    z-index: 9999;
    color: #FFFFFF;
    overflow-y: scroll;
    /* フェード制御（初期は非表示） */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0.25s;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
  }
  #ceramic #guidLine2Modal .inner,
  #ceramic #guidLine3Modal .inner,
  #generaldentistry #guidLine2Modal .inner,
  #generaldentistry #guidLine3Modal .inner, #implant #guidLine2Modal .inner,
  #implant #guidLine3Modal .inner, #mouthpieceinvisalign #guidLine2Modal .inner,
  #mouthpieceinvisalign #guidLine3Modal .inner, #orthodontictreatment #guidLine2Modal .inner,
  #orthodontictreatment #guidLine3Modal .inner, #periodontaltreatment #guidLine2Modal .inner,
  #periodontaltreatment #guidLine3Modal .inner, #whitening #guidLine2Modal .inner,
  #whitening #guidLine3Modal .inner {
    padding: 120px 20px;
    overflow-y: scroll;
  }
  #ceramic #guidLine2Modal .inner .left,
  #ceramic #guidLine3Modal .inner .left,
  #generaldentistry #guidLine2Modal .inner .left,
  #generaldentistry #guidLine3Modal .inner .left, #implant #guidLine2Modal .inner .left,
  #implant #guidLine3Modal .inner .left, #mouthpieceinvisalign #guidLine2Modal .inner .left,
  #mouthpieceinvisalign #guidLine3Modal .inner .left, #orthodontictreatment #guidLine2Modal .inner .left,
  #orthodontictreatment #guidLine3Modal .inner .left, #periodontaltreatment #guidLine2Modal .inner .left,
  #periodontaltreatment #guidLine3Modal .inner .left, #whitening #guidLine2Modal .inner .left,
  #whitening #guidLine3Modal .inner .left {
    width: 100%;
  }
  #ceramic #guidLine2Modal .inner h3,
  #ceramic #guidLine3Modal .inner h3,
  #generaldentistry #guidLine2Modal .inner h3,
  #generaldentistry #guidLine3Modal .inner h3, #implant #guidLine2Modal .inner h3,
  #implant #guidLine3Modal .inner h3, #mouthpieceinvisalign #guidLine2Modal .inner h3,
  #mouthpieceinvisalign #guidLine3Modal .inner h3, #orthodontictreatment #guidLine2Modal .inner h3,
  #orthodontictreatment #guidLine3Modal .inner h3, #periodontaltreatment #guidLine2Modal .inner h3,
  #periodontaltreatment #guidLine3Modal .inner h3, #whitening #guidLine2Modal .inner h3,
  #whitening #guidLine3Modal .inner h3 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 25px;
    margin-bottom: 64px;
  }
  #ceramic #guidLine2Modal .inner .textWrap,
  #ceramic #guidLine3Modal .inner .textWrap,
  #generaldentistry #guidLine2Modal .inner .textWrap,
  #generaldentistry #guidLine3Modal .inner .textWrap, #implant #guidLine2Modal .inner .textWrap,
  #implant #guidLine3Modal .inner .textWrap, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap, #orthodontictreatment #guidLine2Modal .inner .textWrap,
  #orthodontictreatment #guidLine3Modal .inner .textWrap, #periodontaltreatment #guidLine2Modal .inner .textWrap,
  #periodontaltreatment #guidLine3Modal .inner .textWrap, #whitening #guidLine2Modal .inner .textWrap,
  #whitening #guidLine3Modal .inner .textWrap {
    width: 100%;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right,
  #ceramic #guidLine3Modal .inner .textWrap .right,
  #generaldentistry #guidLine2Modal .inner .textWrap .right,
  #generaldentistry #guidLine3Modal .inner .textWrap .right, #implant #guidLine2Modal .inner .textWrap .right,
  #implant #guidLine3Modal .inner .textWrap .right, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right, #orthodontictreatment #guidLine2Modal .inner .textWrap .right,
  #orthodontictreatment #guidLine3Modal .inner .textWrap .right, #periodontaltreatment #guidLine2Modal .inner .textWrap .right,
  #periodontaltreatment #guidLine3Modal .inner .textWrap .right, #whitening #guidLine2Modal .inner .textWrap .right,
  #whitening #guidLine3Modal .inner .textWrap .right {
    margin-top: 0;
    width: 100%;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li,
  #ceramic #guidLine3Modal .inner .textWrap .right li,
  #generaldentistry #guidLine2Modal .inner .textWrap .right li,
  #generaldentistry #guidLine3Modal .inner .textWrap .right li, #implant #guidLine2Modal .inner .textWrap .right li,
  #implant #guidLine3Modal .inner .textWrap .right li, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li,
  #orthodontictreatment #guidLine3Modal .inner .textWrap .right li, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li,
  #periodontaltreatment #guidLine3Modal .inner .textWrap .right li, #whitening #guidLine2Modal .inner .textWrap .right li,
  #whitening #guidLine3Modal .inner .textWrap .right li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li + li,
  #ceramic #guidLine3Modal .inner .textWrap .right li + li,
  #generaldentistry #guidLine2Modal .inner .textWrap .right li + li,
  #generaldentistry #guidLine3Modal .inner .textWrap .right li + li, #implant #guidLine2Modal .inner .textWrap .right li + li,
  #implant #guidLine3Modal .inner .textWrap .right li + li, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li + li,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li + li, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li + li,
  #orthodontictreatment #guidLine3Modal .inner .textWrap .right li + li, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li + li,
  #periodontaltreatment #guidLine3Modal .inner .textWrap .right li + li, #whitening #guidLine2Modal .inner .textWrap .right li + li,
  #whitening #guidLine3Modal .inner .textWrap .right li + li {
    margin-top: 12px;
  }
  #ceramic #guidLine2Modal .inner .textWrap .right li:before,
  #ceramic #guidLine3Modal .inner .textWrap .right li:before,
  #generaldentistry #guidLine2Modal .inner .textWrap .right li:before,
  #generaldentistry #guidLine3Modal .inner .textWrap .right li:before, #implant #guidLine2Modal .inner .textWrap .right li:before,
  #implant #guidLine3Modal .inner .textWrap .right li:before, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap .right li:before,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap .right li:before, #orthodontictreatment #guidLine2Modal .inner .textWrap .right li:before,
  #orthodontictreatment #guidLine3Modal .inner .textWrap .right li:before, #periodontaltreatment #guidLine2Modal .inner .textWrap .right li:before,
  #periodontaltreatment #guidLine3Modal .inner .textWrap .right li:before, #whitening #guidLine2Modal .inner .textWrap .right li:before,
  #whitening #guidLine3Modal .inner .textWrap .right li:before {
    color: #FFFFFF;
    display: block;
    content: "・";
    margin-right: 4px;
  }
  #ceramic #guidLine2Modal .inner .textWrap h5,
  #ceramic #guidLine3Modal .inner .textWrap h5,
  #generaldentistry #guidLine2Modal .inner .textWrap h5,
  #generaldentistry #guidLine3Modal .inner .textWrap h5, #implant #guidLine2Modal .inner .textWrap h5,
  #implant #guidLine3Modal .inner .textWrap h5, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap h5,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap h5, #orthodontictreatment #guidLine2Modal .inner .textWrap h5,
  #orthodontictreatment #guidLine3Modal .inner .textWrap h5, #periodontaltreatment #guidLine2Modal .inner .textWrap h5,
  #periodontaltreatment #guidLine3Modal .inner .textWrap h5, #whitening #guidLine2Modal .inner .textWrap h5,
  #whitening #guidLine3Modal .inner .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(20px, 1.5625vw);
    margin-bottom: 40px;
  }
  #ceramic #guidLine2Modal .inner .textWrap + .textWrap,
  #ceramic #guidLine3Modal .inner .textWrap + .textWrap,
  #generaldentistry #guidLine2Modal .inner .textWrap + .textWrap,
  #generaldentistry #guidLine3Modal .inner .textWrap + .textWrap, #implant #guidLine2Modal .inner .textWrap + .textWrap,
  #implant #guidLine3Modal .inner .textWrap + .textWrap, #mouthpieceinvisalign #guidLine2Modal .inner .textWrap + .textWrap,
  #mouthpieceinvisalign #guidLine3Modal .inner .textWrap + .textWrap, #orthodontictreatment #guidLine2Modal .inner .textWrap + .textWrap,
  #orthodontictreatment #guidLine3Modal .inner .textWrap + .textWrap, #periodontaltreatment #guidLine2Modal .inner .textWrap + .textWrap,
  #periodontaltreatment #guidLine3Modal .inner .textWrap + .textWrap, #whitening #guidLine2Modal .inner .textWrap + .textWrap,
  #whitening #guidLine3Modal .inner .textWrap + .textWrap {
    margin-top: 80px;
  }
  #ceramic .is-open,
  #generaldentistry .is-open, #implant .is-open, #mouthpieceinvisalign .is-open, #orthodontictreatment .is-open, #periodontaltreatment .is-open, #whitening .is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    -webkit-transition: opacity 0.25s ease, visibility 0s linear 0s !important;
    transition: opacity 0.25s ease, visibility 0s linear 0s !important;
  }
  #ceramic .is-open .modal-panel,
  #generaldentistry .is-open .modal-panel, #implant .is-open .modal-panel, #mouthpieceinvisalign .is-open .modal-panel, #orthodontictreatment .is-open .modal-panel, #periodontaltreatment .is-open .modal-panel, #whitening .is-open .modal-panel {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
  }
  #ceramic .jp_title,
  #generaldentistry .jp_title, #implant .jp_title, #mouthpieceinvisalign .jp_title, #orthodontictreatment .jp_title, #periodontaltreatment .jp_title, #whitening .jp_title {
    font-size: 20px;
    line-height: 1.7;
    font-weight: bold;
  }
  #ceramic small,
  #generaldentistry small, #implant small, #mouthpieceinvisalign small, #orthodontictreatment small, #periodontaltreatment small, #whitening small {
    font-size: 0.5em;
  }
  #ceramic .section:nth-child(2n),
  #generaldentistry .section:nth-child(2n), #implant .section:nth-child(2n), #mouthpieceinvisalign .section:nth-child(2n), #orthodontictreatment .section:nth-child(2n), #periodontaltreatment .section:nth-child(2n), #whitening .section:nth-child(2n) {
    background-color: #fafafa;
  }
  #ceramic .threeColum,
  #generaldentistry .threeColum, #implant .threeColum, #mouthpieceinvisalign .threeColum, #orthodontictreatment .threeColum, #periodontaltreatment .threeColum, #whitening .threeColum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 64px;
  }
  #ceramic .threeColum li,
  #generaldentistry .threeColum li, #implant .threeColum li, #mouthpieceinvisalign .threeColum li, #orthodontictreatment .threeColum li, #periodontaltreatment .threeColum li, #whitening .threeColum li {
    width: calc(50% - 7px);
    margin-bottom: 40px;
    text-align: left;
  }
  #ceramic .threeColum li h4,
  #generaldentistry .threeColum li h4, #implant .threeColum li h4, #mouthpieceinvisalign .threeColum li h4, #orthodontictreatment .threeColum li h4, #periodontaltreatment .threeColum li h4, #whitening .threeColum li h4 {
    margin-top: 24px;
    margin-bottom: 4px;
    font-weight: bold;
    font-size: 13px;
  }
  #ceramic .threeColum li p,
  #generaldentistry .threeColum li p, #implant .threeColum li p, #mouthpieceinvisalign .threeColum li p, #orthodontictreatment .threeColum li p, #periodontaltreatment .threeColum li p, #whitening .threeColum li p {
    font-size: 12px;
  }
  #ceramic .threeColumNumber,
  #generaldentistry .threeColumNumber, #implant .threeColumNumber, #mouthpieceinvisalign .threeColumNumber, #orthodontictreatment .threeColumNumber, #periodontaltreatment .threeColumNumber, #whitening .threeColumNumber {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 64px;
  }
  #ceramic .threeColumNumber li,
  #generaldentistry .threeColumNumber li, #implant .threeColumNumber li, #mouthpieceinvisalign .threeColumNumber li, #orthodontictreatment .threeColumNumber li, #periodontaltreatment .threeColumNumber li, #whitening .threeColumNumber li {
    width: calc(50% - 7px);
    margin-bottom: 40px;
    text-align: center;
  }
  #ceramic .threeColumNumber li h5,
  #generaldentistry .threeColumNumber li h5, #implant .threeColumNumber li h5, #mouthpieceinvisalign .threeColumNumber li h5, #orthodontictreatment .threeColumNumber li h5, #periodontaltreatment .threeColumNumber li h5, #whitening .threeColumNumber li h5 {
    font-family: "Playfair Display", serif;
    font-size: 60px;
    font-weight: 200;
    line-height: 1;
  }
  #ceramic .threeColumNumber li h5:after,
  #generaldentistry .threeColumNumber li h5:after, #implant .threeColumNumber li h5:after, #mouthpieceinvisalign .threeColumNumber li h5:after, #orthodontictreatment .threeColumNumber li h5:after, #periodontaltreatment .threeColumNumber li h5:after, #whitening .threeColumNumber li h5:after {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background-color: #586166;
    margin: 20px auto 0;
  }
  #ceramic .threeColumNumber li h4,
  #generaldentistry .threeColumNumber li h4, #implant .threeColumNumber li h4, #mouthpieceinvisalign .threeColumNumber li h4, #orthodontictreatment .threeColumNumber li h4, #periodontaltreatment .threeColumNumber li h4, #whitening .threeColumNumber li h4 {
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 16px;
  }
  #ceramic .threeColumNumber li p,
  #generaldentistry .threeColumNumber li p, #implant .threeColumNumber li p, #mouthpieceinvisalign .threeColumNumber li p, #orthodontictreatment .threeColumNumber li p, #periodontaltreatment .threeColumNumber li p, #whitening .threeColumNumber li p {
    font-size: 14px;
  }
  #ceramic .bulletPoints,
  #generaldentistry .bulletPoints, #implant .bulletPoints, #mouthpieceinvisalign .bulletPoints, #orthodontictreatment .bulletPoints, #periodontaltreatment .bulletPoints, #whitening .bulletPoints {
    margin-top: -32px;
    margin-bottom: 20px;
  }
  #ceramic .bulletPoints li,
  #generaldentistry .bulletPoints li, #implant .bulletPoints li, #mouthpieceinvisalign .bulletPoints li, #orthodontictreatment .bulletPoints li, #periodontaltreatment .bulletPoints li, #whitening .bulletPoints li {
    font-size: 14px;
  }
  #ceramic .textWrap,
  #generaldentistry .textWrap, #implant .textWrap, #mouthpieceinvisalign .textWrap, #orthodontictreatment .textWrap, #periodontaltreatment .textWrap, #whitening .textWrap {
    margin-top: 40px !important;
  }
  #ceramic .textWrap h5,
  #generaldentistry .textWrap h5, #implant .textWrap h5, #mouthpieceinvisalign .textWrap h5, #orthodontictreatment .textWrap h5, #periodontaltreatment .textWrap h5, #whitening .textWrap h5 {
    font-size: 15px;
    margin-bottom: 40px;
  }
  #ceramic .textWrap p + h5,
  #generaldentistry .textWrap p + h5, #implant .textWrap p + h5, #mouthpieceinvisalign .textWrap p + h5, #orthodontictreatment .textWrap p + h5, #periodontaltreatment .textWrap p + h5, #whitening .textWrap p + h5 {
    margin-top: 40px;
  }
  #ceramic .textWrap h5 + img,
  #generaldentistry .textWrap h5 + img, #implant .textWrap h5 + img, #mouthpieceinvisalign .textWrap h5 + img, #orthodontictreatment .textWrap h5 + img, #periodontaltreatment .textWrap h5 + img, #whitening .textWrap h5 + img {
    margin-top: 0;
  }
  #ceramic .textWrap img + p,
  #generaldentistry .textWrap img + p, #implant .textWrap img + p, #mouthpieceinvisalign .textWrap img + p, #orthodontictreatment .textWrap img + p, #periodontaltreatment .textWrap img + p, #whitening .textWrap img + p {
    margin-top: -40px;
  }
  #ceramic .textWrap h5 + p,
  #generaldentistry .textWrap h5 + p, #implant .textWrap h5 + p, #mouthpieceinvisalign .textWrap h5 + p, #orthodontictreatment .textWrap h5 + p, #periodontaltreatment .textWrap h5 + p, #whitening .textWrap h5 + p {
    margin-top: -20px;
  }
  #ceramic .textWrap img:last-child,
  #generaldentistry .textWrap img:last-child, #implant .textWrap img:last-child, #mouthpieceinvisalign .textWrap img:last-child, #orthodontictreatment .textWrap img:last-child, #periodontaltreatment .textWrap img:last-child, #whitening .textWrap img:last-child {
    margin-bottom: 0;
  }
  #ceramic .textWrap h4,
  #generaldentistry .textWrap h4, #implant .textWrap h4, #mouthpieceinvisalign .textWrap h4, #orthodontictreatment .textWrap h4, #periodontaltreatment .textWrap h4, #whitening .textWrap h4 {
    font-size: 18px;
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-weight: bold;
    margin-bottom: 20px;
  }
  #ceramic .textWrap .imgCaption,
  #generaldentistry .textWrap .imgCaption, #implant .textWrap .imgCaption, #mouthpieceinvisalign .textWrap .imgCaption, #orthodontictreatment .textWrap .imgCaption, #periodontaltreatment .textWrap .imgCaption, #whitening .textWrap .imgCaption {
    font-size: 12px;
    margin-top: -50px;
  }
  #ceramic .textWrap .imgColum,
  #generaldentistry .textWrap .imgColum, #implant .textWrap .imgColum, #mouthpieceinvisalign .textWrap .imgColum, #orthodontictreatment .textWrap .imgColum, #periodontaltreatment .textWrap .imgColum, #whitening .textWrap .imgColum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #ceramic .textWrap .imgColum li,
  #generaldentistry .textWrap .imgColum li, #implant .textWrap .imgColum li, #mouthpieceinvisalign .textWrap .imgColum li, #orthodontictreatment .textWrap .imgColum li, #periodontaltreatment .textWrap .imgColum li, #whitening .textWrap .imgColum li {
    width: calc(50% - 7px);
    margin: 20px 0;
  }
  #ceramic .textWrap .imgColum li img,
  #generaldentistry .textWrap .imgColum li img, #implant .textWrap .imgColum li img, #mouthpieceinvisalign .textWrap .imgColum li img, #orthodontictreatment .textWrap .imgColum li img, #periodontaltreatment .textWrap .imgColum li img, #whitening .textWrap .imgColum li img {
    margin: 0;
  }
  #ceramic .textWrap .imgColum li .imgCaption,
  #generaldentistry .textWrap .imgColum li .imgCaption, #implant .textWrap .imgColum li .imgCaption, #mouthpieceinvisalign .textWrap .imgColum li .imgCaption, #orthodontictreatment .textWrap .imgColum li .imgCaption, #periodontaltreatment .textWrap .imgColum li .imgCaption, #whitening .textWrap .imgColum li .imgCaption {
    font-size: 12px;
    margin-top: 10px;
  }
  #ceramic .textWrap img,
  #generaldentistry .textWrap img, #implant .textWrap img, #mouthpieceinvisalign .textWrap img, #orthodontictreatment .textWrap img, #periodontaltreatment .textWrap img, #whitening .textWrap img {
    margin: 64px 0;
  }
  #ceramic .priceMenu,
  #generaldentistry .priceMenu, #implant .priceMenu, #mouthpieceinvisalign .priceMenu, #orthodontictreatment .priceMenu, #periodontaltreatment .priceMenu, #whitening .priceMenu {
    margin-top: 40px;
  }
  #ceramic .priceMenu h5,
  #generaldentistry .priceMenu h5, #implant .priceMenu h5, #mouthpieceinvisalign .priceMenu h5, #orthodontictreatment .priceMenu h5, #periodontaltreatment .priceMenu h5, #whitening .priceMenu h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: max(18px, 1.40625vw);
    margin-bottom: 24px;
  }
  #ceramic .priceMenu .price,
  #generaldentistry .priceMenu .price, #implant .priceMenu .price, #mouthpieceinvisalign .priceMenu .price, #orthodontictreatment .priceMenu .price, #periodontaltreatment .priceMenu .price, #whitening .priceMenu .price {
    font-family: "Playfair Display", serif;
    font-size: 30px;
    margin-bottom: 20px;
  }
  #ceramic .priceMenu h5 + .price,
  #generaldentistry .priceMenu h5 + .price, #implant .priceMenu h5 + .price, #mouthpieceinvisalign .priceMenu h5 + .price, #orthodontictreatment .priceMenu h5 + .price, #periodontaltreatment .priceMenu h5 + .price, #whitening .priceMenu h5 + .price {
    margin-top: -30px;
  }
  #ceramic .priceMenu .loanWrap,
  #generaldentistry .priceMenu .loanWrap, #implant .priceMenu .loanWrap, #mouthpieceinvisalign .priceMenu .loanWrap, #orthodontictreatment .priceMenu .loanWrap, #periodontaltreatment .priceMenu .loanWrap, #whitening .priceMenu .loanWrap {
    border-top: 1px solid #E2E2E2;
    padding-top: 40px;
    margin-top: 40px;
  }
  #ceramic .priceMenu .loanWrap .loanImg,
  #generaldentistry .priceMenu .loanWrap .loanImg, #implant .priceMenu .loanWrap .loanImg, #mouthpieceinvisalign .priceMenu .loanWrap .loanImg, #orthodontictreatment .priceMenu .loanWrap .loanImg, #periodontaltreatment .priceMenu .loanWrap .loanImg, #whitening .priceMenu .loanWrap .loanImg {
    margin-top: 40px;
  }
  #ceramic .priceMenu .loanWrap .loanList,
  #generaldentistry .priceMenu .loanWrap .loanList, #implant .priceMenu .loanWrap .loanList, #mouthpieceinvisalign .priceMenu .loanWrap .loanList, #orthodontictreatment .priceMenu .loanWrap .loanList, #periodontaltreatment .priceMenu .loanWrap .loanList, #whitening .priceMenu .loanWrap .loanList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #ceramic .priceMenu .loanWrap .loanList li::before,
  #generaldentistry .priceMenu .loanWrap .loanList li::before, #implant .priceMenu .loanWrap .loanList li::before, #mouthpieceinvisalign .priceMenu .loanWrap .loanList li::before, #orthodontictreatment .priceMenu .loanWrap .loanList li::before, #periodontaltreatment .priceMenu .loanWrap .loanList li::before, #whitening .priceMenu .loanWrap .loanList li::before {
    content: "・";
    display: inline-block;
    margin-right: 4px;
  }
  #ceramic .priceMenu .loanWrap .loanList li,
  #generaldentistry .priceMenu .loanWrap .loanList li, #implant .priceMenu .loanWrap .loanList li, #mouthpieceinvisalign .priceMenu .loanWrap .loanList li, #orthodontictreatment .priceMenu .loanWrap .loanList li, #periodontaltreatment .priceMenu .loanWrap .loanList li, #whitening .priceMenu .loanWrap .loanList li {
    margin-bottom: 4px;
    margin-right: 10px;
  }
  #ceramic .reservation,
  #generaldentistry .reservation, #implant .reservation, #mouthpieceinvisalign .reservation, #orthodontictreatment .reservation, #periodontaltreatment .reservation, #whitening .reservation {
    margin-top: 120px;
    text-align: center;
    margin: 120px auto;
  }
  #ceramic .reservation h5,
  #generaldentistry .reservation h5, #implant .reservation h5, #mouthpieceinvisalign .reservation h5, #orthodontictreatment .reservation h5, #periodontaltreatment .reservation h5, #whitening .reservation h5 {
    font-family: "Playfair Display", serif;
    font-size: 50px;
  }
  #ceramic .reservation .flex,
  #generaldentistry .reservation .flex, #implant .reservation .flex, #mouthpieceinvisalign .reservation .flex, #orthodontictreatment .reservation .flex, #periodontaltreatment .reservation .flex, #whitening .reservation .flex {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #ceramic .reservation .flex p,
  #generaldentistry .reservation .flex p, #implant .reservation .flex p, #mouthpieceinvisalign .reservation .flex p, #orthodontictreatment .reservation .flex p, #periodontaltreatment .reservation .flex p, #whitening .reservation .flex p {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
  }
  #ceramic .reservation .flex .arrowWrap,
  #generaldentistry .reservation .flex .arrowWrap, #implant .reservation .flex .arrowWrap, #mouthpieceinvisalign .reservation .flex .arrowWrap, #orthodontictreatment .reservation .flex .arrowWrap, #periodontaltreatment .reservation .flex .arrowWrap, #whitening .reservation .flex .arrowWrap {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    margin-left: -5px;
    margin-top: 1px;
  }
  #ceramic .reservation .flex .arrowWrap .arrow,
  #generaldentistry .reservation .flex .arrowWrap .arrow, #implant .reservation .flex .arrowWrap .arrow, #mouthpieceinvisalign .reservation .flex .arrowWrap .arrow, #orthodontictreatment .reservation .flex .arrowWrap .arrow, #periodontaltreatment .reservation .flex .arrowWrap .arrow, #whitening .reservation .flex .arrowWrap .arrow {
    width: 10px;
    height: 10px;
  }
  #ceramic .layout_a,
  #generaldentistry .layout_a, #implant .layout_a, #mouthpieceinvisalign .layout_a, #orthodontictreatment .layout_a, #periodontaltreatment .layout_a, #whitening .layout_a {
    margin-top: 40px;
  }
  #ceramic .layout_a .textWrap,
  #generaldentistry .layout_a .textWrap, #implant .layout_a .textWrap, #mouthpieceinvisalign .layout_a .textWrap, #orthodontictreatment .layout_a .textWrap, #periodontaltreatment .layout_a .textWrap, #whitening .layout_a .textWrap {
    margin-top: 0px !important;
  }
  #ceramic .layout_a .textWrap strong,
  #generaldentistry .layout_a .textWrap strong, #implant .layout_a .textWrap strong, #mouthpieceinvisalign .layout_a .textWrap strong, #orthodontictreatment .layout_a .textWrap strong, #periodontaltreatment .layout_a .textWrap strong, #whitening .layout_a .textWrap strong {
    margin-bottom: 0;
  }
  #ceramic .layout_a .textWrap p,
  #generaldentistry .layout_a .textWrap p, #implant .layout_a .textWrap p, #mouthpieceinvisalign .layout_a .textWrap p, #orthodontictreatment .layout_a .textWrap p, #periodontaltreatment .layout_a .textWrap p, #whitening .layout_a .textWrap p {
    margin-top: 12px;
  }
  #ceramic .layout_a h5,
  #generaldentistry .layout_a h5, #implant .layout_a h5, #mouthpieceinvisalign .layout_a h5, #orthodontictreatment .layout_a h5, #periodontaltreatment .layout_a h5, #whitening .layout_a h5 {
    margin-bottom: 12px;
    font-size: 16px;
    margin-top: 20px;
    width: 100%;
  }
  #privacy .textWrap {
    margin-top: 80px;
  }
  #privacy .textWrap h5 {
    font-family: "Yu Mincho", "游明朝", "Noto Serif JP", "Times New Roman", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "HGS明朝B", "ＭＳ Ｐ明朝", serif, Meiryo, "Sawarabi Mincho", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 20px;
    margin-bottom: 40px;
  }
  #privacy .textWrap p + h5 {
    margin-top: 80px;
  }
  #privacy .textWrap .bulletPoints + h5 {
    margin-top: 80px;
  }
}/*# sourceMappingURL=style.css.map */