@charset "UTF-8";
@import url(./html5reset.css);
@import url(./cssreset.css);
@import url(./basic.css);
@import url(./animation.css);
@import url(./snippet.css);
/* Shutter In Horizontal */
/*============================================================

    BASIC

============================================================*/
:root {
  /*--------------------------------
  	幅指定
  --------------------------------*/
  --spMinWidth:320px;
  --spWidth:375px;
  --tabletWidth:600px;
  --pcWidth:812px;
  --siteWidth:1200px;
  --iPhoneSEWidth:320px;
  /*--------------------------------
  	ヘッダー高さ指定
  --------------------------------*/
  --spHeaderHeight:70px;
  --pcHeaderHeight:100px;
  /*--------------------------------
  	色設定
  --------------------------------*/
  --baseColor:#F7F6F4;
  --mainColor:#A89D83;
  --subColor:#E6DFCF;
  --accentColor:#2496D1;
  --whiteColor:#ffffff;
  --blackColor:#000000;
  --grayColor:#D9D9D9;
  --beigeColor:#D3C9B2;
  --darkBeigeColor:#746541;
  --lightBeigeColor:#F2EEE7;
  /* テキスト */
  --textColor:#000;
  --textAccentColor:#746541;
  /* リンク */
  --linkColor:#746541;
  --linkHoverColor:var(--accentColor);
  --linkHoverBgColor:#69B6DE;
  /* ハイライト色 */
  --color-highlight:#151515;
  --color-highlight-link:#00b9b3;
  --color-highlight-hover:#00fff7;
  /* リンクボタン */
  /* ローダー */
  --loaderBgColor:var(--subColor);
  --loaderColor:rgba(168,157,131,0.8);
  --loaderActiveColor:rgba(168,157,131,0.2);
  /* ヘッダー */
  --headerBgColor:var(--whiteColor);
  /* ナビゲーション */
  --navBgColor:var(--subColor);
  --sideNavColor:var(--mainColor);
  --sideNavHoverColor:var(--linkHoverBgColor);
  --navBtnBgColor:var(--whiteColor);
  --navBtnColor:var(--mainColor);
  --navBtnHoverColor:var(--linkHoverColor);
  /* フッター */
  --footerBgColor:var(--subColor);
  /* ハンバーガー */
  /* アイコン */
  /* ボーダー */
  --bordercolor-primary:var(--beigeColor);
  /* テーブル */
  --bordercolor-table: #ccc;
  --bgcolor-table: #eee;
  /*--------------------------------
  	アニメーション設定
  --------------------------------*/
  --animationSpeed:0.4s;
  /*--------------------------------
  	共通間隔設定
  --------------------------------*/
  --spMargin:6rem;
  --pcMargin:10rem;
  /*--------------------------------
  	フォント指定
  --------------------------------*/
  --fontFamily:"yu-mincho-pr6n","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
  --fontSerif:"Times New Roman","yu-mincho-pr6n","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
  --fontTitle:"yu-mincho-pr6n","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
}

/*--------------------------------
	基本
--------------------------------*/
body {
  line-height: 1.8;
  color: var(--textColor);
  font-family: var(--fontFamily);
  font-size: min(1.6rem, 16px);
  text-align: justify;
  letter-spacing: 0.06em;
  background-color: var(--baseColor);
}
@media print, screen and (max-width: 812px) {
  body {
    font-size: min(1.5rem, 15px);
  }
}
/*--------------------------------
    ページ遷移のトランジション + ローディング
--------------------------------*/
body #loader-wrapper {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 99999;
  background-color: var(--loaderBgColor);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.8s ease;
  transition: opacity 0.8s ease;
  will-change: opacity;
}
body #loader-wrapper #loader {
  position: absolute;
  top: calc(50% - 22px);
  left: calc(50% - 22px);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  border-top: 3px solid var(--loaderColor);
  border-right: 3px solid var(--loaderColor);
  border-bottom: 3px solid var(--loaderColor);
  border-left: 3px solid var(--loaderActiveColor);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: loader 1.1s infinite linear;
  animation: loader 1.1s infinite linear;
}
body.transition #loader-wrapper {
  opacity: 1;
}

@-webkit-keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*============================================================

    LINK

============================================================*/
/*--------------------------------
    リンク基本スタイル
--------------------------------*/
a:link, a:visited {
  color: var(--linkColor);
  text-decoration: none;
}
a svg {
  fill: var(--linkColor);
}
@media print, screen and (min-width: 813px) {
  a:hover, a:active {
    color: var(--linkHoverColor);
    text-decoration: none;
  }
  a:hover svg {
    fill: var(--linkHoverColor);
  }
}

/*--------------------------------
	SNSアイコン
--------------------------------*/
a svg.icon_sns_insta {
  max-width: 28px;
  max-height: 28px;
}
a svg.icon_sns_line {
  max-width: 28px;
  max-height: 28px;
  fill: #00B900;
}
a svg.icon_sns_youtube {
  max-width: 94px;
  max-height: 21px;
}
/*--------------------------------
	リンクテキスト
--------------------------------*/
.link_txt a {
  color: var(--linkColor);
}
.link_txt a svg {
  fill: var(--linkColor);
  vertical-align: calc(0.5rem - 2px);
  margin-left: 0.5rem;
}
.link_txt a svg.arrow_line_right {
  width: 17px;
  height: 5px;
}
@media print, screen and (min-width: 813px) {
  .link_txt a:hover {
    color: var(--linkHoverColor);
  }
  .link_txt a:hover svg {
    fill: var(--linkHoverColor);
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
}

/*--------------------------------
	リンクボタン
--------------------------------*/
.link_btn {
  margin-top: 3rem;
}
.link_btn > span {
  color: var(--linkColor);
}
.link_btn > a, .link_btn > span {
  display: inline-block;
  min-width: 320px;
  line-height: 1;
  padding-bottom: 1.6rem;
  position: relative;
}
.link_btn > a:before, .link_btn > a:after, .link_btn > span:before, .link_btn > span:after {
  display: block;
  content: "";
  height: 1px;
  position: absolute;
  bottom: 0;
  background-color: var(--mainColor);
}
.link_btn > a:before, .link_btn > span:before {
  width: 100%;
  left: 0;
}
.link_btn > a:after, .link_btn > span:after {
  width: 10px;
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
  transform-origin: calc(100% - 0.5px) 50%;
}
@media print, screen and (max-width: 812px) {
  .link_btn {
    text-align: center;
  }
  .link_btn > a, .link_btn > span {
    min-width: 280px;
  }
}
@media print, screen and (min-width: 813px) {
  .link_btn > a:before, .link_btn > a:after {
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  .link_btn > a:hover:before, .link_btn > a:hover:after {
    background-color: var(--linkHoverColor);
  }
  .link_btn > a:hover:before {
    left: 3px;
  }
  .link_btn > a:hover:after {
    right: -3px;
  }
}

/*--------------------------------
	リンクボタン - 大
--------------------------------*/
.link_box a {
  display: block;
  line-height: 1.6;
  color: var(--whiteColor);
  font-size: 2rem;
  text-align: center;
  padding: 3.5rem 2rem;
  border-radius: 4px;
  background-color: var(--mainColor);
}
.link_box a span {
  display: block;
  font-size: 1.2rem;
  letter-spacing: normal;
  opacity: 0.8;
}
.link_box a svg {
  width: 100px;
  height: 8px;
  fill: var(--whiteColor);
  position: absolute;
  top: calc(50% - 4px);
  right: 2rem;
}
.link_box[data-link=play] a svg {
  width: 40px;
  height: 40px;
  top: calc(50% - 20px);
}
@media print, screen and (max-width: 812px) {
  .link_box a {
    font-size: 1.8rem;
    padding: 2.5rem 1.5rem calc(2.5rem - 8px);
  }
  .link_box a span {
    font-size: 1.1rem;
  }
  .link_box a svg {
    margin-top: 0.5rem;
    position: static;
  }
  .link_box[data-link=play] a svg {
    width: 30px;
    height: 30px;
    margin-top: 0;
    position: absolute;
    top: calc(50% - 15px);
  }
}
@media print, screen and (min-width: 813px) {
  .link_box a:hover {
    color: var(--whiteColor);
    background-color: var(--linkHoverBgColor);
  }
  .link_box a:hover svg {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
  .link_box a:hover svg.icon_play {
    -webkit-transform: none;
    transform: none;
  }
}

/*============================================================

    LAYOUT

============================================================*/
/*--------------------------------
	MAIN
--------------------------------*/
body.blog main, body.contact main {
  padding-top: var(--pcHeaderHeight);
}
body.blog main #mainvisual, body.contact main #mainvisual {
  padding-top: 7rem;
}
body.blog main #mainvisual.second_title, body.contact main #mainvisual.second_title {
  height: auto;
}
body.blog main #mainvisual.second_title > *, body.contact main #mainvisual.second_title > * {
  position: static;
  -webkit-transform: none;
  transform: none;
}
body.blog main #mainvisual.second_title > * img, body.contact main #mainvisual.second_title > * img {
  width: 15rem;
  max-width: 160px;
  margin-bottom: 1.2rem;
}
body.blog main #mainvisual.second_title p, body.contact main #mainvisual.second_title p {
  margin-top: 3rem;
}
main p, main ol, main ul, main dl {
  margin-bottom: 1.6rem;
}
main picture {
  display: block;
}
main section > *:last-child, main div > *:last-child, main article > *:last-child, main ul > *:last-child, main ol > *:last-child, main dl > *:last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 812px) {
  body.blog main, body.contact main {
    padding-top: var(--spHeaderHeight);
  }
  body.blog main #mainvisual, body.contact main #mainvisual {
    padding-top: 5rem;
  }
  body.blog main #mainvisual.second_title > * img, body.contact main #mainvisual.second_title > * img {
    width: 12rem;
    max-width: 120px;
    margin-bottom: 0;
  }
  main p, main ol, main ul, main dl {
    margin-bottom: 1.6rem;
  }
}
/*--------------------------------
    汎用コンテナ
--------------------------------*/
.container {
  max-width: var(--siteWidth);
  min-width: 990px;
  margin: 0 auto;
  padding-left: 3%;
  padding-right: 3%;
}
.container.wide {
  max-width: none;
  min-width: 0;
  padding-left: 0;
  padding-right: 0;
}
.container .wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media print, screen and (max-width: 812px) {
  .container {
    max-width: none;
    min-width: 0;
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media only screen and (max-width: 990px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 1280px) {
  .container {
    padding-left: 38px;
    padding-right: 38px;
  }
}

/*--------------------------------
	汎用wrap
--------------------------------*/
.wrap {
  width: 100%;
  max-width: 900px;
  padding-left: 3%;
  padding-right: 3%;
  margin: 0 auto;
}
@media print, screen and (max-width: 812px) {
  .wrap {
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media only screen and (max-width: 990px) {
  .wrap {
    max-width: 960px;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 1280px) {
  .wrap {
    padding-left: 38px;
    padding-right: 38px;
  }
}

/*--------------------------------
	汎用インナー
--------------------------------*/
.inner {
  margin: 0 auto;
  padding-left: 3%;
  padding-right: 3%;
}
@media print, screen and (max-width: 812px) {
  .inner {
    padding-left: 5%;
    padding-right: 5%;
  }
}

/*--------------------------------
	汎用ボックス
--------------------------------*/
.box {
  margin: 0 auto 3em;
}
.box:last-child {
  margin: 0 auto;
}
/*============================================================

    HEADER

============================================================*/
header {
  /*--------------------------------
      基本設定
  --------------------------------*/
  /*--------------------------------
  	ロゴマーク
  --------------------------------*/
  /*--------------------------------
  	blog ロゴマーク
  --------------------------------*/
  /*--------------------------------
  	header_nav
  --------------------------------*/
  /*--------------------------------
  	ハンバーガーボタン
  --------------------------------*/
  /*--------------------------------
  	header挙動
  --------------------------------*/
}
header {
  display: block;
  width: 100%;
  height: var(--pcHeaderHeight);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9990;
}
header .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: none;
  min-width: initial;
  height: 100%;
  padding-top: 0;
  padding-right: calc(100px + 1rem);
  padding-bottom: 0;
}
@media print, screen and (max-width: 812px) {
  header {
    height: var(--spHeaderHeight);
  }
  header .container {
    padding-right: calc(var(--spHeaderHeight) + 15px);
    padding-left: 10px;
  }
}
@media only screen and (min-width: 1280px) {
  header .container {
    padding-right: calc(100px + min(3rem, 40px));
  }
}
header #header_logo {
  width: 260px;
  margin: 0 20px 0 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  position: relative;
  z-index: 10001;
}
header #header_logo img {
  width: 100%;
  height: auto;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
@media print, screen and (max-width: 812px) {
  header #header_logo {
    width: 148px;
    margin: 0 6px 0 0;
  }
}
@media print, screen and (min-width: 813px) {
  header #header_logo a img {
    -webkit-transition: -webkit-filter var(--animationSpeed);
    transition: -webkit-filter var(--animationSpeed);
    transition: filter var(--animationSpeed);
    transition: filter var(--animationSpeed), -webkit-filter var(--animationSpeed);
  }
  header #header_logo a:hover img {
    -webkit-filter: none;
    filter: none;
  }
}
header #blog_logo {
  z-index: 10001;
  -webkit-transition: opacity var(--animationSpeed);
  transition: opacity var(--animationSpeed);
  will-change: opacity;
}
header #header_nav {
  width: calc(100% - 280px);
}
@media print, screen and (max-width: 812px) {
  header #header_nav {
    display: none;
  }
}
header #nav_btnwrapper {
  width: 100px;
}
@media print, screen and (max-width: 812px) {
  header #nav_btnwrapper {
    width: 70px;
  }
}
header {
  -webkit-transition: var(--animationSpeed);
  transition: var(--animationSpeed);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
header.hide {
  -webkit-transform: translate(0, -100%);
  transform: translate(0, -100%);
}
header.show {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
body.nav-show header.hide {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
header.on {
  background-color: var(--headerBgColor);
}
body.no_mainvisual header #header_logo img, header.on #header_logo img, body.blog header #header_logo img {
  -webkit-filter: none;
  filter: none;
}
body.nav-show header #header_nav ul li#header_nav_new a, header.on #header_nav ul li#header_nav_new a, body.no_mainvisual header #header_nav ul li#header_nav_new a {
  color: var(--linkColor) !important;
}
body.nav-show header #header_nav ul li#header_nav_new a svg, header.on #header_nav ul li#header_nav_new a svg, body.no_mainvisual header #header_nav ul li#header_nav_new a svg {
  fill: var(--linkColor) !important;
}
@media print, screen and (max-width: 812px) {
  header #header_logo {
    -webkit-transition: opacity var(--animationSpeed);
    transition: opacity var(--animationSpeed);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: opacity;
  }
  header #nav_btnwrapper {
    -webkit-transition: background-color var(--animationSpeed);
    transition: background-color var(--animationSpeed);
  }
  header #nav_btnwrapper #nav_btn #nav_btn_icon, header #nav_btnwrapper #nav_btn:before, header #nav_btnwrapper #nav_btn:after {
    background-color: var(--whiteColor);
  }
  header.hide #nav_btnwrapper #nav_btn #nav_btn_icon, header.hide #nav_btnwrapper #nav_btn:before, header.hide #nav_btnwrapper #nav_btn:after, header.on #nav_btnwrapper #nav_btn #nav_btn_icon, header.on #nav_btnwrapper #nav_btn:before, header.on #nav_btnwrapper #nav_btn:after, body.no_mainvisual header #nav_btnwrapper #nav_btn #nav_btn_icon, body.no_mainvisual header #nav_btnwrapper #nav_btn:before, body.no_mainvisual header #nav_btnwrapper #nav_btn:after, body.blog header #nav_btnwrapper #nav_btn #nav_btn_icon, body.blog header #nav_btnwrapper #nav_btn:before, body.blog header #nav_btnwrapper #nav_btn:after {
    background-color: var(--navBtnColor);
  }
  header.hide {
    -webkit-transform: none;
    transform: none;
  }
  header.hide #header_logo, header.hide #blog_logo, header.hide #header_nav_en_sp {
    opacity: 1;
    pointer-events: auto;
  }
  header.hide #header_logo a, header.hide #blog_logo a {
    pointer-events: auto;
  }
  header.hide #nav_btnwrapper {
    background-color: var(--navBtnBgColor);
  }
  body.nav-show header #header_logo, body.nav-show header #blog_logo, body.nav-show header #header_nav_en_sp {
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  body.nav-show header #header_logo a, body.nav-show header #blog_logo a {
    pointer-events: auto !important;
  }
  body.nav-show header #header_logo img, body.nav-show header #blog_logo img {
    -webkit-filter: none !important;
    filter: none !important;
  }
  body.nav-show header #nav_btnwrapper {
    background-color: transparent !important;
  }
  body.nav-show header #nav_btnwrapper #nav_btn:before, body.nav-show header #nav_btnwrapper #nav_btn:after {
    background-color: var(--navBtnColor);
  }
  body.nav-show header #nav_btnwrapper #nav_btn #nav_btn_icon, body.nav-show header.hide #nav_btnwrapper #nav_btn #nav_btn_icon, header.no_mainvisual #nav_btnwrapper #nav_btn #nav_btn_icon, body.nav-show.blog header #nav_btnwrapper #nav_btn #nav_btn_icon {
    background-color: transparent;
  }
  body.nav-show header #nav_btnwrapper #nav_btn:before, body.nav-show header #nav_btnwrapper #nav_btn:after, body.nav-show header.hide #nav_btnwrapper #nav_btn:before, body.nav-show header.hide #nav_btnwrapper #nav_btn:after, header.no_mainvisual #nav_btnwrapper #nav_btn:before, header.no_mainvisual #nav_btnwrapper #nav_btn:after, body.nav-show.blog header #nav_btnwrapper #nav_btn:before, body.nav-show.blog header #nav_btnwrapper #nav_btn:after {
    background-color: var(--navBtnColor);
  }
}
@media print, screen and (min-width: 813px) {
  body.nav-show header #header_nav ul li#header_nav_new a:hover, header.on #header_nav ul li#header_nav_new a:hover, body.no_mainvisual header #header_nav ul li#header_nav_new a:hover {
    color: var(--linkHoverColor) !important;
  }
  body.nav-show header #header_nav ul li#header_nav_new a:hover svg, header.on #header_nav ul li#header_nav_new a:hover svg, body.no_mainvisual header #header_nav ul li#header_nav_new a:hover svg {
    fill: var(--linkHoverColor) !important;
  }
}

/*--------------------------------
	header_nav
--------------------------------*/
#header_nav {
  position: relative;
  z-index: 1000;
}
#header_nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
#header_nav ul li {
  margin-right: 1rem;
}
#header_nav ul li:last-child {
  margin-right: 0;
}
#header_nav ul li#header_nav_new {
  margin-right: 2rem;
}
#header_nav ul li#header_nav_new a {
  color: var(--whiteColor);
}
#header_nav ul li#header_nav_new a svg {
  fill: var(--whiteColor);
  margin-left: 0;
  margin-right: 0.5rem;
}
#header_nav ul li#header_nav_reserve, #header_nav ul li#header_nav_contact {
    width: 18%;
    min-width: 100px;
    max-width: 220px;
    margin-right: 2.4rem;
}
#header_nav ul li#header_nav_reserve a, #header_nav ul li#header_nav_contact a {
  display: block;
  line-height: 1.2;
  color: var(--whiteColor);
  font-size: min(1.4rem, 16px);
  text-align: center;
  padding: 0.7rem;
  border-radius: 4px;
  background-color: var(--mainColor);
}
#header_nav ul li#header_nav_reserve a span, #header_nav ul li#header_nav_contact a span {
  display: block;
  font-size: 0.9rem;
  letter-spacing: normal;
  opacity: 0.8;
}
@media print, screen and (min-width: 813px) {
  #header_nav ul li#header_nav_new a:hover {
    color: var(--linkHoverColor);
  }
  #header_nav ul li#header_nav_new a:hover svg {
    fill: var(--linkHoverColor);
  }
  #header_nav ul li#header_nav_reserve a:hover, #header_nav ul li#header_nav_contact a:hover {
    color: var(--whiteColor);
    background-color: var(--linkHoverBgColor);
  }
}

/*--------------------------------
	ナビゲーション
--------------------------------*/
#navigation {
  width: 54%;
  height: 100vh;
  height: 100dvh;
  padding-top: var(--pcHeaderHeight);
  background-color: var(--navBgColor);
  position: fixed;
  top: 0;
  left: -116px;
  z-index: 999;
}
#navigation .nav_cnt {
  height: 100%;
  padding: 4vh 14%;
  overflow-y: auto;
}
#navigation .nav_cnt > div > * {
  margin-bottom: 3em;
}
#navigation .nav_cnt > div > *:last-child {
  margin-bottom: 0;
}
#navigation .nav_cnt .nav_main li {
  margin-bottom: 1.4vh;
}
#navigation .nav_cnt .nav_main li:last-child {
  margin-bottom: 0;
}
#navigation .nav_cnt .nav_main li a {
  color: var(--blackColor);
  font-size: 1.8rem;
}
#navigation .nav_cnt .nav_main li a.active {
  color: var(--textAccentColor) !important;
  padding-bottom: 0.5rem;
  border-bottom: solid 1px var(--textAccentColor);
}
#navigation .nav_cnt .nav_main li.has-sub > span {
  color: var(--blackColor);
  font-size: 1.8rem;
  display: block;
  cursor: default;
}
#navigation .nav_cnt .nav_main .nav_sub {
  margin-top: 0.8em;
  padding-left: 0;
  list-style: none;
}
#navigation .nav_cnt .nav_main .nav_sub li {
  margin-bottom: 0.8em;
}
#navigation .nav_cnt .nav_main .nav_sub li:last-child {
  margin-bottom: 0;
}
#navigation .nav_cnt .nav_main .nav_sub li a {
  position: relative;
  color: var(--blackColor);
  font-size: 1.4rem;
  padding-left: 30px;
}
#navigation .nav_cnt .nav_main .nav_sub li a::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 1px;
  background-color: #A89D83;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(50%);
}
#navigation .nav_cnt .nav_info {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 2rem 0;
  border-style: solid;
  border-color: var(--beigeColor);
  border-width: 1px 0;
}
#navigation .nav_cnt .nav_info > div dt {
  font-size: 0.9rem;
}
#navigation .nav_cnt .nav_info > div dd {
  font-size: 2.4rem;
}
#navigation .nav_cnt .nav_info > div dd span {
  font-size: 1.1rem;
}
#navigation .nav_cnt .nav_banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em 4%;
}
#navigation .nav_cnt .nav_policy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em 4%;
  justify-content: space-evenly;
}

@media print, screen and (max-width: 812px) {
  #navigation {
    width: 100%;
    height: 100vh !important;
    height: 100dvh !important;
    padding-top: var(--spHeaderHeight);
    padding-bottom: 103px;
    left: 0;
  }
  #navigation .nav_cnt > div > * {
    margin-bottom: 2.5em;
  }
  #navigation .nav_cnt > div > *:last-child {
    margin-bottom: 0;
  }
  #navigation .nav_cnt .nav_info {
    display: none;
  }
  #navigation #nav_bg {
    display: none;
  }
  #navigation .nav_cnt .nav_policy li {
    font-size: 1rem;
    text-align: center;
  }
}
@media print, screen and (min-width: 813px) {
  #navigation .nav_cnt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  #navigation .nav_cnt > * {
    width: 100%;
  }
  #navigation .nav_cnt .nav_main li a:hover, #navigation .nav_cnt .nav_main li a:active {
    color: var(--linkHoverColor);
  }
  #navigation .nav_cnt .nav_main .nav_sub li a:hover, #navigation .nav_cnt .nav_main .nav_sub li a:active {
    color: var(--linkHoverColor);
  }
  #navigation .nav_cnt .nav_banner li {
    overflow: hidden;
    width: 48%;
  }
  #navigation .nav_cnt .nav_banner li {
    overflow: hidden;
    width: 48%;
    text-align: center;
  }

  #navigation .nav_cnt .nav_banner li a img {
    width: 100%;
    -webkit-transition: -webkit-filter var(--animationSpeed);
    transition: -webkit-filter var(--animationSpeed);
    transition: filter var(--animationSpeed);
    transition: filter var(--animationSpeed), -webkit-filter var(--animationSpeed);
  }
  #navigation .nav_cnt .nav_banner li a:hover img, #navigation .nav_cnt .nav_banner li a:active img {
    -webkit-filter: brightness(105%);
    filter: brightness(105%);
  }
}
@media print, screen and (min-width: 1200px) {
  #navigation .nav_cnt {
    padding: 4vh 12.5%;
  }
  #navigation .nav_cnt .nav_banner {
    -webkit-column-gap: 2%;
    -moz-column-gap: 2%;
    column-gap: 2%;
    justify-content: space-evenly;
  }
  #navigation .nav_cnt .nav_policy {
    -webkit-column-gap: 2%;
    -moz-column-gap: 2%;
    column-gap: 2%;
    justify-content: space-evenly;
  }

  #navigation .nav_cnt .nav_banner li {
    width: 32%;
  }
  #navigation .nav_cnt .nav_policy li {
    width: 32%;
    text-align: center;
  }

}

/*--------------------------------
	サイドナビゲーション
--------------------------------*/
#side_navigation {
  position: fixed;
  z-index: 10000;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#side_navigation ul li {
  width: 220px;
  margin-bottom: 1px;
}
#side_navigation ul li:last-child {
  margin-bottom: 0;
}
#side_navigation ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--whiteColor);
  font-size: 1.5rem;
  background-color: var(--sideNavColor);
}
#side_navigation ul li a i {
  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;
}
#side_navigation ul li a i svg {
  width: 100%;
  height: 100%;
  fill: var(--whiteColor);
}
#side_navigation ul li a i svg.icon_bell {
  max-width: 24px;
  max-height: 24px;
}
#side_navigation ul li a i svg.icon_calendar {
  max-width: 20px;
  max-height: 18px;
}
#side_navigation ul li a i svg.icon_tel {
  max-width: 23px;
  max-height: 23px;
}
#side_navigation ul li a i svg.icon_reserve {
  max-width: 22px;
  max-height: 20px;
}
#side_navigation ul li a i svg.icon_mail {
  max-width: 22px;
  max-height: 17px;
}
#side_navigation ul li a i svg.icon_pin {
  max-width: 20px;
  max-height: 24px;
}
#side_navigation ul li a span {
  line-height: 1;
}
@media print, screen and (max-width: 812px) {
  #side_navigation {
    top: auto;
    bottom: 0;
    right: 0;
    -webkit-transform: none;
    transform: none;
  }
  #side_navigation ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1px;
    background-color: var(--whiteColor);
  }
  #side_navigation ul li {
    width: calc(50% - 1px);
  }
  #side_navigation ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--whiteColor);
    font-size: 1.5rem;
  }
  #side_navigation ul li a span {
    display: block;
    width: calc(100% - 50px);
    font-size: 1.3rem;
    text-align: center;
    padding-right: 25px;
  }
  #side_navigation ul li a i {
    width: 50px;
    height: 50px;
  }
  #side_navigation ul li.campaign, #side_navigation ul li.calendar {
    display: none;
  }
  #side_navigation {
    opacity: 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #side_navigation, #side_navigation.show, #side_navigation.up {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
}
@media print, screen and (min-width: 813px) {
  #side_navigation {
    right: 0;
    top: 50%;
  }
  #side_navigation ul li a:hover {
    background-color: var(--sideNavHoverColor);
  }
  #side_navigation ul li a i {
    width: 6rem;
    height: 6rem;
    max-width: 60px;
    max-height: 60px;
  }
  #side_navigation ul li a i svg {
    width: 40%;
    height: 40%;
  }
  #side_navigation ul li.tel {
    display: block;
  }
  header.hide:not(.show) + #side_navigation {
    right: 0;
  }
}
@media only screen and (min-width: 1280px) {
  header.hide:not(.show) + #side_navigation {
    right: 0;
  }
}

/*--------------------------------
	ハンバーガーメニュー
--------------------------------*/
#nav_btnwrapper {
  height: var(--pcHeaderHeight);
  padding: 35px 20px;
  background-color: transparent;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10001;
  cursor: pointer;
}
#nav_btnwrapper #nav_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -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%;
  position: relative;
}
#nav_btnwrapper #nav_btn #nav_btn_icon, #nav_btnwrapper #nav_btn:before, #nav_btnwrapper #nav_btn:after {
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--navBtnColor);
  position: absolute;
  left: 0;
}
#nav_btnwrapper #nav_btn #nav_btn_icon {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
#nav_btnwrapper #nav_btn:before, #nav_btnwrapper #nav_btn:after {
  content: "";
  -webkit-transition: background-color 0.3s, -webkit-transform 0.3s;
  transition: background-color 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, background-color 0.3s;
  transition: transform 0.3s, background-color 0.3s, -webkit-transform 0.3s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
#nav_btnwrapper #nav_btn:before {
  top: 0;
}
#nav_btnwrapper #nav_btn:after {
  bottom: 0;
}
body.nav-show #nav_btnwrapper #nav_btn #nav_btn_icon {
  background-color: transparent;
}
body.nav-show #nav_btnwrapper #nav_btn:before {
  top: 50%;
  -webkit-transform: rotate(-32deg);
  transform: rotate(-32deg);
}
body.nav-show #nav_btnwrapper #nav_btn:after {
  top: 50%;
  bottom: auto;
  -webkit-transform: rotate(32deg);
  transform: rotate(32deg);
}
@media print, screen and (max-width: 812px) {
  #nav_btnwrapper {
    height: var(--spHeaderHeight);
    padding: 6% 4%;
    padding: 22px 15px;
  }
  #nav_btnwrapper #nav_btn #nav_btn_icon, #nav_btnwrapper #nav_btn:before, #nav_btnwrapper #nav_btn:after {
    height: 1px;
    background-color: var(--navBtnColor);
  }
}
@media print, screen and (min-width: 813px) {
  #nav_btnwrapper:hover #nav_btn #nav_btn_icon, #nav_btnwrapper:hover #nav_btn:before, #nav_btnwrapper:hover #nav_btn:after {
    background-color: var(--navBtnHoverColor);
  }
  body.nav-show #nav_btnwrapper:hover #nav_btn #nav_btn_icon {
    background-color: transparent;
  }
}

/*--------------------------------
ナビゲーション表示スタイル
--------------------------------*/
#navigation[data-sp-nav-type], #navigation[data-pc-nav-type] {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: opacity, transform;
}
@media print, screen and (max-width: 812px) {
  #navigation[data-sp-nav-type=modal] {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-sp-nav-type=modal] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  #navigation[data-sp-nav-type=slideDown] {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-sp-nav-type=slideDown] {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  #navigation[data-sp-nav-type=slideRight] {
    height: calc(100% - var(--spHeaderHeight));
    height: calc(100dvh - var(--spHeaderHeight));
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-sp-nav-type=slideRight] {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  #navigation[data-sp-nav-type=slideLeft] {
    height: calc(100% - var(--spHeaderHeight));
    height: calc(100dvh - var(--spHeaderHeight));
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-sp-nav-type=slideLeft] {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@media print, screen and (min-width: 813px) {
  #navigation[data-pc-nav-type=modal] {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-pc-nav-type=modal] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  #navigation[data-pc-nav-type=slideDown] {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-pc-nav-type=slideDown] {
    visibility: visible;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  #navigation[data-pc-nav-type=slideRight] {
    -webkit-transform: translate3d(200%, 0, 0);
    transform: translate3d(200%, 0, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-pc-nav-type=slideRight] {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  #navigation[data-pc-nav-type=slideLeft] {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    -webkit-transition: var(--animationSpeed);
    transition: var(--animationSpeed);
  }
  body.nav-show #navigation[data-pc-nav-type=slideLeft] {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

/*--------------------------------
	nav表示時の透過背景
--------------------------------*/
body main, body .parallax-mirror {
  -webkit-transition: -webkit-filter var(--animationSpeed) ease 0s;
  transition: -webkit-filter var(--animationSpeed) ease 0s;
  transition: filter var(--animationSpeed) ease 0s;
  transition: filter var(--animationSpeed) ease 0s, -webkit-filter var(--animationSpeed) ease 0s;
}
body #navigation_bg {
  visibility: hidden;
  opacity: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  background-color: #463D2A;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
  -webkit-transition: opacity var(--animationSpeed) ease 0s;
  transition: opacity var(--animationSpeed) ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: opacity;
}
body.nav-show main, body.nav-show .parallax-mirror {
  -webkit-filter: blur(10px);
  filter: blur(10px);
}
body.nav-show #navigation_bg {
  visibility: visible;
  opacity: 0.16;
  cursor: pointer;
}
@media print, screen and (max-width: 812px) {
  body main, body .parallax-mirror {
    -webkit-transition: none;
    transition: none;
  }
  body #navigation_bg {
    display: none;
  }
  body.nav-show main {
    -webkit-filter: none;
    filter: none;
  }
}
/*--------------------------------
	nav スクロール禁止
--------------------------------*/
body.nav-show {
  overflow: hidden;
  height: 100%;
}
/*--------------------------------
	ナビゲーション animation
--------------------------------*/
#navigation {
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
#navigation .nav_cnt > div .io:not(.order), #navigation .nav_cnt > div .io.order > * {
  -webkit-transition-duration: 0.6s, 0.6s, 0.6s;
  transition-duration: 0.6s, 0.6s, 0.6s;
}
#navigation .nav_cnt > div .io.order > * {
  -webkit-transition-delay: initial;
  transition-delay: initial;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(1) {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(2) {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(3) {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(4) {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(5) {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(6) {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(7) {
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(8) {
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(9) {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
#navigation .nav_cnt > div .io.move.nav_main li:nth-child(10) {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
#navigation .nav_cnt > div .io.move.nav_main .nav_sub li {
  -webkit-transition-delay: initial;
  transition-delay: initial;
}
#navigation .nav_cnt > div .io.move.nav_info {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
#navigation .nav_cnt > div .io.move.nav_banner {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
#navigation .nav_cnt > div .io.move.nav_policy {
  -webkit-transition-delay: 1s;
  transition-delay: 1.1s;
}
#navigation .nav_cnt > div .io.move.nav_sns {
  -webkit-transition-delay: 1.1s;
  transition-delay: 1.2s;
}
/*============================================================

    FOOTER

============================================================*/
footer {
  /*--------------------------------
  	基本設定
  --------------------------------*/
  /*--------------------------------
  	情報コンテンツ
  --------------------------------*/
  /*--------------------------------
  	footerリンク
  --------------------------------*/
  /*--------------------------------
  	footerボタン
  --------------------------------*/
  /*--------------------------------
  	copyright
  --------------------------------*/
}
footer {
  position: relative;
  background-color: var(--footerBgColor);
}
footer .container {
  padding-bottom: 50px;
}
@media print, screen and (max-width: 812px) {
  footer .container {
    display: block;
    padding-top: 30px;
    padding-bottom: 140px;
  }
}
@media print, screen and (min-width: 813px) {
  footer .container {
    padding-top: 80px;
  }
}
footer .footer_inner {
  margin-bottom: 4rem;
}
footer .footer_inner > * {
  margin-bottom: 3rem;
}
footer .footer_inner > *:last-child {
  margin-bottom: 0;
}
footer .footer_inner #footer_logo img {
  display: inline;
}
footer .footer_inner .footer_access .link_txt {
  margin-top: 1rem;
}
footer .footer_inner .footer_access .link_txt a {
  font-size: 1.4rem;
}
@media print, screen and (max-width: 812px) {
  footer .footer_inner .footer_access .googlemap {
    height: 194px;
    position: relative;
  }
  footer .footer_inner .footer_access .googlemap iframe {
    height: 554px;
    margin-top: -170px;
  }
  footer .footer_inner .footer_sns {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media print, screen and (min-width: 813px) {
  footer .footer_inner {
    padding-right: 40%;
    position: relative;
  }
  footer .footer_inner .footer_info dd a:hover {
    color: var(--linkHoverColor);
  }
  footer .footer_inner .footer_access {
    width: 40%;
    height: 100%;
    margin-bottom: 0;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  footer .footer_inner .footer_access .googlemap {
    height: calc(100% - 3.52rem);
  }
  footer .footer_inner .footer_access .googlemap iframe {
    height: calc(100% + 320px);
    margin-top: -170px;
  }
  footer .footer_inner .footer_access .link_txt {
    text-align: right;
  }
}
footer .footer_link {
  margin-bottom: 4rem;
  align-items: stretch;
}
footer .footer_link > li {
  border-right: solid 1px var(--mainColor);
  display: flex;
  flex-direction: column;
}
footer .footer_link > li:first-child {
  border-left: solid 1px var(--mainColor);
}
footer .footer_link > li > a,
footer .footer_link > li > .footer_link_head {
  display: block;
  text-align: center;
  padding: 2rem 1rem .5rem;
}
footer .footer_link > li > a {
  flex: 1;
}
footer .footer_link > li > a i,
footer .footer_link > li > .footer_link_head i {
  display: block;
  margin-bottom: 0.7rem;
}
footer .footer_link > li > a i svg,
footer .footer_link > li > .footer_link_head i svg {
  width: 100%;
  height: 100%;
  fill: var(--linkColor);
}
footer .footer_link > li > a span{
  display: inline-block;
  margin-top: 1rem;
}
footer .footer_link > li > a i svg.icon_beginner {
  max-width: 24px;
  max-height: 36px;
}
footer .footer_link > li > a i svg.icon_guide {
  max-width: 36px;
  max-height: 39px;
}
footer .footer_link > li > a i svg.icon_speechballoon {
  max-width: 34px;
  max-height: 34px;
}
footer .footer_link > li > a i svg.icon_pin {
  max-width: 28px;
  max-height: 34px;
}
footer .footer_link > li > a i svg.icon_recruit {
  max-width: 30px;
  max-height: 30px;
}
footer .footer_link > li > .footer_link_head i svg.icon_doctor {
  max-width: 36px;
  max-height: 36px;
}
footer .footer_link > li > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
footer .footer_link > li > ul.footer_doctor_list {
  align-self: center;
  line-height: 1.5;
}
footer .footer_link > li > ul > li {
  border: none;
}
footer .footer_link > li > .footer_link_head {
  color: var(--linkColor);
}
footer .footer_link > li > ul.footer_doctor_list > li > a {
  display: inline-block;
  padding: 0.1rem 10px;
  font-size: 1.2rem;
  color: var(--linkColor);
  text-decoration: none;
}
footer .footer_link > li > ul.footer_doctor_list > li > a::after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 7px;
  background: url('/assets/images/icon_footer_arrow.svg') center / contain no-repeat;
  margin-left: 0.3rem;
  vertical-align: middle;
}
@media print, screen and (min-width: 813px) {
  footer .footer_link > li > ul.footer_doctor_list > li > a:hover {
    color: var(--linkHoverColor);
  }
}
@media print, screen and (max-width: 812px) {
  footer .footer_link {
    display: none;
  }
  footer .footer_link.column {
    gap: 0;
  }
  footer .footer_link.column > * {
    width: 50%;
  }
}
@media print, screen and (min-width: 813px) {
  footer .footer_link.column {
    gap: 0;
  }
  footer .footer_link.column[data-pc-col="6"] > * {
    width: calc(100% / 6);
  }
}
footer .footer_btn {
  margin-bottom: 3rem;
}
footer .footer_btn li {
  width: 49.5%;
}
footer .footer_btn li a {
  padding: 5rem 2rem;
}
@media print, screen and (max-width: 812px) {
  footer .footer_btn {
    display: none;
  }
}
footer .footer_copyright {
  font-size: 1.2rem;
  font-size: clamp(11px, 1rem, 12px);
}
@media print, screen and (max-width: 812px) {
  footer .footer_copyright {
    text-align: center;
  }
}
/*============================================================

    COMMON

============================================================*/
/*--------------------------------
	コンテンツ間隔
--------------------------------*/
*[data-padding*=vertical] {
  padding-top: var(--pcMargin);
  padding-bottom: var(--pcMargin);
}
*[data-padding*=top] {
  padding-top: var(--pcMargin);
}
*[data-padding*=bottom] {
  padding-bottom: var(--pcMargin);
}
*[data-margin*=vertical] {
  margin-top: var(--pcMargin);
  margin-bottom: var(--pcMargin);
}
*[data-margin*=top] {
  margin-top: var(--pcMargin);
}
*[data-margin*=bottom] {
  margin-bottom: var(--pcMargin);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=vertical], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=vertical] {
  padding-top: calc(var(--pcMargin) / 1);
  padding-bottom: calc(var(--pcMargin) / 1);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=top], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=top] {
  padding-top: calc(var(--pcMargin) / 1);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=bottom], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=bottom] {
  padding-bottom: calc(var(--pcMargin) / 1);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=vertical], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=vertical] {
  margin-top: calc(var(--pcMargin) / 1);
  margin-bottom: calc(var(--pcMargin) / 1);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=top], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=top] {
  margin-top: calc(var(--pcMargin) / 1);
}
*[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=bottom], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=bottom] {
  margin-bottom: calc(var(--pcMargin) / 1);
}
@media print, screen and (max-width: 812px) {
  *[data-padding*=vertical] {
    padding-top: var(--spMargin);
    padding-bottom: var(--spMargin);
  }
  *[data-padding*=top] {
    padding-top: var(--spMargin);
  }
  *[data-padding*=bottom] {
    padding-bottom: var(--spMargin);
  }
  *[data-margin*=vertical] {
    margin-top: var(--spMargin);
    margin-bottom: var(--spMargin);
  }
  *[data-margin*=top] {
    margin-top: var(--spMargin);
  }
  *[data-margin*=bottom] {
    margin-bottom: var(--spMargin);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=vertical], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=vertical] {
    padding-top: calc(var(--spMargin) / 1);
    padding-bottom: calc(var(--spMargin) / 1);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=top], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=top] {
    padding-top: calc(var(--spMargin) / 1);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=bottom], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-padding*=bottom] {
    padding-bottom: calc(var(--spMargin) / 1);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=vertical], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=vertical] {
    margin-top: calc(var(--spMargin) / 1);
    margin-bottom: calc(var(--spMargin) / 1);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=top], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=top] {
    margin-top: calc(var(--spMargin) / 1);
  }
  *[data-padding] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=bottom], *[data-margin] *:not([data-padding*=inherit]):not([data-margin*=inherit])[data-margin*=bottom] {
    margin-bottom: calc(var(--spMargin) / 1);
  }
}
/*--------------------------------
	SNS一覧
--------------------------------*/
.sns_lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em 4%;
}
@media print, screen and (max-width: 812px) {
  .sns_lists {
    -webkit-column-gap: 7%;
    -moz-column-gap: 7%;
    column-gap: 7%;
  }
}
/*--------------------------------
	店舗情報
--------------------------------*/
.info_cnt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1em 5%;
}
.info_cnt > div {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  letter-spacing: normal;
}
.info_cnt > div dt {
  color: var(--textAccentColor);
  font-size: 1rem;
  margin-bottom: 0.5em;
}
.info_cnt > div dd {
  font-family: var(--fontSerif);
  font-size: 2.6rem;
}
.info_cnt > div dd a {
  color: var(--blackColor);
}
.info_cnt > div dd span {
  font-size: 1.1rem;
}
.info_cnt > div:not(.address) {
  line-height: 1.2;
}
.info_cnt > div.address {
  width: 100%;
}
.info_cnt > div.address dd {
  font-size: 1.5rem;
}
@media print, screen and (max-width: 812px) {
  .info_cnt {
    -webkit-column-gap: 14%;
    -moz-column-gap: 14%;
    column-gap: 14%;
  }
  .info_cnt > div dd {
    font-size: 2rem;
    letter-spacing: normal;
  }
  .info_cnt > div dd span {
    display: block;
    font-size: 1.2rem;
    padding-top: 0.5rem;
  }
}
/*--------------------------------
	アンカーリンクコンテンツ
--------------------------------*/
.anchorlink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4vw;
  -moz-column-gap: 4vw;
  column-gap: 4vw;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.anchorlink_lists {
  width: 20%;
  position: relative;
}
.anchorlink_lists ul {
  margin-bottom: 0;
  position: sticky;
  top: calc(var(--pcHeaderHeight) + 2rem);
  left: 0;
}
.anchorlink_lists ul li {
  margin-bottom: 2rem;
}
.anchorlink_lists ul li:last-child {
  margin-bottom: 0;
}
.anchorlink_lists ul li a {
  color: var(--textColor);
  padding-bottom: 0.5rem;
  border-bottom: solid 1px transparent;
}
.anchorlink_lists ul li a.active {
  color: var(--textAccentColor) !important;
  border-bottom-color: var(--textAccentColor);
}
.anchorlink_cnt {
  width: 76%;
}
@media print, screen and (max-width: 812px) {
  .anchorlink_lists {
    display: none;
  }
  .anchorlink_cnt {
    width: 100%;
  }
}
@media print, screen and (min-width: 813px) {
  .anchorlink_lists ul li a:hover, .anchorlink_lists ul li a:active {
    color: var(--linkHoverColor);
  }
}

/*--------------------------------
	矢印
--------------------------------*/
*[data-arrow] {
  position: relative;
}
*[data-arrow]:before, *[data-arrow]:after {
  display: block;
  content: "";
  position: absolute;
  background-color: var(--mainColor);
}
*[data-arrow=right]:before, *[data-arrow=right]:after {
  height: 1px;
  top: calc(50% - 0.5px + 4px);
  right: 0;
}
*[data-arrow=right]:before {
  width: 2.4rem;
}
*[data-arrow=right]:after {
  width: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
  transform-origin: calc(100% - 0.5px) 50%;
}
*[data-arrow=bottom]:before, *[data-arrow=bottom]:after {
  width: 1px;
  bottom: 0;
  left: calc(50% - 0.5px);
}
*[data-arrow=bottom]:before {
  height: 2.4rem;
}
*[data-arrow=bottom]:after {
  height: 10px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: 50% calc(100% - 0.5px);
  transform-origin: 50% calc(100% - 0.5px);
}
*[data-arrow=left]:before, *[data-arrow=left]:after {
  height: 1px;
  top: calc(50% - 0.5px + 4px);
  left: 0;
}
*[data-arrow=left]:before {
  width: 2.4rem;
}
*[data-arrow=left]:after {
  width: 10px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: 0.5px 50%;
  transform-origin: 0.5px 50%;
}
@media print, screen and (max-width: 812px) {
  *[data-arrow*="sp:right"]:before, *[data-arrow*="sp:right"]:after {
    height: 1px;
    top: calc(50% - 0.5px + 4px);
    right: 0;
  }
  *[data-arrow*="sp:right"]:before {
    width: 2.4rem;
  }
  *[data-arrow*="sp:right"]:after {
    width: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: calc(100% - 0.5px) 50%;
    transform-origin: calc(100% - 0.5px) 50%;
  }
  *[data-arrow*="sp:bottom"]:before, *[data-arrow*="sp:bottom"]:after {
    width: 1px;
    bottom: 0;
    left: calc(50% - 0.5px);
  }
  *[data-arrow*="sp:bottom"]:before {
    height: 2.4rem;
  }
  *[data-arrow*="sp:bottom"]:after {
    height: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 50% calc(100% - 0.5px);
    transform-origin: 50% calc(100% - 0.5px);
  }
  *[data-arrow*="sp:left"]:before, *[data-arrow*="sp:left"]:after {
    height: 1px;
    top: calc(50% - 0.5px + 4px);
    left: 0;
  }
  *[data-arrow*="sp:left"]:before {
    width: 2.4rem;
  }
  *[data-arrow*="sp:left"]:after {
    width: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0.5px 50%;
    transform-origin: 0.5px 50%;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-arrow*="pc:right"]:before, *[data-arrow*="pc:right"]:after {
    height: 1px;
    top: calc(50% - 0.5px + 4px);
    right: 0;
  }
  *[data-arrow*="pc:right"]:before {
    width: 2.4rem;
  }
  *[data-arrow*="pc:right"]:after {
    width: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: calc(100% - 0.5px) 50%;
    transform-origin: calc(100% - 0.5px) 50%;
  }
  *[data-arrow*="pc:bottom"]:before, *[data-arrow*="pc:bottom"]:after {
    width: 1px;
    bottom: 0;
    left: calc(50% - 0.5px);
  }
  *[data-arrow*="pc:bottom"]:before {
    height: 2.4rem;
  }
  *[data-arrow*="pc:bottom"]:after {
    height: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 50% calc(100% - 0.5px);
    transform-origin: 50% calc(100% - 0.5px);
  }
  *[data-arrow*="pc:left"]:before, *[data-arrow*="pc:left"]:after {
    height: 1px;
    top: calc(50% - 0.5px + 4px);
    left: 0;
  }
  *[data-arrow*="pc:left"]:before {
    width: 2.4rem;
  }
  *[data-arrow*="pc:left"]:after {
    width: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0.5px 50%;
    transform-origin: 0.5px 50%;
  }
}

/*--------------------------------
	タブ切り替え
--------------------------------*/
.tabswitch_list > *, .tabswitch_cnt > * {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: opacity, transform;
}
.tabswitch_list {
  margin-bottom: 3rem;
}
.tabswitch_list > * {
  color: var(--textAccentColor);
  text-align: center;
  padding: 1rem;
  margin: 0;
  border-top: solid 1px transparent;
  border-bottom: solid 1px var(--mainColor);
  cursor: pointer;
  -webkit-transition: var(--animationSpeed);
  transition: var(--animationSpeed);
}
.tabswitch_list > *.active {
  border-top-color: var(--mainColor);
  border-right: solid 1px var(--mainColor);
  border-bottom-color: transparent;
  border-left: solid 1px var(--mainColor);
}
@media print, screen and (max-width: 812px) {
  .tabswitch_list > * {
    font-size: 1.4rem;
  }
  .tabswitch_list.column {
    gap: 0;
  }
  .tabswitch_list.column[data-sp-col="1"] > * {
    width: calc(100% / 1);
    margin: 0;
  }
  .tabswitch_list.column[data-sp-col="2"] > * {
    width: calc(100% / 2);
    margin: 0;
  }
  .tabswitch_list.column[data-sp-col="3"] > * {
    width: calc(100% / 3);
    margin: 0;
  }
  .tabswitch_list.column[data-sp-col="4"] > * {
    width: calc(100% / 4);
    margin: 0;
  }
}
@media print, screen and (min-width: 813px) {
  .tabswitch_list > *:hover {
    color: var(--whiteColor);
    background-color: var(--beigeColor);
  }
  .tabswitch_list.column {
    gap: 0;
  }
  .tabswitch_list.column[data-pc-col="1"] > * {
    width: calc(100% / 1);
    margin: 0;
  }
  .tabswitch_list.column[data-pc-col="2"] > * {
    width: calc(100% / 2);
    margin: 0;
  }
  .tabswitch_list.column[data-pc-col="3"] > * {
    width: calc(100% / 3);
    margin: 0;
  }
  .tabswitch_list.column[data-pc-col="4"] > * {
    width: calc(100% / 4);
    margin: 0;
  }
}

/*--------------------------------
	googlemap
--------------------------------*/
.googlemap {
  width: 100%;
  overflow: hidden;
}
.googlemap iframe, .googlemap object, .googlemap embed {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}
.googlemap iframe {
  width: 100%;
  height: 100%;
}
@media print, screen and (max-width: 812px) {
  .googlemap {
    height: 300px;
  }
  .googlemap iframe {
    height: calc(100% + 300px);
    margin-top: -150px;
  }
}
@media print, screen and (min-width: 813px) {
  .googlemap {
    height: 515px;
  }
  .googlemap iframe {
    height: calc(100% + 515px);
    margin-top: -257.5px;
    width: calc(100% + 4px);
    margin-left: -2px;
  }
}

/*--------------------------------
	予約コンテンツ
--------------------------------*/
.reserve_cnt {
  padding-top: 5.4rem;
  padding-bottom: 5.4rem;
  border-top: solid 1px var(--mainColor);
  border-bottom: solid 1px var(--mainColor);
}
.reserve_cnt > div {
  text-align: center;
}
.reserve_cnt > div > dt {
  margin-bottom: 4rem;
}
.reserve_cnt > div > dd {
  max-width: 580px;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (max-width: 812px) {
  .reserve_cnt {
    padding-right: 5%;
    padding-left: 5%;
  }
}
/*--------------------------------
	背景
--------------------------------*/
*[data-bg-color=lightbeige] {
  background-color: #F2EEE7;
}
/*----------------------------------------------------
	breadcrumb
----------------------------------------------------*/
#breadcrumb {
  padding: 2rem 0;
  background-color: var(--subColor);
}
#breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 0;
}
#breadcrumb ul li {
  font-size: 1.4rem;
  padding-right: calc(1rem + 15px);
  margin-right: 1rem;
}
#breadcrumb ul li:last-child {
  padding-right: 0;
  margin-right: 0;
}
#breadcrumb ul li a, #breadcrumb ul li span {
  color: var(--linkColor);
}
#breadcrumb ul li[data-arrow=right]:before, #breadcrumb ul li[data-arrow=right]:after {
  top: calc(50% - 0.5px + 1px);
}
#breadcrumb ul li[data-arrow=right]:before {
  width: 15px;
}
#breadcrumb ul li[data-arrow=right]:after {
  width: 5px;
}
@media print, screen and (max-width: 812px) {
  #breadcrumb {
    padding: 1rem 0;
  }
  #breadcrumb ul li {
    font-size: 1.2rem;
    padding-right: calc(0.5rem + 15px);
    margin-right: 0.5rem;
  }
}
@media print, screen and (min-width: 813px) {
  #breadcrumb ul li a:hover {
    color: var(--linkHoverColor);
  }
}

/*============================================================

    HEADING

============================================================*/
/*--------------------------------
	second_title - pallaraxあり
--------------------------------*/
.second_title {
  height: 29.1455vw;
  position: relative;
}
.second_title > *:not(p) {
  line-height: 1.6;
  color: var(--textAccentColor);
  font-family: var(--fontTitle);
  font-size: 3.6rem;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.second_title > *:not(p) em {
  display: block;
  font-size: 2rem;
}
.second_title[data-image-src] > * {
  color: var(--whiteColor);
}
@media print, screen and (max-width: 812px) {
  .second_title {
    height: 100vw;
  }
  .second_title > *:not(p) {
    font-size: 2.2rem;
  }
  .second_title > *:not(p) em {
    font-size: 1.3rem;
  }
  body.no_mainvisual .second_title {
    height: 67vw;
  }
  body.no_mainvisual .second_title > *:not(p) {
    top: calc(50% + var(--spHeaderHeight) / 3);
  }
}
/*--------------------------------
	heading_title
--------------------------------*/
.heading_title {
  line-height: 1.6;
  font-family: var(--fontTitle);
  font-size: 2.8rem;
  margin-bottom: 6rem;
}
.heading_title em {
  display: block;
  color: var(--textAccentColor);
  font-size: 1.5rem;
}
.heading_title[data-title*=large] {
  font-size: 4.4rem;
  font-size: min(4.4rem, 44px);
}
.heading_title[data-title*=large] em {
  font-size: 1.8rem;
  font-size: min(1.8rem, 18px);
}
@media print, screen and (max-width: 812px) {
  .heading_title {
    font-size: 2rem;
    margin-bottom: 3.6rem;
  }
  .heading_title em {
    font-size: 1.3rem;
  }
  .heading_title[data-title*=large] {
    font-size: 3.6rem;
  }
  .heading_title[data-title*=large] em {
    font-size: 1.5rem;
  }
}
/*--------------------------------
	見出し
--------------------------------*/
.heading_1, .heading_2, .heading_3, .heading_4, .heading_5 {
  font-family: var(--fontTitle);
}
.heading_1 em, .heading_2 em, .heading_3 em, .heading_4 em, .heading_5 em {
  display: block;
  color: var(--textAccentColor);
}
.heading_1 {
  font-size: 2.4rem;
  margin-bottom: 2.6rem;
}
.heading_1 em {
  font-size: 1.2rem;
}
.heading_2 {
  font-size: 2.2rem;
  margin-bottom: 1.8rem;
}
.heading_2 em {
  font-size: 1.2rem;
}
.heading_3 {
  font-size: 2rem;
  margin-bottom: 0.7rem;
}
.heading_3 em {
  font-size: 1.1rem;
}
.heading_4 {
  font-size: 1.8rem;
  margin-bottom: 0.7rem;
}
.heading_4 em {
  font-size: 1.1rem;
}
.heading_5 {
  font-size: 1.6rem;
  margin-bottom: 0.7rem;
}
.heading_5 em {
  font-size: 1.1rem;
}
@media print, screen and (max-width: 812px) {
  .heading_1 em, .heading_2 em, .heading_3 em, .heading_4 em, .heading_5 em {
    font-size: 1.1rem;
  }
  .heading_1 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
  .heading_2 {
    font-size: 1.7rem;
  }
  .heading_3 {
    font-size: 1.6rem;
  }
  .heading_4 {
    font-size: 1.5rem;
  }
  .heading_5 {
    font-size: 1.5rem;
  }
}
/*--------------------------------
	見出し スタイル設定
--------------------------------*/
*[data-title*=reverse-color] {
  color: var(--textAccentColor);
}
*[data-title*=reverse-color] em {
  color: var(--textColor);
}
*[data-title*=normal-color] {
  color: var(--textColor);
}
*[data-title*=normal-color] em {
  color: var(--textColor);
}
*[data-title*=brown-color] {
  color: var(--textAccentColor);
}
*[data-title*=brown-color] em {
  color: var(--beigeColor);
}
*[data-title*=main-color] {
  color: var(--mainColor);
}
*[data-title*=main-color] em {
  color: var(--textColor);
}
*[data-title*=blue-color] {
  color: var(--textColor) !important;
}
*[data-title*=blue-color] em {
  color: var(--accentColor);
}
*[data-title*=line-bottom] {
  padding-bottom: 1rem;
  border-bottom: solid 1px var(--textColor);
}
*[data-title*=line-bottom][data-title*=brown-color] {
  border-bottom-color: var(--mainColor);
}
/*============================================================

    POSTS LIST

============================================================*/
/*--------------------------------
	記事一覧 共通
--------------------------------*/
*[data-post-lists] article > div {
  position: relative;
}
*[data-post-lists] article > div picture img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media all and (-ms-high-contrast: none) {
  *[data-post-lists] article > div picture img {
    font-family: "object-fit: cover;";
  }
}
*[data-post-lists] article > div .postTitle a:after, *[data-post-lists] article > div .link_txt a:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
*[data-post-lists] article > div .postTag a, *[data-post-lists] article > div .postCategory a, *[data-post-lists] article > div .postTerm a {
  position: relative;
  z-index: 3;
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists] article > div picture {
    overflow: hidden;
  }
  *[data-post-lists] article > div picture img {
    -webkit-transition: -webkit-transform var(--animationSpeed), -webkit-filter var(--animationSpeed);
    transition: -webkit-transform var(--animationSpeed), -webkit-filter var(--animationSpeed);
    transition: transform var(--animationSpeed), filter var(--animationSpeed);
    transition: transform var(--animationSpeed), filter var(--animationSpeed), -webkit-transform var(--animationSpeed), -webkit-filter var(--animationSpeed);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: opacity, transform;
  }
  *[data-post-lists] article:hover > div picture img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-filter: brightness(105%);
    filter: brightness(105%);
  }
}

/*--------------------------------
	記事一覧 タイプ
--------------------------------*/
/*--------- カードタイプ ---------*/
*[data-post-lists*=card] article > div picture {
  margin-bottom: 2rem;
}
*[data-post-lists*=card] article > div picture, *[data-post-lists*=card] article > div picture img {
  border-radius: 12px;
}
*[data-post-lists*=card] article > div .postGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1rem;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  margin-bottom: 1rem;
}
*[data-post-lists*=card] article > div .postGroup .postDate {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 1.3rem;
  font-size: min(1.3rem, 13px);
  letter-spacing: normal;
}
*[data-post-lists*=card] article > div .postGroup .postCategory li a {
  font-size: 1.2rem;
  font-size: min(1.2rem, 12px);
}
*[data-post-lists*=card] article > div .postTitle {
  line-height: 1.6;
  font-size: 1.8rem;
  font-size: min(1.8rem, 18px);
}
*[data-post-lists*=card] article > div .postTitle a:not(:hover):not(:active) {
  color: var(--textColor);
}
*[data-post-lists*=card] article > div .postTag {
  row-gap: 0;
  margin-top: 1rem;
}
*[data-post-lists*=card] article > div .postTag li a {
  font-size: 1.3rem;
  font-size: min(1.3rem, 13px);
}
@media print, screen and (max-width: 812px) {
  *[data-post-lists*=card] article > div .postGroup .postDate {
    font-size: 1.2rem;
  }
  *[data-post-lists*=card] article > div .postGroup .postCategory li a {
    font-size: 1.1rem;
  }
  *[data-post-lists*=card] article > div .postTitle {
    font-size: 1.7rem;
  }
  *[data-post-lists*=card] article > div .postTag li a {
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists*=card].column[data-pc-col="2"] {
    -webkit-column-gap: 6%;
    -moz-column-gap: 6%;
    column-gap: 6%;
  }
  *[data-post-lists*=card].column[data-pc-col="2"] > * {
    width: 47%;
  }
  *[data-post-lists*=card].column[data-pc-col="3"] {
    -webkit-column-gap: 5.6%;
    -moz-column-gap: 5.6%;
    column-gap: 5.6%;
  }
  *[data-post-lists*=card].column[data-pc-col="3"] > * {
    width: 29.6%;
  }
}

/*--------------------------------
	カテゴリ
--------------------------------*/
.postCategory {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.postCategory li {
  line-height: 1;
}
.postCategory li a, .postCategory li > span {
  display: block;
  color: var(--whiteColor);
  font-size: 1.3rem;
  font-size: min(1.3rem, 13px);
  padding: 0.6rem 1rem;
  border-radius: 4px;
  background-color: var(--mainColor);
}
@media print, screen and (min-width: 813px) {
  .postCategory li a:hover, .postCategory li a:active, .postCategory li > span:hover, .postCategory li > span:active {
    background-color: var(--linkHoverBgColor);
  }
}

/*--------------------------------
	タグ
--------------------------------*/
.postTag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1rem;
  line-height: 1.4;
}
.postTag li {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.postTag li a {
  font-size: 1.5rem;
  font-size: min(1.5rem, 15px);
}
.postTag li a:before {
  content: "#";
}
/*--------------------------------
	日付
--------------------------------*/
.postDate {
  color: var(--textAccentColor);
  font-size: 1.5rem;
  font-size: min(1.5rem, 15px);
  margin-bottom: 0;
}
/*--------------------------------
ページネーション
--------------------------------*/
.pagination ul {
  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;
  gap: 10px;
}
.pagination ul li a, .pagination ul li span:not(.dots) {
  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: 40px;
  height: 40px;
  color: var(--mainColor);
  font-weight: bold;
  border-radius: 50%;
}
.pagination ul li a.current, .pagination ul li span:not(.dots).current {
  color: var(--textAccentColor);
  border: solid 1px var(--mainColor);
}
.pagination ul li a.prev svg, .pagination ul li a.next svg, .pagination ul li span:not(.dots).prev svg, .pagination ul li span:not(.dots).next svg {
  width: 100%;
  height: 100%;
  max-width: 30px;
  max-height: 8px;
  margin-bottom: 4px;
}
@media print, screen and (min-width: 813px) {
  .pagination ul li a:not(.current):hover, .pagination ul li span:not(.dots):not(.current):hover {
    color: var(--linkHoverColor);
  }
  .pagination ul li a:not(.current):hover.prev svg, .pagination ul li span:not(.dots):not(.current):hover.prev svg {
    -webkit-transform: translateX(-3px);
    transform: translateX(-3px);
  }
  .pagination ul li a:not(.current):hover.next svg, .pagination ul li span:not(.dots):not(.current):hover.next svg {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
}

/*--------------------------------
	ページリンク
--------------------------------*/
.pagelink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1rem 3rem;
}
.pagelink li a i {
  font-style: normal;
}
.pagelink li a svg {
  width: 10rem;
  height: 0.8rem;
  max-width: 100px;
  max-height: 8px;
  margin-bottom: min(0.8rem, 8px);
}
.pagelink li a.pagedisable {
  opacity: 0;
  pointer-events: none;
}
@media print, screen and (max-width: 812px) {
  .pagelink {
    gap: 1rem 2rem;
  }
  .pagelink li {
    width: calc((100% - 4rem) / 3);
    position: relative;
  }
  .pagelink li a {
    display: block;
    text-align: center;
    padding-bottom: 8px;
  }
  .pagelink li a svg {
    margin-bottom: 0;
    position: absolute;
    bottom: 0;
  }
  .pagelink li a.pageprev svg {
    right: 0;
  }
  .pagelink li a.pagenext svg {
    left: 0;
  }
}
@media print, screen and (min-width: 813px) {
  .pagelink li a:hover.pageprev svg {
    -webkit-transform: translateX(-3px);
    transform: translateX(-3px);
  }
  .pagelink li a:hover.pagenext svg {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
}

/*--------------------------------
	キーワード検索
--------------------------------*/
.searchKeyword {
  max-width: 430px;
  padding: 0;
  position: relative;
}
.searchKeyword form input[type=text] {
  width: 100%;
  height: 50px;
  font-size: 16px;
  font-size: 1.6rem;
  border-radius: 7px;
  border: solid 1px var(--beigeColor);
  background-color: #ffffff;
  padding: 10px 40px 10px 20px;
}
.searchKeyword form input::-webkit-input-placeholder {
  color: var(--mainColor);
  font-size: 16px;
}
.searchKeyword form input::placeholder, .searchKeyword form input::-webkit-input-placeholder, .searchKeyword form input:-ms-input-placeholder, .searchKeyword form input::-ms-input-placeholder {
  color: var(--mainColor);
  font-size: 16px;
}
.searchKeyword form button[type=submit] {
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  background-color: transparent;
  position: absolute;
  top: 5px;
  right: 5px;
  cursor: pointer;
  -webkit-transition: var(--animationSpeed);
  transition: var(--animationSpeed);
  will-change: opacity;
}
.searchKeyword form button[type=submit] svg {
  max-width: 26px;
  max-height: 26px;
  fill: var(--mainColor);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.searchKeyword form input[type=text]:focus,
.searchKeyword form button[type=submit]:focus {
  outline: 0;
}
@media print, screen and (max-width: 812px) {
  .searchKeyword form input[type=text] {
    height: 40px;
    font-size: 16px;
  }
  .searchKeyword form button[type=submit] {
    width: 30px;
    height: 30px;
  }
  .searchKeyword form button[type=submit] svg {
    max-width: 20px;
    max-height: 20px;
  }
}
@media print, screen and (min-width: 813px) {
  .searchKeyword form button[type=submit] svg {
    -webkit-transition: fill var(--animationSpeed);
    transition: fill var(--animationSpeed);
  }
  .searchKeyword form button[type=submit]:hover svg {
    fill: var(--linkHoverBgColor);
  }
}

/*--------------------------------
    検索結果なし
--------------------------------*/
.noresult {
  text-align: center;
}

/*--------------------------------
	記事詳細コンテンツ
--------------------------------*/
/*--------------------------------
	記事詳細コンテンツ
--------------------------------*/
.post .postDate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0 1rem;
  font-size: 1.5rem;
  font-size: min(1.5rem, 15px);
  margin-bottom: 1rem;
}
.post .postDate > div {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-bottom: 0;
}
.post .postDate > div.release_date > dt {
  display: none;
}
.post .postTitle {
  line-height: 1.6;
  font-size: 3.6rem;
  font-size: min(3.6rem, 36px);
  font-weight: normal;
  text-align: left;
  margin: 0 auto 2rem;
}
.post .postThumb {
  margin: 4rem auto;
}
.post .postContents {
  line-height: 2;
  word-break: break-all;
  overflow-wrap: break-word;
}
.post .postContents:after {
  content: "";
  display: block;
  clear: both;
}
.post .postContents a:link, .post .postContents a:visited {
  color: var(--linkColor);
  text-decoration: underline;
}
.post .postContents img {
  display: block;
  max-width: 100%;
  height: auto;
}
.post .postContents p {
  margin: 0 auto 1.5em;
}
.post .postContents p > img {
  margin: 0 auto 1.5em;
}
.post .postContents strong {
  color: var(--accentColor);
  font-weight: bold;
}
.post .postContents em {
  color: var(--textAccentColor);
  font-style: italic;
}
.post .postContents figure.wp-caption {
  margin: 0 auto 1.5em;
}
.post .postContents figure.wp-caption img {
  margin: 0 auto;
}
.post .postContents figure.wp-caption figcaption.wp-caption-text {
  margin: 0.8em auto 0;
  font-size: 90%;
  text-align: center;
}
.post .postContents .aligncenter {
  margin: 0 auto 1em;
}
.post .postContents .alignleft {
  float: left;
  margin: 0 1em 1em 0;
}
.post .postContents .alignright {
  float: right;
  margin: 0 0 1em 1em;
}
.post .postContents blockquote {
  color: #666;
  font-style: italic;
  margin: 1.12em 40px;
}
.post .postContents pre {
  white-space: normal;
}
.post .postContents ul, .post .postContents ol {
  margin: 1.12em 0;
}
.post .postContents ul {
  list-style-type: disc;
  padding-left: 1em;
}
.post .postContents ol {
  list-style-type: decimal;
  padding-left: 1.2em;
}
.post .postContents h1, .post .postContents h2, .post .postContents h3, .post .postContents h4, .post .postContents h5, .post .postContents h6 {
  color: var(--textAccentColor);
  text-align: left;
  margin: 2em 0 0.75em;
}
.post .postContents h1 {
  font-size: 2.4rem;
}
.post .postContents h2 {
  font-size: 2.2rem;
}
.post .postContents h3 {
  font-size: 1.8rem;
}
.post .postContents h4 {
  font-size: 1.7rem;
}
.post .postContents h5, .post .postContents h6 {
  font-size: 1.6rem;
}
.post .postContents iframe[src*=youtube] {
  display: block;
  width: 100%;
  height: auto;
  min-height: 474px;
  margin: 0 auto;
}
.post .postContents *:last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 812px) {
  .post .postDate {
    font-size: 1.2rem;
    font-size: min(1.2rem, 12px);
  }
  .post .postThumb {
    margin-top: 2rem;
  }
  .post .postTitle {
    font-size: 2rem;
    margin: 0 auto 0.8em;
  }
  .post .postContents h1 {
    font-size: 2.2rem;
  }
  .post .postContents h2 {
    font-size: 2rem;
  }
  .post .postContents h3 {
    font-size: 1.8rem;
  }
  .post .postContents h4 {
    font-size: 1.6rem;
  }
  .post .postContents h5, .post .postContents h6 {
    font-size: 1.5rem;
  }
  .post .postContents iframe[src*=youtube] {
    min-height: 190px;
  }
}
@media print, screen and (min-width: 813px) {
  .post .postInfo em a:hover, .post .postInfo em a:active {
    color: #333;
  }
  .post .postTag em a:hover, .post .postTag em a:active {
    color: #333;
  }
  .post .postContents a:hover, .post .postContents a:active {
    color: var(--linkHoverColor);
    text-decoration: none;
  }
}

/*--------------------------------
	目次（TOC）
--------------------------------*/
#toc_container {
  padding: 3rem 6rem;
  margin: 6rem 0;
  border: solid 1px var(--mainColor);
}
#toc_container .toc_title {
  color: var(--linkColor);
  font-size: 1.8rem;
  font-size: min(1.8rem, 20px);
  font-weight: bold;
  margin-bottom: 3rem;
}
#toc_container .toc_list {
  padding: 0;
}
#toc_container .toc_list a {
  color: var(--linkColor);
  text-decoration: none;
}
#toc_container .toc_list > li {
  margin-bottom: 1.5em;
  list-style-type: none;
}
#toc_container .toc_list > li:last-child {
  margin-bottom: 0;
}
#toc_container .toc_list > li > a {
  font-size: 1.7rem;
  font-size: min(1.7rem, 18px);
}
#toc_container .toc_list > li ul {
  padding-left: 1em;
  margin-top: 1em;
  margin-bottom: 0;
}
#toc_container .toc_list > li ul li {
  margin-bottom: 0.75em;
  list-style-type: none;
}
#toc_container .toc_list > li ul li:last-child {
  margin-bottom: 0;
}
#toc_container .toc_list > li ul li a {
  font-size: 1.5rem;
  font-size: min(1.5rem, 16px);
}
@media print, screen and (max-width: 812px) {
  #toc_container {
    padding: 2.5rem 2rem;
    margin: 5rem 0;
  }
  #toc_container .toc_title {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
  #toc_container .toc_list > li {
    margin-bottom: 1em;
  }
  #toc_container .toc_list > li > a {
    font-size: 1.6rem;
  }
  #toc_container .toc_list > li ul {
    margin-top: 0.5em;
  }
  #toc_container .toc_list > li ul li a {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 813px) {
  #toc_container .toc_list a:hover {
    color: var(--linkHoverColor);
  }
  #toc_container .toc_list > li {
    margin-bottom: 1.5em;
    list-style-type: none;
  }
  #toc_container .toc_list > li:last-child {
    margin-bottom: 0;
  }
  #toc_container .toc_list > li ul {
    padding-left: 2em;
  }
}

/*--------------------------------
	検索コンテンツ
--------------------------------*/
.search {
  border-radius: 8px;
}
.search_title, .search_cnt {
  padding: 1.5rem 4rem;
  margin-bottom: 0;
}
.search_title {
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
}
.search_title svg {
  fill: var(--mainColor);
}
.search_cnt {
  padding-bottom: 4rem;
}
.search_cnt > div {
  margin-bottom: 5rem;
}
.search_cnt > div:last-child {
  margin-bottom: 0;
}
.search_cnt > div > dt {
  margin-bottom: 1.6rem;
}
.search_cnt > div > dd ul 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%;
  text-align: center;
  padding: 1rem 1rem;
  border-radius: 4px;
  background-color: var(--whiteColor);
}
.search_cnt > div > dd ul.postTag {
  gap: 10px;
}
.search_cnt > div > dd ul.postTag a {
  padding: 1rem 1.5rem;
  border-radius: 25px;
}
.search_cnt > div > dd ul.column {
  gap: 6px;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
@media print, screen and (max-width: 812px) {
  .search {
    border-radius: 6px;
  }
  .search_title, .search_cnt {
    padding: 1rem 1.5rem;
  }
  .search_title {
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
  }
  .search_cnt {
    padding-bottom: 2.5rem;
  }
  .search_cnt > div > dd ul li a {
    font-size: 1.2rem;
  }
  .search_cnt > div > dd ul .postTag {
    gap: 6px;
  }
  .search_cnt > div > dd ul .postTag a {
    padding: 1rem 1.2rem;
  }
  .search_cnt > div > dd ul.column[data-sp-col="2"] > * {
    width: calc((100% - 6px) / 2);
  }
}
@media print, screen and (min-width: 813px) {
  .search_title {
    -webkit-transition: color var(--animationSpeed);
    transition: color var(--animationSpeed);
  }
  .search_title:hover {
    color: var(--linkHoverColor);
  }
  .search_title:hover svg {
    fill: var(--linkHoverColor);
  }
  .search_cnt > div > dd ul li a:hover {
    color: var(--whiteColor);
    background-color: var(--linkHoverBgColor);
  }
  .search_cnt > div > dd ul.column[data-pc-col="3"] > * {
    width: calc((100% - 12px) / 3);
  }
  .search_cnt > div > dd ul.column[data-pc-col="4"] > * {
    width: calc((100% - 18px) / 4);
  }
  .search_cnt > div > dd ul.column[data-pc-col="5"] > * {
    width: calc((100% - 24px) / 5);
  }
}

/*============================================================

    CONTENTS COMMON

============================================================*/
/*--------------------------------
	MENU共通
--------------------------------*/
/*--------- 記事一覧 ---------*/
*[data-post-lists*=menu] article:last-child {
  margin-bottom: 0 !important;
}
*[data-post-lists*=menu] article > div > .column .postTitle {
  font-size: 2.4rem;
  margin-bottom: 0.7rem;
}
*[data-post-lists*=menu] article > div > .column .postTitle a {
  color: var(--textColor);
}
*[data-post-lists*=menu] article > div .recommend_cnt {
  margin-top: 3rem;
}
*[data-post-lists*=menu] article > div > .link_btn {
  margin-top: 5rem;
}
@media print, screen and (max-width: 812px) {
  *[data-post-lists*=menu] article:last-child {
    margin-bottom: 0 !important;
  }
  *[data-post-lists*=menu] article > div > .column picture {
    width: 100%;
    margin-bottom: 3rem;
  }
  *[data-post-lists*=menu] article > div > .column picture img {
    max-width: 200px;
  }
  *[data-post-lists*=menu] article > div > .column .postCategory {
    margin-bottom: 1rem;
  }
  *[data-post-lists*=menu] article > div > .column .postTitle {
    font-size: 1.8rem;
  }
  *[data-post-lists*=menu] article > div > .link_btn {
    margin-top: 2.5rem;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists*=menu] article > div > .column {
    position: relative;
  }
  *[data-post-lists*=menu] article > div > .column > *:nth-child(2n-1) {
    width: 20%;
    padding-top: 4rem;
  }
  *[data-post-lists*=menu] article > div > .column > *:nth-child(2n) {
    width: 76%;
    padding-bottom: 1.6rem;
  }
  *[data-post-lists*=menu] article > div > .column .postTitle a:hover {
    color: var(--linkHoverColor);
  }
  *[data-post-lists*=menu] article:hover > div picture img {
    -webkit-transform: none;
    transform: none;
    -webkit-filter: none;
    filter: none;
  }
  *[data-post-lists*=menu] article:hover > div .link_btn > span {
    color: var(--linkHoverColor);
  }
  *[data-post-lists*=menu] article:hover > div .link_btn > span:before, *[data-post-lists*=menu] article:hover > div .link_btn > span:after {
    background-color: var(--linkHoverColor);
  }
  *[data-post-lists*=menu] article:hover > div .link_btn > span:before {
    left: 3px;
  }
  *[data-post-lists*=menu] article:hover > div .link_btn > span:after {
    right: -3px;
  }
}

/*--------- 悩み一覧 ---------*/
*[data-post-lists*=concern] article > div .postTitle a span {
  display: block;
  width: 50%;
  font-size: 1.9rem;
  font-size: min(1.9rem, 19px);
  text-align: center;
  position: absolute;
  top: 50%;
  right: 5%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media print, screen and (max-width: 812px) {
  *[data-post-lists*=concern].column[data-sp-col="2"] {
    gap: 4px;
  }
  *[data-post-lists*=concern].column[data-sp-col="2"] > * {
    width: calc((100% - 4px) / 2);
    margin: 0;
  }
  *[data-post-lists*=concern] article > div .postTitle a span {
    width: auto;
    min-width: 50%;
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists*=concern].column[data-pc-col="3"] {
    gap: 6px;
  }
  *[data-post-lists*=concern].column[data-pc-col="3"] > * {
    width: calc((100% - 12px) / 3);
    margin: 0;
  }
}

/*--------- 施術一覧 ---------*/
*[data-post-lists*=treatment] article {
  margin-bottom: 6px;
}
*[data-post-lists*=treatment] article:last-child {
  margin-bottom: 0;
}
*[data-post-lists*=treatment] article > div .toggle, *[data-post-lists*=treatment] article > div ul {
  background-color: var(--whiteColor);
}
*[data-post-lists*=treatment] article > div .toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 3rem 0 0;
  position: relative;
}
*[data-post-lists*=treatment] article > div .toggle picture img {
  max-height: 150px;
}
*[data-post-lists*=treatment] article > div .toggle .postTitle {
  color: var(--linkColor);
  font-size: 2rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
*[data-post-lists*=treatment] article > div .toggle div {
  text-align: right;
  color: var(--textAccentColor);
  padding-right: calc(20px + 0.5em);
  position: relative;
}
*[data-post-lists*=treatment] article > div .toggle div:before, *[data-post-lists*=treatment] article > div .toggle div > span {
  -webkit-transition: opacity var(--animationSpeed);
  transition: opacity var(--animationSpeed);
  will-change: opacity;
}
*[data-post-lists*=treatment] article > div .toggle div:before {
  display: block;
  content: "メニューを閉じる";
  position: absolute;
  top: 50%;
  left: -1em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0;
}
*[data-post-lists*=treatment] article > div .toggle div svg {
  display: block;
  width: 20px;
  height: 10px;
  margin: 0;
  fill: var(--mainColor);
  position: absolute;
  top: 50%;
  right: 0;
}
*[data-post-lists*=treatment] article > div .toggle.open div > span {
  opacity: 0;
}
*[data-post-lists*=treatment] article > div .toggle.open div:before {
  opacity: 1;
}
*[data-post-lists*=treatment] article > div ul {
  padding: 3rem 2rem;
}
*[data-post-lists*=treatment] article > div ul li a.column[data-pc-col="1:2"] {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 0;
}
*[data-post-lists*=treatment] article > div ul.column[data-pc-col="3"] {
  gap: 2rem 4%;
}
*[data-post-lists*=treatment] article > div ul.column[data-pc-col="3"] > * {
  margin: 0;
}
@media print, screen and (max-width: 812px) {
  *[data-post-lists*=treatment] article > div .toggle {
    padding-right: 1.5rem;
  }
  *[data-post-lists*=treatment] article > div .toggle picture {
    width: 55%;
  }
  *[data-post-lists*=treatment] article > div .toggle picture img {
    max-height: 60px;
  }
  *[data-post-lists*=treatment] article > div .toggle .postTitle {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 1.2rem;
    position: static;
    -webkit-transform: none;
    transform: none;
  }
  *[data-post-lists*=treatment] article > div .toggle div:before, *[data-post-lists*=treatment] article > div .toggle div > span {
    display: none;
  }
  *[data-post-lists*=treatment] article > div .toggle div svg {
    width: 10px;
    height: 5px;
  }
  *[data-post-lists*=treatment] article > div ul {
    padding: 2rem 1.5rem;
  }
  *[data-post-lists*=treatment] article > div ul li a span {
    line-height: 1.4;
    font-size: 1.2rem;
    text-align: left;
  }
  *[data-post-lists*=treatment] article > div ul li a.column[data-sp-col="2"] {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
  }
  *[data-post-lists*=treatment] article > div ul li a.column[data-sp-col="2"] > *:nth-child(1) {
    width: 30%;
  }
  *[data-post-lists*=treatment] article > div ul li a.column[data-sp-col="2"] > *:nth-child(2) {
    width: 64%;
  }
  *[data-post-lists*=treatment] article > div ul.column[data-sp-col="2"] {
    gap: 2rem 4%;
  }
  *[data-post-lists*=treatment] article > div ul.column[data-sp-col="2"] > * {
    margin: 0;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists*=treatment] article > div .toggle .postTitle, *[data-post-lists*=treatment] article > div .toggle div {
    -webkit-transition: color var(--animationSpeed);
    transition: color var(--animationSpeed);
  }
  *[data-post-lists*=treatment] article:hover > div .toggle picture img {
    -webkit-transform: none;
    transform: none;
  }
  *[data-post-lists*=treatment] article:hover > div .toggle .postTitle, *[data-post-lists*=treatment] article:hover > div .toggle div {
    color: var(--linkHoverColor);
  }
  *[data-post-lists*=treatment] article:hover > div .toggle div svg {
    fill: var(--linkHoverColor);
  }
  *[data-post-lists*=treatment] article:hover > div ul li picture img {
    -webkit-transform: none;
    transform: none;
    -webkit-filter: none;
    filter: none;
  }
}

/*--------- おすすめコンテンツ ---------*/
.recommend_cnt {
  color: var(--textAccentColor);
  padding: 4.5rem;
  border: solid 1px var(--beigeColor);
}
.recommend_cnt .heading_2 {
  margin-bottom: 2rem;
}
.recommend_cnt ul li {
  font-size: 1.7rem;
  font-size: min(1.7rem, 18px);
  margin-bottom: 1.2rem;
}
.recommend_cnt ul li:last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 812px) {
  .recommend_cnt {
    padding: 3rem 2rem;
  }
  .recommend_cnt ul li {
    font-size: 1.4rem;
  }
}
/*--------------------------------
	CASE 共通
--------------------------------*/
/*--------- 症例一覧 ---------*/
*[data-post-lists*=case] article > div picture {
  margin-bottom: 2rem;
}
*[data-post-lists*=case] article > div .postTitle a {
  color: var(--textColor);
  font-size: 1.8rem;
  font-size: min(1.8rem, 18px);
}
*[data-post-lists*=case] article > div dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
  color: var(--textAccentColor);
  font-size: 1.4rem;
  font-size: min(1.4rem, 14px);
  margin-top: 0.3rem;
}
*[data-post-lists*=case] article > div dl > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
}
*[data-post-lists*=case] article > div dl > div:after {
  content: " /";
}
*[data-post-lists*=case] article > div dl > div:first-child dt {
  display: none;
}
*[data-post-lists*=case] article > div dl > div:last-child:after {
  display: none;
}
@media print, screen and (max-width: 812px) {
  *[data-post-lists*=case] article > div picture {
    margin-bottom: 1.8rem;
  }
  *[data-post-lists*=case] article > div .postTitle a {
    font-size: 1.5rem;
  }
  *[data-post-lists*=case] article > div dl {
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 813px) {
  *[data-post-lists*=case] article .postTitle a:hover {
    color: var(--linkHoverColor);
  }
  *[data-post-lists*=case].column[data-pc-col="2"] {
    -webkit-column-gap: 6%;
    -moz-column-gap: 6%;
    column-gap: 6%;
  }
  *[data-post-lists*=case].column[data-pc-col="2"] > * {
    width: 47%;
  }
  *[data-post-lists*=case].column[data-pc-col="3"] {
    -webkit-column-gap: 5.6%;
    -moz-column-gap: 5.6%;
    column-gap: 5.6%;
  }
  *[data-post-lists*=case].column[data-pc-col="3"] > * {
    width: 29.6%;
  }
}

/*--------------------------------
	header blogロゴマーク
--------------------------------*/
header #blog_logo {
  width: calc(97px + 2rem);
  padding: 0.5rem 2rem;
  padding-right: 0;
  border-left: solid 1px var(--linkHoverBgColor);
}
@media print, screen and (min-width: 813px) {
  header #blog_logo a:hover img {
    opacity: 0.7;
  }
}

/*--------------------------------
	タイトル
--------------------------------*/
.blog_title {
  line-height: 1.2;
}
.blog_title img {
  display: inline;
  max-width: 130px;
  margin: 0;
}
/*--------------------------------
	FAQ 共通
--------------------------------*/
/*--------- よくある質問 ---------*/
.faq_cnt > div {
  margin-bottom: 6px;
}
.faq_cnt > div:last-child {
  margin-bottom: 0;
}
.faq_cnt > div > dt, .faq_cnt > div > dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1rem;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}
.faq_cnt > div > dt:before, .faq_cnt > div > dd:before {
  display: block;
  line-height: 1;
  color: var(--textAccentColor);
  font-family: var(--fontTitle);
  font-size: 2.8rem;
}
.faq_cnt > div > dt {
  padding: 2.4rem;
  border-radius: 4px;
  background-color: var(--lightBeigeColor);
}
.faq_cnt > div > dt:before {
  content: "Q.";
}
.faq_cnt > div > dt.toggle {
  padding-right: 64px;
}
.faq_cnt > div > dt.toggle svg {
  fill: var(--mainColor);
}
.faq_cnt > div > dd {
  padding: 2rem 2.4rem;
}
.faq_cnt > div > dd:before {
  content: "A.";
}
@media print, screen and (max-width: 812px) {
  .faq_cnt > div > dt:before, .faq_cnt > div > dd:before {
    padding-top: 0.25rem;
    font-size: 2.4rem;
  }
  .faq_cnt > div > dt {
    padding: 1.6rem;
  }
  .faq_cnt > div > dt.toggle {
    padding-right: 48px;
  }
  .faq_cnt > div > dd {
    padding: 1.6rem;
  }
}
@media print, screen and (min-width: 813px) {
  .faq_cnt > div > dt {
    cursor: pointer;
    -webkit-transition: color var(--animationSpeed), background-color var(--animationSpeed);
    transition: color var(--animationSpeed), background-color var(--animationSpeed);
  }
  .faq_cnt > div > dt:before {
    -webkit-transition: color var(--animationSpeed);
    transition: color var(--animationSpeed);
  }
  .faq_cnt > div > dt:hover {
    background-color: var(--linkHoverBgColor);
  }
  .faq_cnt > div > dt:hover, .faq_cnt > div > dt:hover:before {
    color: var(--whiteColor);
  }
  .faq_cnt > div > dt:hover.toggle svg {
    fill: var(--whiteColor);
  }
}

/*--------- さがすリスト ---------*/
.search_list 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;
  height: 100%;
  text-align: center;
  padding: 1rem 0.5rem;
  border-radius: 4px;
  border: solid 1px var(--mainColor);
}
.search_list.column {
  -webkit-box-align: normal;
  -ms-flex-align: normal;
  align-items: normal;
  gap: 6px;
}
@media print, screen and (max-width: 812px) {
  .search_list li a {
    font-size: 1.3rem;
    padding: 1rem 0.5rem;
  }
  .search_list.column[data-sp-col="2"] > * {
    width: calc((100% - 6px) / 2);
  }
}
@media print, screen and (min-width: 813px) {
  .search_list li a:hover {
    color: var(--whiteColor);
    border-color: var(--linkHoverBgColor);
    background-color: var(--linkHoverBgColor);
  }
  .search_list.column[data-pc-col="5"] > * {
    width: calc((100% - 24px) / 5);
  }
}

/*============================================================

    BUG

============================================================*/
/*----------------------------------------------------
	WEBフォントずれ対応
----------------------------------------------------*/
body header #header_nav_new a span {
  padding-top: 0.4rem !important;
}
body header #header_nav_reserve a, body header #header_nav_contact a {
  padding-top: 0.9rem !important;
}
body #breadcrumb {
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
}
body #breadcrumb ul li {
  padding-top: 0.25rem !important;
}
body #breadcrumb ul li:before, body #breadcrumb ul li:after {
  top: calc(50% - (0.5px + 0.25rem) + 4px) !important;
}
body .tabswitch_list > * span {
  display: inline-block;
  padding-top: 0.4rem !important;
}
body .faq_cnt > div > dt span {
  padding-top: 0.25rem !important;
}
body .search_title span {
  display: inline-block;
  padding-top: 0.3rem !important;
}
body.new-patient #flow > div > ol li a i, body.new-patient #flow > div > ol li span i {
  top: calc(50% - (0.5em + 0.25rem)) !important;
}
body.about #feature .feature_cnt .heading_2:before {
  padding-top: 0.2em !important;
}
@media print, screen and (max-width: 812px) {
  body.about #feature .feature_cnt .heading_2:before {
    padding-top: 0.1em !important;
  }
}
/*----------------------------------------------------
	safariバグ対応
----------------------------------------------------*/
@media print, screen and (min-width: 813px) {
  ::-webkit-full-page-media, :future, :root a {
    will-change: auto !important;
  }
}
/* --- Google翻訳ウィジェットのサイズ調整（修正版） --- */

/* (2) Google翻訳が生成するプルダウンメニューの見た目をボタン風に調整 */
#google_translate_element .goog-te-combo {
  box-sizing: border-box; /* paddingとborderを高さと幅に含める */
  width: 100%; /* (1)で指定した幅いっぱいに広げる */
  
  /* ↓ 高さを他のボタンと合わせるための重要な設定 */
  height: 100%; /* コンテナの高さに合わせる */
  padding: 0.7rem; /* 他のボタンと同じpaddingを指定 */
  line-height: 1.2; /* 他のボタンと同じline-heightを指定 */
  font-size: min(1.4rem, 16px); /* 他のボタンと同じ文字サイズ */
  
  /* --- 見た目の調整 --- */
  border: 1px solid var(--mainColor); /* 枠線の色をサイトのテーマに合わせる */
  border-radius: 4px; /* 他のボタンと角の丸みを合わせる */
  background-color: var(--whiteColor); /* 背景色 */
  color: var(--textColor); /* 文字色 */
  
  /* ブラウザ標準の矢印を消して、サイトに合う矢印に差し替え */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23746541%22%20d%3D%22M287%2069.4a17.6%2017.6%0A0%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%0A0%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: right 0.7rem top 50%;
  background-size: 0.65rem auto;
}

/* --- Google翻訳ウィジェット PC用スタイル (ダミーボタン方式) --- */
#header_nav ul li#header_nav_en_pc {
  width: 15%;
  min-width: 100px;
}
#header_nav_en_pc #custom_translate_button {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 48px;
  line-height: 1.2;
  color: var(--textColor);
  font-size: min(1.3rem, 13px);
  padding: 0.7rem;
  border-radius: 4px;
  background-color: var(--whiteColor);
  border: 1px solid var(--mainColor);
  text-decoration: none;
}

.goog-te-gadget-simple{
  display: flex!important;
}

#header_nav_en_pc .goog-te-gadget-simple a {
  color: var(--blackColor) !important;
  font-size: 1rem !important;
  font-family: var(--fontFamily) !important;
  line-height: 1!important;
}
#\:0\.targetLanguage > span > a > span:nth-child(1),
#\:0\.targetLanguage > span > a > img:nth-child(2),
#\:0\.targetLanguage > span > a > img:nth-child(4),
#\:0\.targetLanguage > img,
#\:0\.targetLanguage > span > a > span:nth-child(3) {
  display:none!important;
}

/* #\:0\.targetLanguage > span > a > span:nth-child(5)::before {
    content: "select language";
    color: #191919;
    font-size: 1.4rem;
} */

@media print, screen and (min-width: 813px) {
  #header_nav_en_pc #custom_translate_button:hover {
    color: var(--whiteColor);
    background-color: var(--linkHoverBgColor);
  }
}

/* --- Google翻訳ウィジェット スマホ用スタイル (最終版) --- */
@media screen and (max-width: 812px) {
  #header_nav_en_pc {
    display: none; /* Hide PC container on mobile */
  }
  
  #header_nav_en_sp {
    display: block;
    width: 140px;
    flex-shrink: 0;
  }

  .translator-container {
    -webkit-transition: opacity var(--animationSpeed);
    transition: opacity var(--animationSpeed);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: opacity;
  }

  /* Initial state styles */
  #header_nav_en_sp #google_translate_element {
    width: 100% !important;
  }
  #header_nav_en_sp .goog-te-gadget {
    width: 100% !important;
  }
  #header_nav_en_sp .goog-te-gadget-simple {
    display: block !important;
    background: transparent !important;
    border: none !important;
    width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  #header_nav_en_sp .goog-te-gadget-simple a {
    color: var(--blackColor) !important;
    font-size: 10px !important;
    font-family: var(--fontFamily) !important;
    line-height: 1;
    background-color: #f6f6f6;
    border: black 1px solid;
    border-radius: 4px;
    padding: 1rem 0.8rem;
    white-space: nowrap;
    height: 80%;
    box-sizing: border-box;
    display: flex !important;
    align-items: center;
  }
  #header_nav_en_sp .goog-te-gadget-simple > span > a::after{
    right: 12px;
  }

  #\:0\.targetLanguage > span > a > span:nth-child(1) {
    display: none !important;
  }

  #\:0\.targetLanguage > span > a > span:nth-child(3) {
    display: none !important;
  }

  #\:0\.targetLanguage > span > a > span:nth-child(5)::before {
    content: "select language";
    color: #191919;
    font-size: 1.2rem;
  }

  #header_nav_en_sp .goog-te-gadget-simple img {
    display: none !important; /* Hide the logo */
  }

  /* Dropdown styles */
  #header_nav_en_sp .goog-te-combo {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 1;
    width: 100%;
    border: none;
    background-color: transparent;
    color: var(--blackColor);
    font-size: 1.8rem;
    font-family: var(--fontFamily);
    padding: 0;
    line-height: 1.6;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%2C%20viewBox%3D%220%200%2025%2025%22%3E%3Cpath%20d%3D%22M12.5%2018L0%206h25L12.5%2018z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px auto;
    padding-right: 2rem;
  }
}

/*============================================================

    CUSTOM STYLES - Side Navigation & Header Nav

============================================================*/

/*--------------------------------
	side_navigation PC用 色分け
--------------------------------*/
#side_navigation ul li.reserve a {
  background-color: #DD5F7F;
}
#side_navigation ul li.tel a {
  background-color: #5A8DC9;
}
#side_navigation ul li.contact a {
  background-color: #A89D83;
}
#side_navigation ul li.line a {
  background-color: #66A766;
}
#side_navigation ul li.line a i svg {
  fill: var(--whiteColor);
}
@media print, screen and (min-width: 813px) {
  #side_navigation {
    right: 0;
    transition: none;
  }
  #side_navigation ul li {
    width: 80px;
    height: 80px;
    margin-bottom: 1px;
  }
  #side_navigation ul li.tel {
    display: block;
  }
  #side_navigation ul li.tel a {
    pointer-events: auto;
    cursor: pointer;
  }
  #side_navigation ul li a {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 5px;
  }
  #side_navigation ul li a i {
    width: auto;
    height: auto;
    margin-bottom: 3px;
  }
  #side_navigation ul li a i svg {
    width: 24px;
    height: 24px;
  }
  #side_navigation ul li a span {
    display: block;
    font-size: 11px;
    text-align: center;
    line-height: 1.2;
    width: 100%;
    padding: 0;
    margin-top: 3px;
    letter-spacing: 0;
  }
  #side_navigation ul li.reserve a:hover {
    background-color: #BF4161;
  }
  #side_navigation ul li.tel a:hover {
    background-color: #3C6FAB;
  }
  #side_navigation ul li.contact a:hover {
    background-color: #8A7F65;
  }
  #side_navigation ul li.line a:hover {
    background-color: #488948;
  }
}

/*--------------------------------
	side_navigation SP用 3カラム + LINE全幅
--------------------------------*/
@media print, screen and (max-width: 812px) {
  #side_navigation {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 10000;
    visibility: hidden;
  }
  #side_navigation.show {
    visibility: visible;
  }
  #side_navigation ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
    background-color: var(--whiteColor);
  }
  #side_navigation ul li{
    margin-bottom: 0;
  }
  #side_navigation ul li.reserve{
    width: calc(50% - 1px);
  }
  #side_navigation ul li.reserve a{
    flex-direction: row;
    height: 100%;
  }
  #side_navigation ul li.reserve a span{
    font-size: 1.6rem;
    margin-left: 5px;
  }
  #side_navigation ul li.reserve a i svg{
    width: 28px;
    height: 28px;
  }
  #side_navigation ul li a i{
    margin-bottom: 0;
    margin-right: 0.5rem;
  }
  #side_navigation ul li.tel{
    width: calc(25% - 1px);
  }
  #side_navigation ul li.contact {
    width: 25%;
  }
  #side_navigation ul li.line {
    width: 100%;
  }
  #side_navigation ul li.line a {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
  #side_navigation ul li.line a i {
    margin-bottom: 0;
    margin-right: 0.5rem;
  }
  #side_navigation ul li.line a span {
    width: auto;
    padding-right: 0;
  }
  #side_navigation ul li a {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem 0.5rem;
  }
  #side_navigation ul li a i {
    width: auto;
    height: auto;
    margin-bottom: 0.3rem;
  }
  #side_navigation ul li a i svg {
    width: 20px;
    height: 20px;
  }
  #side_navigation ul li a span {
    line-height: 1.3;
    width: auto;
    padding: 0;
  }
  #side_navigation ul li a span.sp {
    display: inline-block !important;
  }
  #side_navigation ul li.campaign,
  #side_navigation ul li.access {
    display: none;
  }
}

/*--------------------------------
	header_nav 変更
--------------------------------*/
#header_nav ul li#header_nav_tel {
  margin-right: 2.4rem;
}
#header_nav ul li#header_nav_tel a {
  display: flex;
  align-items: center;
  pointer-events: auto;
  cursor: pointer;
}
#header_nav ul li#header_nav_tel a img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
#header_nav ul li#header_nav_reserve a {
  background-color: #DD5F7F;
}
@media print, screen and (min-width: 813px) {
  #header_nav ul li#header_nav_reserve a:hover {
    background-color: #BF4161;
  }
}
body.nav-show header #header_nav ul li#header_nav_tel a img,
header.on #header_nav ul li#header_nav_tel a img,
body.no_mainvisual header #header_nav ul li#header_nav_tel a img {
  -webkit-filter: none;
  filter: none;
}

/*--------------------------------
	select language スタイル調整
--------------------------------*/
#header_nav ul li#header_nav_en_pc {
  min-width: 150px;
}
@media print, screen and (min-width: 1200px) {
  #header_nav ul li#header_nav_en_pc {
    min-width: 230px;
  }
}
.goog-te-gadget-simple {
  border: 1px solid var(--grayColor) !important;
  border-radius: 4px !important;
  padding: 0.6rem 1rem !important;
  background-color: var(--whiteColor) !important;
  position: relative !important;
}
.goog-te-gadget-simple span[aria-hidden="true"] {
  font-size: 0 !important;
  color: transparent !important;
}
.goog-te-gadget-simple > span > a::after {
  content: "";
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  width: 11px;
  height: 7px;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='7' viewBox='0 0 11 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.40711 6.80711L0 1.4L1.4 0L5.40711 4.00711L9.41421 0L10.8142 1.4L5.40711 6.80711Z' fill='%23333333'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
}
#\:0\.targetLanguage > span > a > span:nth-child(5)::before {
  content: "Select language";
  font-size: 1.3rem;
  color: #191919 !important;
}
@media print, screen and (max-width: 812px) {
  #\:0\.targetLanguage > span > a > span:nth-child(5)::before {
    font-size: min(1.3rem, 12px);
  }
}