@charset "UTF-8";
/*!
Theme Name: kobayashi_agri_recruit
Theme URI:
Author: 
Author URI: 
Description: 株式会社小林農産リクルートサイト2026年用
Version: 1.0
License: 
License URI:
Tags:

◆00：基本設定
◆10：レイアウト設定
 ◆11 ボディー 
 ◆12 ヘッダー 
 ◆13 グローバルナビ 
 ◆14 キービジュアル 
 ◆15 コンテンツ 
 ◆16 トピックパス 
 ◆17 メインコンテンツ 
 ◆18 サブコンテンツ 
 ◆19 フッター 
 ◆20 サイドバーメニュー 
◆40：各コンテンツ
◆70：WordPress専用
◆80：絶対表記
◆90：プリント用
*/
/* CSS Document */
/*
$wp_c_text: var(--wp--custom_color_text);
$wp_c_link: var(--wp--custom_color_link);
$wp_c_bg: var(--wp--custom_color_bg);
$wp_c_h1: var(--wp--custom_color_h1);
$wp_c_bgh1: var(--wp--custom_color_bgh1);
$wp_c_first: var(--wp--custom_color_first);
$wp_c_second: var(--wp--custom_color_second);
$wp_c_third: var(--wp--custom_color_third);
$wp_c_header_bg: var(--wp--custom_color_header_bg);
$wp_c_header_text: var(--wp--custom_color_header_text);
$wp_c_footer_bg: var(--wp--custom_color_footer_bg);
$wp_c_footer_text: var(--wp--custom_color_footer_text);
*/
html {
  font: 10px/1.6 "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  /* 基本文字設定 */
  *font-size: small;
  /* Win IE7およびWin IE6標準準拠モード向け */
  *font: x-small;
  /* Win IE 5-5.5､6(後方互換モード)向け */
  letter-spacing: 0;
  background-color: #FFF;
  color: #000000;
  font-weight: 300; }
  @media screen and (max-width: 600px) {
    html {
      font: 2.667vw/1.6 "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; } }

/*==============================================
◆00：基本設定
==============================================*/
* {
  outline: none; }

/*リンク*/
a {
  outline: none;
  text-decoration: none;
  display: inline-block;
  color: #0096DF;
  transition: all 300ms ease-in-out; }
  a[href^="tel:"] {
    pointer-events: none;
    color: #000000;
    text-decoration: none; }
    @media screen and (max-width: 600px) {
      a[href^="tel:"] {
        pointer-events: auto;
        color: #0096DF;
        text-decoration: underline; } }
  a:after {
    text-decoration: none; }
  a:hover, a:focus {
    opacity: 0.8; }
    a:hover img, a:focus img {
      opacity: 0.8; }
  a:focus-visible {
    outline: dotted 0.2rem #878787;
    outline-offset: -0.3rem;
    box-shadow: 0 0 0 0.2rem #878787; }
  a img {
    background: url(image/share/transparent.png);
    transition: opacity 300ms ease-in-out; }
  .main-wpcontent a {
    text-decoration: underline; }
    .main-wpcontent a[href^="tel:"] {
      pointer-events: none;
      color: #000000;
      text-decoration: none; }
      @media screen and (max-width: 600px) {
        .main-wpcontent a[href^="tel:"] {
          pointer-events: auto;
          color: #0096DF;
          text-decoration: underline; } }

button:focus-visible {
  outline: dotted 0.2rem #878787;
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.2rem #878787; }

textarea:focus,
input:focus {
  box-shadow: 0 0 0.3rem 0.1rem inset #FFF; }

/*--見出し--*/
#main-h1 {
  position: relative;
  width: 100%;
  margin: 0 auto 2rem;
  padding: 0;
  box-sizing: border-box;
  background-color: #F9F7F1;
  border-radius: 0 0 2rem 2rem; }
  #main-h1__inner {
    width: 100rem;
    padding: 0 4rem;
    box-sizing: border-box;
    margin: 0 auto;
    min-height: 32.8rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-direction: column;
    gap: 2rem; }
    @media screen and (max-width: 1080px) {
      #main-h1__inner {
        width: auto; } }
    @media screen and (max-width: 600px) {
      #main-h1__inner {
        gap: 1rem;
        min-height: 20rem;
        padding: 0 2rem; } }
  #main-h1--title {
    font-size: 4rem;
    font-weight: 300;
    color: #878787;
    line-height: 1.5;
    letter-spacing: 0;
    margin: 0; }
    @media screen and (max-width: 600px) {
      #main-h1--title {
        font-size: 3rem; } }
    #main-h1--title--en {
      color: #C9AD76;
      font-size: 1.6rem;
      font-weight: 300;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0; }

.main-wpcontent h2 {
  position: relative;
  font-size: 2.8rem;
  color: #000000;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 300;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 8rem 0 4rem;
  padding: 0 0 4rem; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h2 {
      margin-top: 6rem; } }
  .main-wpcontent h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #C9AD76;
    width: 10rem;
    height: 0.2rem; }
  .main-wpcontent h2.style-none {
    border: none;
    padding: 0; }
  .main-wpcontent h2.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h2.has-text-align-center {
    text-align: center; }
  .main-wpcontent h2.has-text-align-right {
    text-align: right; }

.main-wpcontent h3 {
  font-size: 2.4rem;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 8rem 0 3rem;
  padding: 2rem 3rem;
  border-top: 0.1rem solid #CCC;
  border-bottom: 0.1rem solid #CCC;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h3 {
      margin-top: 6rem;
      padding: 3rem 1rem; } }
  .main-wpcontent h3.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h3.has-text-align-center {
    text-align: center; }
  .main-wpcontent h3.has-text-align-right {
    text-align: right; }

.main-wpcontent h4 {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 8rem 0 3rem;
  padding: 2rem;
  background-color: #F9F7F1;
  border-radius: 1rem;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h4 {
      margin-top: 6rem; } }
  .main-wpcontent h4.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h4.has-text-align-center {
    text-align: center; }
  .main-wpcontent h4.has-text-align-right {
    text-align: right; }

.main-wpcontent h5 {
  position: relative;
  font-size: 2rem;
  font-weight: 300;
  color: #000000;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 8rem 0 2rem;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h5 {
      margin-top: 6rem; } }
  .main-wpcontent h5.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h5.has-text-align-center {
    text-align: center; }
  .main-wpcontent h5.has-text-align-right {
    text-align: right; }

.main-wpcontent h6 {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 8rem 0 1.5rem; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h6 {
      margin-top: 6rem; } }
  .main-wpcontent h6.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h6.has-text-align-center {
    text-align: center; }
  .main-wpcontent h6.has-text-align-right {
    text-align: right; }

.main-wpcontent h2 + h3,
.main-wpcontent h2 + section > h3:first-child,
.main-wpcontent > h2:first-child,
h2:first-child,
h2 + table {
  margin-top: 0; }

.main-wpcontent h3 + h4,
.main-wpcontent h3 + section > h4:first-child,
.main-wpcontent > h3:first-child,
h3:first-child,
h3 + table {
  margin-top: 0; }

.main-wpcontent h4 + h5,
.main-wpcontent h4 + section > h5:first-child,
.main-wpcontent > h4:first-child,
h4:first-child,
h4 + table {
  margin-top: 0; }

.main-wpcontent h5 + h6,
.main-wpcontent h5 + section > h6:first-child,
.main-wpcontent > h5:first-child,
h5:first-child,
h5 + table {
  margin-top: 0; }

.main-wpcontent h6 + h7,
.main-wpcontent h6 + section > h7:first-child,
.main-wpcontent > h6:first-child,
h6:first-child,
h6 + table {
  margin-top: 0; }

/* セクション */
section {
  margin: 8rem 0; }
  @media screen and (max-width: 600px) {
    section {
      margin-top: 6rem;
      margin-bottom: 6rem; } }
  section:first-child {
    margin-top: 0; }
  section:last-child {
    margin-bottom: 0; }

/*--リスト--*/
.main-wpcontent ul, .main-wpcontent ol, .main-wpcontent dl {
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 2.6666666667rem 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul, .main-wpcontent ol, .main-wpcontent dl {
      margin: 2.25rem 0; } }

.main-wpcontent ul > li dl, .main-wpcontent ul > li ul, .main-wpcontent ul > li ol, .main-wpcontent ol > li dl, .main-wpcontent ol > li ul, .main-wpcontent ol > li ol, .main-wpcontent dl dd dl, .main-wpcontent dl dd ul, .main-wpcontent dl dd ol {
  margin: 1.5rem 0 0; }

.main-wpcontent ul {
  list-style-type: none; }
  .main-wpcontent ul > li {
    line-height: 1.625;
    position: relative;
    margin: 0 0 0 3.6rem;
    padding: 0 0 2rem 0;
    word-break: break-all;
    font-weight: 300; }
    @media screen and (max-width: 600px) {
      .main-wpcontent ul > li {
        margin: 0 0 0 2.4rem; } }
    .main-wpcontent ul > li ol {
      list-style: decimal; }
    .main-wpcontent ul > li::before {
      position: absolute;
      content: "";
      display: block;
      background-color: #C9AD76;
      width: 0.8rem;
      height: 0.8rem;
      border-radius: 50%;
      left: -2rem;
      top: 0.7em; }
    .main-wpcontent ul > li::marker {
      color: #C9AD76;
      line-height: 1.625;
      font-weight: 300;
      letter-spacing: 0; }
    .main-wpcontent ul > li:last-child {
      padding-bottom: 0; }

ol {
  list-style-type: decimal; }
  .main-wpcontent ol > li {
    line-height: 1.625;
    position: relative;
    margin: 0 0 0 2.6rem;
    padding: 0 0 2rem 1rem;
    word-break: break-all;
    font-weight: 300; }
    @media screen and (max-width: 600px) {
      .main-wpcontent ol > li {
        margin: 0 0 0 2.4rem; } }
    .main-wpcontent ol > li ol {
      list-style: decimal; }
    .main-wpcontent ol > li::marker {
      color: #C9AD76;
      line-height: 1.625;
      font-weight: 300;
      letter-spacing: 0; }
    .main-wpcontent ol > li:last-child {
      padding-bottom: 0; }

.main-wpcontent dl dt {
  font-weight: 700;
  margin: 0 0 0.5em;
  padding: 0; }
.main-wpcontent dl dd {
  margin: 0;
  padding: 0; }
  .main-wpcontent dl dd:last-child {
    margin-bottom: 0; }

/* --TABLE-- */
table {
  min-width: 100%;
  font-size: 100%;
  margin: 0 auto;
  background-color: #FFF; }
  table thead {
    border-bottom: 0.2rem solid #CCC; }
  table tr {
    position: relative;
    border-bottom: 0.1rem solid #CCC; }
  table th, table td {
    text-align: justify;
    text-justify: inter-ideograph;
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
    vertical-align: top;
    color: #000000;
    overflow-wrap: break-word;
    padding: 1rem 1rem;
    min-width: 10rem;
    max-width: 40rem;
    box-sizing: border-box; }
    @media screen and (max-width: 600px) {
      table th, table td {
        min-width: 13rem;
        max-width: 45rem; } }
  table dl:last-child,
  table ul:last-child,
  table p:last-child {
    margin-bottom: 0; }

.responsive-table {
  width: 100%;
  overflow-y: hidden;
  overflow-x: auto;
  scrollbar-width: 0.5rem;
  /* Firefox */ }
  .responsive-table::-webkit-scrollbar {
    height: 1rem; }
  .responsive-table::-webkit-scrollbar-track {
    background: #CCC; }
  .responsive-table::-webkit-scrollbar-thumb {
    background: #C9AD76;
    border-radius: 0.5rem; }

/* --OTHER TAGS-- */
abbr, acronym {
  border-bottom: 0.1rem dotted;
  cursor: help; }

blockquote {
  background-color: #FFF;
  font-style: normal;
  font-weight: 400;
  text-align: justify;
  padding: 2rem 3rem;
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    blockquote {
      margin-top: 2.25rem;
      margin-bottom: 2.25rem;
      padding: 1.2rem 1.5rem; } }
  blockquote dl:last-child,
  blockquote ul:last-child,
  blockquote p:last-child {
    margin-bottom: 0; }

small {
  font-size: 70%; }

em, span.em {
  color: #EB342D;
  font-weight: 500;
  font-style: normal;
  border-style: none; }

strong {
  font-weight: 500;
  font-style: normal;
  border-style: none; }

code {
  color: #000000;
  padding: 0;
  background: #FFF;
  border-radius: 0; }

pre {
  margin: 0;
  white-space: pre;
  tab-size: 2; }

p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.5;
  /* 150% */
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  background-image: url(image/share/transparent.png);
  margin-bottom: 1.5em; }
  p:last-child {
    margin-bottom: 0; }

hr {
  display: block; }
  @media screen and (max-width: 600px) {
    hr {
      margin-top: 4.5rem;
      margin-bottom: 4.5rem; } }

figure {
  margin: 4rem auto;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figure {
      margin-top: 2.25rem;
      margin-bottom: 2.25rem; } }

figcaption {
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.5;
  font-weight: 300;
  color: #000000;
  margin: 1rem 0 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figcaption {
      font-size: 1.2rem; } }

address {
  font-style: normal; }

details {
  margin: 0 0 3rem; }
  details:focus-visible {
    outline: dotted 0.2rem #878787;
    outline-offset: 0.3rem;
    box-shadow: 0 0 0 0.2rem #F9F7F1;
    opacity: 0.8; }
  details > summary {
    position: relative;
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
    color: #000000;
    padding: 2rem 2rem 2rem 5.4rem;
    border-bottom: 0.1rem solid #CCC;
    list-style: none; }
    details > summary::-webkit-details-marker {
      display: none; }
    details > summary:hover {
      cursor: pointer; }
    details > summary:focus-visible {
      outline: dotted 0.2rem #878787;
      outline-offset: -0.3rem;
      box-shadow: 0 0 0 0.3rem #878787; }
    @media screen and (max-width: 600px) {
      details > summary {
        font-size: 1.6rem;
        padding: 1rem 1.5rem 1rem 4.5rem; } }
    .main-wpcontent details > summary + h1, .main-wpcontent details > summary + h2, .main-wpcontent details > summary + h3, .main-wpcontent details > summary + h4, .main-wpcontent details > summary + h5, .main-wpcontent details > summary + h6 {
      margin-top: 4rem; }
      @media screen and (max-width: 600px) {
        .main-wpcontent details > summary + h1, .main-wpcontent details > summary + h2, .main-wpcontent details > summary + h3, .main-wpcontent details > summary + h4, .main-wpcontent details > summary + h5, .main-wpcontent details > summary + h6 {
          margin-top: 2.25rem; } }
    details > summary::before, details > summary::after {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 2rem;
      margin: auto;
      content: "";
      width: 1.4rem;
      height: 0.2rem;
      background-color: #C9AD76;
      transition: all 300ms ease-in-out; }
    details > summary::after {
      transform: rotate(90deg); }
  details.has-text-color > summary {
    color: inherit; }
  details[open] {
    padding: 0 0 2rem; }
    @media screen and (max-width: 600px) {
      details[open] {
        padding-bottom: 1.6rem; } }
    details[open] > * {
      margin: 2rem 2rem 0; }
      @media screen and (max-width: 600px) {
        details[open] > * {
          margin: 1.6rem 1.6rem 0; } }
    details[open] > summary {
      margin: 0; }
      details[open] > summary::after {
        -webkit-transform: rotate3d(1, 0, 0, 180deg);
        transform: rotate3d(1, 0, 0, 180deg); }

/* clearfix */
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }

.pc-none {
  display: none; }
  @media screen and (max-width: 600px) {
    .pc-none {
      display: block; } }

.sp-none {
  display: block; }
  @media screen and (max-width: 600px) {
    .sp-none {
      display: none; } }

@media screen and (max-width: 600px) {
  .pc-br {
    display: none; } }

.sp-br {
  display: none; }
  @media screen and (max-width: 600px) {
    .sp-br {
      display: inline-block; } }

.fw_bold {
  font-weight: 700; }

.ib {
  display: inline-block; }

@media screen and (max-width: 600px) {
  .sp-ib {
    display: inline-block; } }

.radius-50 {
  border-radius: 9999px; }

.mb00 {
  margin-bottom: 0 !important; }
  .mb00 + * {
    margin-top: 0 !important; }

.mt00 {
  margin-top: 0 !important; }

.mt10 {
  margin-top: 1rem !important; }
  @media screen and (max-width: 600px) {
    .mt10 {
      margin-top: 1rem !important; } }

.mt20 {
  margin-top: 2rem !important; }

.pt00 {
  padding-top: 0 !important; }

.pt05 {
  padding-top: 0.5rem !important; }

.pt10 {
  padding-top: 1rem !important; }

.pb00 {
  padding-bottom: 0 !important; }

.pb05 {
  padding-bottom: 0.5rem !important; }

.pb10 {
  padding-bottom: 1rem !important; }

/*==============================================
◆10：レイアウト設定
==============================================*/
/* ◆11 ボディー */
body {
  background-color: #FFF;
  color: #000000; }

#mainScroll {
  position: relative;
  margin: 0 auto;
  padding: 0;
  z-index: 300; }

#mainScroll.blur {
  -ms-filter: blur(0.4rem);
  filter: blur(0.4rem); }
  @media screen and (max-width: 600px) {
    #mainScroll.blur {
      -ms-filter: none;
      filter: none; } }

/* ◆12 ヘッダー */
#header {
  /*  position: fixed;
    width: 100%;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;*/
  position: sticky;
  top: 0;
  z-index: 400;
  background-color: #FFF;
  box-shadow: 0 0.4rem 0.4rem 0 rgba(204, 204, 204, 0.25);
  color: #000000; }
  #header__inner {
    width: 100rem;
    height: 14rem;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box; }
    @media screen and (max-width: 1080px) {
      #header__inner {
        width: 100%;
        height: 7.3rem; } }
  #header #header-top {
    display: flex;
    justify-content: space-between;
    align-content: center;
    align-items: center; }
    #header #header-top #identity-area {
      flex: 0 0 31rem;
      line-height: 1; }
      @media screen and (max-width: 1080px) {
        #header #header-top #identity-area {
          margin: 0 0 0 2rem; } }
      @media screen and (max-width: 600px) {
        #header #header-top #identity-area {
          flex: 0 0 27.7rem;
          margin: 0 0 0 2rem; } }
      #header #header-top #identity-area h1 {
        font-size: 0;
        line-height: 0;
        letter-spacing: 0;
        margin: 0;
        padding: 0;
        display: inline; }
      #header #header-top #identity-area a {
        display: block; }
      #header #header-top #identity-area img {
        display: block;
        width: 100%;
        height: auto; }
        @media screen and (max-width: 1080px) {
          #header #header-top #identity-area img {
            width: 27.7rem; } }
    #header #header-top .global-form {
      flex: 0 0 32rem; }
      @media screen and (max-width: 1080px) {
        #header #header-top .global-form {
          display: none; } }
      #header #header-top .global-form ul {
        display: flex; }
        #header #header-top .global-form ul a {
          width: 16rem;
          height: 8rem;
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 1rem; }
          #header #header-top .global-form ul a::before, #header #header-top .global-form ul a::after {
            content: "";
            display: inline-block;
            width: 2.1rem;
            height: 2.1rem; }
        #header #header-top .global-form ul a.global-form--contact {
          background: #C0C0C0; }
          #header #header-top .global-form ul a.global-form--contact::before {
            background-image: url("image/share/icon-mail.svg");
            background-size: contain; }
          #header #header-top .global-form ul a.global-form--contact::after {
            content: none; }
        #header #header-top .global-form ul a.global-form--reserve {
          background: #93D9F1; }
          #header #header-top .global-form ul a.global-form--reserve::before {
            background-image: url("image/share/icon-camera.svg");
            background-size: contain; }
          #header #header-top .global-form ul a.global-form--reserve::after {
            background-image: url("image/share/icon-external.svg");
            background-size: contain; }
        #header #header-top .global-form ul .global-form--text {
          color: #FFF;
          font-size: 1.6rem;
          font-weight: 500;
          line-height: 1.3;
          /* 100% */
          letter-spacing: 0; }
  #header a:focus-visible {
    outline: dotted 0.2rem #878787;
    outline-offset: -0.2rem;
    box-shadow: 0 0 0 0.2rem #878787;
    opacity: 1; }

#menu-button--close,
#menu-button {
  position: relative;
  display: none;
  width: 7.6rem;
  height: 7.3rem;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  border-radius: 0;
  transition: all 300ms ease-in-out;
  font-size: 1.2rem;
  line-height: 1;
  color: #C9AD76;
  font-weight: 700; }
  #menu-button--close:hover,
  #menu-button:hover {
    cursor: pointer; }
  @media screen and (max-width: 1080px) {
    #menu-button--close,
    #menu-button {
      display: block; } }
  @media screen and (max-width: 600px) {
    #menu-button--close,
    #menu-button {
      width: 6.7rem;
      height: 7.3rem; } }
  #menu-button--close .top-main--menu--line,
  #menu-button--close .menu--line,
  #menu-button .top-main--menu--line,
  #menu-button .menu--line {
    position: absolute;
    display: block;
    width: 3.6rem;
    height: 0.1rem;
    background-color: #C9AD76;
    left: 50%;
    top: 3.65rem;
    border-radius: 99999px;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    transition: all 300ms ease-in-out;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line,
      #menu-button--close .menu--line,
      #menu-button .top-main--menu--line,
      #menu-button .menu--line {
        top: 3.65rem;
        width: 3.6rem;
        height: 0.1rem; } }
  #menu-button--close .top-main--menu--line--top,
  #menu-button--close .menu--line--top,
  #menu-button .top-main--menu--line--top,
  #menu-button .menu--line--top {
    -webkit-transform: translate(-50%, -0.95rem);
    transform: translate(-50%, -0.95rem); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line--top,
      #menu-button--close .menu--line--top,
      #menu-button .top-main--menu--line--top,
      #menu-button .menu--line--top {
        -webkit-transform: translate(-50%, -1rem);
        transform: translate(-50%, -1rem); } }
  #menu-button--close .top-main--menu--line--bottom,
  #menu-button--close .menu--line--bottom,
  #menu-button .top-main--menu--line--bottom,
  #menu-button .menu--line--bottom {
    -webkit-transform: translate(-50%, 0.95rem);
    transform: translate(-50%, 0.95rem); }
    @media screen and (max-width: 600px) {
      #menu-button--close .top-main--menu--line--bottom,
      #menu-button--close .menu--line--bottom,
      #menu-button .top-main--menu--line--bottom,
      #menu-button .menu--line--bottom {
        -webkit-transform: translate(-50%, 1rem);
        transform: translate(-50%, 1rem); } }
  #menu-button--close.active .menu--line--top,
  #menu-button.active .menu--line--top {
    -webkit-transform: translate(-50%, 0) rotate(35deg);
    transform: translate(-50%, 0) rotate(35deg); }
  #menu-button--close.active .menu--line--middle,
  #menu-button.active .menu--line--middle {
    opacity: 0; }
  #menu-button--close.active .menu--line--bottom,
  #menu-button.active .menu--line--bottom {
    -webkit-transform: translate(-50%, 0) rotate(-35deg);
    transform: translate(-50%, 0) rotate(-35deg); }

#menu-button--close .menu--line--top {
  -webkit-transform: translate(-50%, 0) rotate(35deg);
  transform: translate(-50%, 0) rotate(35deg); }
#menu-button--close .menu--line--middle {
  opacity: 0; }
#menu-button--close .menu--line--bottom {
  -webkit-transform: translate(-50%, 0) rotate(-35deg);
  transform: translate(-50%, 0) rotate(-35deg); }

/* ◆13 グローバルナビ */
#global-area {
  position: relative;
  margin: 0 0 auto;
  padding: 0;
  height: 6rem;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 1080px) {
    #global-area {
      display: none; } }
  #global-area__inner {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center; }

.global-nav {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center; }
  .global-nav > li {
    flex: 0 0 auto;
    text-align: center;
    margin: 0; }
    .global-nav > li > a {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 7.5rem;
      padding: 1rem 2.5rem 0;
      align-items: center;
      font-size: 1.2rem;
      font-weight: 300;
      line-height: 1.5;
      letter-spacing: 0;
      color: #000000;
      box-sizing: border-box;
      transition: all 300ms ease-in-out; }
      .global-nav > li > a:hover {
        color: #C9AD76; }
    .global-nav > li .sub-menu {
      width: 0;
      height: 0;
      opacity: 0;
      visibility: hidden;
      background-color: #FFF;
      border-radius: 1rem;
      box-shadow: 0 0 0.4rem 0 #878787;
      display: flex;
      flex-wrap: wrap;
      gap: 1rem 2rem;
      transition: opacity 300ms ease-in-out; }
      .global-nav > li .sub-menu * {
        height: 0;
        overflow: hidden; }
      .global-nav > li .sub-menu > li a {
        width: 22rem;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1rem; }
        .global-nav > li .sub-menu > li a img {
          flex: 0 0 10rem;
          height: auto; }
        .global-nav > li .sub-menu > li a span {
          flex: 0 0 11rem;
          font-size: 1.2rem;
          font-weight: 300;
          line-height: 1.5;
          letter-spacing: 0;
          text-align: justify;
          text-justify: inter-ideograph;
          transition: all 300ms ease-in-out;
          color: #000000; }
        .global-nav > li .sub-menu > li a:hover span {
          color: #C9AD76; }
      .global-nav > li .sub-menu > li:last-child > a {
        margin: 0; }
  .global-nav > li.menu-item-has-children > a::after {
    content: "";
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    margin: 0.5rem 0 0;
    background: url("image/share/icon-arrow-down.svg") center center no-repeat;
    background-size: contain; }
  .global-nav > li.menu-item-has-children:hover > .sub-menu {
    position: absolute;
    top: 7.5rem;
    left: 0;
    width: 100rem;
    height: auto;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    margin: 0;
    padding: 2rem; }
    .global-nav > li.menu-item-has-children:hover > .sub-menu * {
      height: auto;
      overflow: visible; }
  .global-nav > li.menu-item-has-children button {
    display: none; }

#global-area-sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    #global-area-sp {
      display: block;
      position: fixed;
      top: 0;
      right: -70rem;
      max-width: 40rem;
      width: 100%;
      height: 100vh;
      padding: 0 0 4rem;
      z-index: 1100;
      background-color: #FFF;
      transition: all 0 ease-in-out;
      overflow: hidden;
      text-align: center;
      overflow-y: auto;
      overflow-x: hidden;
      box-shadow: 0 0.3rem 0.3rem 0 rgba(0, 0, 0, 0.2);
      opacity: 0; } }
  @media screen and (max-width: 600px) {
    #global-area-sp {
      max-width: 24.9rem;
      padding: 0 0 2rem; } }
  #global-area-sp::-webkit-scrollbar {
    width: 0.2rem; }
  #global-area-sp::-webkit-scrollbar-track {
    background: #FFF;
    border-radius: 0.1rem; }
  #global-area-sp::-webkit-scrollbar-thumb {
    background: #F9F7F1;
    border-radius: 0.1rem; }
  #global-area-sp.active {
    opacity: 0.95;
    right: 0; }
    #global-area-sp.active * {
      opacity: 1; }
  #global-area-sp__inner {
    position: relative;
    padding: 0;
    min-height: 100%; }
  #global-area-sp #identity-area-sp {
    position: sticky;
    top: 0;
    padding: 0 0 0 4rem;
    height: 7.3rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    align-content: center;
    z-index: 300;
    color: #000000; }
    @media screen and (max-width: 600px) {
      #global-area-sp #identity-area-sp {
        padding: 0 0 0 2rem; } }
  #global-area-sp a:focus-visible {
    outline: dotted 0.2rem #878787;
    outline-offset: -0.3rem;
    color: #C9AD76;
    box-shadow: none;
    opacity: 1; }

.global-nav-sp {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem 0;
  z-index: 200;
  padding: 0 4rem;
  margin: 4rem 0 8rem; }
  @media screen and (max-width: 600px) {
    .global-nav-sp {
      margin-top: 2rem;
      padding: 0 2rem;
      gap: 2rem 0; } }
  .global-nav-sp > li {
    text-align: justify;
    text-justify: inter-ideograph;
    margin: 0;
    padding: 0; }
    .global-nav-sp > li > a {
      position: relative;
      margin: 0;
      padding: 0;
      width: 100%;
      box-sizing: border-box;
      font-size: 1.4rem;
      letter-spacing: 0;
      line-height: 1.5;
      font-weight: 300;
      color: #000000; }
  .global-nav-sp--child {
    position: absolute;
    top: 50%;
    right: 1rem;
    width: 4rem;
    height: 4rem;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%); }
    @media screen and (max-width: 600px) {
      .global-nav-sp--child {
        right: 0.5rem;
        width: 4rem;
        height: 4rem; } }
    .global-nav-sp--child:focus-visible {
      outline: dotted 0.2rem #878787;
      outline-offset: 0.2rem;
      color: #C9AD76;
      box-shadow: none; }
    .global-nav-sp--child::before, .global-nav-sp--child::after {
      content: "";
      display: block;
      position: absolute;
      width: 2rem;
      height: 0.2rem;
      background-color: #CCC;
      right: 0;
      top: 50%;
      -webkit-transform: translate(-25%, -50%);
      transform: translate(-25%, -50%);
      transition: all 300ms ease-in-out; }
      @media screen and (max-width: 600px) {
        .global-nav-sp--child::before, .global-nav-sp--child::after {
          width: 1.5rem; } }
    .global-nav-sp--child::before {
      -webkit-transform: translate(-25%, -50%) rotate(90deg);
      transform: translate(-25%, -50%) rotate(90deg); }
    .global-nav-sp--child.active::before {
      opacity: 0;
      -webkit-transform: translate(0, -50%) rotate(0);
      transform: translate(0, -50%) rotate(0); }
  .global-nav-sp .sub-menu {
    display: none;
    margin: 0;
    padding: 3rem 0 0; }
    @media screen and (max-width: 600px) {
      .global-nav-sp .sub-menu {
        padding-top: 2rem; } }
    .global-nav-sp .sub-menu > li {
      margin: 0 0 1.5rem; }
      @media screen and (max-width: 600px) {
        .global-nav-sp .sub-menu > li {
          margin-bottom: 1rem; } }
      .global-nav-sp .sub-menu > li:last-child {
        margin: 0; }
      .global-nav-sp .sub-menu > li > a {
        display: flex;
        gap: 0 3rem;
        align-items: center;
        align-content: center;
        width: 100%;
        box-sizing: border-box; }
        @media screen and (max-width: 600px) {
          .global-nav-sp .sub-menu > li > a {
            gap: 0 1rem; } }
        .global-nav-sp .sub-menu > li > a img {
          flex: 0 0 6rem;
          height: auto; }
          @media screen and (max-width: 600px) {
            .global-nav-sp .sub-menu > li > a img {
              flex: 0 0 4rem; } }
        .global-nav-sp .sub-menu > li > a span {
          flex: 1 1 auto;
          font-size: 1.4rem;
          font-weight: 300;
          line-height: 1.5;
          letter-spacing: 0;
          color: #000000; }
          @media screen and (max-width: 600px) {
            .global-nav-sp .sub-menu > li > a span {
              font-size: 1.2rem; } }
        .global-nav-sp .sub-menu > li > a:hover span {
          color: #C9AD76; }
          @media screen and (max-width: 600px) {
            .global-nav-sp .sub-menu > li > a:hover span {
              opacity: 1; } }
        .global-nav-sp .sub-menu > li > a:focus-visible {
          outline: dotted 0.2rem #878787;
          outline-offset: -0.3rem;
          color: #C9AD76;
          box-shadow: none;
          opacity: 0.8; }

#bottom-area-sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    #bottom-area-sp {
      display: block;
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 2000; } }

#bottom-nav-sp-list {
  display: flex;
  flex-wrap: nowrap; }
  #bottom-nav-sp-list li {
    flex: 0 0 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 6rem; }
    #bottom-nav-sp-list li a {
      display: flex;
      width: 100%;
      height: 6rem;
      justify-content: center;
      align-content: center;
      align-items: center;
      gap: 1rem; }
      #bottom-nav-sp-list li a span {
        color: #FFF;
        font-size: 1.6rem;
        font-weight: 500;
        line-height: 1.3;
        /* 100% */
        letter-spacing: 0; }
      #bottom-nav-sp-list li a::before, #bottom-nav-sp-list li a::after {
        content: "";
        display: inline-block;
        width: 2.1rem;
        height: 2.1rem; }
    #bottom-nav-sp-list li.bottom-nav-sp--contact {
      background-color: #C0C0C0; }
      #bottom-nav-sp-list li.bottom-nav-sp--contact a::before {
        background-image: url("image/share/icon-mail.svg");
        background-size: contain; }
      #bottom-nav-sp-list li.bottom-nav-sp--contact a::after {
        content: none; }
    #bottom-nav-sp-list li.bottom-nav-sp--reserve {
      background-color: #93D9F1; }
      #bottom-nav-sp-list li.bottom-nav-sp--reserve a::before {
        background-image: url("image/share/icon-camera.svg");
        background-size: contain; }
      #bottom-nav-sp-list li.bottom-nav-sp--reserve a::after {
        background-image: url("image/share/icon-external.svg");
        background-size: contain; }

/* ◆14 キービジュアル */
#main-visual {
  background-color: #F9F7F1; }

#main-visual__inner {
  margin: 0 auto;
  display: flex;
  gap: 0 4rem;
  justify-content: center;
  align-content: center;
  align-items: center;
  max-width: 100rem;
  width: 100%;
  height: auto; }
  @media screen and (max-width: 1080px) {
    #main-visual__inner {
      flex-direction: column;
      height: auto;
      gap: 0;
      padding: 0;
      max-width: inherit; } }
  #main-visual__inner .main-visual-textarea {
    flex: 1 1 46rem;
    margin: 5rem auto; }
    @media screen and (max-width: 1080px) {
      #main-visual__inner .main-visual-textarea {
        width: 100%;
        flex: 0 1 auto;
        padding: 0 4rem; } }
    @media screen and (max-width: 600px) {
      #main-visual__inner .main-visual-textarea {
        margin: 0;
        width: 100%;
        padding: 3rem 2rem; } }
    #main-visual__inner .main-visual-textarea-title--en {
      color: #C9AD76;
      font-family: "Montserrat", sans-serif;
      font-size: 5.5rem;
      font-weight: 700;
      line-height: 1.2;
      /* 145.455% */
      letter-spacing: 0;
      margin: 0 0 0.5rem;
      text-align: left; }
      @media screen and (max-width: 600px) {
        #main-visual__inner .main-visual-textarea-title--en {
          font-size: 5rem;
          line-height: 1;
          margin-bottom: 1.6rem; } }
    #main-visual__inner .main-visual-textarea-title--jp {
      color: #000000;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0;
      position: relative;
      padding: 0 0 3rem;
      margin: 0 0 3rem; }
      @media screen and (max-width: 600px) {
        #main-visual__inner .main-visual-textarea-title--jp {
          font-weight: 500;
          font-size: 2rem;
          padding-bottom: 2rem;
          margin-bottom: 2rem; } }
      #main-visual__inner .main-visual-textarea-title--jp::before, #main-visual__inner .main-visual-textarea-title--jp::after {
        content: "";
        position: absolute;
        bottom: 0;
        width: 4rem;
        height: 0.4rem; }
      #main-visual__inner .main-visual-textarea-title--jp::before {
        left: 0;
        background-color: #C9AD76; }
      #main-visual__inner .main-visual-textarea-title--jp::after {
        background-color: #FF801E;
        left: 4rem; }
    #main-visual__inner .main-visual-textarea .main-visual-interveiw-title {
      color: #000000;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      /* 150% */ }
      @media screen and (max-width: 600px) {
        #main-visual__inner .main-visual-textarea .main-visual-interveiw-title {
          font-weight: 500;
          font-size: 2rem; } }
    #main-visual__inner .main-visual-textarea--overview {
      font-size: 1.4rem;
      font-weight: 400;
      line-height: 1.5;
      /* 150% */
      letter-spacing: 0; }
      @media screen and (max-width: 600px) {
        #main-visual__inner .main-visual-textarea--overview {
          margin-top: 3rem;
          font-size: 1.4rem; } }
  #main-visual__inner .main-visual-imgarea {
    flex: 1 1 50rem;
    width: 100%; }
    @media screen and (max-width: 1080px) {
      #main-visual__inner .main-visual-imgarea {
        flex: 0 1 auto; } }
    @media screen and (max-width: 600px) {
      #main-visual__inner .main-visual-imgarea {
        width: 100%; } }
    #main-visual__inner .main-visual-imgarea img {
      height: 34rem;
      width: auto; }
      @media screen and (max-width: 1080px) {
        #main-visual__inner .main-visual-imgarea img {
          width: 100%;
          height: auto; } }

/* ◆15 コンテンツ */
#contents-area {
  position: relative; }

/* ◆16 トピックパス */
#breadcrumb__outer {
  max-width: 100rem;
  margin: 0 auto 12rem;
  padding: 0;
  box-sizing: border-box; }
  @media screen and (max-width: 1080px) {
    #breadcrumb__outer {
      padding-left: 4rem;
      padding-right: 4rem; } }
  @media screen and (max-width: 600px) {
    #breadcrumb__outer {
      padding-left: 2rem;
      padding-right: 2rem;
      margin-bottom: 4.5rem; } }

#breadcrumb {
  margin: 0;
  padding: 0;
  color: #878787;
  font-size: 1.2rem;
  font-weight: 300;
  text-align: left;
  line-height: 1.5; }
  @media screen and (max-width: 600px) {
    #breadcrumb {
      line-height: 1.5; } }
  #breadcrumb span::before {
    content: "";
    display: inline-block;
    width: 1.8rem;
    height: 1.8rem;
    background-image: url("image/share/icon-arrow-right-gray.svg");
    background-size: contain;
    vertical-align: bottom;
    margin: 0 0.8rem; }
  #breadcrumb span:first-child::before,
  #breadcrumb span span::before {
    content: none; }
  #breadcrumb a {
    color: #878787;
    display: inline-block;
    text-decoration: none; }
    #breadcrumb a:hover {
      text-decoration: underline; }

/* ◆17 メインコンテンツ */
#main-area {
  position: relative;
  width: 100rem;
  margin: 0 auto;
  padding: 0 0 16rem;
  box-sizing: border-box;
  font-size: 1.6rem;
  line-height: 1.75;
  z-index: 20; }
  @media screen and (max-width: 1080px) {
    #main-area {
      width: auto;
      padding: 0 4rem 16rem; } }
  @media screen and (max-width: 600px) {
    #main-area {
      font-size: 1.6rem;
      padding: 0 2rem 10rem; } }

/* ◆18 サブコンテンツ */
/* ◆19 フッター */
#footer {
  /*  position: relative;*/
  background-color: #FFF;
  color: #000000;
  margin: 5rem 0 0;
  padding: 0;
  z-index: 30;
  /*
    a {
      color: $c_footer_text;
      &:focus-visible {
        outline: dotted 0.1rem $c_footer_text;
        //outline-offset: -0.2rem;
        color: $c_footer_text;
        box-shadow: 0 0 0 0.2rem $c_footer_text;
      }
    }*/ }
  @media screen and (max-width: 1080px) {
    #footer {
      margin: 4.3rem 0 7rem; } }
  #footer__inner {
    width: 100%;
    max-width: 100rem;
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    column-gap: 4rem; }
    @media screen and (max-width: 1080px) {
      #footer__inner {
        display: block;
        width: auto; } }
    @media screen and (max-width: 600px) {
      #footer__inner {
        padding: 0 2rem; } }

#footer-companyarea {
  flex: 0 0 31rem; }
  @media screen and (max-width: 1080px) {
    #footer-companyarea {
      margin: 0 auto;
      width: 27.5rem; } }
  @media screen and (max-width: 600px) {
    #footer-companyarea {
      width: 100%; } }
  #footer-companyarea address .footer-logo {
    width: 31rem;
    margin: 0 0  2rem; }
    @media screen and (max-width: 1080px) {
      #footer-companyarea address .footer-logo {
        width: 27.5rem;
        margin: 0 auto  2rem; } }
    #footer-companyarea address .footer-logo img {
      width: 100%;
      height: auto; }
  #footer-companyarea address .footer-address dl {
    margin: 0 0 2.5rem;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #footer-companyarea address .footer-address dl {
        margin-bottom: 2rem; } }
    #footer-companyarea address .footer-address dl div {
      display: flex; }
      @media screen and (max-width: 1080px) {
        #footer-companyarea address .footer-address dl div {
          justify-content: center; } }
      #footer-companyarea address .footer-address dl div dt {
        display: inline-block;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1.5;
        letter-spacing: 0;
        color: #000000; }
        @media screen and (max-width: 1080px) {
          #footer-companyarea address .footer-address dl div dt {
            font-size: 1.4rem; } }
      #footer-companyarea address .footer-address dl div dd {
        display: inline-block;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1.5;
        letter-spacing: 0;
        color: #000000; }
        @media screen and (max-width: 1080px) {
          #footer-companyarea address .footer-address dl div dd {
            font-size: 1.4rem; } }
        #footer-companyarea address .footer-address dl div dd:last-child {
          display: block; }
      #footer-companyarea address .footer-address dl div.footer-address--address dt {
        display: none; }
      #footer-companyarea address .footer-address dl div.footer-address--tel dt::after {
        content: "."; }
      #footer-companyarea address .footer-address dl div.footer-address--time dt::after {
        content: "："; }
  #footer-companyarea .footer-insta {
    margin: 0 0 2.5rem; }
    @media screen and (max-width: 1080px) {
      #footer-companyarea .footer-insta {
        text-align: center;
        margin-bottom: 2rem; } }
  @media screen and (max-width: 1080px) {
    #footer-companyarea .footer-policy {
      text-align: center; } }
  #footer-companyarea .footer-policy a {
    margin: 0 auto;
    color: #000000;
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0; }
    #footer-companyarea .footer-policy a:hover {
      color: #C9AD76; }

#footer-navarea {
  flex: 0 0 34.8rem;
  border-left: 0.1rem solid #CCC;
  border-right: 0.1rem solid #CCC; }
  @media screen and (max-width: 1080px) {
    #footer-navarea {
      display: none; } }
  #footer-navarea nav > ul {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 20rem;
    gap: 3rem 6rem;
    padding: 0 4rem; }
    #footer-navarea nav > ul > li > a {
      color: #000000;
      font-size: 1.2rem;
      font-weight: 300;
      line-height: 1.5;
      letter-spacing: 0; }
      #footer-navarea nav > ul > li > a:hover {
        color: #C9AD76; }
    #footer-navarea nav > ul > li.footer-nav--submenu > a {
      font-size: 1.4rem;
      line-height: 1.5;
      letter-spacing: 0;
      font-weight: 400;
      color: #000000;
      display: flex;
      align-items: center; }
      #footer-navarea nav > ul > li.footer-nav--submenu > a::before {
        content: "";
        display: inline-block;
        width: 0.4rem;
        height: 0.1rem;
        margin: 0 0.5rem 0 0;
        background-color: #000000; }

#footer-contactarea {
  flex: 1 1 auto; }
  @media screen and (max-width: 1080px) {
    #footer-contactarea {
      display: none; } }
  #footer-contactarea nav ul {
    display: flex;
    flex-direction: column;
    gap: 2rem 0; }
    #footer-contactarea nav ul li > a {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 1rem;
      padding: 1.5rem 0;
      border-radius: 1rem;
      color: #FFF;
      font-weight: 500;
      line-height: 1.3;
      letter-spacing: 0;
      font-size: 1.6rem; }
      #footer-contactarea nav ul li > a:before, #footer-contactarea nav ul li > a::after {
        content: "";
        display: inline-block;
        width: 2.1rem;
        height: 2.1rem; }
    #footer-contactarea nav ul li a.footer-contactarea--contact {
      background: #C0C0C0; }
      #footer-contactarea nav ul li a.footer-contactarea--contact::before {
        background-image: url("image/share/icon-mail.svg");
        background-size: contain; }
      #footer-contactarea nav ul li a.footer-contactarea--contact::after {
        content: none; }
    #footer-contactarea nav ul li a.footer-contactarea--reserve {
      background: #93D9F1; }
      #footer-contactarea nav ul li a.footer-contactarea--reserve::before {
        background-image: url("image/share/icon-camera.svg");
        background-size: contain; }
      #footer-contactarea nav ul li a.footer-contactarea--reserve::after {
        background-image: url("image/share/icon-external.svg");
        background-size: contain; }

/*#footer-nav {
  display: flex;
  justify-content: space-between;
  gap: 0 6rem;
  > li {
    font-size: 1.6rem;
    font-weight: $fw_normal;
    line-height: 1.75;
    letter-spacing: $f_letter;
    margin: 0;
    padding: 0;
    a {
      text-align: left;
      color: $c_footer_text;
      &[target="_blank"] {
        &::after {
          display: inline-block;
          content: "";
          background: url("image/share/icon-blank.svg") center center no-repeat;
          background-size: contain;
          width: 1.6rem;
          height: 1.6rem;
          vertical-align: middle;
          margin: 0 0 0 1rem;
        }
      }
    }
    > a {
      color: #46B1F4;
      font-weight: $fw_bold;
    }
    &.footer-nav {
      &--news {}
      &--company {}
      &--products {}
      &--development {}
      &--others {
      }
    }
    > dl {
      margin: 0;
      padding: 0;
      dt {
        margin: 0;
        padding: 0;
        a {
          color: #46B1F4;
          font-weight: $fw_bold;
        }
      }
      dd {
        margin: 0;
        padding: 0 0 0 1.2em;
        position: relative;
        &::before {
          position: absolute;
          content: "";
          display: block;
          width: 0.9em;
          height: 0.1rem;
          background-color: $c_white;
          vertical-align: middle;
          left: 0;
          top: 50%;
          @include translate(0,-50%);
        }
        a {}
      }
    }
    > ul {
      margin: 0;
      padding: 0;
      li {
        margin: 0;
        padding: 0;
        & + li {
          margin-top: 2.5rem;
        }
        a {
          color: #46B1F4;
          font-weight: $fw_bold;
        }
      }
    }
  }
}*/
#copyright {
  flex: 0 0 100%;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: f_letter;
  color: #878787;
  text-align: left;
  margin: 5rem auto 0;
  padding: 1.5rem 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    #copyright {
      font-size: 1rem;
      margin-top: 3.5rem; } }

#pagetop {
  position: sticky;
  bottom: 0;
  right: 0;
  width: 8rem;
  height: 8rem;
  background-color: #C9AD76;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  z-index: 1000;
  margin: 0 0 0 auto; }
  @media screen and (max-width: 1080px) {
    #pagetop {
      right: 1rem;
      bottom: 7rem; } }
  @media screen and (max-width: 600px) {
    #pagetop {
      width: 5rem;
      height: 5rem; } }

/* ◆20 サイドバーメニュー */
/*==============================================
◆40：各コンテンツ
==============================================*/
#news-title {
  font-size: 2.4rem;
  font-weight: 300;
  color: #000000;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  padding: 2rem 3rem;
  border-top: 0.1rem solid #CCC;
  border-bottom: 0.1rem solid #CCC;
  margin: 0 0 2rem; }
  @media screen and (max-width: 600px) {
    #news-title {
      padding: 2rem 1rem; } }

#news-archive--area {
  margin: 0 0 4rem; }
  #news-archive--area .news-archive--area--date {
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
    color: #878787; }
  #news-archive--area .news-archive--area--category > a {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
    text-decoration: none;
    text-align: center;
    color: #878787;
    transition: all 300ms ease-in-out;
    border: 0.1rem solid #F7F7F6;
    border-radius: 1rem;
    margin: 0 0 0 1rem;
    padding: 0 1rem; }
    #news-archive--area .news-archive--area--category > a + a {
      margin-left: 1rem; }

#pagenation-area {
  margin: 10rem 0 0; }

#post-navigation__list {
  margin: 0 auto;
  padding: 0;
  display: flex;
  gap: 0 2rem;
  justify-content: center;
  align-content: center;
  align-items: center; }
  #post-navigation__list .post-navigation__item {
    flex: 0 0 20rem;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #post-navigation__list .post-navigation__item {
        flex: 0 0 auto; } }
    #post-navigation__list .post-navigation__item::before {
      content: none; }
    #post-navigation__list .post-navigation__item a {
      text-decoration: none;
      color: #000000;
      font-size: 1.6rem;
      font-weight: 300;
      line-height: 1.5;
      letter-spacing: 0;
      border: 0.1rem solid #CCC;
      display: flex;
      justify-content: center;
      align-content: center;
      align-items: center;
      padding: 1rem; }
    #post-navigation__list .post-navigation__item.post-navigation__return a::before {
      content: "";
      display: inline-block;
      width: 2.4rem;
      height: 2.4rem;
      margin: 0 2rem 0 0;
      background: url("image/share/icon-single-arrow.svg") no-repeat center/contain; }
    #post-navigation__list .post-navigation__item.post-navigation__next a::after {
      content: "";
      display: inline-block;
      width: 2.4rem;
      height: 2.4rem;
      margin: 0 0 0 2rem;
      background: url("image/share/icon-single-arrow.svg") no-repeat center/contain;
      transform: rotate(180deg); }

h1.news-archive--title {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #000000;
  margin: 8rem 0 3rem;
  padding: 2rem;
  background-color: #F9F7F1;
  border-radius: 1rem;
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    h1.news-archive--title {
      margin-top: 6rem; } }

#news-archive--list {
  margin: 0;
  padding: 0; }
  #top-news #news-archive--list {
    margin-bottom: 6rem; }
  #news-archive--list > li {
    position: relative;
    margin: 0;
    padding: 2rem 1rem;
    border-bottom: 0.1rem solid #CCC;
    display: flex;
    align-content: center;
    align-items: center;
    transition: all 300ms ease-in-out; }
    @media screen and (max-width: 600px) {
      #news-archive--list > li {
        flex-wrap: wrap;
        padding: 1.5rem 0; } }
    #news-archive--list > li:hover {
      background-color: #F9F7F1; }
    #news-archive--list > li::before {
      display: none; }
    #news-archive--list > li .news-archive--list--date {
      flex: 0 0 auto;
      margin: 0 6rem 0 0;
      letter-spacing: 0;
      font-size: 1.6rem;
      font-weight: 400;
      line-height: 1.625;
      /* 162.5% */
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #878787; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--date {
          flex: 0 0 100%;
          margin: 0 0 0.5rem;
          font-size: 1.4rem; } }
    #news-archive--list > li .news-archive--list--category {
      flex: 0 0 auto;
      margin: 0 1rem 0 0;
      padding: 0 1rem;
      border: 0.1rem solid #F7F7F6;
      border-radius: 1rem;
      font-size: 1.6rem;
      font-weight: 400;
      line-height: 1.5;
      /* 162.5% */
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #878787; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--category {
          flex: 0 0 8rem;
          font-size: 1.4rem; } }
      #top-news #news-archive--list > li .news-archive--list--category {
        background-color: #FFF;
        border: 0.1rem solid #FFF; }
    #news-archive--list > li .news-archive--list--title {
      flex: 1 1 auto;
      font-size: 1.6rem;
      line-height: 1.625;
      font-weight: 400;
      letter-spacing: 0;
      text-align: justify;
      text-justify: inter-ideograph;
      color: #000000; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-archive--list--title {
          flex: 0 0 24rem;
          font-size: 1.4rem; } }
    #news-archive--list > li .news-archive--list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#top-main {
  position: relative;
  z-index: 310;
  width: 100%;
  overflow: hidden;
  margin: 0 0 3rem; }
  @media screen and (max-width: 1080px) {
    #top-main {
      margin-bottom: 3rem; } }
  #top-main__inner {
    position: relative;
    width: 100rem;
    height: 54rem;
    margin: 0 auto; }
    @media screen and (max-width: 800px) {
      #top-main__inner {
        width: 100%;
        height: auto; } }
    #top-main__inner img {
      position: absolute;
      width: 144rem;
      height: auto;
      left: 50%;
      transform: translateX(-50%); }
      @media screen and (max-width: 800px) {
        #top-main__inner img {
          position: static;
          display: block;
          width: 100%;
          height: auto;
          transform: none; } }
    #top-main__inner .top-main-textarea {
      position: absolute;
      left: 0;
      bottom: 8rem; }
      @media screen and (max-width: 1080px) {
        #top-main__inner .top-main-textarea {
          left: 4rem;
          bottom: 6rem; } }
      @media screen and (max-width: 600px) {
        #top-main__inner .top-main-textarea {
          left: 2rem;
          bottom: 3rem; } }
      #top-main__inner .top-main-textarea--text {
        margin: 0 0 1rem;
        color: #FFF;
        text-shadow: 0 0 1rem #000000;
        font-size: 5rem;
        font-weight: 300;
        line-height: 1.5;
        /* 150% */
        letter-spacing: 0; }
        @media screen and (max-width: 1080px) {
          #top-main__inner .top-main-textarea--text {
            font-size: 4.5rem; } }
        @media screen and (max-width: 600px) {
          #top-main__inner .top-main-textarea--text {
            margin-bottom: 0.5rem;
            font-size: 3.6rem; } }
      #top-main__inner .top-main-textarea--sub {
        color: #FFF;
        text-shadow: 0 0 1rem #C9AD76;
        font-size: 2.4rem;
        font-weight: 300;
        line-height: 1.25; }
        @media screen and (max-width: 600px) {
          #top-main__inner .top-main-textarea--sub {
            font-size: 2rem;
            line-height: 1.5; } }

#top-menu-banner {
  margin: 0; }
  #top-menu-banner__inner {
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 800px) {
      #top-menu-banner__inner {
        padding: 0 3rem; } }
    @media screen and (max-width: 600px) {
      #top-menu-banner__inner {
        padding: 0 1rem; } }
    #top-menu-banner__inner #top-menu-banner-list {
      margin: 0;
      padding: 0;
      display: flex;
      gap: 2rem; }
      @media screen and (max-width: 1080px) {
        #top-menu-banner__inner #top-menu-banner-list {
          gap: 1rem; } }
      #top-menu-banner__inner #top-menu-banner-list li {
        margin: 0; }
        @media screen and (max-width: 800px) {
          #top-menu-banner__inner #top-menu-banner-list li {
            padding: 0 1rem; } }
        #top-menu-banner__inner #top-menu-banner-list li a {
          display: block; }
          #top-menu-banner__inner #top-menu-banner-list li a img {
            width: 100%;
            height: auto; }

#top-reserve {
  margin: 0;
  padding: 6rem 0 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    #top-reserve {
      padding: 2rem 2rem 0; } }
  #top-reserve a {
    max-width: 600px;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-reserve a {
        padding: 0; } }
    #top-reserve a img {
      width: 100%;
      height: auto; }
  #top-reserve .top-renewal--reserve {
    max-width: 810px;
    margin: 30px auto 0;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-reserve .top-renewal--reserve {
        margin-top: 4vw;
        padding: 0; } }
    #top-reserve .top-renewal--reserve img {
      width: 100%;
      height: auto; }

#top-about__inner .about-title, #top-menu__inner .menu-title, #top-studio__inner .studio-title, #top-news__inner .news-title, #top-insta__inner .insta-title {
  margin: 0 0 6rem;
  text-align: center;
  display: flex;
  flex-direction: column; }
  @media screen and (max-width: 600px) {
    #top-about__inner .about-title, #top-menu__inner .menu-title, #top-studio__inner .studio-title, #top-news__inner .news-title, #top-insta__inner .insta-title {
      margin-bottom: 4rem; } }

#top-about__inner .about-title--jp, #top-menu__inner .menu-title--jp, #top-studio__inner .studio-title--jp, #top-news__inner .news-title--jp, #top-insta__inner .insta-title--jp {
  font-size: 5rem;
  font-weight: 300;
  color: #878787;
  line-height: 1.5; }
  @media screen and (max-width: 600px) {
    #top-about__inner .about-title--jp, #top-menu__inner .menu-title--jp, #top-studio__inner .studio-title--jp, #top-news__inner .news-title--jp, #top-insta__inner .insta-title--jp {
      font-size: 3.2rem; } }

#top-about__inner .about-title--en, #top-menu__inner .menu-title--en, #top-studio__inner .studio-title--en, #top-news__inner .news-title--en, #top-insta__inner .insta-title--en {
  position: relative;
  order: -1;
  font-size: 1.8rem;
  font-weight: 500;
  color: #C9AD76;
  line-height: 1.5;
  margin: 0 auto 1rem; }
  @media screen and (max-width: 600px) {
    #top-about__inner .about-title--en, #top-menu__inner .menu-title--en, #top-studio__inner .studio-title--en, #top-news__inner .news-title--en, #top-insta__inner .insta-title--en {
      font-size: 1.4rem;
      margin-bottom: 1rem; } }

#top-about .top-button-about a, #top-menu__inner .top-button-menu a, #top-news__inner .top-button-news a {
  width: fit-content;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.5;
  color: #FFF;
  background-color: #C9AD76;
  border-radius: 1rem;
  padding: 2rem 4rem;
  box-sizing: border-box;
  border: 0.1rem solid transparent;
  color: #FFF; }
  @media screen and (max-width: 600px) {
    #top-about .top-button-about a, #top-menu__inner .top-button-menu a, #top-news__inner .top-button-news a {
      width: 24.8rem;
      font-size: 1.4rem; } }
  #top-about .top-button-about a:hover, #top-menu__inner .top-button-menu a:hover, #top-news__inner .top-button-news a:hover {
    opacity: 0.8; }
  #top-about .top-button-about a::after, #top-menu__inner .top-button-menu a::after, #top-news__inner .top-button-news a::after {
    display: inline-block;
    content: "";
    line-height: 1;
    width: 2rem;
    height: 2rem;
    vertical-align: middle;
    -webkit-mask-image: url("image/share/icon-arrow-right.svg");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url("image/share/icon-arrow-right.svg");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    background-color: currentColor; }

#top-studio__inner .top-studio-info--tel span {
  display: inline; }
  @media screen and (max-width: 600px) {
    #top-studio__inner .top-studio-info--tel span {
      display: none; } }

#top-studio__inner .top-studio-info--tel a {
  display: none; }
  @media screen and (max-width: 600px) {
    #top-studio__inner .top-studio-info--tel a {
      display: inline; } }

#top-about {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 8rem 0 21.8rem; }
  @media screen and (max-width: 600px) {
    #top-about {
      padding: 6rem 0 7rem; } }
  #top-about__inner {
    position: relative;
    z-index: 1;
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-about__inner {
        padding: 0 2rem; } }
  #top-about .top-about-description {
    margin: 0 0 6rem;
    display: flex;
    gap: 4rem; }
    @media screen and (max-width: 1080px) {
      #top-about .top-about-description {
        flex-direction: column; } }
    @media screen and (max-width: 600px) {
      #top-about .top-about-description {
        margin-bottom: 3rem;
        gap: 2rem; } }
    #top-about .top-about-description--text {
      flex: 0 0 48rem; }
      @media screen and (max-width: 1080px) {
        #top-about .top-about-description--text {
          flex: 0 0 auto; } }
      #top-about .top-about-description--text p {
        margin: 0 0 0.5rem;
        color: #000000;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 2.125;
        letter-spacing: 0; }
        @media screen and (max-width: 600px) {
          #top-about .top-about-description--text p {
            font-size: 1.4rem;
            line-height: 1.5; } }
    #top-about .top-about-description--img {
      flex: 0 0 48rem;
      margin: 0; }
      @media screen and (max-width: 1080px) {
        #top-about .top-about-description--img {
          order: -1;
          flex: 0 0 auto;
          width: 60%;
          margin: 0 auto; } }
      @media screen and (max-width: 800px) {
        #top-about .top-about-description--img {
          width: 80%; } }
      @media screen and (max-width: 600px) {
        #top-about .top-about-description--img {
          width: 100%; } }
      #top-about .top-about-description--img img {
        width: 100%;
        height: auto; }
  #top-about::after {
    content: "";
    position: absolute;
    left: 0;
    /* 左にずらす */
    bottom: 0;
    /* 下にずらす */
    width: 100%;
    height: 50rem;
    background: url("./image/top/bk-about@2x.jpg") no-repeat center/cover;
    z-index: 0;
    pointer-events: none; }
    @media screen and (max-width: 600px) {
      #top-about::after {
        background: url("./image/top/bk-about-sp@2x.jpg") no-repeat center/cover;
        height: 26rem; } }

#top-menu {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 8rem 0;
  background-color: #F7F7F6; }
  @media screen and (max-width: 600px) {
    #top-menu {
      background-color: #FFF;
      padding: 6rem 0 1rem; } }
  #top-menu__inner {
    position: relative;
    z-index: 1;
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-menu__inner {
        padding: 0 2rem; } }
    #top-menu__inner .top-button-menu {
      margin-bottom: 11rem; }
      @media screen and (max-width: 600px) {
        #top-menu__inner .top-button-menu {
          margin-bottom: 4rem; } }
    #top-menu__inner .top-gallery a {
      display: block; }
      #top-menu__inner .top-gallery a img {
        width: 100%;
        height: auto; }

#top-studio {
  margin: 0;
  padding: 8rem 0; }
  @media screen and (max-width: 600px) {
    #top-studio {
      padding: 6rem 0; } }
  #top-studio__inner {
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-studio__inner {
        padding: 0 2rem; } }
    #top-studio__inner .top-studio-title {
      color: #878787;
      font-size: 2.4rem;
      font-weight: 300;
      line-height: 1.5;
      /* 150% */
      text-align: center;
      letter-spacing: 0;
      padding: 0 0 1rem;
      margin: 0 0 6rem;
      border-bottom: 0.1rem solid #878787; }
      @media screen and (max-width: 600px) {
        #top-studio__inner .top-studio-title {
          font-size: 1.6rem;
          margin-bottom: 3rem; } }
    #top-studio__inner .top-studio-info {
      display: flex;
      gap: 4rem;
      margin: 0 0 11.5rem; }
      @media screen and (max-width: 1080px) {
        #top-studio__inner .top-studio-info {
          flex-direction: column; } }
      @media screen and (max-width: 600px) {
        #top-studio__inner .top-studio-info {
          flex-direction: column;
          gap: 3rem;
          margin-bottom: 3rem; } }
      #top-studio__inner .top-studio-info--tbl {
        flex: 0 0 48rem; }
        #top-studio__inner .top-studio-info--tbl tr {
          border-bottom: 0.1rem solid #CCC; }
          @media screen and (max-width: 600px) {
            #top-studio__inner .top-studio-info--tbl tr {
              display: flex;
              flex-direction: column;
              border-bottom: none; } }
        #top-studio__inner .top-studio-info--tbl th {
          font-size: 1.6rem;
          line-height: 1.625;
          font-weight: 400;
          width: 14rem;
          padding: 1rem;
          vertical-align: middle;
          color: #878787; }
          @media screen and (max-width: 600px) {
            #top-studio__inner .top-studio-info--tbl th {
              font-size: 1.4rem;
              line-height: 1.5;
              width: 100%;
              padding: 1rem;
              border-bottom: 0.1rem solid #878787; } }
        #top-studio__inner .top-studio-info--tbl td {
          font-size: 1.6rem;
          line-height: 1.625;
          font-weight: 400;
          padding: 1rem; }
          @media screen and (max-width: 600px) {
            #top-studio__inner .top-studio-info--tbl td {
              font-size: 1.4rem;
              line-height: 1.5; } }
          #top-studio__inner .top-studio-info--tbl td a {
            color: #000000; }
        @media screen and (max-width: 1080px) {
          #top-studio__inner .top-studio-info--tbl {
            flex: 0 0 auto; } }
      #top-studio__inner .top-studio-info--img {
        margin: 0;
        flex: 0 0 48rem;
        text-align: center; }
        @media screen and (max-width: 1080px) {
          #top-studio__inner .top-studio-info--img {
            order: -1;
            flex: 0 0 auto; } }
        #top-studio__inner .top-studio-info--img img {
          width: 100%;
          height: auto; }
          @media screen and (max-width: 1080px) {
            #top-studio__inner .top-studio-info--img img {
              max-width: 60rem; } }
          @media screen and (max-width: 600px) {
            #top-studio__inner .top-studio-info--img img {
              width: 100%; } }
    #top-studio__inner .top-studio-map iframe {
      width: 100%;
      height: 40rem; }

#top-news {
  margin: 0;
  padding: 8rem 0;
  background-color: #F7F7F6; }
  @media screen and (max-width: 600px) {
    #top-news {
      padding: 6rem 0 5rem; } }
  #top-news__inner {
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-news__inner {
        padding: 0 2rem; } }
    #top-news__inner .top-button-news a {
      width: 30rem; }
      @media screen and (max-width: 600px) {
        #top-news__inner .top-button-news a {
          width: 24.8rem; } }

#top-insta {
  margin: 0;
  padding: 8rem 0; }
  @media screen and (max-width: 600px) {
    #top-insta {
      padding: 6rem 0; } }
  #top-insta__inner {
    max-width: 100rem;
    margin: 0 auto;
    padding: 0 4rem;
    box-sizing: content-box; }
    @media screen and (max-width: 600px) {
      #top-insta__inner {
        padding: 0 2rem; } }

@media screen and (max-width: 600px) {
  #sb_instagram {
    padding-bottom: 0 !important; } }
#top-insta #sb_instagram #sbi_images {
  margin: 0 auto 6rem;
  padding: 0; }
  @media screen and (max-width: 1080px) {
    #top-insta #sb_instagram #sbi_images {
      gap: 3rem !important; } }
  @media screen and (max-width: 600px) {
    #top-insta #sb_instagram #sbi_images {
      margin-bottom: 5rem; } }
  #top-insta #sb_instagram #sbi_images a.sbi_photo:focus-visible {
    outline: dotted 2px #878787;
    outline-offset: -2px;
    box-shadow: 0 0 0 2px #878787;
    border: 0.1rem dotted #878787; }
#top-insta #sb_instagram #sbi_load {
  float: none;
  clear: none; }
  #top-insta #sb_instagram #sbi_load .sbi_follow_btn {
    margin: 0; }
    #top-insta #sb_instagram #sbi_load .sbi_follow_btn a {
      width: 30rem;
      padding: 2rem 4rem;
      box-shadow: none;
      border-radius: 1rem;
      display: flex;
      justify-content: center;
      align-content: center;
      align-items: center;
      gap: 2rem; }
      @media screen and (max-width: 600px) {
        #top-insta #sb_instagram #sbi_load .sbi_follow_btn a {
          width: 24.8rem;
          padding: 2rem 3rem; } }
      #top-insta #sb_instagram #sbi_load .sbi_follow_btn a::after {
        display: inline-block;
        content: "";
        line-height: 1;
        width: 2rem;
        height: 2rem;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow-right.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow-right.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor; }
      #top-insta #sb_instagram #sbi_load .sbi_follow_btn a svg {
        display: none; }
      #top-insta #sb_instagram #sbi_load .sbi_follow_btn a span {
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1.5rem;
        /* 150% */
        letter-spacing: 0; }
        @media screen and (max-width: 600px) {
          #top-insta #sb_instagram #sbi_load .sbi_follow_btn a span {
            font-size: 1.4rem; } }

#top-bottom-img {
  position: relative;
  overflow: hidden;
  height: 45.7rem; }
  @media screen and (max-width: 600px) {
    #top-bottom-img {
      height: 26rem; } }
  #top-bottom-img img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    max-width: none;
    min-height: 100%; }
    @media screen and (max-width: 600px) {
      #top-bottom-img img {
        width: 100%;
        height: auto;
        top: 0;
        left: 0;
        transform: translate(0, 0); } }

#menu-archive-list {
  margin: 0 0 6rem;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8rem 6rem; }
  @media screen and (max-width: 800px) {
    #menu-archive-list {
      gap: 6rem 3rem; } }
  @media screen and (max-width: 600px) {
    #menu-archive-list {
      margin-bottom: 5rem; } }
  #menu-archive-list li {
    margin: 0;
    padding: 0;
    width: calc((100% - 6rem) / 2);
    display: flex;
    flex-direction: column; }
    #menu-archive-list li::before {
      content: none; }
    @media screen and (max-width: 800px) {
      #menu-archive-list li {
        width: calc((100% - 3rem) / 2); } }
    @media screen and (max-width: 600px) {
      #menu-archive-list li {
        width: 100%; } }
    #menu-archive-list li .menu-archive-list--link {
      display: block;
      text-decoration: none; }
    #menu-archive-list li .menu-archive-list--img {
      margin: 0 0 2rem; }
      #menu-archive-list li .menu-archive-list--img img {
        width: 100%;
        height: auto; }
    #menu-archive-list li .menu-archive-list--catch {
      margin: 0 0 0.5rem;
      color: #878787;
      font-size: 1.4rem;
      font-weight: 300;
      line-height: 1.5;
      letter-spacing: 0; }
    @media screen and (max-width: 600px) {
      #menu-archive-list li .menu-archive-list {
        font-size: 1.2rem; } }
    #menu-archive-list li .menu-archive-list--title {
      margin: 0 0 1rem;
      padding: 0 0 1rem;
      border-bottom: 0.1rem solid #CCC;
      color: #878787;
      font-size: 3.4rem;
      font-weight: 300;
      line-height: 1.471;
      letter-spacing: 0; }
      @media screen and (max-width: 800px) {
        #menu-archive-list li .menu-archive-list--title {
          font-size: 2.6rem; } }
      @media screen and (max-width: 600px) {
        #menu-archive-list li .menu-archive-list--title {
          font-size: 2.4rem; } }
    #menu-archive-list li .menu-archive-list--price {
      color: #878787;
      font-size: 2rem;
      font-weight: 300;
      line-height: 1.5;
      letter-spacing: 0; }
      @media screen and (max-width: 600px) {
        #menu-archive-list li .menu-archive-list--price {
          font-size: 1.8rem; } }

#menu-main-visual {
  margin: 0 0 2rem;
  width: 100%; }
  #menu-main-visual__inner {
    max-width: 100rem;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 4rem; }
    @media screen and (max-width: 800px) {
      #menu-main-visual__inner {
        display: block; } }
    #menu-main-visual__inner .menu-h1-title {
      flex: 0 0 36rem;
      display: flex;
      flex-direction: column;
      justify-content: center; }
      @media screen and (max-width: 1080px) {
        #menu-main-visual__inner .menu-h1-title {
          flex: 1 1 36rem;
          padding: 0 0 0 4rem; } }
      @media screen and (max-width: 800px) {
        #menu-main-visual__inner .menu-h1-title {
          padding: 2rem; } }
      #menu-main-visual__inner .menu-h1-title--jp {
        position: relative;
        margin: 0 0 2rem;
        padding: 0 0 2rem;
        color: #878787;
        font-size: 4rem;
        font-weight: 300;
        line-height: 1.5;
        letter-spacing: 0; }
        #menu-main-visual__inner .menu-h1-title--jp::after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 0;
          width: 10rem;
          height: 0.2rem;
          background-color: #C9AD76; }
        @media screen and (max-width: 1080px) {
          #menu-main-visual__inner .menu-h1-title--jp {
            font-size: 3rem; } }
        @media screen and (max-width: 800px) {
          #menu-main-visual__inner .menu-h1-title--jp {
            font-size: 3rem;
            margin-bottom: 1.5rem;
            padding-bottom: 1.5rem; } }
      #menu-main-visual__inner .menu-h1-title--en {
        color: #C9AD76;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1.5;
        letter-spacing: 0; }
    #menu-main-visual__inner .menu-h1-img {
      flex: 0 0 60rem; }
      @media screen and (max-width: 1080px) {
        #menu-main-visual__inner .menu-h1-img {
          flex: 1 1 60rem; } }
      @media screen and (max-width: 800px) {
        #menu-main-visual__inner .menu-h1-img {
          padding: 2rem; } }
      #menu-main-visual__inner .menu-h1-img img {
        width: 100%;
        height: auto; }

#menu-about {
  margin: 0 0 8rem; }
  #menu-about__inner .menu-about--title {
    text-align: center; }
  #menu-about__inner .menu-about--text {
    line-height: 2.12;
    text-align: center; }

#menu-price {
  margin: 0 0 8rem; }
  #menu-price__inner .menu-price--title {
    text-align: center;
    margin: 0 0 4rem; }

#menu-price-list {
  margin: 0 0 4rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 3rem; }
  #menu-price-list__outer {
    background-color: #F9F7F1;
    border-radius: 2rem;
    padding: 5rem;
    margin: 0 0 4rem; }
    @media screen and (max-width: 800px) {
      #menu-price-list__outer {
        padding: 2rem; } }
  #menu-price-list li {
    margin: 0;
    padding: 0; }
    #menu-price-list li dl {
      display: flex;
      flex-direction: column;
      align-content: center;
      align-items: center;
      gap: 1rem; }
      #menu-price-list li dl .menu-price-list--title {
        margin: 0;
        color: #000000;
        font-size: 2.4rem;
        font-weight: 300;
        line-height: 1.417;
        /* 141.667% */
        letter-spacing: 0; }
      #menu-price-list li dl .menu-price-list--price {
        color: #000000;
        font-size: 4.5rem;
        font-weight: 700;
        line-height: 1.333;
        /* 133.333% */
        letter-spacing: 0; }
        #menu-price-list li dl .menu-price-list--price span {
          font-size: 2rem; }
      #menu-price-list li dl .menu-price-list--text {
        color: #000000;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1.5;
        /* 133.333% */
        letter-spacing: 0; }
    #menu-price-list li::before {
      content: none; }

.menu-price-list-text {
  position: relative;
  margin: 3rem 0 0;
  padding: 3rem 0 0;
  text-align: center; }
  .menu-price-list-text::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 8rem;
    height: 0.1rem;
    background-color: #878787; }

#menu-option-tbl .menu-option-tbl--caption {
  margin: 0;
  padding: 1rem;
  border-bottom: #CCC solid 0.2rem;
  color: #878787;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  /* 150% */
  letter-spacing: 0; }
#menu-option-tbl tr {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center; }
  @media screen and (max-width: 800px) {
    #menu-option-tbl tr {
      padding: 1rem;
      display: flex;
      flex-direction: column;
      align-items: flex-start; } }
  #menu-option-tbl tr th, #menu-option-tbl tr td {
    vertical-align: middle; }
    @media screen and (max-width: 800px) {
      #menu-option-tbl tr th, #menu-option-tbl tr td {
        padding: 0.5rem 0; } }
  @media screen and (max-width: 800px) {
    #menu-option-tbl tr th {
      font-weight: 400; } }

.menu-option-tbl-text {
  margin: 1rem 0 0;
  color: #000000;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.5;
  /* 150% */
  letter-spacing: 0; }

.menu-reserve-button {
  margin: 8rem auto 0;
  text-align: center; }
  .menu-reserve-button a {
    text-decoration: none;
    margin: 0 auto;
    width: 100%;
    max-width: 40rem;
    height: 6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    background-color: #93D9F1;
    border-radius: 1rem;
    color: #FFF;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.3;
    /* 100% */
    letter-spacing: 0; }
    .menu-reserve-button a::before, .menu-reserve-button a::after {
      content: "";
      display: inline-block;
      width: 2.1rem;
      height: 2.1rem; }
    .menu-reserve-button a::before {
      background-image: url("image/share/icon-camera.svg");
      background-size: contain; }
    .menu-reserve-button a::after {
      background-image: url("image/share/icon-external.svg");
      background-size: contain; }

#about-number {
  margin: 0 0 5rem; }
  @media screen and (max-width: 600px) {
    #about-number {
      margin-bottom: 21.334vw; } }
  #about-number__inner .about-number-title {
    margin-bottom: 3rem; }
    @media screen and (max-width: 600px) {
      #about-number__inner .about-number-title {
        margin-bottom: 6vw; } }

#about-number-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5rem; }
  @media screen and (max-width: 600px) {
    #about-number-list {
      gap: 2.667vw; } }
  #about-number-list::before, #about-number-list::after {
    content: "";
    flex: 1 0 300px;
    order: 2; }
    @media screen and (max-width: 1080px) {
      #about-number-list::before, #about-number-list::after {
        flex: 1 1 280px; } }
    @media screen and (max-width: 600px) {
      #about-number-list::before, #about-number-list::after {
        display: none; } }
  #about-number-list li {
    margin: 0;
    padding: 3rem;
    flex: 1 0 300px;
    border: 2px solid #C0C0C0;
    border-radius: 2rem; }
    @media screen and (max-width: 1080px) {
      #about-number-list li {
        flex: 1 1 280px; } }
    @media screen and (max-width: 600px) {
      #about-number-list li {
        flex: 1 1 42.667vw;
        padding: 4vw; } }
    #about-number-list li::before {
      content: none; }
    #about-number-list li dl {
      margin: 0;
      padding: 0;
      text-align: center; }
      #about-number-list li dl .about-number-contents--title {
        margin: 0 0 1rem;
        color: #000000;
        font-size: 2rem;
        font-weight: 300;
        line-height: 1.5;
        /* 150% */
        letter-spacing: 0; }
        @media screen and (max-width: 600px) {
          #about-number-list li dl .about-number-contents--title {
            margin-bottom: 2.667vw;
            font-size: 3.733vw; } }
      #about-number-list li dl .about-number-contents--img {
        margin: 0 0 1rem; }
        @media screen and (max-width: 600px) {
          #about-number-list li dl .about-number-contents--img {
            margin-bottom: 2.667vw; } }
        #about-number-list li dl .about-number-contents--img img {
          width: 100%;
          height: auto; }
      #about-number-list li dl .about-number-contents--text {
        display: flex;
        justify-content: center;
        align-items: baseline;
        align-content: flex-end;
        flex-wrap: wrap; }
        #about-number-list li dl .about-number-contents--text span {
          color: #000000;
          font-family: "Montserrat", sans-serif;
          font-size: 3rem;
          font-weight: 300;
          line-height: 1;
          letter-spacing: 0; }
          @media screen and (max-width: 600px) {
            #about-number-list li dl .about-number-contents--text span {
              font-size: 4.267vw; } }
          #about-number-list li dl .about-number-contents--text span.about-number-contents--text--big {
            color: #000000;
            font-family: "Montserrat", sans-serif;
            font-size: 8rem;
            font-weight: 300;
            line-height: 1;
            /* 100% */
            letter-spacing: 0; }
            @media screen and (max-width: 600px) {
              #about-number-list li dl .about-number-contents--text span.about-number-contents--text--big {
                font-size: 6.934vw; } }

#about-strengths__inner .about-strengths-title {
  margin-bottom: 3rem; }
  @media screen and (max-width: 600px) {
    #about-strengths__inner .about-strengths-title {
      margin-bottom: 6vw; } }

#about-strengths-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 85px 4rem; }
  @media screen and (max-width: 1080px) {
    #about-strengths-list {
      gap: 85px 5rem; } }
  @media screen and (max-width: 600px) {
    #about-strengths-list {
      gap: 16vw; } }
  #about-strengths-list::before, #about-strengths-list::after {
    content: "";
    flex: 1 0 48rem;
    order: 2; }
    @media screen and (max-width: 1080px) {
      #about-strengths-list::before, #about-strengths-list::after {
        flex: 1 1 48rem; } }
    @media screen and (max-width: 600px) {
      #about-strengths-list::before, #about-strengths-list::after {
        gap: 6rem;
        display: none; } }
  #about-strengths-list li {
    margin: 0;
    padding: 0;
    flex: 0 1 48rem; }
    #about-strengths-list li::before {
      content: none; }
    @media screen and (max-width: 1080px) {
      #about-strengths-list li {
        flex: 1 1 380px; } }
    #about-strengths-list li .about-strengths-contents--img {
      margin: 0 0 3rem; }
      @media screen and (max-width: 600px) {
        #about-strengths-list li .about-strengths-contents--img {
          margin-bottom: 6vw; } }
      #about-strengths-list li .about-strengths-contents--img img {
        width: 100%;
        height: auto; }

#about-items {
  margin: 0;
  padding: 0; }
  #about-items__inner {
    background-color: #C9AD76;
    max-width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1080px) {
      #about-items__inner {
        padding: 3rem; } }
    @media screen and (max-width: 600px) {
      #about-items__inner {
        padding: 0; } }
    #about-items__inner .about-items__link {
      display: flex;
      text-decoration-line: none; }
      @media screen and (max-width: 800px) {
        #about-items__inner .about-items__link {
          display: block; } }
    #about-items__inner .about-items-imgarea {
      flex: 1 1 500px; }
      #about-items__inner .about-items-imgarea img {
        width: 100%;
        height: auto; }
    #about-items__inner .about-items-textarea {
      flex: 1 1 500px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 0 5rem; }
      @media screen and (max-width: 1080px) {
        #about-items__inner .about-items-textarea {
          padding: 3rem 3rem 0;
          align-items: center; } }
      @media screen and (max-width: 600px) {
        #about-items__inner .about-items-textarea {
          padding: 4vw 8vw;
          align-items: flex-start; } }
      #about-items__inner .about-items-textarea--title {
        margin: 0 0 2rem;
        border-radius: 0px;
        padding: 0px;
        background-color: transparent;
        color: #FFF;
        font-size: 3rem;
        font-weight: 300;
        line-height: 1.5;
        /* 152% */
        letter-spacing: 0; }
        @media screen and (max-width: 800px) {
          #about-items__inner .about-items-textarea--title {
            margin: 0 auto 2rem; } }
        @media screen and (max-width: 600px) {
          #about-items__inner .about-items-textarea--title {
            margin-bottom: 2.667vw;
            font-size: 4.8vw; } }
      #about-items__inner .about-items-textarea--btn {
        background-color: #000000;
        font-size: 2rem; }
        @media screen and (max-width: 600px) {
          #about-items__inner .about-items-textarea--btn {
            font-size: 4.267vw; } }
        #about-items__inner .about-items-textarea--btn:hover {
          opacity: 1; }

#contact-form #contact-privacy--area {
  margin: 5rem auto 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    #contact-form #contact-privacy--area {
      margin-top: 12vw; } }
  #contact-form #contact-privacy--area p {
    font-size: 1.8rem;
    text-align: center; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-privacy--area p {
        font-size: 4.8vw; } }
#contact-form #contact-submit--area {
  text-align: center;
  margin: 5rem auto 0; }
  @media screen and (max-width: 600px) {
    #contact-form #contact-submit--area {
      padding-top: 12vw; } }
  #contact-form #contact-submit--area p {
    text-align: center; }
#contact-form #contact-submit {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
  color: #878787;
  text-align: center;
  max-width: 345px;
  width: 100%;
  height: 6rem;
  margin: 0 auto;
  border: none;
  border-radius: 99999px;
  background-color: #F9F7F1;
  text-shadow: none;
  transition: opacity 300ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #contact-form #contact-submit {
      font-size: 4.267vw;
      max-width: inherit;
      height: 16vw; } }
  #contact-form #contact-submit:disabled {
    background-color: #ccc;
    cursor: auto; }
    #contact-form #contact-submit:disabled:hover {
      opacity: 1;
      cursor: auto; }
  #contact-form #contact-submit:hover {
    cursor: pointer;
    opacity: 0.8; }
#contact-form .wpcf7-spinner {
  display: none; }
#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form input[type="tel"],
#contact-form select {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  height: 6rem;
  width: 100%;
  box-sizing: border-box;
  border: 0.1rem solid #000000;
  padding: 2rem 3rem;
  border-radius: 1rem;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    #contact-form input[type="text"],
    #contact-form input[type="email"],
    #contact-form input[type="tel"],
    #contact-form select {
      height: 13.333vw;
      font-size: 4.267vw;
      padding: 6.667vw;
      border-radius: 2.667vw; } }
  #contact-form input[type="text"]::placeholder,
  #contact-form input[type="email"]::placeholder,
  #contact-form input[type="tel"]::placeholder,
  #contact-form select::placeholder {
    font-size: 16px;
    color: #878787; }
    @media screen and (max-width: 600px) {
      #contact-form input[type="text"]::placeholder,
      #contact-form input[type="email"]::placeholder,
      #contact-form input[type="tel"]::placeholder,
      #contact-form select::placeholder {
        font-size: 4.267vw; } }
  #contact-form input[type="text"] option,
  #contact-form input[type="email"] option,
  #contact-form input[type="tel"] option,
  #contact-form select option {
    font-size: 16px; }
    @media screen and (max-width: 600px) {
      #contact-form input[type="text"] option,
      #contact-form input[type="email"] option,
      #contact-form input[type="tel"] option,
      #contact-form select option {
        font-size: 4.267vw; } }
#contact-form select {
  padding: 0 4rem; }
  @media screen and (max-width: 600px) {
    #contact-form select {
      padding: 0; } }
#contact-form input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; }
  #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label {
    position: relative;
    margin: 0;
    padding: 0 0 0 1.5em; }
    #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label:hover {
      cursor: pointer; }
    #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      border: 0.1rem solid #C9AD76;
      background-color: #FFF;
      width: 1.1em;
      height: 1.1em;
      box-sizing: border-box; }
  #contact-form input[type="checkbox"]:focus ~ .wpcf7-list-item-label::before {
    box-shadow: 0 0 3px 0.1rem inset #C9AD76; }
  #contact-form input[type="checkbox"]:checked ~ .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    line-height: 1;
    box-sizing: border-box;
    width: 1.25em;
    height: 0.75em;
    border-left: 3px solid #000000;
    border-bottom: 3px solid #000000;
    -webkit-transform: translate(0, -0.2em) rotate(-45deg);
    transform: translate(0, -0.2em) rotate(-45deg); }
#contact-form input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; }
  #contact-form input[type="radio"] ~ .wpcf7-list-item-label {
    position: relative;
    margin: 0;
    padding: 0 0 0 1.5em; }
    #contact-form input[type="radio"] ~ .wpcf7-list-item-label:hover {
      cursor: pointer; }
    #contact-form input[type="radio"] ~ .wpcf7-list-item-label::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      border: 0.1rem solid #C9AD76;
      background-color: #FFF;
      width: 1.1em;
      height: 1.1em;
      border-radius: 50%;
      box-sizing: border-box; }
  #contact-form input[type="radio"]:focus ~ .wpcf7-list-item-label::before {
    box-shadow: 0 0 3px 0.1rem inset #C9AD76; }
  #contact-form input[type="radio"]:checked ~ .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0.2em;
    margin: auto;
    border: 0.1rem solid #C9AD76;
    background-color: #C9AD76;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    box-sizing: border-box; }
#contact-form textarea {
  font-family: "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  width: 100%;
  height: 250px;
  box-sizing: border-box;
  border: 0.1rem solid #C9AD76;
  background-color: #FFF;
  padding: 2rem 3rem;
  border-radius: 1rem;
  box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    #contact-form textarea {
      font-size: 4.267vw;
      height: 40vw;
      padding: 6.667vw;
      border-radius: 2.667vw; } }
  #contact-form textarea::placeholder {
    font-size: 16px;
    color: #878787; }
    @media screen and (max-width: 600px) {
      #contact-form textarea::placeholder {
        font-size: 4.267vw; } }

/*
//tahnks
#thanks {
  p {
    font-size: round($f_size * 1);//14
    font-weight: $fw_light;
    line-height: 2.214;
    letter-spacing: $f_letter;
    @include justify;
    @include mq('sm') {
      font-size: 3.733vw;
      line-height: 1.714;
    }
  }
}
*/
#main-wpcontent .wpcf7-form p {
  margin-bottom: 0; }
#main-wpcontent .wpcf7-form dl {
  margin: 35px 0; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form dl {
      margin: 9.334vw  0; } }
  #main-wpcontent .wpcf7-form dl.contactform-resume__outer {
    margin: 35px 0 1rem; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form dl {
      margin: 9.334vw  0 2.667vw; } }
#main-wpcontent .wpcf7-form dt p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1rem;
  font-weight: 300; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form dt p {
      gap: 0 1.333vw; } }
#main-wpcontent .wpcf7-form dd span.contactform-unit {
  margin: 0 0 0 5px;
  vertical-align: bottom; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form dd span.contactform-unit {
      margin-left: 1.334vw; } }
@media screen and (max-width: 600px) {
  #main-wpcontent .wpcf7-form dd .wpcf7-checkbox {
    display: flex;
    flex-direction: column;
    gap: 2.667vw; } }
#main-wpcontent .wpcf7-form em {
  padding: 0 1rem;
  background-color: #C9AD76;
  color: #FFF;
  border-radius: 2rem;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 300; }
#main-wpcontent .wpcf7-form input[type="text"],
#main-wpcontent .wpcf7-form input[type="email"],
#main-wpcontent .wpcf7-form input[type="tel"],
#main-wpcontent .wpcf7-form textarea {
  background-color: #FFF;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  padding: 1.5rem;
  box-sizing: border-box;
  width: 100%;
  border: 0.1rem solid #878787;
  border-radius: 1rem; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="text"],
    #main-wpcontent .wpcf7-form input[type="email"],
    #main-wpcontent .wpcf7-form input[type="tel"],
    #main-wpcontent .wpcf7-form textarea {
      font-size: 4.267vw;
      padding: 3.733vw 4vw; } }
  #main-wpcontent .wpcf7-form input[type="text"]:focus,
  #main-wpcontent .wpcf7-form input[type="email"]:focus,
  #main-wpcontent .wpcf7-form input[type="tel"]:focus,
  #main-wpcontent .wpcf7-form textarea:focus {
    outline: dotted 0.1rem #C9AD76;
    outline-offset: -2px;
    color: #000000;
    box-shadow: 0 0 3px 0.1rem inset #C9AD76; }
  #main-wpcontent .wpcf7-form input[type="text"].contactform-age,
  #main-wpcontent .wpcf7-form input[type="email"].contactform-age,
  #main-wpcontent .wpcf7-form input[type="tel"].contactform-age,
  #main-wpcontent .wpcf7-form textarea.contactform-age {
    width: 10rem; }
#main-wpcontent .wpcf7-form textarea {
  line-height: 1.75;
  height: 150px; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form textarea {
      height: 60vw; } }
#main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label {
  position: relative;
  margin: 0;
  padding: 0 0 0 1.5em; }
  #main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label:hover {
    cursor: pointer; }
  #main-wpcontent .wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border: 0.1rem solid #000000;
    width: 1.1em;
    height: 1.1em;
    box-sizing: border-box; }
#main-wpcontent .wpcf7-form input[type="checkbox"]:focus + .wpcf7-list-item-label::before {
  box-shadow: 0 0 3px 0.1rem inset #C9AD76; }
#main-wpcontent .wpcf7-form input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  line-height: 1;
  box-sizing: border-box;
  width: 1.25em;
  height: 0.75em;
  border-left: 3px solid #C9AD76;
  border-bottom: 3px solid #C9AD76;
  -webkit-transform: translate(0, -0.2em) rotate(-45deg);
  transform: translate(0, -0.2em) rotate(-45deg); }
#main-wpcontent .wpcf7-form .contactform-reset__outer p {
  text-align: right; }
#main-wpcontent .wpcf7-form input[type="reset"] {
  font-size: 1rem;
  line-height: 1;
  font-weight: 300;
  color: #FFF;
  background-color: #000000;
  border: 0.1rem solid #000000;
  border-radius: 1rem;
  display: inline-block;
  padding: 1.5rem 25px;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 200ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="reset"] {
      font-size: 3.733vw;
      padding: 4vw 6.667vw;
      min-width: inherit; } }
  #main-wpcontent .wpcf7-form input[type="reset"]:hover {
    color: #FFF;
    background-color: #C9AD76; }
  #main-wpcontent .wpcf7-form input[type="reset"]:focus-visible {
    outline: dotted 2px #878787;
    outline-offset: -2px;
    box-shadow: 0 0 0 2px #878787; }
#main-wpcontent .wpcf7-form .wpcf7-not-valid-tip {
  display: block; }
#main-wpcontent .wpcf7-form input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; }
  #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label {
    position: relative;
    margin: 0;
    padding: 0 0 0 1.5em; }
    #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label:hover {
      cursor: pointer; }
    #main-wpcontent .wpcf7-form input[type="radio"] ~ .wpcf7-list-item-label::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      border: 0.1rem solid #C9AD76;
      background-color: #FFF;
      width: 1.1em;
      height: 1.1em;
      border-radius: 50%;
      box-sizing: border-box; }
  #main-wpcontent .wpcf7-form input[type="radio"]:focus ~ .wpcf7-list-item-label::before {
    box-shadow: 0 0 3px 0.1rem inset #C9AD76; }
  #main-wpcontent .wpcf7-form input[type="radio"]:checked ~ .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0.2em;
    margin: auto;
    border: 0.1rem solid #C9AD76;
    background-color: #C9AD76;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    box-sizing: border-box; }
#main-wpcontent .wpcf7-form .contactform-submit__outer {
  text-align: center;
  margin: 10rem 0 0; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form .contactform-submit__outer {
      margin-top: 26.667vw; } }
  #main-wpcontent .wpcf7-form .contactform-submit__outer p {
    text-align: center;
    justify-content: center; }
    #main-wpcontent .wpcf7-form .contactform-submit__outer p a {
      margin: 1rem auto 5px;
      color: #000000;
      font-weight: 600; }
#main-wpcontent .wpcf7-form input[type="submit"] {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 300;
  color: #000000;
  background-color: #FFF;
  border: 2px solid #C9AD76;
  border-radius: 9999px;
  display: inline-block;
  padding: 1.5rem 5rem;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 300ms ease-in-out; }
  @media screen and (max-width: 600px) {
    #main-wpcontent .wpcf7-form input[type="submit"] {
      font-size: 3.733vw;
      padding: 4vw 6.667vw;
      min-width: inherit; } }
  #main-wpcontent .wpcf7-form input[type="submit"]:hover {
    color: #FFF;
    background-color: #C9AD76; }
  #main-wpcontent .wpcf7-form input[type="submit"]:focus {
    color: #FFF;
    background-color: #C9AD76; }
  #main-wpcontent .wpcf7-form input[type="submit"]:disabled {
    color: #878787;
    border-color: #878787; }
    #main-wpcontent .wpcf7-form input[type="submit"]:disabled:hover {
      color: #878787;
      background-color: #FFF; }
#main-wpcontent .wpcf7-form .wpcf7-spinner {
  display: none; }

/*==============================================
◆70：WordPress専用
==============================================*/
.main-wpcontent {
  text-align: justify;
  font-size: 1.6rem;
  line-height: 1.5;
  max-width: 100rem;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent {
      font-size: 1.6rem;
      line-height: 1.5; } }

/* WP5以降 用 */
/* wp-includes/css/dlist/block-library/style.css 参照 変更の部分だけ抜き出し。 */
.alignleft {
  float: left;
  max-width: 100%;
  margin-right: 4rem;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignleft {
      float: none;
      margin-right: 0; } }

.alignright {
  float: right;
  max-width: 100%;
  margin-left: 4rem;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignright {
      float: none;
      margin-left: 0; } }

.aligncenter {
  display: block;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .aligncenter {
      display: block;
      max-width: 100%;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 1em; } }

.alignnone {
  max-width: 100%;
  height: auto;
  margin: 0 4rem 1em 0; }
  @media screen and (max-width: 600px) {
    .alignnone {
      max-width: 100%;
      height: auto;
      margin: 0 auto 1em; } }

embed,
iframe,
object,
video {
  max-width: 100%; }

.is-type-video .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.is-type-video .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.wp-block-heading + .wp-block-heading, .wp-block-heading + .wp-block-media-text, .wp-block-heading + .wp-block-columns, .wp-block-heading + .wp-block-column, .wp-block-columns .wp-block-heading, .wp-block-column .wp-block-heading, .alignright + .wp-block-heading, .alignleft + .wp-block-heading, .wp-block-heading + table {
  margin-top: 0; }

@media screen and (max-width: 600px) {
  .wp-block-media-text .wp-block-media-text__content {
    margin: 2.25rem 0;
    padding: 0; } }

.wp-block-image {
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    .wp-block-image {
      margin-top: 2.25rem;
      margin-bottom: 2.25rem; } }
  .wp-block-image.alignright, .wp-block-image.alignleft {
    margin-top: 0; }
  .wp-block-image img {
    height: auto; }
    @media screen and (max-width: 600px) {
      .wp-block-image img {
        width: auto !important; } }
  .wp-block-image.radius-none img {
    border-radius: 0; }
  .wp-block-image figcaption {
    font-size: 1.4rem;
    margin-top: 1rem;
    font-weight: 300;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .wp-block-image figcaption {
        margin-top: 1.3334rem;
        font-size: 1.2rem; } }
  .wp-block-group .wp-block-image:first-child {
    margin-top: 0; }
  .wp-block-group .wp-block-image:last-child {
    margin-bottom: 0; }

.wp-block-gallery {
  font-size: 9rem; }
  @media screen and (max-width: 1080px) {
    .wp-block-gallery {
      font-size: 3rem; } }
  @media screen and (max-width: 600px) {
    .wp-block-gallery {
      font-size: 3rem; } }
  .wp-block-gallery .blocks-gallery-image figcaption,
  .wp-block-gallery .blocks-gallery-item figcaption {
    box-sizing: border-box; }
  .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    position: relative;
    background: none;
    top: auto;
    left: auto;
    font-size: 1.4rem;
    font-weight: 300;
    margin: 1rem 0 0;
    padding: 0;
    color: #000000;
    text-shadow: none; }
    @media screen and (max-width: 600px) {
      .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
        font-size: 1.2rem;
        margin-top: 1.3334rem; } }

.wp-block-quote {
  border: 0.1rem solid #C9AD76;
  color: #000000; }
  .wp-block-quote p {
    color: #000000; }
  .wp-block-quote cite {
    font-size: 1.4rem; }
  .wp-block-quote.is-style-plain {
    border: none; }
    .wp-block-quote.is-style-plain:not(.has-background) {
      background-color: #F9F7F1; }

.wp-block-pullquote {
  border: 0.1rem solid #C9AD76;
  background-color: #FFF;
  margin-top: 4rem;
  margin-bottom: 4rem;
  padding: 2.5rem; }
  @media screen and (max-width: 600px) {
    .wp-block-pullquote {
      margin-top: 2.25rem;
      margin-bottom: 2.25rem;
      padding: 1.2rem 1.5rem; } }
  .wp-block-pullquote blockquote {
    background: none;
    margin: 0;
    padding: 0;
    border-radius: 0; }
    .wp-block-pullquote blockquote cite {
      font-size: 1.4rem; }

.main-wpcontent .wp-block-footnotes {
  border: 0.3rem solid #C9AD76;
  padding: 2rem 3rem;
  border-radius: 3rem;
  background-color: #FFF; }
  @media screen and (max-width: 600px) {
    .main-wpcontent .wp-block-footnotes {
      border-width: 0.3rem;
      padding: 1rem 1.5rem;
      border-radius: 1.5rem; } }

.wp-block-code {
  font-size: 1.4rem;
  position: relative;
  display: block;
  overflow: auto;
  padding: 3rem;
  white-space: pre;
  min-width: 100%;
  overflow-x: auto;
  background-color: #FFF;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  border: 0.1rem solid #C9AD76; }
  @media screen and (max-width: 600px) {
    .wp-block-code {
      font-size: 1.2rem;
      padding: 1.5rem; } }
  .wp-block-code::-webkit-scrollbar {
    width: 0.4rem;
    height: 0.4rem; }
  .wp-block-code::-webkit-scrollbar-track {
    background: #DCE4EF;
    border-radius: 0.2rem; }
  .wp-block-code::-webkit-scrollbar-thumb {
    background: #C9AD76;
    border-radius: 0.2rem; }
  .wp-block-code code {
    display: inline-block;
    text-wrap: nowrap;
    word-break: break-all; }

.wp-block-video figcaption {
  text-align: center; }

.wp-block-separator:not(.is-style-wide, .is-style-dots) {
  width: 10rem;
  margin-left: auto;
  margin-right: auto; }

.wp-block-columns {
  margin-top: 8rem;
  margin-bottom: 8rem; }
  @media screen and (max-width: 600px) {
    .wp-block-columns {
      margin-top: 4.5rem;
      margin-bottom: 4.5rem; } }
  .wp-block-columns:first-child {
    margin-top: 0; }
  .wp-block-columns:last-child {
    margin-bottom: 0; }

:where(.wp-block-columns.is-layout-flex) {
  gap: 2em; }
  @media screen and (max-width: 600px) {
    :where(.wp-block-columns.is-layout-flex) {
      gap: 2rem; } }

.wp-block-column {
  box-sizing: border-box; }
  .wp-block-column > :first-child {
    margin-top: 0; }
  .wp-block-column > :last-child {
    margin-bottom: 0; }

.wp-block-group.has-background {
  padding: 2em 1em; }
  .wp-block-group.has-background > :first-child {
    margin-top: 0; }
  .wp-block-group.has-background > :last-child {
    margin-bottom: 0; }

.wp-block-table {
  margin-bottom: 8rem;
  /*  figcaption {
      font-size: ($f_size * 0.875);
      margin-top: 0.5rem;
      text-align: center;
      @include mq('sm') {
        font-size: 1.2rem;
        margin-top: 1.3334rem;
      }
    }*/ }
  @media screen and (max-width: 600px) {
    .wp-block-table {
      margin-bottom: 4.5rem; } }
  .wp-block-table table {
    width: auto; }
  .wp-block-table thead {
    border-bottom: 0.2rem solid #CCC; }
  .wp-block-table th, .wp-block-table td {
    border: none;
    padding: 1rem 1rem; }
    @media screen and (max-width: 600px) {
      .wp-block-table th, .wp-block-table td {
        padding: 1rem; } }
  .wp-block-table .has-background td {
    background-color: transparent; }
  .wp-block-table .has-text-color td {
    color: inherit; }
  .wp-block-table.is-style-stripes {
    border-bottom: 0; }
    .wp-block-table.is-style-stripes td {
      background-color: transparent; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
      background-color: #FFF; }
    .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
      background-color: #F9F7F1; }
    .wp-block-table.is-style-stripes .has-background tbody tr:nth-child(odd) {
      background-color: rgba(255, 255, 255, 0.5); }
    .wp-block-table.is-style-stripes .has-background tbody tr:nth-child(even) {
      background-color: transparent; }
    .wp-block-table.is-style-stripes .has-text-color td {
      color: inherit; }
  .wp-block-table tfoot {
    border-top: 0.2rem solid #CCC; }

.wp-block-flexible-table-block-table {
  margin-bottom: 8rem; }
  @media screen and (max-width: 600px) {
    .wp-block-flexible-table-block-table {
      margin-bottom: 4.5rem; } }
  .wp-block-flexible-table-block-table .responsive-table {
    overflow-x: auto; }
  .wp-block-flexible-table-block-table.is-scroll-on-pc {
    overflow-x: hidden; }
    .wp-block-flexible-table-block-table.is-scroll-on-pc .responsive-table {
      overflow-x: scroll; }
  @media screen and (max-width: 600px) {
    .wp-block-flexible-table-block-table.is-scroll-on-mobile {
      overflow-x: hidden; } }
  @media screen and (max-width: 600px) {
    .wp-block-flexible-table-block-table.is-scroll-on-mobile .responsive-table {
      overflow-x: scroll; } }
  .wp-block-flexible-table-block-table table {
    min-width: max-content;
    width: 100%; }
    @media screen and (max-width: 600px) {
      .wp-block-flexible-table-block-table table.is-stacked-on-mobile tr {
        display: block;
        padding: 1.5rem 0; }
      .wp-block-flexible-table-block-table table.is-stacked-on-mobile th, .wp-block-flexible-table-block-table table.is-stacked-on-mobile td {
        max-width: 100%; }
      .wp-block-flexible-table-block-table table.is-stacked-on-mobile th {
        font-weight: 400; } }
    .wp-block-flexible-table-block-table table.has-fixed-layout {
      table-layout: fixed; }
    .wp-block-flexible-table-block-table table.is-sticky-first-column tr th:first-child,
    .wp-block-flexible-table-block-table table.is-sticky-first-column tr td:first-child {
      position: sticky;
      left: 0;
      z-index: 10; }
    .wp-block-flexible-table-block-table table.is-sticky-header thead th {
      position: sticky;
      top: 0;
      z-index: 30; }
    .wp-block-flexible-table-block-table table.is-sticky-header.is-sticky-first-column thead th:first-child {
      z-index: 40;
      /* 一番上に重ねる */ }
  .wp-block-flexible-table-block-table thead {
    border: none; }
  .wp-block-flexible-table-block-table tr th, .wp-block-flexible-table-block-table tr td {
    border: none; }
    @media screen and (max-width: 600px) {
      .wp-block-flexible-table-block-table tr th, .wp-block-flexible-table-block-table tr td {
        padding: 1rem; } }
  .wp-block-flexible-table-block-table tr th {
    max-width: none; }
  .wp-block-flexible-table-block-table tr td {
    min-width: inherit;
    max-width: inherit; }
  .wp-block-flexible-table-block-table tfoot {
    border-top: 0.2rem solid #CCC; }
  .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #FFF; }
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(odd) th, .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(odd) td {
      background-color: transparent; }
  .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(even) {
    background-color: #F9F7F1; }
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(even) th, .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes tbody tr:nth-child(even) td {
      background-color: transparent; }
  .wp-block-flexible-table-block-table .has-background tbody tr:nth-child(odd) {
    background-color: rgba(255, 255, 255, 0.5); }
  .wp-block-flexible-table-block-table .has-background tbody tr:nth-child(even) {
    background-color: transparent; }
  .wp-block-flexible-table-block-table .has-text-color td {
    color: inherit; }

@media screen and (max-width: 600px) {
  .wp-block-audio audio {
    min-width: inherit; } }

.has-drop-cap::after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }
.has-drop-cap:not(:focus):first-letter {
  float: left;
  font-size: 4em;
  line-height: .68;
  font-weight: 100;
  margin: 0 .1em 0 0;
  text-transform: uppercase;
  font-style: normal; }

.wp-block-buttons {
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons {
      flex-direction: column;
      margin-top: 2.25rem;
      margin-bottom: 2.25rem; } }

:where(.wp-block-buttons.is-layout-flex) {
  gap: 3rem; }
  @media screen and (max-width: 600px) {
    :where(.wp-block-buttons.is-layout-flex) {
      gap: 2rem; } }

.wp-block-button__link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.5;
  color: currentColor;
  background-color: currentColor;
  border-radius: 1rem;
  padding: 2rem 4rem;
  box-sizing: border-box;
  border: 0.1rem solid transparent; }
  .wp-block-button__link:not(.has-background) {
    background-color: #C9AD76;
    border-color: #C9AD76; }
  .wp-block-button__link:not(.has-text-color) {
    color: #FFF; }
    .wp-block-button__link:not(.has-text-color)::after {
      background-color: #FFF; }
  .main-wpcontent .wp-block-button__link {
    text-decoration: none; }
  .wp-block-button .wp-block-button__link:hover {
    opacity: 0.8; }
  .is-style-outline .wp-block-button__link:hover {
    opacity: 0.8; }
  .wp-block-button__link::after {
    display: inline-block;
    content: "";
    line-height: 1;
    width: 2rem;
    height: 2rem;
    vertical-align: middle;
    -webkit-mask-image: url("image/share/icon-arrow-right.svg");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url("image/share/icon-arrow-right.svg");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    background-color: currentColor; }
  .is-style-outline > .wp-block-button__link {
    padding: 2rem 4rem;
    color: currentColor;
    background-color: currentColor;
    border: 0.1rem solid #878787; }
    .is-style-outline > .wp-block-button__link::after {
      background-color: currentColor; }
    .is-style-outline > .wp-block-button__link:not(.has-text-color) {
      color: #000000; }
      .is-style-outline > .wp-block-button__link:not(.has-text-color)::after {
        background-color: #C9AD76; }
    .is-style-outline > .wp-block-button__link:not(.has-background) {
      background-color: #FFF; }

.wp-block-cover,
.wp-block-cover-image {
  box-sizing: border-box; }

ul.wp-block-social-links li {
  margin: 0;
  padding: 0; }
  ul.wp-block-social-links li::before {
    display: none; }

.wp-block-file:not(.wp-element-button) {
  font-size: 1em; }
.wp-block-file .wp-block-file__button {
  background-color: #C9AD76;
  color: #FFF;
  text-decoration: none;
  font-weight: 500;
  padding: 0.5rem 2rem; }

.wp-block-preformatted {
  max-width: 100%;
  overflow-x: scroll; }
  .wp-block-preformatted::-webkit-scrollbar {
    width: 0.4rem;
    height: 0.4rem; }
  .wp-block-preformatted::-webkit-scrollbar-track {
    background: #DCE4EF;
    border-radius: 0.2rem; }
  .wp-block-preformatted::-webkit-scrollbar-thumb {
    background: #C9AD76;
    border-radius: 0.2rem; }

.wp_pagenavi_out {
  margin: 8rem 0 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    .wp_pagenavi_out {
      margin-top: 10.6674rem; } }

.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 3rem;
  text-decoration: none;
  text-align: center;
  color: #878787 !important;
  background-color: #F9F7F1;
  border: 0.1rem solid #F9F7F1 !important;
  height: 3.5rem;
  width: 3.5rem;
  padding: 0;
  margin: 0 0.2rem; }
  @media screen and (max-width: 600px) {
    .wp-pagenavi a,
    .wp-pagenavi span {
      font-size: 1.6rem;
      line-height: 2.5rem;
      height: 3rem;
      width: 3rem;
      margin: 0 0.5334rem; } }
.wp-pagenavi a.first, .wp-pagenavi a.last {
  width: 8rem; }
  @media screen and (max-width: 600px) {
    .wp-pagenavi a.first, .wp-pagenavi a.last {
      width: 6rem; } }
.wp-pagenavi span.current,
.wp-pagenavi a:hover {
  border: 0.1rem solid #C9AD76 !important;
  background-color: #C9AD76;
  font-weight: 300 !important;
  color: #FFF !important; }

@media screen and (max-width: 600px) {
  .fb_iframe_widget > span {
    max-width: 100%; } }

@media screen and (max-width: 600px) {
  iframe.instagram-media {
    min-width: inherit !important; } }

.grecaptcha-badge {
  z-index: 1050; }

/*
//カスタムブロック　2H日英
.h2-en-jp {
  &.is-center {
    color: red;
    .h2-en-jp__en,.h2-en-jp__jp {
      text-align: center;
    }
  }
}
*/
img {
  transform: translateZ(0);
  backface-visibility: hidden; }

.has-small-font-size {
  font-size: 1.4rem !important; }

.has-normal-font-size {
  font-size: 1.6rem !important; }

.has-medium-font-size {
  font-size: 1.8rem !important; }

.has-large-font-size {
  font-size: 2rem !important; }

.has-x-large-font-size {
  font-size: 2.2rem !important; }

/* CSS Document */
/* CSS Document */
/*==============================================
◆90：プリント用
==============================================*/
@media print {
  @page {
    margin: 12.7mm 9.7mm;
    page-break-before: always; }
  body {
    background-image: none;
    max-width: 1200px;
    -webkit-print-color-adjust: exact; }

  #header, footer {
    position: relative; }

  #mobile, #sidr {
    display: none; }

  a:link:after,
  a:visited:after {
    /*
    content: " (" attr(href) ") ";
    font-size: 90%;
    */ }

  #back-to-top,
  #side-menu,
  #sidr {
    display: none; }

  #map-root img,
  #map_canvas img {
    max-width: none !important;
    zoom: 1; }

  #section-map {
    page-break-before: always; }

  #map-root {
    display: inline-block;
    width: 100%; }

  .map-section {
    page-break-after: always; }

  #mainScroll,
  #top-slide {
    margin-top: 0; }

  @supports (-ms-ime-align: auto) {
    /*
        .h1-area .h1-area-inner {
          width: 100%;
          padding: 1.5em;
          flex-direction: column-reverse;
        }
        .h1-area .h1-area-inner > .h1-img-area {
          flex: 0 0 auto;
          width: 100%;
          margin-right: 0;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-text-area {
          flex: 0 0 auto;
          width: 100%;
          margin-bottom: 0;
          padding: 2em;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-img-area img {
          width: 100%;
          height: auto;
        }
        .main-wpcontent .wp-block-button__link {
          color: $c_off_black;
    //      border: 1px solid $c_tertiary;
        }
        #nav-global li.nav-global-recruit a {
          background: none;
          display: inline;
          padding: inherit;
          color: $c_off_black;
        }
        #top #main-area section .top-type1 .top-type1-img {
          flex: 0 0 68%;
          max-width: 68%;
        }
    */ } }

/*# sourceMappingURL=style.css.map */
