@charset "UTF-8";
/*==========================================
変数 inc.scss
===========================================*/
/*===================================
userSS 追加
=====================================*/
@font-face {
  font-family: "Adobe Arabic";
  src: url("../fonts/AdobeArabic-Regular.otf") format("opentype"), url("../fonts/AdobeArabic-Bold.otf") format("opentype"), url("../fonts/AdobeArabic-Italic.otf") format("opentype"), url("../fonts/AdobeArabic-BoldItalic.otf") format("opentype");
}
@font-face {
  font-family: "DIN 2014";
  src: url("../fonts/din1451alt.ttf") format("truetype"), url("../fonts/DIN-Alternate-Bold.ttf") format("truetype"), url("../fonts/DIN-Alternate-Bold.woff") format("woff"), url("../fonts/DIN-Alternate-Bold.otf") format("opentype");
}
@font-face {
  font-family: "Times Roman";
  src: url("../fonts/OPTITimes-Roman.otf") format("opentype"), url("../fonts/OPTITimesRoman-Italic.otf") format("opentype");
}
/*==========================================
 共通設定
===========================================*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

::selection {
  background: #bfbfbf;
  color: #fff;
}

/* for Firefox */
::-moz-selection {
  background: #bfbfbf;
  color: #ffffff;
}

/*=== フォント ===*/
html {
  font-size: 62.5%;
}

body {
  color: #000;
  -webkit-text-size-adjust: 100%;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
  font-size: min(3.6vw, 1.6rem);
  line-height: 1.5;
  overflow-x: clip;
  position: relative;
  transition: 0.3s ease-in-out;
}

/*IE*/
/*@media all and (-ms-high-contrast:none) {
body {
  font-family: "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
}*/
/*=== リンク ===*/
a {
  color: #000;
  text-decoration: none;
  transition: 0.3s ease-in-out;
}

a.img-link,
.img-link-wrap a {
  display: block;
  font-size: 0;
}

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none !important;
    cursor: default !important;
  }
}
/*=== 画像 ===*/
img {
  max-width: 100%;
  height: auto;
}

img.emoji {
  height: 1em;
  width: 1em;
  margin: 0 0.05em 0 0.1em;
  vertical-align: -0.1em;
}

/*=== clear fix ===*/
.clearfix::after {
  content: " ";
  display: block;
  clear: both;
}

/*==========================================
 汎用css
===========================================*/
/*=== hover Action ===*/
/*memo 【_d】aタグに直*/
/*=== opacity ===*/
@media screen and (min-width: 768px) {
  .hover-oc_d:hover,
  .hover-oc a:hover {
    opacity: 0.7;
  }
}
/*=== under line ===*/
.hover-ul_d,
.hover-ul a,
.hover-ulL_d,
.hover-ulL a,
.hover-ulF_d,
.hover-ulF a {
  position: relative;
  display: inline-block;
}

/*=== under line【CENTER】 ===*/
.hover-ul_d::after,
.hover-ul a::after {
  position: absolute;
  bottom: -1px;
  left: 50%;
  content: "";
  width: 0;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

/*=== under line【LEFT】 ===*/
.hover-ulL_d::after,
.hover-ulL a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 0;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
}

/*=== under line【FADE】 ===*/
.hover-ulF_d::after,
.hover-ulF a::after {
  position: absolute;
  bottom: 0.3em;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000;
  opacity: 0;
  transition: 0.3s;
}

@media screen and (min-width: 768px) {
  .hover-ul_d:hover::after,
  .hover-ul a:hover::after,
  .hover-ulL_d:hover::after,
  .hover-ulL a:hover::after {
    width: 100%;
  }
  .hover-ulF_d:hover::after,
  .hover-ulF a:hover::after {
    bottom: 0;
    opacity: 1;
  }
}
.red {
  color: #e72f18;
}

/* ホバー　震える */
@media screen and (min-width: 768px) {
  .hover-rum:hover {
    animation: rumble 0.12s linear infinite;
  }
}

@keyframes rumble {
  0% {
    transform: rotate(0deg) translate(0, 0);
  }
  12.5% {
    transform: rotate(0.4deg) translate(1px, -1px);
  }
  25% {
    transform: rotate(0.8deg) translate(0px, 1px);
  }
  37.5% {
    transform: rotate(0.4deg) translate(-1px, 0);
  }
  50% {
    transform: rotate(0deg) translate(0, 0);
  }
  62.5% {
    transform: rotate(-0.4deg) translate(1px, 0);
  }
  75% {
    transform: rotate(-0.8deg) translate(0, 1px);
  }
  87.5% {
    transform: rotate(-0.4deg) translate(-1px, -1px);
  }
  100% {
    transform: rotate(0deg) translate(0, 0);
  }
}
.hover_TS a {
  transition: 0.25s all cubic-bezier(0.34, 1.56, 0.64, 1);
}
@media screen and (min-width: 768px) {
  .hover_TS a:hover {
    transform: scale(1.05);
  }
}

.hover_db a {
  background: linear-gradient(currentColor 0 0) 0 100%/var(--d, 0) 2px no-repeat, linear-gradient(currentColor 0 0) 100% calc(100% - 4px)/var(--d, 0) 2px no-repeat;
  transition: 0s 0.5s, background-size 0.5s;
}
@media screen and (min-width: 768px) {
  .hover_db a:hover {
    --d: 100%;
    background-position: 0% calc(100% - 2px), 100% calc(100% - 2px);
    transition: 0.3s, background-position 0.3s 0.3s;
  }
}

/*==== MARKER ===*/
.gray-line {
  background: linear-gradient(transparent 60%, #f5f5f5 60%);
}

.green-line {
  background: linear-gradient(transparent 60%, #e8f1ec 60%);
}

/*=== 幅 ===*/
.wrapW {
  max-width: 1260px;
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 577px) {
  .wrapW {
    width: 90%;
  }
}
@media screen and (min-width: 1261px) {
  .wrapW {
    width: 85%;
  }
}

.wrapW-inner {
  padding: 0 2.5%;
}
@media screen and (min-width: 1201px) {
  .wrapW-inner {
    padding: 0 25px;
  }
}
@media screen and (min-width: 1920px) {
  .wrapW-inner {
    padding: 0 100px;
  }
}
@media screen and (max-width: 576px) {
  .wrapW-inner {
    padding: 0 4%;
  }
}

.wrap {
  max-width: 1260px;
  width: 100%;
  margin: 0 auto;
}

.wrap-inner {
  padding: 0 2.5%;
}
@media screen and (min-width: 1201px) {
  .wrap-inner {
    padding: 0 25px;
  }
}
@media screen and (min-width: 1920px) {
  .wrap-inner {
    padding: 0 30px;
  }
}
@media screen and (max-width: 576px) {
  .wrap-inner {
    padding: 0 4%;
  }
}

/*=== PC none / SP none ===*/
@media screen and (min-width: 577px) {
  .pc-none_s {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .pc-none {
    display: none !important;
  }
}
@media screen and (min-width: 1201px) {
  .pc-none_lg {
    display: none !important;
  }
}
@media (min-width: 480px) {
  .pc-none_480 {
    display: none !important;
  }
}
@media screen and (max-width: 1200px) {
  .sp-none_lg {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .sp-none {
    display: none !important;
  }
}
@media screen and (max-width: 576px) {
  .sp-none_s {
    display: none !important;
  }
}
@media (max-width: 480px) {
  .sp-none_480 {
    display: none !important;
  }
}
/*=== アニメーション ===*/
.inview_appear {
  animation-name: appear;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes appear {
  0% {
    transform: translateY(-10px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.inview_appearUp {
  animation-name: appearUp;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes appearUp {
  0% {
    transform: translateY(10px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.inview_fi {
  opacity: 0;
  transition: 1.5s;
}
.inview_fi.show {
  opacity: 1;
}

.inview_fi2 {
  opacity: 0;
  transition: 1.5s;
}
.inview_fi2.show {
  opacity: 1;
}

.inview_fiU {
  transform: translate(0, 20%);
  opacity: 0;
  transition: 1s;
}
.inview_fiU.show {
  transform: translate(0, 0);
  opacity: 1;
}

.inview_fiU2 {
  transform: translate(0, 20%);
  opacity: 0;
  transition: 1s;
}
.inview_fiU2.show {
  transform: translate(0, 0);
  opacity: 1;
}

.inview_fiD {
  transform: translateY(-20%);
  opacity: 0;
  transition: 1s;
}
.inview_fiD.show {
  transform: translateY(0);
  opacity: 1;
}

.inview_fiL {
  opacity: 0;
  transition: 1s all;
  transform: translateX(-20%);
}
.inview_fiL.show {
  opacity: 1;
  transform: translateX(0%);
}

.inview_fiR {
  opacity: 0;
  transition: 1s all;
  transform: translateX(20%);
}
.inview_fiR.show {
  opacity: 1;
  transform: translateX(0%);
}

.inview_fade {
  animation-name: fade;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 0;
}

.inview_fiU-oH {
  transform: translate(0, 20%);
  transition: 1s;
  overflow: hidden;
  opacity: 1;
}
.inview_fiU-oH__block {
  display: inline-flex;
  align-items: flex-end;
}
.inview_fiU-oH__child {
  opacity: 1;
  display: inline-block;
  transform: translateY(130%);
  transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: opacity, transform;
  margin-right: 0px;
}
.inview_fiU-oH.show {
  transform: translate(0, 0);
  opacity: 1;
}
.inview_fiU-oH.show .inview_fiU-oH__child {
  transform: translateY(0);
}

.Iinview_fiU-oH {
  transform: translate(0, 20%);
  transition: 1s;
  overflow: hidden;
  opacity: 1;
}
.Iinview_fiU-oH__block {
  display: inline-flex;
  align-items: flex-end;
}
.Iinview_fiU-oH__child {
  opacity: 1;
  display: inline-block;
  transform: translateY(130%);
  transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: opacity, transform;
  margin-right: 0px;
}
.Iinview_fiU-oH.show {
  transform: translate(0, 0);
  opacity: 1;
}
.Iinview_fiU-oH.show .Iinview_fiU-oH__child {
  transform: translateY(0);
}

@keyframes fade {
  from {
    transform: translate(0, -10%);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.inview_fade-bk {
  animation-name: fade-bk;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fade-bk {
  from {
    transform: translate(0, -10%);
    opacity: 0;
  }
  30% {
    opacity: 0.1;
  }
  to {
    opacity: 0.5;
  }
}
@keyframes fv_bk {
  0% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
  }
}
.inview-blur {
  opacity: 0;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 0.5s linear;
  -ms-transition: -ms-transform 0.5s linear;
  transition: transform 0.5s linear;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.blur {
  -webkit-animation-name: imageBlur;
  animation-name: imageBlur;
  opacity: 1;
  transition: 0.8s;
}

@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
.scrollM-inner {
  position: relative;
  display: inline-block;
}
.scrollM-inner::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  background: black;
  transform: scale(0, 1);
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.scrollM-core {
  display: inline-block;
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.scrollM.show .scrollM-inner::before {
  animation: hover-in 0.3s forwards alternate, hover-out 0.3s 0.3s forwards alternate;
}
.scrollM.show .scrollM-core {
  opacity: 1;
  transition-delay: 0.2s;
}

.scrollM_FV-inner {
  position: relative;
  display: inline-block;
}
.scrollM_FV-inner::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  background: black;
  transform: scale(0, 1);
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.scrollM_FV-core {
  display: inline-block;
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.scrollM_FV.show .scrollM_FV-inner::before {
  animation: hover-in 0.3s forwards alternate, hover-out 0.3s 0.3s forwards alternate;
}
.scrollM_FV.show .scrollM_FV-core {
  opacity: 1;
  transition-delay: 0.2s;
}

.inview_transformFV {
  opacity: 0;
  transition: 1s all;
  opacity: 0;
  transform: translateX(-20%);
}
.inview_transformFV.show {
  opacity: 1;
  transform: translateX(0%);
}

.inview_fiFV {
  opacity: 0;
  transition: 1.5s;
}
.inview_fiFV.show {
  opacity: 1;
}

/* ホバー　左から右【一瞬】 */
@keyframes hover-in {
  0% {
    transform-origin: left top;
    transform: scale(0, 1);
  }
  100% {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}
@keyframes hover-out {
  0% {
    transform-origin: right top;
    transform: scale(1, 1);
  }
  100% {
    transform-origin: right top;
    transform: scale(0, 1);
  }
}
@keyframes rotation1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotationY {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(360deg);
  }
}
/*バウンド*/
.bound {
  animation: bound 2s ease infinite;
}

@keyframes bound {
  0% {
    transform: translateY(0);
  }
  5% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(-15px);
  }
  25% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-15px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
/*ふわふわ*/
.fuwafuwa {
  　animation: fuwafuwa 2s ease infinite;
}

@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -10px);
  }
  100% {
    transform: translate(0, 0);
  }
}
/* */
.anima_scrolldwn {
  animation-name: scroll_dwn;
  animation-duration: 2.2s;
  animation-timing-function: cubic-bezier(0.15, 0.41, 0.69, 0.94);
  animation-iteration-count: infinite;
}

@keyframes scroll_dwn {
  0% {
    opacity: 0;
  }
  10% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(15px);
    opacity: 0;
  }
}
/* ぽよぽよ　*/
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
/*　フラッシュ　*/
@keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*　一瞬光らせる　*/
@keyframes shine {
  0% {
    left: -160%;
    opacity: 0;
  }
  70% {
    left: -160%;
    opacity: 0.5;
  }
  71% {
    left: -160%;
    opacity: 1;
  }
  100% {
    left: -20%;
    opacity: 0;
  }
}
/* 回転（Y軸） */
@keyframes rotation3 {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(360deg);
  }
}
/*=== パララックス ===*/
.parallax {
  min-height: 400px;
  background-position: center top;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}

/*=== タイピング ===*/
.TextTyping span {
  display: none;
}

.TextTyping::after {
  content: "|";
  animation: typinganime 0.8s ease infinite;
}

@keyframes typinganime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*=== 下から登場するアニメーション ===*/
@keyframes updown-anim {
  0% {
    transform: translateY(110%); /*表示範囲外から*/
    opacity: 0;
  }
  100% {
    transform: translateY(0); /*通常の位置へ*/
    opacity: 1;
  }
}
.updown {
  overflow: hidden;
}
.updown span {
  transform: translateY(110%); /*下（範囲外）に隠しておく*/
  transition: 0.3s ease-in-out;
  display: inline-block; /*ブロック要素に変更*/
}
.updown.active span {
  animation: 0.25s updown-anim linear forwards; /*一度だけのアニメーション（終了時点で固定）*/
}
.updown span:nth-child(1) {
  animation-delay: 0.2s;
}
.updown span:nth-child(2) {
  animation-delay: 0.25s;
}
.updown span:nth-child(3) {
  animation-delay: 0.3s;
}
.updown span:nth-child(4) {
  animation-delay: 0.35s;
}
.updown span:nth-child(5) {
  animation-delay: 0.4s;
}
.updown span:nth-child(6) {
  animation-delay: 0.45s;
}
.updown span:nth-child(7) {
  animation-delay: 0.5s;
}
.updown span:nth-child(8) {
  animation-delay: 0.55s;
}
.updown span:nth-child(9) {
  animation-delay: 0.6s;
}
.updown span:nth-child(10) {
  animation-delay: 0.65s;
}
.updown span:nth-child(11) {
  animation-delay: 0.7s;
}
.updown span:nth-child(12) {
  animation-delay: 0.75s;
}
.updown span:nth-child(13) {
  animation-delay: 0.8s;
}
.updown span:nth-child(14) {
  animation-delay: 0.85s;
}
.updown span:nth-child(15) {
  animation-delay: 0.9s;
}
.updown span:nth-child(16) {
  animation-delay: 0.95s;
}

/*=== テキスト ===*/
.taC {
  text-align: center;
}

.taR {
  text-align: right;
}

.fwB {
  font-weight: bold;
}

/*=== 余白 ===*/
.main {
  margin-top: 72px;
}

.mt25 {
  margin-top: 25px;
}

/*==========================================
 アンカーリンク
===========================================*/
.anchor_link {
  position: relative;
  top: -150px;
  display: block;
}

@media screen and (max-width: 768px) {
  .anchor_link {
    top: -100px;
  }
}
.borderTOP {
  position: relative;
}
.borderTOP::before {
  content: "";
  width: 100%;
  height: 2px;
  display: block;
  background: url("../img/common/line-rough.svg") repeat-x center/cover;
  position: absolute;
  top: -1px;
  left: 0;
}

.grecaptcha-badge {
  display: none;
}

/*==========================================
 BORDER
===========================================*/
.M_brdT {
  position: relative;
}
.M_brdT::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1920/20;
  background: #d12f18;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .M_brdT::before {
    aspect-ratio: 1125/20;
  }
}

/*==========================================
 LOADING ANIMATION
===========================================*/
.loading-animation {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #babec2;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 200;
}
.loading-animation .LA-txt {
  max-width: 1341px;
  width: 100%;
  position: relative;
}
.loading-animation .LA-txt svg {
  width: 100%;
  height: auto;
}
.loading-animation .LA-txt svg .st0 {
  fill: none;
  stroke: #fff;
  stroke-width: 10;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500;
}
.loading-animation .LA-logo {
  width: 50%;
  max-width: 408px;
  margin: 0 7% 0 auto;
  opacity: 0;
  transition: all 0.8s ease;
}
.loading-animation .LA-logo.show {
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .loading-animation .LA-logo {
    display: none !important;
  }
}

/*==========================================
 HEADER
===========================================*/
#header {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 20;
}
#header.fixed {
  position: fixed;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  #header.fixed::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    aspect-ratio: 1920/20;
    background: #d12f18;
  }
}
@media screen and (max-width: 767px) {
  #header.fixed .header-logo {
    background: #e72f18;
  }
}
@media screen and (max-width: 767px) {
  #header.fixed .header-logo a {
    padding: 1em;
    background-image: url("../img/common/logo_wht.svg");
  }
}
#header .header-logo {
  max-width: 193px;
  width: 25%;
  aspect-ratio: 153/125;
  position: absolute;
  top: 0;
  left: 0;
}
#header .header-logo a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url("../img/common/logo-header.svg") no-repeat center/65%;
}
#header .header-cnv {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 1;
  font-size: min(3vw, 2rem);
  letter-spacing: 0.05em;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  #header .header-cnv {
    width: 47%;
    display: flex;
    justify-content: space-between;
    margin: 0 0 0 auto;
  }
}
@media screen and (max-width: 767px) {
  #header .header-cnv {
    position: fixed;
    right: 0;
    top: 20%;
    font-size: 1.8rem;
  }
}
#header .header-cnv li {
  text-align: center;
}
@media screen and (min-width: 768px) {
  #header .header-cnv li {
    display: inline-block;
    width: 24%;
  }
}
@media screen and (max-width: 767px) {
  #header .header-cnv li {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 1.5em;
    height: 5em;
    margin-bottom: 0.2em;
  }
}
#header .header-cnv li a {
  display: block;
}
@media screen and (min-width: 768px) {
  #header .header-cnv li a {
    padding: 0.6em 0 0.4em;
  }
}
@media screen and (max-width: 767px) {
  #header .header-cnv li a {
    width: 100%;
    padding: 0 0.3em 0 0.2em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media (hover: hover) {
  #header .header-cnv li a:hover:hover {
    background: #000;
  }
}
@media screen and (max-width: 767px) {
  #header .header-cnv li.cnv-item {
    position: relative;
  }
}
#header .header-cnv li.cnv-item a {
  background: #d12f18;
  color: #fff;
  position: relative;
  z-index: 1;
}
#header .header-cnv li.cnv-item a.current {
  background: #babec2;
  color: #d12f18;
}
#header .header-cnv li.Mmenu-hamburger {
  cursor: pointer;
  background: #babec2;
  color: #d12f18;
  transition: 0.3s ease-in-out;
}
@media screen and (min-width: 768px) {
  #header .header-cnv li.Mmenu-hamburger {
    padding: 0.6em 0 0.4em;
  }
}
@media screen and (max-width: 767px) {
  #header .header-cnv li.Mmenu-hamburger {
    padding: 0 0.3em 0 0.2em;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }
}
@media (hover: hover) {
  #header .header-cnv li.Mmenu-hamburger:hover:hover {
    background: #000;
    color: #fff;
  }
}
#header .header-cnv li.Mmenu-hamburger .Mmenu-trigger {
  position: relative;
  z-index: 1;
}
#header .gnav-wrap {
  top: 0;
  right: -100vw;
  opacity: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  transition: 0.4s ease-in-out;
  z-index: -3;
  -ms-overflow-style: none;
  overflow-x: hidden;
  background: rgba(0, 0, 0, 0.6);
}
#header .gnav-wrap.open {
  opacity: 1;
  z-index: 99;
}
#header .gnav-wrap .gnav-dummy {
  width: 109%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  position: absolute;
  left: 0;
  top: 0;
}
#header .gnav-wrap .gnav-bg {
  position: relative;
  width: 90%;
  margin: 7vh auto;
  background: #e72f18;
  color: #fff;
  -ms-overflow-style: none;
  overflow-x: hidden;
  padding: 50px 0 0;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .gnav-bg {
    padding: 90px 0 80px;
  }
}
#header .gnav-wrap .gnav-inner {
  width: 85%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .gnav-inner {
    width: calc(100% - 140px);
    display: flex;
  }
}
#header .gnav-wrap .gnav-inner a::after {
  background: #fff;
}
#header .gnav-wrap .btn-gnav-close {
  position: absolute;
  text-align: center;
  right: 4%;
  top: 22px;
  cursor: pointer;
  max-width: 164px;
  width: 20%;
  z-index: 2;
  line-height: 1;
}
@media screen and (min-width: 577px) {
  #header .gnav-wrap .btn-gnav-close {
    right: 2.5%;
  }
}
@media screen and (min-width: 768px) {
  #header .gnav-wrap .btn-gnav-close {
    top: 25px;
  }
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .btn-gnav-close {
    width: 50px;
  }
}
#header .gnav-wrap .btn-gnav-close .icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 1/1;
  border: 1px solid #fff;
  border-radius: 50%;
  margin: 0 auto;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .btn-gnav-close .icon {
    display: none;
  }
}
#header .gnav-wrap .btn-gnav-close .icon svg {
  fill: #fff;
  width: 60%;
}
#header .gnav-wrap .btn-gnav-close .iconPC {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
}
#header .gnav-wrap .btn-gnav-close .iconPC::before, #header .gnav-wrap .btn-gnav-close .iconPC::after {
  content: "";
  display: block;
  position: absolute;
  width: 50px;
  height: 1px;
  background: #fff;
  top: 50%;
  transition: 0.3s ease-in-out;
}
#header .gnav-wrap .btn-gnav-close .iconPC::before {
  transform: rotate(45deg);
}
#header .gnav-wrap .btn-gnav-close .iconPC::after {
  transform: rotate(-45deg);
}
@media screen and (max-width: 1200px) {
  #header .gnav-wrap .btn-gnav-close .iconPC {
    display: none;
  }
}
#header .gnav-wrap .btn-gnav-close .txt {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(3vw, 3rem);
  color: #fff;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .btn-gnav-close .txt {
    font-size: min(3vw, 1.6rem);
    line-height: 0.7;
  }
}
#header .gnav-wrap .gnav-logo {
  max-width: 284px;
  width: 10%;
  position: absolute;
  right: 4%;
  bottom: 80px;
}
@media screen and (min-width: 1920px) {
  #header .gnav-wrap .gnav-logo {
    width: 20%;
  }
}
@media screen and (max-width: 1200px) {
  #header .gnav-wrap .gnav-logo {
    display: none;
  }
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .gnav-pick {
    width: 35%;
  }
}
#header .gnav-wrap .gnav-pick a {
  color: #fff;
}
#header .gnav-wrap .gnav-pick .pick-lg {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 1;
  font-size: min(8vw, 8rem);
  letter-spacing: 0.05em;
  margin-bottom: 0.5em;
}
@media screen and (min-width: 768px) {
  #header .gnav-wrap .gnav-pick .pick-lg {
    font-size: min(4vw, 8rem);
  }
}
#header .gnav-wrap .gnav-pick .pick-md {
  font-size: min(3vw, 3rem);
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #header .gnav-wrap .gnav-pick .pick-md {
    font-size: min(1.6vw, 3rem);
  }
}
#header .gnav-wrap .gnav-pick .pick-md li:not(:last-child) {
  margin-bottom: 1.5em;
}
#header .gnav-wrap .gnav-pick .pick-md .ja {
  margin-right: 1em;
  font-weight: bold;
}
#header .gnav-wrap .gnav-pick .pick-md .en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(3.3vw, 3.3rem);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  #header .gnav-wrap .gnav-pick .pick-md .en {
    font-size: min(1.8vw, 3.3rem);
  }
}
#header .gnav-wrap .gnav-pick .adMenu {
  cursor: pointer;
}
#header .gnav-wrap .gnav-pick .chUl {
  display: none;
  font-size: min(3.2vw, 1.6rem);
  letter-spacing: 0.06em;
  margin-top: 1em;
}
#header .gnav-wrap .gnav-pick .chUl li:not(:last-child) {
  margin-bottom: 1em;
}
#header .gnav-wrap .gnav-main {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding: 2em 0;
  font-size: min(1.6vw, 3rem);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  line-height: 1;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .gnav-main {
    width: 55%;
    max-width: 652px;
  }
}
@media screen and (max-width: 1200px) {
  #header .gnav-wrap .gnav-main {
    margin: 2em auto;
  }
}
@media screen and (max-width: 767px) {
  #header .gnav-wrap .gnav-main {
    font-size: min(3vw, 3rem);
  }
}
#header .gnav-wrap .gnav-main li {
  width: 49%;
}
#header .gnav-wrap .gnav-main li:nth-of-type(n + 3) {
  margin-top: 1.5em;
}
@media screen and (min-width: 1920px) {
  #header .gnav-wrap .gnav-main li {
    width: 40%;
  }
  #header .gnav-wrap .gnav-main li:nth-of-type(2n) {
    width: 52%;
  }
}
#header .gnav-wrap .gnav-main li a {
  color: #fff;
}
#header .gnav-wrap .gnav-main li .ja {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  #header .gnav-wrap .gnav-main li .ja {
    line-height: 1.8;
  }
}
#header .gnav-wrap .gnav-main li .en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(3.3vw, 3.3rem);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  #header .gnav-wrap .gnav-main li .en {
    font-size: min(1.8vw, 3.3rem);
  }
}
#header .gnav-wrap .gnav-cnv {
  background: #d0d4d8;
  font-size: min(2.4vw, 2rem);
  text-align: center;
  padding: 2em 0;
}
@media screen and (min-width: 1201px) {
  #header .gnav-wrap .gnav-cnv {
    display: none;
  }
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList {
  width: 85%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li:not(:last-child) {
  border-right: 1px solid #000;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li a {
  display: block;
  padding: 0 1em;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li .icon img {
  width: 100%;
  height: 7vw;
  object-fit: contain;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li .txt {
  line-height: 1.4;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li.reserve {
  width: 26%;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li.request {
  width: 26%;
}
#header .gnav-wrap .gnav-cnv .gnac-cnvList li.contact {
  width: 46%;
}

/*=== ハンバーガーメニュー ========================*/
/*==========================================
 各種予約やご相談
===========================================*/
.bottomCnv-block {
  background: url("../img/common/txt-footerCnv.svg") no-repeat right 2% bottom 2%/35%, url("../img/common/bg-footerCnv.jpg") no-repeat center/cover;
  font-size: min(2vw, 2rem);
  padding: 6em 0;
}
@media screen and (max-width: 1200px) {
  .bottomCnv-block {
    font-size: min(1.6vw, 2rem);
  }
}
@media screen and (max-width: 767px) {
  .bottomCnv-block {
    font-size: min(2vw, 2rem);
    background-size: 50%, cover;
  }
}
@media screen and (max-width: 576px) {
  .bottomCnv-block {
    background: url("../img/common/bg-footerCnv.jpg") no-repeat center/cover;
    font-size: min(3.6vw, 2rem);
  }
}
.bottomCnv-block .block-ttl {
  text-align: center;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: min(3vw, 3rem);
  letter-spacing: 0.12em;
  font-weight: 500;
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .bottomCnv-block .block-ttl {
    font-size: min(4.2vw, 3rem);
  }
}
.bottomCnv-block .cnv-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.bottomCnv-block .cnv-list::after {
  content: "";
  display: block;
  width: 33%;
}
@media screen and (max-width: 767px) {
  .bottomCnv-block .cnv-list::after {
    display: none;
  }
}
.bottomCnv-block .cnv-list .cnv-item {
  width: 32.6666666667%;
}
.bottomCnv-block .cnv-list .cnv-item:nth-of-type(n + 4) {
  margin-top: 1%;
}
@media screen and (max-width: 767px) {
  .bottomCnv-block .cnv-list .cnv-item {
    width: 49%;
  }
  .bottomCnv-block .cnv-list .cnv-item:nth-of-type(n + 3) {
    margin-top: 1%;
  }
}
@media screen and (max-width: 576px) {
  .bottomCnv-block .cnv-list .cnv-item {
    width: 100%;
  }
  .bottomCnv-block .cnv-list .cnv-item:nth-of-type(n + 2) {
    margin-top: 2%;
  }
}
.bottomCnv-block .cnv-list .cnv-item a {
  display: block;
  background: url("../img/common/bg-footerCnvBtn.png") no-repeat center/cover;
  padding: 5px;
}
@media (hover: hover) {
  .bottomCnv-block .cnv-list .cnv-item a:hover:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 1201px) {
  .bottomCnv-block .cnv-list .cnv-item a {
    padding: 10px;
  }
}
@media screen and (max-width: 576px) {
  .bottomCnv-block .cnv-list .cnv-item a {
    padding: 10px;
  }
}
.bottomCnv-block .cnv-list .cnv-item .item-row {
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.2em 1em;
}
@media screen and (min-width: 1920px) {
  .bottomCnv-block .cnv-list .cnv-item .item-row {
    padding: 1.5em 2.5em;
  }
}
@media screen and (max-width: 576px) {
  .bottomCnv-block .cnv-list .cnv-item .item-row {
    padding: 0.8em 2.5em;
  }
}
.bottomCnv-block .cnv-list .cnv-item .item-head {
  min-width: 2.6em;
  width: 2.6em;
}
@media screen and (max-width: 767px) {
  .bottomCnv-block .cnv-list .cnv-item .item-head {
    min-width: 3.2em;
    width: 3.2em;
  }
}
.bottomCnv-block .cnv-list .cnv-item .item-body {
  width: 100%;
  padding: 0 0 0 0.5em;
}
.bottomCnv-block .cnv-list .cnv-item .item-icon img {
  width: 100%;
  object-fit: contain;
  aspect-ratio: 1;
}
.bottomCnv-block .cnv-list .cnv-item .item-ttlEn {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(2.8vw, 2.8rem);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .bottomCnv-block .cnv-list .cnv-item .item-ttlEn {
    font-size: min(5.5vw, 2.8rem);
  }
}
.bottomCnv-block .cnv-list .cnv-item .item-ttlJa {
  font-weight: bold;
  line-height: 1;
}

/*==========================================
 FOOTER
===========================================*/
#footer {
  position: relative;
  background: #e72f18;
  color: #fff;
  padding: 120px 0 30px;
  font-size: min(2.6vw, 1.8rem);
}
@media screen and (max-width: 767px) {
  #footer {
    padding: 5em 0 3em;
  }
}
#footer a {
  color: #fff;
}
#footer .footer-sitemap .ttl-en {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: min(9.4vw, 5.4rem);
  letter-spacing: 0.05em;
  line-height: 1;
  display: inline-block;
}
#footer .footer-sitemap .ttl-en::after {
  content: "";
  display: inline-block;
  width: 0.4em;
  aspect-ratio: 1/1;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  position: relative;
  top: -0.1em;
}
#footer .footer-sitemap .ttl-ja {
  letter-spacing: 0.21em;
  font-size: min(7vw, 1.8rem);
}
#footer .footer-body {
  border-top: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  #footer .footer-body {
    padding-top: 1em;
    margin-top: 1em;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-body {
    border-top: none;
    display: flex;
    flex-direction: column-reverse;
  }
}
@media screen and (min-width: 768px) {
  #footer .footer-info {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-info {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 768px) {
  #footer .footer-info .info-box {
    width: 48%;
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-info .info-box {
    width: auto;
  }
}
@media screen and (max-width: 1200px) {
  #footer .footer-info .info-box:nth-of-type(n + 3) {
    margin-top: 2em;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-info .info-box:nth-of-type(n + 2) {
    margin-top: 1.5em;
  }
}
#footer .footer-info .info-box .box-ttl {
  font-size: min(3.8vw, 1.8rem);
  letter-spacing: 0.21em;
  font-weight: bold;
}
#footer .footer-info .info-box .box-detail {
  letter-spacing: 0.08em;
  font-size: min(2.4vw, 1.4rem);
}
#footer .footer-tel {
  font-size: min(3vw, 2rem);
  font-weight: bold;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #footer .footer-tel {
    margin-top: 60px;
    font-size: min(1.6vw, 2.2rem);
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-tel {
    margin: 1.5em 0 1em;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-tel .txt {
    text-align: justify;
    text-align-last: justify;
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 0 0.2em;
  }
}
@media screen and (max-width: 576px) {
  #footer .footer-tel .txt {
    border-radius: 5px;
    padding: 0.37em 0.5em;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-tel .txt span {
    letter-spacing: normal;
  }
}
#footer .footer-tel .num {
  margin-left: 0.7em;
  font-family: "DIN 2014", YuGothic, "Yu Gothic Medium", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
  font-weight: normal;
  font-size: min(6.6vw, 6.6rem);
}
@media screen and (min-width: 768px) {
  #footer .footer-tel .num {
    letter-spacing: 0.1em;
    font-size: min(4.6vw, 6.6rem);
  }
}
#footer .footer-tel .num::before {
  content: "";
  display: inline-block;
  width: 0.7em;
  aspect-ratio: 50/55;
  background: url("../img/common/icon-tel.svg") no-repeat center/contain;
  margin-right: 0.2em;
}
#footer .footer-logo {
  max-width: 264px;
  width: 23%;
  position: absolute;
  right: 2.5%;
  bottom: 60px;
}
@media screen and (min-width: 1201px) {
  #footer .footer-logo {
    bottom: 120px;
  }
}
#footer .footer-copy {
  margin-top: 5em;
  text-align: right;
  font-size: min(2.5vw, 1.3rem);
}
@media screen and (min-width: 1201px) {
  #footer .footer-copy {
    margin-top: 150px;
  }
}

/*==========================================
 【SP FOOTER CNV】
===========================================*/
.sp-footer-cnv {
  position: fixed;
  z-index: 8;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #e72f18;
  display: flex;
}
@media screen and (min-width: 768px) {
  .sp-footer-cnv {
    left: auto;
    bottom: auto;
    right: 0;
    top: 35%;
    display: block;
    max-width: 90px;
    width: 12%;
    background: none;
  }
}
.sp-footer-cnv li {
  width: 33.3333333333%;
}
.sp-footer-cnv li:not(:last-child) {
  border-right: 1px solid #af433e;
}
@media screen and (min-width: 768px) {
  .sp-footer-cnv li {
    width: 100%;
    background: #e72f18;
  }
  .sp-footer-cnv li:nth-of-type(1) {
    display: none;
  }
  .sp-footer-cnv li:not(:last-child) {
    border-bottom: 1px solid #af433e;
    border-right: 0;
  }
}
@media screen and (max-width: 375px) {
  .sp-footer-cnv li {
    width: 37.5%;
  }
  .sp-footer-cnv li:first-child {
    width: 25%;
  }
}
.sp-footer-cnv li a {
  color: #fff;
  text-align: center;
  display: block;
  font-size: 1.2rem;
  padding: 0.8em 0;
}
.sp-footer-cnv li a:focus {
  background: #babec2;
}
@media screen and (min-width: 577px) {
  .sp-footer-cnv li a {
    font-size: 1.4rem;
    padding: 1em 0;
  }
}
@media screen and (min-width: 768px) {
  .sp-footer-cnv li a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    aspect-ratio: 130/120;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
  .sp-footer-cnv li a:hover:hover {
    background: #000;
  }
}
.sp-footer-cnv li a > i {
  display: block;
  font-size: 2.6rem;
  margin-bottom: 0.2em;
}
.sp-footer-cnv li a .icon-img {
  font-size: 0;
  display: block;
  margin-bottom: 4px;
}
.sp-footer-cnv li a .icon-img img {
  height: 28px;
}

/*==========================================
 【BUTTON】
===========================================*/
.btn-moreR {
  font-size: min(3.6vw, 1.6rem);
  letter-spacing: 0.06em;
  font-weight: 500;
  line-height: 1;
}
.btn-moreR a {
  display: inline-block;
  color: #4d4d4d;
  padding: 1.2em 4em;
  border: 1px solid #4d4d4d;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .btn-moreR a {
    padding: 1.3em 2.5em;
  }
}
@media (hover: hover) {
  .btn-moreR a:hover:hover {
    color: #fff;
    background: #4d4d4d;
  }
}
.btn-moreR.wht a {
  color: #fff;
  border-color: #fff;
}
@media (hover: hover) {
  .btn-moreR.wht a:hover:hover {
    color: #4d4d4d;
    background: #fff;
  }
}
.btn-moreR.mT {
  margin-top: 2em;
}

.btn-BtTop {
  font-size: min(3vw, 1.6rem);
}
.btn-BtTop.mTB {
  margin: 120px auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .btn-BtTop.mTB {
    margin: 5em auto;
  }
}
.btn-BtTop.minW a {
  min-width: 10em;
}
@media screen and (min-width: 768px) {
  .btn-BtTop.minW a {
    min-width: 220px;
  }
}
.btn-BtTop a {
  font-weight: bold;
  letter-spacing: 0.06em;
  display: inline-block;
  background: #000;
  color: #fff;
  padding: 1.2em 3.2em;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .btn-BtTop a {
    padding: 1.2em 2em;
  }
}
@media (hover: hover) {
  .btn-BtTop a:hover:hover {
    background: #999;
  }
}

@media screen and (min-width: 768px) {
  .btn-grd_Row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .btn-grd_Row .btn-grd {
    width: 48%;
  }
}
@media screen and (max-width: 767px) {
  .btn-grd_Row .btn-grd:not(:last-child) {
    margin-bottom: 1em;
  }
}

.btn-grd a {
  display: inline-block;
  max-width: 480px;
  width: 100%;
  background: url("../img/common/bg-footerCnvBtn.png") no-repeat center/cover;
  padding: 10px;
  text-align: left;
  font-size: min(4.2vw, 2rem);
}
@media (hover: hover) {
  .btn-grd a:hover:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 1201px) {
  .btn-grd a {
    padding: 10px;
  }
}
@media screen and (max-width: 576px) {
  .btn-grd a {
    padding: 10px;
  }
}
.btn-grd .btn-row {
  background: #fff;
  display: flex;
  align-items: center;
  padding: 1.2em 1em;
}
@media screen and (min-width: 768px) {
  .btn-grd .btn-row {
    justify-content: center;
  }
}
@media screen and (min-width: 1201px) {
  .btn-grd .btn-row {
    padding: 1.5em 0;
  }
}
@media screen and (max-width: 576px) {
  .btn-grd .btn-row {
    padding: 0.8em 1em;
  }
}
.btn-grd .btn-rowB {
  background: #fff;
  display: block;
  align-items: center;
  padding: 1.2em 1em;
}
@media screen and (min-width: 1201px) {
  .btn-grd .btn-rowB {
    padding: 1.5em 0;
  }
}
@media screen and (max-width: 576px) {
  .btn-grd .btn-rowB {
    padding: 0.8em 1em;
  }
}
.btn-grd .btn-head {
  min-width: 3.2em;
  width: 3.2em;
}
@media screen and (max-width: 767px) {
  .btn-grd .btn-head {
    min-width: 2.5em;
    width: 2.5em;
  }
}
.btn-grd .btn-body {
  padding: 0 0 0 1em;
}
.btn-grd .btn-icon img {
  width: 100%;
  object-fit: contain;
  aspect-ratio: 1;
}
.btn-grd .btn-ttlEn {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(2.8vw, 2.8rem);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .btn-grd .btn-ttlEn {
    font-size: min(5.5vw, 2.8rem);
  }
}
.btn-grd .btn-ttlJa {
  font-weight: bold;
  line-height: 1;
}
.btn-grd.btn-blog a {
  max-width: 800px;
  padding: 20px;
}
@media screen and (max-width: 767px) {
  .btn-grd.btn-blog a {
    padding: 10px;
  }
}
.btn-grd.btn-blog .btn-rowB {
  text-align: center;
  padding-left: 0;
  padding-right: 0;
}
.btn-grd.btn-blog .btn-blogLead {
  font-size: min(2.8vw, 1.8rem);
  font-weight: bold;
  letter-spacing: 0.16em;
  margin-bottom: 0.7em;
}
@media screen and (max-width: 767px) {
  .btn-grd.btn-blog .btn-blogLead {
    letter-spacing: normal;
    margin-bottom: 0;
  }
}
.btn-grd.btn-blog .btn-blogTtl {
  font-size: min(9.6vw, 6.6rem);
  line-height: 0.7;
}
@media screen and (min-width: 768px) {
  .btn-grd.btn-blog .btn-blogTtl {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.btn-grd.btn-blog .btn-blogTtl .en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 0.7em;
}
.btn-grd.btn-blog .btn-blogTtl .ja {
  font-size: min(2.8vw, 1.6rem);
  font-weight: bold;
  margin-left: 2em;
}
@media screen and (max-width: 767px) {
  .btn-grd.btn-blog .btn-blogTtl .ja {
    margin: 0.5em auto 0;
    display: block;
  }
}

.btn-grdG a {
  display: inline-block;
  max-width: 480px;
  width: 100%;
  background: url("../img/common/bg-grdG.png") no-repeat center/cover;
  padding: 10px;
  text-align: center;
  font-size: min(3.8vw, 1.6rem);
}
@media (hover: hover) {
  .btn-grdG a:hover:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 1201px) {
  .btn-grdG a {
    padding: 10px;
  }
}
@media screen and (max-width: 576px) {
  .btn-grdG a {
    padding: 10px;
  }
}
.btn-grdG a .btn-inner {
  background: #fff;
  padding: 1.2em 0;
}
@media screen and (min-width: 1201px) {
  .btn-grdG a .btn-inner {
    padding: 1.5em 0;
  }
}
@media screen and (max-width: 576px) {
  .btn-grdG a .btn-inner {
    padding: 0.8em 0;
  }
}
.btn-grdG a .btn-ttlEn {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(6.8vw, 4.8rem);
  letter-spacing: 0.12em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .btn-grdG a .btn-ttlEn {
    font-size: min(10vw, 4.8rem);
  }
}
.btn-grdG a .btn-ttlJa {
  font-weight: bold;
  line-height: 1;
}

/*==========================================
 【SLICK ARW】
===========================================*/
.slick-next,
.slick-prev {
  font-size: min(4.6vw, 2.4rem);
  width: 1.5em;
  height: auto;
  aspect-ratio: 1/1;
  display: block;
  border-radius: 50%;
  border: 1px solid #4d4d4d;
  transition: 0.3s ease-in-out;
  z-index: 1;
}
.slick-next::before,
.slick-prev::before {
  position: absolute;
  content: "";
  display: block;
  font-size: min(4.6vw, 2.4rem);
  width: 0.4em;
  aspect-ratio: 1/1;
  border-bottom: 1px solid #4d4d4d;
  top: calc(50% - 0.2em);
}
@media screen and (max-width: 767px) {
  .slick-next::before,
  .slick-prev::before {
    width: 0.4em;
  }
}
.slick-next:focus, .slick-next:active,
.slick-prev:focus,
.slick-prev:active {
  background: #4d4d4d;
}
.slick-next:focus::before, .slick-next:active::before,
.slick-prev:focus::before,
.slick-prev:active::before {
  border-color: #fff;
}
@media (hover: hover) {
  .slick-next:hover:hover,
  .slick-prev:hover:hover {
    background: #4d4d4d;
  }
  .slick-next:hover:hover::before,
  .slick-prev:hover:hover::before {
    border-color: #fff;
  }
}

.slick-next::before {
  border-right: 1px solid #4d4d4d;
  right: calc(50% - 0.1em);
  transform: rotate(-45deg);
}

.slick-prev::before {
  border-left: 1px solid #4d4d4d;
  left: calc(50% - 0.1em);
  transform: rotate(45deg);
}

/*==========================================
 【PAGETOP】
===========================================*/
.pagetop {
  position: fixed;
  z-index: 8;
  right: 10px;
  bottom: 10px;
}
@media screen and (max-width: 767px) {
  .pagetop {
    display: none !important;
  }
}
.pagetop a {
  display: block;
  background: #000;
  font-size: 0;
  transition: 0.3s ease-in-out;
  width: 50px;
  height: 50px;
  padding: 15px 0 0;
  text-align: center;
  border: 1px solid #fff;
}
.pagetop a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 7.5px 20px 7.5px;
  border-color: transparent transparent #fff transparent;
}
@media screen and (min-width: 768px) {
  .pagetop a:hover {
    background: #000;
  }
}
@media screen and (max-width: 767px) {
  .pagetop a {
    width: 35px;
    height: 35px;
    padding: 12px 0 0;
  }
  .pagetop a::after {
    border-width: 0 5.5px 12px 5.5px;
  }
}

/*==========================================
 pager
===========================================*/
.pager-wrap {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .pager-wrap {
    margin-top: 60px;
  }
}
@media screen and (max-width: 576px) {
  .pager-wrap {
    margin-top: 30px;
  }
}
.pager-wrap .wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.pager-wrap .wp-pagenavi a,
.pager-wrap .wp-pagenavi span {
  border: none;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  aspect-ratio: 1/1;
  padding: 0;
  letter-spacing: 0.1em;
  margin: 2px;
}
@media screen and (max-width: 1200px) {
  .pager-wrap .wp-pagenavi a,
  .pager-wrap .wp-pagenavi span {
    margin: 2px;
  }
}
.pager-wrap .wp-pagenavi .page,
.pager-wrap .wp-pagenavi .current {
  aspect-ratio: 1/1;
}
@media (hover: hover) {
  .pager-wrap .wp-pagenavi .page:hover:hover {
    background: #e72f18;
    color: #fff;
  }
}
.pager-wrap .wp-pagenavi .current {
  background: #000;
  color: #fff;
}
.pager-wrap .wp-pagenavi .extend {
  border: none;
}
.pager-wrap .wp-pagenavi .previouspostslink,
.pager-wrap .wp-pagenavi .nextpostslink,
.pager-wrap .wp-pagenavi .first,
.pager-wrap .wp-pagenavi .last {
  padding: 0;
  aspect-ratio: auto;
  width: auto;
  margin: 2px 8px;
}
@media (hover: hover) {
  .pager-wrap .wp-pagenavi .previouspostslink:hover:hover,
  .pager-wrap .wp-pagenavi .nextpostslink:hover:hover {
    color: #e72f18;
  }
}
.pager-wrap .wp-pagenavi .previouspostslink::before {
  content: "";
  background: url("../img/common/arw-pagerP.svg") no-repeat center/contain;
  width: 0.5em;
  aspect-ratio: 9/16;
  display: inline-block;
  margin: 0 0.5em 0 0;
}
.pager-wrap .wp-pagenavi .nextpostslink::after {
  content: "";
  background: url("../img/common/arw-pagerN.svg") no-repeat center/contain;
  width: 0.5em;
  aspect-ratio: 9/16;
  display: inline-block;
  margin: 0 0 0 0.5em;
}
.pager-wrap .wp-pagenavi .first,
.pager-wrap .wp-pagenavi .last {
  width: auto;
  aspect-ratio: auto;
  border: none;
  background: none;
  border-radius: 0;
}
@media (hover: hover) {
  .pager-wrap .wp-pagenavi .first:hover:hover,
  .pager-wrap .wp-pagenavi .last:hover:hover {
    background: none;
    color: #e72f18;
  }
}

/*==========================================
 パンくず
===========================================*/
.breadcrumb {
  font-size: min(3.2vw, 1.2rem);
  font-weight: 500;
  padding: 0 0 0 14em;
  position: absolute;
  z-index: 21;
  top: 30px;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    display: none;
  }
}
.breadcrumb.wht {
  color: #fff;
}
.breadcrumb.wht a {
  color: #fff;
}
.breadcrumb.wht a::after {
  background: #fff;
}
.breadcrumb.blk {
  color: #000;
}
.breadcrumb.blk a {
  color: #000;
}
.breadcrumb.blk a::after {
  background: #000;
}
.breadcrumb.blk span {
  color: #000;
}
.breadcrumb.blk span::after {
  background: #000;
}
.breadcrumb.bg_Gry {
  background: #f5f5f5;
}
.breadcrumb.Ptb_S {
  padding: 25px 0;
}
@media screen and (max-width: 767px) {
  .breadcrumb.Ptb_S {
    padding: 15px 0;
  }
}
.breadcrumb.Mt_S {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .breadcrumb.Mt_S {
    margin-top: 15px;
  }
}
.breadcrumb.Mt_M {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .breadcrumb.Mt_M {
    margin-top: 40px;
  }
}
.breadcrumb.Mt_L {
  margin-top: 150px;
}
@media screen and (max-width: 767px) {
  .breadcrumb.Mt_L {
    margin-top: 120px;
  }
}

/*==========================================
 中ページ
===========================================*/
.innerP._mT {
  padding: 1.5em 0 0;
}

.innerP-ttl {
  font-size: min(15.3vw, 10rem);
  letter-spacing: 0.06em;
  font-weight: 500;
}
.innerP-ttl::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 100px;
  height: 2px;
  background: #e72f18;
  margin-top: 0.35em;
}
.innerP-ttl.wht {
  color: #fff;
}
.innerP-ttl .ttl-en {
  letter-spacing: 0.05em;
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 0.7;
}
.innerP-ttl .ttl-ja {
  font-size: min(3.6vw, 2rem);
  font-weight: 500;
  letter-spacing: 0.06em;
}
.innerP-ttl.taC::after {
  margin: 0.35em auto 0;
}

.innerP-imgHead {
  padding: 1.5em 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
.innerP-imgHead::before {
  content: "";
  display: block;
  background: url("../img/common/bg-H.svg") no-repeat center/cover;
  max-width: 565px;
  width: 35%;
  aspect-ratio: 565/455;
  position: absolute;
  right: 5%;
  bottom: -5%;
}
@media screen and (min-width: 1001px) {
  .innerP-imgHead {
    aspect-ratio: 1920/850;
  }
}
@media screen and (min-width: 1261px) {
  .innerP-imgHead {
    aspect-ratio: 1920/600;
  }
}
@media screen and (max-width: 767px) {
  .innerP-imgHead::before {
    right: -5%;
    bottom: 15%;
    width: 50%;
  }
}
.innerP-imgHead.blk::before {
  background-image: url("../img/common/bg-H_wht.svg");
}
.innerP-imgHead.wallBg {
  background: url("../img/common/bg-wallW.jpg") center;
}
.innerP-imgHead.voice {
  background-image: url("../img/inner/head-voice.jpg");
}
.innerP-imgHead.news {
  background-image: url("../img/inner/head_news.jpg");
}
.innerP-imgHead.staffblog {
  background-image: url("../img/inner/head-staffblog.jpg");
}
.innerP-imgHead.estate {
  background-image: url("../img/inner/head_estate.jpg");
}
.innerP-imgHead.magazine {
  background: url("../img/inner/head_magazine.jpg");
}
.innerP-imgHead.model {
  background: url("../img/inner/head_model.jpg");
}
.innerP-imgHead.ceoblog {
  background-image: url("../img/inner/head_ceoblog.jpg");
  background-position: center right;
}
.innerP-imgHead.ceoblog::before {
  display: none;
}
@media screen and (max-width: 767px) {
  .innerP-imgHead.ceoblog {
    background-image: url("../img/inner/head_ceoblog-sp.jpg");
  }
}
.innerP-imgHead .wrapW {
  position: relative;
  height: 100%;
}
@media screen and (min-width: 1001px) {
  .innerP-imgHead .wrapW {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.innerP-imgHead .innerP-ttl {
  padding: 1.5em 0;
}
@media screen and (min-width: 1001px) {
  .innerP-imgHead .innerP-ttl {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .innerP-imgHead .innerP-ttl {
    padding: 1em 0;
  }
}
.innerP-imgHead .iP-headTxt {
  max-width: 580px;
  width: 45%;
  position: absolute;
  right: 5%;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .innerP-imgHead .iP-headTxt {
    right: 9%;
    bottom: -7%;
  }
}

.section-ttlDf {
  font-size: min(4.2vw, 2rem);
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .section-ttlDf {
    margin-bottom: 1.3em;
  }
}
.section-ttlDf .ttl-en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 0.7;
  letter-spacing: 0.05em;
  font-size: min(15vw, 7rem);
}
.section-ttlDf .ttl-en .imgH {
  display: inline-block;
  width: 0.6em;
  position: relative;
  top: 0.06em;
  margin-right: 0.05em;
}
.section-ttlDf .ttl-ja {
  font-weight: 500;
  letter-spacing: 0.06em;
}

/*==========================================
 OTHER　BLOCK
===========================================*/
.other-block {
  margin: 120px auto;
  background: url("../img/common/bg-wallW.jpg");
  padding: 5em 0;
}
@media screen and (max-width: 767px) {
  .other-block {
    margin: 5em auto;
  }
}
.other-block .block-ttl {
  text-align: center;
  font-size: min(4vw, 2rem);
  letter-spacing: 0.06em;
  margin-bottom: 2em;
}
.other-block .block-ttl .ttl-en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: min(9vw, 7rem);
  letter-spacing: 0.05em;
  line-height: 0.7;
}
.other-block .block-ttl .ttl-ja {
  font-weight: 500;
}

.swiper-button-prev, .swiper-button-next {
  width: 1.5em;
  height: auto;
  font-size: min(4.6vw, 2.4rem);
  aspect-ratio: 1/1;
  border: 1px solid #4d4d4d;
  border-radius: 50%;
  z-index: 2;
}
.swiper-button-prev::after, .swiper-button-next::after {
  content: "";
  border-bottom: 1px solid #4d4d4d;
  width: 0.3em;
  aspect-ratio: 1/1;
  position: absolute;
}
@media screen and (max-width: 767px) {
  .swiper-button-prev::after, .swiper-button-next::after {
    width: 0.2em;
  }
}
.swiper-button-prev::after {
  border-left: 1px solid #4d4d4d;
  transform: rotate(45deg);
  left: calc(50% - 0.1em);
}
@media screen and (max-width: 767px) {
  .swiper-button-prev::after {
    left: calc(50% - 0.05em);
  }
}
.swiper-button-next::after {
  border-right: 1px solid #4d4d4d;
  transform: rotate(-45deg);
  right: calc(50% - 0.1em);
}
@media screen and (max-width: 767px) {
  .swiper-button-next::after {
    right: calc(50% - 0.05em);
  }
}

/*==========================================
 swiper【共通】
===========================================*/
.thum-sliderD-Wrap {
  max-width: 1056px;
  width: 90%;
  margin: 0 auto;
  overflow: hidden;
  font-size: min(3.8vw, 1.8rem);
  font-weight: 500;
  letter-spacing: 0.06em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .thum-sliderD-Wrap .swiper-button-prev, .thum-sliderD-Wrap .swiper-button-next {
    top: 70%;
  }
}
.thum-sliderD-Wrap .swiper-button-prev {
  left: 0;
}
.thum-sliderD-Wrap .swiper-button-next {
  right: 0;
}
.thum-sliderD-Wrap .THM-listD .THM-itemD {
  padding: 0 2.6em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .thum-sliderD-Wrap .THM-listD .THM-itemD .item-data {
    margin: 0 0 0.5en;
  }
}
.thum-sliderD-Wrap .THM-listD .THM-itemD .item-date {
  font-size: min(3.5vw, 1.5rem);
  color: #555;
}
.thum-sliderD-Wrap .THM-listD .THM-itemD .item-add {
  font-size: min(3.4vw, 1.4rem);
  color: #555;
}
@media screen and (max-width: 767px) {
  .thum-sliderD-Wrap .THM-listD .THM-itemD .item-ttlBlock .item-cat {
    display: none;
  }
}
.thum-sliderD-Wrap .THM-listD .THM-itemD .item-cat {
  display: inline-block;
  background: #000;
  color: #fff;
  padding: 0 0.4em;
  margin: 0.4em 0 0.2em;
  font-size: min(3.3vw, 1.3rem);
}
.thum-sliderD-Wrap .THM-listD .THM-itemD .item-cat.red {
  background: #e72f18;
}
.thum-sliderD-Wrap .THM-listD .THM-itemD .item-ttl {
  display: inline-block;
  margin: 0.3em 0;
}

/*==========================================
 イベントスライダー【共通】
===========================================*/
.secDf-ttl {
  font-size: min(4.2vw, 2rem);
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .secDf-ttl {
    margin-bottom: 1.3em;
  }
}
.secDf-ttl .ttl-en {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  line-height: 0.7;
  letter-spacing: 0.05em;
  font-size: min(15vw, 7rem);
}
.secDf-ttl .ttl-en .imgH {
  display: inline-block;
  width: 0.6em;
  position: relative;
  top: 0.06em;
  margin-right: 0.05em;
}
.secDf-ttl .ttl-ja {
  font-weight: 500;
  letter-spacing: 0.06em;
}

.sec-eventD {
  background: url("../img/common/bg-wallW.jpg");
  padding: 5em 0;
}
@media screen and (max-width: 767px) {
  .sec-eventD {
    padding: 3em 0;
  }
}
.sec-eventD .slider-eventD-wrap {
  width: 85%;
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (min-width: 1920px) {
  .sec-eventD .slider-eventD-wrap {
    width: 70%;
  }
}
.sec-eventD .slider-eventD {
  padding: 5vw 0;
}
@media screen and (max-width: 576px) {
  .sec-eventD .slider-eventD {
    padding: 7vw 0;
  }
}
.sec-eventD .slider-eventD .slide-invisible {
  opacity: 0;
}
.sec-eventD .slider-eventD .swiper-slide-active {
  box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.2);
  transform: scale(1.15) !important;
}
.sec-eventD .event-listD .event-itemD .item-img {
  overflow: hidden;
}
.sec-eventD .event-listD .event-itemD .item-img img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1;
  transition: all 0.8s ease;
}

/*==========================================
 遷移
===========================================*/
/*
.scenery{
	&::before,&::after{
		content: "";
		position: fixed; //画面に固定表示
		top: 0;
		left: 0;
		width: 100vw; //画面幅
		height: 100vh; //画面の高さ
		transform-origin: right; //動く向き
	}
	&::before{
		background: #000; //濃い緑
		z-index: 1000; //最前面
		animation: right-move 0.8s forwards;
		animation-delay: 0.2s;
	}
	&::after{
		background: #666; //薄い緑
		z-index: 999; //1つ後ろ
		animation: right-move 1s forwards;
		animation-delay: 0.3s; //上の背景が動き終わるまで遅延
	}
}
//背景が動くアニメーション ===========
@keyframes right-move{
  0%{
    transform: scaleX(1); //MAX幅
  }
  100% {
    transform: scaleX(0); //幅0
    visibility: hidden; //非表示に
  }
}
*/
@media screen and (max-width: 767px) {
  .sp-none_tag {
    display: contents;
  }
}
@media screen and (min-width: 768px) {
  .pc-none_tag {
    display: contents;
  }
}
/*==========================================
 共通パーツ
===========================================*/
/*padding*/
.sec_PT {
  padding-top: clamp(8rem, 7.8125vw, 15rem);
}
@media screen and (max-width: 767px) {
  .sec_PT {
    padding-top: clamp(4rem, 10.4302477184vw, 8rem);
  }
}

.sec_PB {
  padding-bottom: clamp(8rem, 7.8125vw, 15rem);
}
@media screen and (max-width: 767px) {
  .sec_PB {
    padding-bottom: clamp(4rem, 10.4302477184vw, 8rem);
  }
}

.sec_PTB {
  padding: clamp(8rem, 7.8125vw, 15rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_PTB {
    padding: clamp(4rem, 10.4302477184vw, 8rem) 0;
  }
}

.sec_PT_m {
  padding-top: clamp(5rem, 6.7708333333vw, 13rem);
}
@media screen and (max-width: 767px) {
  .sec_PT_m {
    padding-top: clamp(4.5rem, 11.7340286832vw, 9rem);
  }
}

.sec_PB_m {
  padding-bottom: clamp(5rem, 6.7708333333vw, 13rem);
}
@media screen and (max-width: 767px) {
  .sec_PB_m {
    padding-bottom: clamp(4.5rem, 11.7340286832vw, 9rem);
  }
}

.sec_PTB_m {
  padding: clamp(5rem, 6.7708333333vw, 13rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_PTB_m {
    padding: clamp(4.5rem, 11.7340286832vw, 9rem) 0;
  }
}

.sec_PT_s {
  padding-top: clamp(4.5rem, 4.6875vw, 9rem);
}
@media screen and (max-width: 767px) {
  .sec_PT_s {
    padding-top: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_PB_s {
  padding-bottom: clamp(4.5rem, 4.6875vw, 9rem);
}
@media screen and (max-width: 767px) {
  .sec_PB_s {
    padding-bottom: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_PTB_s {
  padding: clamp(4.5rem, 4.6875vw, 9rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_PTB_s {
    padding: clamp(3rem, 6.518904824vw, 5rem) 0;
  }
}

/*margin*/
.sec_MT {
  margin-top: clamp(8rem, 7.8125vw, 15rem);
}
@media screen and (max-width: 767px) {
  .sec_MT {
    margin-top: clamp(4rem, 10.4302477184vw, 8rem);
  }
}

.sec_MB {
  margin-bottom: clamp(8rem, 7.8125vw, 15rem);
}
@media screen and (max-width: 767px) {
  .sec_MB {
    margin-bottom: clamp(4rem, 10.4302477184vw, 8rem);
  }
}

.sec_MTB {
  margin: clamp(8rem, 7.8125vw, 15rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_MTB {
    margin: clamp(4rem, 10.4302477184vw, 8rem) 0;
  }
}

.sec_MT_m {
  margin-top: clamp(5rem, 6.7708333333vw, 13rem);
}
@media screen and (max-width: 767px) {
  .sec_MT_m {
    margin-top: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_MB_m {
  margin-bottom: clamp(5rem, 6.7708333333vw, 13rem);
}
@media screen and (max-width: 767px) {
  .sec_MB_m {
    margin-bottom: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_MTB_m {
  margin: clamp(5rem, 6.7708333333vw, 13rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_MTB_m {
    margin: clamp(3rem, 6.518904824vw, 5rem) 0;
  }
}

.sec_MT_s {
  margin-top: clamp(4.5rem, 4.6875vw, 9rem);
}
@media screen and (max-width: 767px) {
  .sec_MT_s {
    margin-top: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_MB_s {
  margin-bottom: clamp(4.5rem, 4.6875vw, 9rem);
}
@media screen and (max-width: 767px) {
  .sec_MB_s {
    margin-bottom: clamp(3rem, 6.518904824vw, 5rem);
  }
}

.sec_MTB_s {
  margin: clamp(4.5rem, 4.6875vw, 9rem) 0;
}
@media screen and (max-width: 767px) {
  .sec_MTB_s {
    margin: clamp(3rem, 6.518904824vw, 5rem) 0;
  }
}

.font_adobeA {
  font-family: "Adobe Arabic", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.font_Mina {
  font-family: source-han-serif-japanese, serif;
}

.font_min {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.font_YuGo {
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
}/*# sourceMappingURL=common.css.map */