@charset "UTF-8";
/*==========================================
変数 inc.scss
===========================================*/
/*==========================================
 共通設定
===========================================*/
* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

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

::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: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  overflow-x: hidden;
  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;
}

.mw600 {
  max-width: 600px;
  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;
}

/* デバイス*/
.pc_none {
  display: none;
}

.sp_none {
  display: block;
}

.pc_none_sm {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc_none {
    display: block;
  }
  .sp_none {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .pc_none_sm {
    display: block;
  }
  .sp_none_sm {
    display: none;
  }
}
/*==========================================
 汎用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;
  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;
  }
}
/* ホバー　震える */
@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);
  }
}
/*==== MARKER ===*/
.gray-line {
  background: linear-gradient(transparent 60%, #f5f5f5 60%);
}

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

/*=== 幅 ===*/
.wrapW {
  max-width: 1700px;
  width: 92%;
  margin: 0 auto;
}
@media screen and (min-width: 577px) {
  .wrapW {
    width: 95%;
  }
}

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

.wrap-inner {
  padding: 0 2.5%;
}

.wrap-innerW {
  padding: 0 4%;
}

@media screen and (min-width: 1201px) {
  .wrap-inner {
    padding: 0 25px;
  }
}
@media screen and (min-width: 1921px) {
  .wrap-inner {
    padding: 0 40px;
  }
}
@media screen and (max-width: 576px) {
  .wrap-inner {
    padding: 0 4%;
  }
}
/*=== PC none / SP none ===*/
@media screen and (min-width: 351px) {
  .pc-none_xxs {
    display: none;
  }
}
@media screen and (min-width: 383px) {
  .pc-none_xs {
    display: none;
  }
}
@media screen and (min-width: 577px) {
  .pc-none_sm {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .pc-none {
    display: none;
  }
}
@media screen and (min-width: 1201px) {
  .pc-none_lg {
    display: none;
  }
}
@media (min-width: 480px) {
  .pc-none_480 {
    display: none;
  }
}
@media screen and (max-width: 1200px) {
  .sp-none_lg {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .sp-none {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .sp-none_sm {
    display: none;
  }
}
@media screen and (max-width: 382px) {
  .sp-none_xs {
    display: none;
  }
}
/*=== アニメーション ===*/
.inview_fi {
  opacity: 0;
  transition: 1.5s;
}
.inview_fi.show {
  opacity: 1;
}

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

.inview_fade {
  animation-name: fade;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 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;
  }
}
.inview-blur {
  opacity: 0;
  transition: transform 0.5s linear;
  animation-duration: 1.5s;
  animation-fill-mode: both;
}

.blur {
  animation-name: imageBlur;
  opacity: 1;
  transition: 0.8s;
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    opacity: 1;
    -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;
}

/* ホバー　左から右【一瞬】 */
@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;
}

.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;
  }
}
/*==========================================
 HEADER
===========================================*/
#header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
#header.scrl {
  background: #fff;
  position: fixed;
  transition: 0.3s ease-in-out;
}
#header.scrl .header-logo {
  max-width: 47px;
  width: 100%;
}
#header.scrl .header-logo .logo-top {
  display: none;
}
#header.scrl .header-logo .logo-scroll {
  display: block;
  width: 100%;
}
#header.scrl .header-logo .logo-scroll a {
  display: block;
}
#header.scrl .header-cts {
  padding-top: 1rem;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 815px) {
  #header.scrl .header-cts {
    display: none;
  }
}
#header.scrl .header-nav ul li a {
  color: #000;
}
#header.scrl .header-cnv a {
  min-width: 148px;
  margin: 0 0 0 40px;
}
#header.scrl .Mmenu-hamburger {
  right: 20px;
  top: 25px;
  text-align: center;
}
#header.scrl .Mmenu-hamburger .txt {
  color: #000;
}
#header.scrl .Mmenu-trigger span {
  background: #000;
}
#header .sp_instagram {
  position: absolute;
  top: 22px;
  right: 167px;
}
#header .sp_instagram i {
  font-size: 2.8rem;
}
#header .sp_youtube {
  position: absolute;
  top: 22px;
  right: 95px;
}
#header .sp_youtube i {
  font-size: 2.8rem;
}
#header .header-inner {
  padding: 10px 2.5%;
  position: relative;
}
@media screen and (min-width: 961px) {
  #header .header-inner {
    display: flex;
    justify-content: space-between;
  }
}
#header .header-logo .logo {
  width: 50%;
  margin: 24px 0 0 40px;
  max-width: 330px;
  display: block;
  font-size: 0;
}
@media (max-width: 1056px) {
  #header .header-logo .logo {
    max-width: 200px;
  }
}
@media (max-width: 960px) {
  #header .header-logo .logo {
    max-width: 220px;
  }
}
@media (max-width: 896px) {
  #header .header-logo .logo {
    max-width: 150px;
  }
}
@media (max-width: 748px) {
  #header .header-logo .logo {
    max-width: 330px;
    margin-left: 3em;
    margin: 0;
  }
}
@media (min-width: 1300px) {
  #header .header-logo .logo {
    max-width: 330px;
    width: 100%;
    margin: 30px 0 0 40px;
  }
}
#header .header-logo .ttl {
  margin: 0.4em 0 0 40px;
  color: #004a95;
  font-weight: 900;
  letter-spacing: 0.2em;
  font-size: clamp(1.6rem, 2vw, 2rem);
}
@media (max-width: 748px) {
  #header .header-logo .ttl {
    margin-left: 0em;
  }
}
#header .header-logo .logo-scroll {
  display: none;
}
#header .header-cts {
  padding: 40px 70px 0 0;
  display: flex;
  justify-content: flex-end;
  padding: 40px 60px 0 0;
  position: absolute;
  top: 15px;
  right: 30px;
}
@media (min-width: 1100px) {
  #header .header-cts {
    padding: 40px 70px 0 0;
  }
}
@media (max-width: 1100px) {
  #header .header-cts {
    display: none;
  }
}
@media (max-width: 1180px) {
  #header .header-nav .iyicon {
    position: absolute;
    top: 30px;
    right: 17px;
  }
  #header .header-nav .iyicon ul {
    display: flex;
    justify-content: flex-end;
  }
}
#header .header-nav ul {
  position: relative;
  display: flex;
  align-items: center;
}
#header .header-nav ul li {
  text-align: center;
}
#header .header-nav ul li:not(:last-child) {
  margin-right: 1em;
}
@media screen and (min-width: 1441px) {
  #header .header-nav ul li:not(:last-child) {
    margin-right: 1.5em;
  }
}
#header .header-nav ul li a {
  color: #000000;
}
@media screen and (min-width: 768px) {
  #header .header-nav ul li a:hover {
    color: #ffb900;
  }
}
#header .header-nav ul li .en {
  display: block;
  font-family: "Bebas Neue", cursive;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: clamp(1.8rem, 2vw, 2rem);
}
#header .header-nav ul li .ja {
  font-weight: 500;
  font-size: clamp(1.3rem, 1.4vw, 1.4rem);
  letter-spacing: 0.1em;
}
#header .header-nav ul li i {
  font-size: 2.2rem;
}
@media screen and (min-width: 768px) {
  #header .header-nav ul li.youtube a:hover {
    color: red;
  }
}
#header .header-cnv a {
  display: block;
  max-width: 148px;
  width: 100%;
  background-color: #FFF;
  border: 4px solid #187fc2;
  /* background: linear-gradient(to right, $mainG_colorL 0%, $mainG_colorD 51%, $mainG_colorL 100%);
   background-size: 200% auto;*/
  color: #187fc2;
  text-align: center;
  font-family: "Bebas Neue", cursive;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: 2rem;
  padding: 0.6em 0 0.4em;
}
@media screen and (min-width: 768px) {
  #header .header-cnv a:hover {
    background-position: right center;
  }
}
@media screen and (min-width: 1441px) {
  #header .header-cnv a {
    min-width: 148px;
    margin-left: 20px;
  }
}
@media screen and (min-width: 1701px) {
  #header .header-cnv a {
    margin-left: 40px;
  }
}
@media screen and (max-width: 1440px) {
  #header .header-cnv a {
    margin: 15px 0 0 auto;
  }
}
#header .Mmenu-hamburger {
  position: absolute;
  right: 4%;
  top: 20px;
  z-index: 500;
  cursor: pointer;
  height: 22px;
}
@media screen and (min-width: 577px) {
  #header .Mmenu-hamburger {
    right: 2.5%;
  }
}
@media screen and (min-width: 768px) {
  #header .Mmenu-hamburger {
    right: 40px;
    top: 58px;
  }
}
@media screen and (min-width: 1441px) {
  #header .Mmenu-hamburger {
    right: 40px;
  }
}
#header .Mmenu-hamburger .txt {
  margin-left: -1rem;
  font-size: 1.2rem;
  color: #004a95;
}
@media screen and (min-width: 769px) {
  #header .Mmenu-hamburger .txt {
    color: #fff;
  }
}
#header .Mmenu-hamburger .txt.active {
  color: #fff;
}
#header .Mmenu-trigger {
  position: relative;
  width: 27px;
  height: 22px;
  z-index: 1000;
}
#header .Mmenu-trigger,
#header .Mmenu-trigger .Mmenu-trigger span {
  display: inline-block;
  transition: all 0.4s;
}
#header .Mmenu-trigger.active span {
  background-color: #fff;
}
#header .Mmenu-trigger.active span:nth-of-type(1) {
  top: -5px;
  animation: active-menu-bar01 0.75s forwards;
}
#header .Mmenu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
#header .Mmenu-trigger.active span:nth-of-type(3) {
  bottom: -6px;
  animation: active-menu-bar03 0.75s forwards;
}
#header .Mmenu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #004a95;
}
@media screen and (min-width: 768px) {
  #header .Mmenu-trigger span {
    background-color: #fff;
  }
}
#header .Mmenu-trigger span:nth-of-type(1) {
  top: 0;
  animation: menu-bar01 0.75s forwards;
}
#header .Mmenu-trigger span:nth-of-type(2) {
  top: 10px;
  transition: all 0.25s 0.25s;
  opacity: 1;
}
#header .Mmenu-trigger span:nth-of-type(3) {
  bottom: 0;
  animation: menu-bar02 0.75s forwards;
}
#header .gnav-wrap {
  left: 0;
  top: -100vh;
  opacity: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  transition: 0.3s ease-in-out;
  z-index: -3;
  color: #fff;
  -ms-overflow-style: none;
  overflow-x: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(to right, #187fc2, #003387);
}
#header .gnav-wrap.open {
  opacity: 1;
  z-index: 110;
}
#header.gnav-open .Mmenu-hamburger {
  top: 20px;
  right: 2.5%;
}
@media screen and (min-width: 1201px) {
  #header.gnav-open .Mmenu-hamburger {
    top: 40px;
    right: 40px;
  }
}

@keyframes menu-bar01 {
  0% {
    transform: translateY(15px) rotate(45deg);
  }
  50% {
    transform: translateY(15px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar02 {
  0% {
    transform: translateY(-15px) rotate(-45deg);
  }
  50% {
    transform: translateY(-15px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes active-menu-bar01 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(15px) rotate(0);
  }
  100% {
    transform: translateY(15px) rotate(45deg);
  }
}
@keyframes active-menu-bar03 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-15px) rotate(0);
  }
  100% {
    transform: translateY(-15px) rotate(-45deg);
  }
}
/*==========================================
 FOOTER
===========================================*/
#footer {
  text-align: center;
}
@media screen and (min-width: 768px) {
  #footer .footer-row {
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-row .row-top,
  #footer .footer-row .row-bottom {
    padding: 0 2.5%;
  }
}
@media screen and (max-width: 576px) {
  #footer .footer-row .row-top,
  #footer .footer-row .row-bottom {
    padding: 0 4%;
  }
}
#footer .footer-row .row-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #footer .footer-row .row-top {
    width: 30%;
    padding: 0 0 0 2.5%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  #footer .footer-row .row-top {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-row .row-top {
    margin-bottom: 5%;
  }
}
#footer .footer-row .row-bottom {
  background: linear-gradient(to right, #187fc2, #003387);
  color: #fff;
}
@media screen and (min-width: 768px) {
  #footer .footer-row .row-bottom {
    width: 70%;
    position: relative;
    padding: 25px 2.5% 40px 5%;
  }
  #footer .footer-row .row-bottom::before {
    content: "";
    -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
            clip-path: polygon(0 0, 0% 100%, 100% 0);
    width: 10%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-row .row-bottom {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) {
  #footer .footer-row .row-bottom {
    padding-top: 7%;
    padding-bottom: 7%;
  }
}
#footer .footer-row .row-bottom .bottom-cts01,
#footer .footer-row .row-bottom .bottom-cts02 {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 1201px) {
  #footer .footer-row .row-bottom .bottom-cts01 {
    width: 43%;
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-row .row-bottom .bottom-cts02 {
    width: 65%;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
#footer .footer-logo {
  width: 42%;
  font-size: 0;
  margin-top: -1rem;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  #footer .footer-logo {
    width: 55%;
  }
}
#footer .footer-lead {
  width: 54%;
  line-height: 1.2;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  #footer .footer-lead {
    width: auto;
    margin-top: 0.5em;
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-lead {
    font-size: clamp(1.2rem, 1vw, 1.6rem);
  }
}
#footer .footer-tel {
  text-align: center;
}
@media screen and (min-width: 768px) {
  #footer .footer-tel {
    text-align: right;
  }
}
#footer .footer-tel a {
  color: #fff;
  font-family: "Bebas Neue", cursive;
  font-size: clamp(5.2rem, 6.2vw, 6.2rem);
  letter-spacing: 0.05em;
}
#footer .footer-tel a::before {
  content: "";
  background: url("../img/common/icon_freedial.svg") no-repeat center/contain;
  width: 72px;
  height: 41px;
  display: inline-block;
}
@media screen and (min-width: 1201px) {
  #footer .footer-tel a {
    font-size: clamp(3.2rem, 3.2vw, 6.2rem);
  }
}
@media screen and (min-width: 1201px) {
  #footer .footer-contact {
    min-width: 172px;
  }
}
#footer .footer-contact a {
  text-align: center;
  display: block;
  background: #fff;
  color: #004a95;
  font-family: "Bebas Neue", cursive;
  font-size: clamp(2rem, 2.4vw, 2.4rem);
  padding: 0.5em 0 0.3em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #footer .footer-contact a:hover {
    background: #ffb900;
  }
}
#footer .footer-link {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}
@media screen and (min-width: 1201px) {
  #footer .footer-link {
    width: 100%;
    padding: 0 35px 0 0;
    margin-top: 0;
  }
}
#footer .footer-link li {
  width: 33.3333333333%;
  text-align: center;
  position: relative;
}
#footer .footer-link li::after {
  content: "";
  width: 1px;
  height: 50px;
  background: #fff;
  display: block;
  position: absolute;
  right: 0;
  top: calc(50% - 25px);
  transform: rotate(45deg);
}
@media screen and (max-width: 1200px) {
  #footer .footer-link li::after {
    height: 40px;
    top: calc(50% - 20px);
  }
  #footer .footer-link li:last-child::after {
    display: none;
  }
}
#footer .footer-link li a {
  color: #fff;
  font-family: "Bebas Neue", cursive;
  font-size: clamp(1.8rem, 2vw, 2rem);
}
@media screen and (min-width: 768px) {
  #footer .footer-link li a {
    font-size: 1.6rem;
  }
  #footer .footer-link li a:hover {
    color: #ffb900;
  }
}
#footer .footer-copy {
  font-size: clamp(1.2rem, 1.4vw, 1.4rem);
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 2%;
}

/*==========================================
 【CONVERSION】
===========================================*/
.Mcnv-block {
  position: relative;
  padding: 20px 0 0;
}
@media screen and (min-width: 768px) {
  .Mcnv-block {
    padding: 140px 0 0;
  }
}
@media screen and (min-width: 1201px) {
  .Mcnv-block {
    padding: 140px 0 150px;
  }
}
.Mcnv-block::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  background: linear-gradient(45deg, #fff 25%, #c4c4c4 25%, #c4c4c4 50%, #fff 50%, #fff 75%, #c4c4c4 75%, #c4c4c4);
  background-size: 5px 5px;
}
@media screen and (max-width: 1200px) {
  .Mcnv-block::before {
    height: 90%;
  }
}
@media screen and (min-width: 1201px) {
  .Mcnv-block .Mcnv-row {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    max-width: 1105px;
    width: 100%;
  }
}
.Mcnv-block .Mcnv-row .row-head {
  border: 3px solid #000;
  border-radius: 20px;
  background: #fff;
  position: relative;
  margin-bottom: 60px;
  padding: 20px;
}
.Mcnv-block .Mcnv-row .row-head::after {
  content: "";
  background: url("../img/common/balloon_sp.png") no-repeat center/contain;
  width: 47px;
  height: 55px;
  display: block;
  position: absolute;
  bottom: -55px;
  left: calc(50% - 23.5px);
}
@media screen and (min-width: 1201px) {
  .Mcnv-block .Mcnv-row .row-head {
    width: 100%;
    max-width: 840px;
    margin: 0;
  }
  .Mcnv-block .Mcnv-row .row-head::after {
    background-image: url("../img/common/balloon_pc.png");
    width: 43px;
    height: 44px;
    left: -43px;
    bottom: calc(50% - 22px);
  }
}
.Mcnv-block .Mcnv-row .row-body {
  font-size: 0;
}
.Mcnv-block .Mcnv-row .row-body .img-hand {
  max-width: 196px;
  width: 35%;
  margin: 0 auto;
}
@media screen and (min-width: 1201px) {
  .Mcnv-block .Mcnv-row .row-body .img-hand {
    width: 100%;
  }
}
@media screen and (min-width: 1201px) {
  .Mcnv-block .Mcnv-row .row-body {
    min-width: 233px;
  }
}
.Mcnv-block .Mcnv-row .Mcnv-list {
  display: flex;
  justify-content: space-between;
}
.Mcnv-block .Mcnv-row .Mcnv-list li {
  position: relative;
  width: calc(33.3333333333% - 3px);
}
.Mcnv-block .Mcnv-row .Mcnv-list li:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  width: 3px;
  height: 100%;
  top: 0;
  right: -3px;
  background: #000;
}
.Mcnv-block .Mcnv-row .Mcnv-list li:not(:last-child) {
  margin-bottom: 5px;
}
.Mcnv-block .Mcnv-row .Mcnv-list li a {
  display: block;
  background: #e3e3e3;
  text-align: center;
  padding: 15px 0;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .Mcnv-block .Mcnv-row .Mcnv-list li a:hover .arw {
    background: #000;
  }
  .Mcnv-block .Mcnv-row .Mcnv-list li a:hover .arw::after {
    border-color: #fff;
  }
}
.Mcnv-block .Mcnv-row .Mcnv-list li .item-icon {
  font-size: 5.1rem;
  line-height: 1;
  display: block;
  margin-bottom: 0.3em;
  font-size: 3.6rem;
}
.Mcnv-block .Mcnv-row .Mcnv-list li .item-ttl {
  line-height: 1;
}
.Mcnv-block .Mcnv-row .Mcnv-list li .item-ttl span {
  vertical-align: middle;
  display: block;
}
.Mcnv-block .Mcnv-row .Mcnv-list li .item-ttl .en {
  font-family: "Bebas Neue", cursive;
  letter-spacing: 0.05em;
  font-size: clamp(2.1rem, 5vw, 5rem);
}
.Mcnv-block .Mcnv-row .Mcnv-list li .item-ttl .ja {
  letter-spacing: 0.1em;
  font-size: clamp(1.2rem, 1.8vw, 1.8rem);
  font-weight: 500;
  line-height: 1.4;
  height: 2.8em;
}
@media screen and (min-width: 1201px) {
  .Mcnv-block .Mcnv-row .Mcnv-list li .item-ttl .ja {
    height: auto;
  }
}
.Mcnv-block .Mcnv-row .Mcnv-list li .arw {
  display: block;
  width: 45px;
  height: 45px;
  border: 1px solid #000;
  border-radius: 50%;
  position: relative;
  margin: 15px auto 0;
  transition: 0.3s ease-in-out;
}
.Mcnv-block .Mcnv-row .Mcnv-list li .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
  transition: 0.3s ease-in-out;
}

/*==========================================
 【BUTTON】
===========================================*/
@media screen and (min-width: 768px) {
  .btn-more a:hover .arw {
    background: linear-gradient(to right, #187fc2, #003387);
  }
  .btn-more a:hover .arw::after {
    border-color: #fff;
    -o-border-image: none;
       border-image: none;
  }
}
.btn-more .arw-wrap {
  display: inline-block;
  width: 45px;
  height: 45px;
  background: linear-gradient(to right, #187fc2, #003387);
  border-radius: 50%;
  padding: 1px;
  margin-right: 7px;
}
.btn-more .arw {
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
  transition: 0.3s ease-in-out;
}
.btn-more .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #004a95;
  border-bottom: 2px solid #004a95;
  -o-border-image: linear-gradient(to right, #187fc2, #003387);
     border-image: linear-gradient(to right, #187fc2, #003387);
  border-image-slice: 1;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
  transition: 0.3s ease-in-out;
}
.btn-more .txt {
  border-bottom: 1px solid #000;
}
.btn-more.Cblue .txt {
  font-weight: 500;
  background: linear-gradient(to right, #187fc2, #003387);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border-bottom: 1px solid #004a95;
  -o-border-image: linear-gradient(to right, #187fc2, #003387);
     border-image: linear-gradient(to right, #187fc2, #003387);
  border-image-slice: 1;
}

@media screen and (min-width: 768px) {
  .btn-more_wht a:hover .arw {
    background: #fff;
  }
  .btn-more_wht a:hover .arw::after {
    border-color: #004a95;
  }
}
.btn-more_wht .arw {
  display: inline-block;
  width: 45px;
  height: 45px;
  border: 1px solid #fff;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
  margin-right: 7px;
  transition: 0.3s ease-in-out;
}
.btn-more_wht .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
  transition: 0.3s ease-in-out;
}
.btn-more_wht .txt {
  color: #fff;
  border-bottom: 1px solid #fff;
}

.btn-more.taC,
.btn-more_wht.taC {
  text-align: center;
}

.btn-more_wide a {
  display: block;
  background: linear-gradient(to right, #187fc2 0%, #003387 51%, #187fc2 100%);
  background-size: 200% auto;
  color: #fff;
  text-align: center;
  padding: 40px 4%;
}
@media screen and (min-width: 768px) {
  .btn-more_wide a:hover {
    background-position: right center;
  }
}
.btn-more_wide .arw {
  display: inline-block;
  width: 45px;
  height: 45px;
  border: 1px solid #fff;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
  margin-right: 7px;
}
.btn-more_wide .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
}
.btn-more_wide .txt {
  color: #fff;
  border-bottom: 1px solid #fff;
}

/* ご来店予約はこちら */
.btn-reserve {
  width: 370px;
  height: 70px;
  border: 2px solid #22aa38;
  border-radius: 0 20px 0 0;
  display: flex;
  align-items: center;
  overflow: hidden;
}
@media screen and (max-width: 576px) {
  .btn-reserve {
    width: 280px;
    height: 50px;
  }
}
.btn-reserve_icon {
  width: 80px;
  height: 100%;
  background: #22aa38;
  display: flex;
  justify-content: center;
  align-items: center;
}
.btn-reserve_icon i {
  font-size: 2.4rem;
  color: #fff;
}
@media screen and (max-width: 576px) {
  .btn-reserve_icon {
    width: 50px;
  }
  .btn-reserve_icon i {
    font-size: 2rem;
  }
}
.btn-reserve_text {
  width: calc(100% - 80px);
  height: 100%;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.2em;
  color: #22aa38;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 576px) {
  .btn-reserve_text {
    width: calc(100% - 50px);
    font-size: 1.6rem;
  }
}
.btn-reserve:hover .btn-reserve_icon {
  background: #fff;
  transition: 0.3s ease-in-out;
}
.btn-reserve:hover .btn-reserve_icon i {
  color: #22aa38;
  transition: 0.3s ease-in-out;
}
.btn-reserve:hover .btn-reserve_text {
  color: #fff;
  background: #22aa38;
  transition: 0.3s ease-in-out;
}

/* 来店予約ボタン */
.btn-reserveArea {
  margin: 100px 0 150px;
}
@media screen and (max-width: 576px) {
  .btn-reserveArea {
    margin: 50px 0 80px;
  }
}
.btn-reserveArea .btn-reserve {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .btn-reserveArea .btn-reserve {
    width: 610px;
    height: 100px;
    border: 3px solid #22aa38;
  }
}
@media screen and (min-width: 1201px) {
  .btn-reserveArea .btn-reserve {
    width: 850px;
    height: 130px;
    border: 4px solid #22aa38;
  }
}
@media screen and (min-width: 769px) {
  .btn-reserveArea .btn-reserve_icon {
    width: 120px;
  }
}
@media screen and (min-width: 1201px) {
  .btn-reserveArea .btn-reserve_icon {
    width: 160px;
  }
}
@media screen and (min-width: 769px) {
  .btn-reserveArea .btn-reserve_icon i {
    font-size: 2.9rem;
  }
}
@media screen and (min-width: 1201px) {
  .btn-reserveArea .btn-reserve_icon i {
    font-size: 3.4rem;
  }
}
@media screen and (min-width: 769px) {
  .btn-reserveArea .btn-reserve_text {
    width: calc(100% - 120px);
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1201px) {
  .btn-reserveArea .btn-reserve_text {
    width: calc(100% - 160px);
    font-size: 2.8rem;
  }
}

/* アコーディオンボタン */
.btn-accordion {
  position: relative;
  cursor: pointer;
}
.btn-accordion::before {
  content: "";
  display: block;
  width: 25px;
  border-bottom: 2px solid #000;
  position: absolute;
  top: 50%;
  right: 20px;
}
.btn-accordion::after {
  content: "";
  display: block;
  width: 25px;
  border-bottom: 2px solid #000;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: rotate(90deg);
}
.btn-accordion.open {
  border-bottom: 1px solid #000;
}
.btn-accordion.open::after {
  transform: rotate(0);
}

.js-accordion_item {
  display: none;
}

/* 角丸長方形 */
.btn-rr {
  width: 100%;
  height: 100%;
  color: #fff;
  background: linear-gradient(to right, #187fc2, #003387);
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}

a.btn-rr {
  background: linear-gradient(to right, #187fc2 0%, #003387 51%, #187fc2 100%);
  background-size: 200% auto;
}
a.btn-rr:hover {
  background-position: right center;
}

/*==========================================
  HOVER　グラデMORE (「opacity:1;」は各自で設定 )
===========================================*/
.hoverGR {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(24, 127, 194, 0.6), rgba(0, 51, 135, 0.6));
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .hoverGR {
    display: none;
  }
}
.hoverGR .more .arw {
  display: block;
  width: 45px;
  height: 45px;
  background: #fff;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
}
.hoverGR .more .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #004a95;
  border-bottom: 2px solid #004a95;
  -o-border-image: linear-gradient(to right, #187fc2, #003387);
     border-image: linear-gradient(to right, #187fc2, #003387);
  border-image-slice: 1;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
}
.hoverGR .more .txt {
  font-family: "Bebas Neue", cursive;
  font-size: 2rem;
  letter-spacing: 0.1em;
}

.slide-arw_wht .slick-prev,
.slide-arw_wht .slick-next {
  border: 1px solid #fff;
  background: none;
}
.slide-arw_wht .slick-prev::before,
.slide-arw_wht .slick-next::before {
  border-color: #fff;
  -o-border-image: none;
     border-image: none;
  border-image-slice: inherit;
}
.slide-arw_wht .slick-prev::after,
.slide-arw_wht .slick-next::after {
  display: none;
}

/*==========================================
  【選ばれて48年】
===========================================*/
.marusho-no1 {
  color: #e5c869;
  padding: 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .marusho-no1 {
    padding: 0;
  }
}
.marusho-no1 .no1-row .row-head {
  font-weight: 900;
}
@media screen and (min-width: 768px) {
  .marusho-no1 .no1-row .row-head {
    width: 100%;
  }
}
@media screen and (min-width: 1201px) {
  .marusho-no1 .no1-row .row-head {
    max-width: 413px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .marusho-no1 .no1-row .row-body {
    width: 48%;
    margin-top: 25px;
    display: flex;
  }
}
@media screen and (min-width: 1201px) {
  .marusho-no1 .no1-row .row-body {
    width: 100%;
    justify-content: center;
  }
  .marusho-no1 .no1-row .row-body img {
    display: block;
    width: 30%;
    margin: 0 10px;
  }
}
.marusho-no1 .no1-row {
  box-sizing: border-box;
  margin-top: 5rem;
  padding: 0 22%;
}
@media screen and (max-width: 382px) {
  .marusho-no1 .no1-row {
    margin-top: 3rem;
    padding: 0;
  }
}
.marusho-no1 .no1-ttl {
  text-align: center;
  letter-spacing: 0.05em;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
}
.marusho-no1 .no1-ttl .ttl-inner {
  position: relative;
}
.marusho-no1 .no1-ttl .ttl-inner::before, .marusho-no1 .no1-ttl .ttl-inner::after {
  content: "";
  width: 75px;
  height: 4px;
  background: #e5c869;
  display: block;
  position: absolute;
  bottom: 32px;
}
.marusho-no1 .no1-ttl .ttl-inner::before {
  transform: rotate(70deg);
  left: -60px;
}
.marusho-no1 .no1-ttl .ttl-inner::after {
  transform: rotate(-70deg);
  right: -60px;
}
.marusho-no1 .no1-ttl .num {
  font-size: clamp(5rem, 9vw, 9rem);
}
.marusho-no1 .no1-lead {
  letter-spacing: 0.1em;
  font-size: clamp(1.6rem, 2.4vw, 2.4rem);
  margin-top: 0.8em;
  margin-bottom: 2rem;
  display: flex;
  justify-content: center;
}

/*==========================================
  会社情報
===========================================*/
.aboutus-list {
  display: flex;
  justify-content: center;
}

.sec-aboutus {
  background: url("../img/index/bg-aboutus.jpg") no-repeat center/cover;
  position: relative;
  color: #fff;
  padding: 55px 0 45px;
}
.sec-aboutus::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.56);
  position: absolute;
  left: 0;
  top: 0;
}
.sec-aboutus .wrapW {
  position: relative;
  z-index: 1;
}
.sec-aboutus .cts-ttl {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .sec-aboutus .cts-ttl .ttl-en {
    font-size: clamp(5rem, 6vw, 8rem);
    font-weight: bold;
  }
}
.sec-aboutus .cts-ttl .ttl-jaG {
  font-size: 3rem;
}
.sec-aboutus .aboutus-txt {
  font-size: clamp(1.6rem, 2vw, 2rem);
  letter-spacing: 0.1em;
  font-weight: 500;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-txt {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-row {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-row .row-head {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .sec-aboutus .aboutus-row .row-head {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-row .row-body {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .sec-aboutus .aboutus-row .row-body {
    margin: 0 -4%;
  }
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-list .slick-prev {
    left: -2%;
  }
  .sec-aboutus .aboutus-list .slick-next {
    right: -2%;
  }
}
.sec-aboutus .aboutus-list .aboutus-item {
  width: 25%;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .sec-aboutus .aboutus-list .aboutus-item {
    width: 33%;
    padding: 0 5px;
  }
}
.sec-aboutus .aboutus-list .aboutus-item a {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-aboutus .aboutus-list .aboutus-item a:hover .item-inner {
    background-position: right center;
  }
  .sec-aboutus .aboutus-list .aboutus-item a:hover .item-img img {
    transform: scale(1.1, 1.1);
  }
}
.sec-aboutus .aboutus-list .aboutus-item .item-img {
  font-size: 0;
  overflow: hidden;
}
.sec-aboutus .aboutus-list .aboutus-item .item-img img {
  height: auto;
  width: 100%;
  transition: all 0.8s ease;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-aboutus .aboutus-list .aboutus-item .item-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(24, 127, 194, 0.6) 0%, rgba(0, 51, 135, 0.6) 51%, rgba(24, 127, 194, 0.6) 100%);
  background-size: 200% auto;
  color: #fff;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  padding: 0 10px 12px 0;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 768px) {
  .sec-aboutus .aboutus-list .aboutus-item .item-inner {
    padding: 0 10px 5px 0;
  }
}
.sec-aboutus .aboutus-list .aboutus-item .item-ttl {
  display: inline-block;
  padding: 0 0 0 0.5em;
}
.sec-aboutus .aboutus-list .aboutus-item .item-ttl .ttl-en {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(3.2rem, 0.5vw, 5rem);
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: bold;
}
.sec-aboutus .aboutus-list .aboutus-item .item-ttl .ttl-ja {
  letter-spacing: 0.1em;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 960px) {
  .sec-aboutus .aboutus-list .aboutus-item .item-ttl .ttl-ja {
    font-size: 2rem;
  }
}
.sec-aboutus .btn-more_wht {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .sec-aboutus .btn-more_wht {
    text-align: center;
  }
}

/*==========================================
  施工事例
===========================================*/
.sec-works {
  margin-top: -1rem;
}
@media screen and (max-width: 480px) {
  .sec-works {
    max-height: -4rem;
  }
}
.sec-works .works-head {
  background: url("../img/index/ilst_works.png") no-repeat center top;
  background-size: contain;
  padding: 10px 0 120px;
  overflow: hidden;
  max-height: 17rem;
}
@media screen and (max-width: 1200px) {
  .sec-works .works-head {
    padding: 10px 0 70px;
    max-height: 15rem;
  }
}
@media screen and (max-width: 576px) {
  .sec-works .works-head {
    max-height: 12rem;
  }
}
.sec-works .sec-ttl {
  position: relative;
}
.sec-works .sec-ttl .ttl-inner {
  position: relative;
  z-index: 1;
}
.sec-works .sec-ttl .ttl-en_sub {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(1.8rem, 2vw, 2rem);
  letter-spacing: 0.1em;
}
.sec-works .works-list {
  position: relative;
  margin-top: 2rem;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (min-width: 577px) {
  .sec-works .works-list {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .sec-works .works-list::before, .sec-works .works-list::after {
    content: "";
    display: block;
  }
}
@media screen and (min-width: 768px) and (min-width: 481px) {
  .sec-works .works-list::before, .sec-works .works-list::after {
    width: 48%;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .sec-works .works-list::before, .sec-works .works-list::after {
    width: 31.5%;
  }
}
@media screen and (min-width: 768px) and (min-width: 1201px) {
  .sec-works .works-list::before, .sec-works .works-list::after {
    width: 23.5%;
  }
}
@media screen and (min-width: 768px) {
  .sec-works .works-list::before {
    order: 1;
  }
}
.sec-works .works-list .works-item {
  width: 50%;
}
@media (min-width: 481px) {
  .sec-works .works-list .works-item {
    width: 48%;
  }
}
@media screen and (min-width: 768px) {
  .sec-works .works-list .works-item {
    width: 31.5%;
  }
}
@media screen and (min-width: 1201px) {
  .sec-works .works-list .works-item {
    width: 23.5%;
  }
}
.sec-works .works-list .works-item a {
  display: block;
}
@media screen and (min-width: 768px) {
  .sec-works .works-list .works-item a:hover .hoverGR {
    opacity: 1;
  }
}
.sec-works .works-list .works-item .new-area {
  position: absolute;
  left: 4%;
  top: -22.5px;
  z-index: 1;
}
@media screen and (min-width: 1201px) {
  .sec-works .works-list .works-item .new-area {
    top: -31px;
    left: 20px;
  }
}
.sec-works .works-list .works-item .item-head {
  position: relative;
}
.sec-works .works-list .works-item .item-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(24, 127, 194, 0.6), rgba(0, 51, 135, 0.6));
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .sec-works .works-list .works-item .item-hover {
    display: none;
  }
}
.sec-works .works-list .works-item .item-more .arw {
  display: block;
  width: 45px;
  height: 45px;
  background: #fff;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
}
.sec-works .works-list .works-item .item-more .arw::after {
  content: "";
  display: block;
  border-right: 2px solid #004a95;
  border-bottom: 2px solid #004a95;
  -o-border-image: linear-gradient(to right, #187fc2, #003387);
     border-image: linear-gradient(to right, #187fc2, #003387);
  border-image-slice: 1;
  width: 14px;
  height: 14px;
  transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
}
.sec-works .works-list .works-item .item-more .txt {
  font-family: "Bebas Neue", cursive;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
.sec-works .works-list .works-item .item-img {
  font-size: 0;
  /*img {
    @include of($of_height: 96vw);
    @media (min-width: 481px) {
      height: 48vw;
    }
    @include min-width(mdS) {
      height: 17vw;
    }
    height: 48vw;
  }*/
}
.sec-works .works-list .works-item .item-body {
  padding: 10px 1em 20px;
}
.sec-works .works-list .works-item .item-ttl {
  font-size: 1.8rem;
  font-weight: 500;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  letter-spacing: 0.1em;
}
.sec-works .works-list .works-item .item-data {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  letter-spacing: 0.1em;
}

/*==========================================
 お客様の声
===========================================*/
.sec-voice {
  margin-bottom: 50px;
}
.sec-voice .voice-head {
  position: relative;
}
@media screen and (min-width: 1201px) {
  .sec-voice .voice-head {
    display: flex;
    align-items: center;
  }
}
.sec-voice .voice-head .sec-ttl {
  margin-right: 50px;
}
.sec-voice .voice-head .sec-ttl .ttl-en {
  font-size: clamp(3rem, 5vw, 4rem);
}
.sec-voice .voice-head .sec-ttl .ttl-jaG {
  font-size: clamp(2rem, 3vw, 2rem);
}
@media screen and (min-width: 768px) {
  .sec-voice .voice-head .btn-more {
    text-align: right;
  }
}
.sec-voice .voice-body {
  margin: 20px -10px 0;
}
@media screen and (min-width: 768px) {
  .sec-voice .voice-body {
    margin-top: 30px;
  }
}
@media screen and (min-width: 1201px) {
  .sec-voice .voice-body {
    margin: 30px -30px 0;
  }
}
@media screen and (min-width: 1701px) {
  .sec-voice .voice-body {
    margin: 30px -50px 0;
  }
}
@media screen and (min-width: 1701px) {
  .sec-voice .voice-body .slick-prev {
    left: -2%;
  }
}
@media screen and (min-width: 1701px) {
  .sec-voice .voice-body .slick-next {
    right: -2%;
  }
}
.sec-voice .voice-body .btn-more {
  margin-top: 20px;
  text-align: right;
}
.sec-voice .voice-ilst {
  background: url("../img/index/ilst_voice.png") no-repeat center/contain;
  font-size: 0;
  width: 100px;
  height: 100px;
}
@media screen and (min-width: 577px) {
  .sec-voice .voice-ilst {
    width: 140px;
    height: 141px;
  }
}
@media screen and (min-width: 1201px) {
  .sec-voice .voice-ilst {
    width: 160px;
    height: 160px;
  }
}
@media screen and (max-width: 1200px) {
  .sec-voice .voice-ilst {
    position: absolute;
    top: 4px;
    right: 0;
    z-index: 2;
  }
}
@media screen and (max-width: 576px) {
  .sec-voice .voice-ilst {
    top: 0;
  }
}
.sec-voice .voice-list .voice-item {
  padding: 0 10px;
}
@media screen and (min-width: 1201px) {
  .sec-voice .voice-list .voice-item {
    padding: 0 30px;
  }
}
@media screen and (min-width: 1701px) {
  .sec-voice .voice-list .voice-item {
    padding: 0 50px;
  }
}
.sec-voice .voice-list .voice-item a {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-voice .voice-list .voice-item a:hover .hoverGR {
    opacity: 1;
  }
}
.sec-voice .voice-list .voice-item .item-head {
  position: relative;
}
.sec-voice .voice-list .voice-item .item-body {
  margin-top: 0.6em;
}
.sec-voice .voice-list .voice-item .item-img {
  font-size: 0;
  /*img {
    @include of($of_height: 57vw);
    @include min-width(sm) {
      height: 28vw;
    }
    @include min-width(mdS) {
      height: 30vw;
    }
    @include min-width(lgL) {
      height: 530px;
    }
  }*/
}
.sec-voice .voice-list .voice-item .item-ttl {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 576px) {
  .sec-voice .voice-list .voice-item .item-ttl {
    font-size: 1.4rem;
  }
}
.sec-voice .voice-list .voice-item .item-data {
  margin-top: 3px;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
@media screen and (max-width: 576px) {
  .sec-voice .voice-list .voice-item .item-data {
    font-size: 1.4rem;
  }
}

/*==========================================
  EVENT
===========================================*/
.sec-event {
  background: #ededed;
  padding: 60px 0 40px;
}
@media screen and (min-width: 768px) {
  .sec-event {
    padding: 120px 0 100px;
  }
}
@media screen and (min-width: 1701px) {
  .sec-event .slick-prev {
    left: -4%;
  }
}
@media screen and (min-width: 1701px) {
  .sec-event .slick-next {
    right: -4%;
  }
}
.sec-event .event-head {
  margin-bottom: 40px;
}
@media screen and (min-width: 1201px) {
  .sec-event .event-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media screen and (min-width: 768px) {
  .sec-event .event-head .sec-ttl {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1201px) {
  .sec-event .event-head .sec-ttl {
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .sec-event .event-head .sec-ttl {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .sec-event .event-head .sec-ttl .ttl-en {
    line-height: 0.8;
    padding: 0 0.2em 0 0;
  }
}
@media screen and (min-width: 768px) {
  .sec-event .event-head .sec-ttl .ttl-lead {
    border-left: 1px solid #000;
    padding: 0 0 0 0.8em;
    margin-top: -10px;
  }
}
.sec-event .event-head .btn-more {
  min-width: 210px;
}
.sec-event .event-body .btn-more {
  text-align: center;
  margin-top: 40px;
}
.sec-event .event-list {
  margin: 0 -4%;
}
@media screen and (min-width: 577px) {
  .sec-event .event-list {
    margin: 0 -14px;
  }
}
.sec-event .event-list .event-item {
  padding: 0 8px;
}
@media screen and (min-width: 577px) {
  .sec-event .event-list .event-item {
    padding: 0 14px;
  }
}
.sec-event .event-list .event-item a {
  display: block;
}
@media screen and (min-width: 768px) {
  .sec-event .event-list .event-item a:hover .hoverGR {
    opacity: 1;
  }
}
.sec-event .event-list .event-item .item-body {
  margin-top: 0.5em;
}
.sec-event .event-list .event-item .item-cat {
  display: inline-block;
  min-width: 148px;
  text-align: center;
  background: linear-gradient(to right, #187fc2, #003387);
  color: #fff;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  border-radius: 0 15px 0 0;
  padding: 10px 0;
}
.sec-event .event-list .event-item .item-cat .en {
  font-family: "Bebas Neue", cursive;
  letter-spacing: 0.05em;
  font-size: clamp(1.8rem, 2vw, 2rem);
  line-height: 1;
}
.sec-event .event-list .event-item .item-cat.finished {
  background: #000;
}
.sec-event .event-list .event-item .item-img {
  font-size: 0;
  position: relative;
}
.sec-event .event-list .event-item .item-img img {
  width: 100%;
  height: 47vw;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 577px) {
  .sec-event .event-list .event-item .item-img img {
    height: 29vw;
  }
}
@media screen and (min-width: 768px) {
  .sec-event .event-list .event-item .item-img img {
    height: 19vw;
  }
}
@media screen and (min-width: 1201px) {
  .sec-event .event-list .event-item .item-img img {
    height: 14vw;
  }
}
.sec-event .event-list .event-item .item-date {
  font-family: "Bebas Neue", cursive;
  letter-spacing: 0.05em;
  font-size: clamp(1.8rem, 2vw, 2rem);
}
.sec-event .event-list .event-item .item-ttl {
  font-weight: bold;
  font-size: 1.8rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.sec-event .event-list .event-item .item-add {
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  letter-spacing: 0.1em;
}

/*==========================================
  動画で見る丸商建設
===========================================*/
.sec-movie {
  padding: 50px 0;
  background: #000;
  overflow: hidden;
  text-align: center;
  margin: 8rem auto 4rem;
}
.sec-movie h1 {
  font-size: clamp(2rem, 1.8vw, 3rem);
  font-weight: bold;
  color: #8e8e8e;
}
.sec-movie .sec-ttl {
  position: relative;
}

@media screen and (max-width: 960px) {
  .sec-movie img {
    width: 20%;
  }
}
@media screen and (min-width: 960px) {
  .sec-movie img {
    width: 150px;
  }
}
.movie-ilst {
  display: block;
  background: url("../img/index/ilst_movie.png") no-repeat center/contain;
  width: 132px;
  height: 152px;
  position: absolute;
  right: calc(50% - 221px);
  top: 45px;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .movie-ilst {
    right: -11vw;
    top: 7vw;
  }
}
@media screen and (min-width: 1201px) {
  .movie-ilst {
    right: calc(50% - 250px);
    top: 75px;
  }
}

.movie-icon {
  text-align: center;
  color: red;
  font-size: clamp(5rem, 8vw, 8rem);
}

.movie-lead {
  font-size: clamp(2rem, 3vw, 3rem);
  margin: 10px 0 40px;
}
@media screen and (max-width: 767px) {
  .movie-lead {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .movie-list {
    margin: 40px auto;
  }
}
.movie-list .movie-item a {
  display: block;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .movie-list .movie-item a:hover .hoverGR {
    opacity: 1;
  }
}
.movie-list .movie-item .item-head {
  position: relative;
}
.movie-list .movie-item .item-img {
  font-size: 0;
}
.movie-list .movie-item .item-img img {
  width: 100%;
  height: 52vw;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .movie-list .movie-item .item-img img {
    height: 31vw;
  }
}
@media screen and (min-width: 1201px) {
  .movie-list .movie-item .item-img img {
    height: 402px;
  }
}
.movie-list .movie-item .item-img iframe {
  width: 100%;
}
.movie-list .movie-item .item-body {
  border-left: 1px solid #fff;
  padding: 0 0 0 1em;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .movie-list .movie-item .item-body {
    border-right: 1px solid #fff;
    padding: 0 1em;
  }
}
.movie-list .movie-item .item-cat {
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
.movie-list .movie-item .item-cat li {
  display: inline-block;
}
.movie-list .movie-item .item-cat li:not(:last-child) {
  margin-right: 0.5em;
}
.movie-list .movie-item .item-ttl {
  font-size: clamp(2rem, 2.2vw, 2.2rem);
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/*==========================================
  モデルハウス
===========================================*/
.sec-model {
  padding-top: 30px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .sec-model {
    padding-top: 110px;
  }
}
.sec-model .model-head {
  position: relative;
  margin-bottom: 40px;
}
.sec-model .model-head .sec-ttl .ttl-en {
  font-size: 3rem;
  line-height: 0.8;
  letter-spacing: 0.05em;
  color: #004a95;
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 481px) {
  .sec-model .model-head .sec-ttl .ttl-en {
    font-size: 3.5rem;
  }
}
@media screen and (min-width: 961px) {
  .sec-model .model-head .sec-ttl .ttl-en {
    font-size: 4rem;
  }
}
.sec-model .model-head .sec-ttl .ttl-en::before {
  content: "";
  background: url("../img/index/deco_model-sp.svg") no-repeat center/contain;
  display: block;
  position: absolute;
  width: 95px;
  height: 262px;
  right: -15px;
  top: -135px;
}
@media screen and (min-width: 769px) {
  .sec-model .model-head .sec-ttl .ttl-en::before {
    background-image: url("../img/index/deco_model-pc.svg");
    width: 194px;
    height: 96px;
    right: -53px;
    top: -52px;
  }
}
.sec-model .model-head .sec-ttl .ttl-tag {
  width: 161px;
  height: 49px;
  margin-top: 20px;
}
.sec-model .model-head .sec-ttl .ttl-lead {
  margin-top: 10px;
}
.sec-model .model-head .model-ilst {
  background: url("../img/index/ilst_model-sp.png") no-repeat center/cover;
  display: block;
  position: absolute;
  width: 70px;
  height: 56px;
  left: 226px;
  top: -23px;
}
@media screen and (min-width: 481px) {
  .sec-model .model-head .model-ilst {
    width: 87px;
    height: 73px;
    left: 259px;
    top: -31px;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .model-head .model-ilst {
    left: 320px;
    top: -40px;
    height: 86px;
    width: 100px;
  }
}
@media screen and (min-width: 1201px) {
  .sec-model .model-head .model-ilst {
    background-image: url("../img/index/ilst_model.png");
    width: 274px;
    height: 75px;
    left: 330px;
  }
}
@media screen and (max-width: 767px) {
  .sec-model .model-head .model-ilst {
    background: none;
  }
}
.sec-model .model-head .btn-more {
  text-align: right;
}
@media screen and (min-width: 768px) {
  .sec-model .model-head .btn-more {
    margin-top: 15px;
  }
}
@media screen and (min-width: 1201px) {
  .sec-model .model-head .btn-more {
    margin-top: -2.8em;
  }
}
.sec-model .event-date_title {
  font-size: 1.5rem;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 0.3rem;
  box-sizing: border-box;
  padding-bottom: 0.3rem;
  border-bottom: 2px #9595FC solid;
}
@media screen and (min-width: 577px) {
  .sec-model .event-date_title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .event-date_title {
    font-size: 2.5rem;
  }
}
.sec-model .event-date_img {
  margin: 0 auto;
  padding: 0 2%;
}
.sec-model .event-date_content {
  color: #272626;
  text-align: center;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3.6rem;
}
@media screen and (min-width: 481px) {
  .sec-model .event-date_content {
    font-size: 4.6rem;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .event-date_content {
    font-size: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .event-date_content {
    font-size: 7rem;
  }
}
.sec-model .event-date_content .month {
  font-weight: normal;
}
.sec-model .event-date_content .red {
  color: #C50019;
}
.sec-model .event-date_content .blue {
  color: #302680;
}
.sec-model .event-date_content .small, .sec-model .event-date_content .and {
  font-size: 1.4rem;
}
@media screen and (min-width: 481px) {
  .sec-model .event-date_content .small, .sec-model .event-date_content .and {
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .event-date_content .small, .sec-model .event-date_content .and {
    font-size: 3rem;
  }
}
.sec-model .event-date_text {
  border-top: 1px #E5ABAF solid;
}
.sec-model .event-date_text p {
  font-size: 1.3rem;
  margin-left: 1.3rem;
}
@media screen and (min-width: 577px) {
  .sec-model .event-date_text p {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 769px) {
  .sec-model .event-date_text p {
    font-size: 1.5rem;
  }
}
.sec-model .event-date_text p::before {
  content: "※";
  margin: 0.3rem 0 0 -1.3rem;
  padding-top: 0.3rem;
}
.sec-model .model-body {
  margin-bottom: clamp(80px, 20vw, 150px);
}
.sec-model .model-body .btn-more {
  margin-top: 25px;
}
.sec-model .model-list {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .sec-model .model-list .slick-track .slick-slide {
    border-right: 1px solid #000;
    border-left: 1px solid #000;
    margin: 0 -0.5px;
  }
}
.sec-model .model-list .model-item a {
  display: block;
  padding: 20px 4%;
}
@media screen and (min-width: 768px) {
  .sec-model .model-list .model-item a {
    padding: 30px 4%;
  }
  .sec-model .model-list .model-item a:hover .hoverGR {
    opacity: 1;
  }
}
@media screen and (min-width: 1201px) {
  .sec-model .model-list .model-item a {
    padding: 25px;
  }
}
@media screen and (min-width: 1701px) {
  .sec-model .model-list .model-item a {
    padding: 40px;
  }
}
.sec-model .model-list .model-item .item-head {
  position: relative;
}
.sec-model .model-list .model-item .item-data {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  font-family: "Bebas Neue", cursive;
  width: 95px;
  line-height: 1;
  text-align: center;
  padding: 0 10px 10px 0;
}
@media screen and (min-width: 1201px) {
  .sec-model .model-list .model-item .item-data {
    width: 125px;
  }
}
.sec-model .model-list .model-item .item-data .item-num {
  font-size: clamp(3rem, 3.5vw, 3.5rem);
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.sec-model .model-list .model-item .item-data .item-num .num {
  font-size: clamp(6rem, 7vw, 7rem);
}
.sec-model .model-list .model-item .item-data .item-add {
  border-top: 1px solid #000;
  font-size: clamp(1.8rem, 2vw, 2rem);
  letter-spacing: 0.05em;
  padding: 10px 0 0;
}
.sec-model .model-list .model-item .item-img {
  font-size: 0;
}
.sec-model .model-list .model-item .item-img img {
  width: 100%;
  height: 59vw;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .sec-model .model-list .model-item .item-img img {
    height: 20vw;
  }
}
.sec-model .model-list .model-item .item-ttl {
  margin-top: 0.6em;
  font-size: clamp(2rem, 2.2vw, 2.2rem);
  font-weight: bold;
  letter-spacing: 0.1em;
}
.sec-model .model-list .model-item .item-status {
  letter-spacing: 0.1em;
}

/*==========================================
 【NEW表示】
===========================================*/
.new-area span {
  display: none;
}
.new-area span.new {
  display: block;
  background: linear-gradient(to right, #187fc2, #003387);
  font-size: clamp(1.6rem, 2.3vw, 2.3rem);
  width: 45px;
  height: 45px;
  line-height: 45px;
  border-radius: 50%;
  border: 1px solid #fff;
  color: #fff;
  font-family: "Bebas Neue", cursive;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1201px) {
  .new-area span.new {
    width: 62px;
    height: 62px;
    line-height: 62px;
    border-width: 2px;
  }
}

/*==========================================
 【サイドメニュー/SP下部メニュー】
===========================================*/
.side-cnv {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 50;
  transition: 0.3s ease-in-out;
}
@media screen and (min-width: 768px) {
  .side-cnv {
    bottom: auto;
    top: 150px;
  }
}
@media screen and (min-width: 1201px) {
  .side-cnv {
    bottom: auto;
    top: 130px;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul {
    display: flex;
  }
}
.side-cnv ul li {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .side-cnv ul li {
    writing-mode: vertical-rl;
    -ms-text-orientation: upright;
    text-orientation: upright;
  }
  .side-cnv ul li:last-child {
    display: none;
  }
  .side-cnv ul li:not(:last-child) {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li {
    width: 30%;
  }
  .side-cnv ul li:last-child {
    width: 10%;
  }
}
.side-cnv ul li a {
  display: flex;
  align-items: center;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .side-cnv ul li a {
    border: 2px solid #000;
    border-right: 0;
    border-radius: 15px 0 0 15px;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .side-cnv ul li a:hover {
    color: #fff !important;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li a {
    color: #fff;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    padding: 5px 0;
  }
}
.side-cnv ul li .icon {
  display: block;
  font-size: clamp(2rem, 2.4vw, 2.4rem);
}
@media screen and (min-width: 768px) {
  .side-cnv ul li .icon {
    color: #fff;
    border-radius: 12px 0 0 0;
    padding: 15px 5px;
  }
}
.side-cnv ul li .txt {
  display: block;
  font-size: 2vh;
  font-weight: 900;
}
@media screen and (min-width: 768px) {
  .side-cnv ul li .txt {
    letter-spacing: 0.3em;
    border-radius: 0 0 12px 0;
    padding: 7px 5px;
  }
}
.side-cnv ul li .txt.tp02 {
  font-size: clamp(1rem, 1.3vw, 1.1rem);
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-recuest a {
    border-color: #187fc2;
    color: #004a95;
  }
  .side-cnv ul li.SC-recuest a:hover {
    background: #187fc2;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li.SC-recuest a {
    background: linear-gradient(to right, #187fc2, #003387);
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-recuest .icon {
    background: #187fc2;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-contact a {
    border-color: #e85514;
    color: #e85514;
  }
  .side-cnv ul li.SC-contact a:hover {
    background: #e85514;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li.SC-contact a {
    background: #e85514;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-contact .icon {
    background: #e85514;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-contact .txt {
    letter-spacing: normal;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-reserve a {
    border-color: #22aa38;
    color: #22aa38;
  }
  .side-cnv ul li.SC-reserve a:hover {
    background: #22aa38;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li.SC-reserve a {
    background: #22aa38;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-reserve .icon {
    background: #22aa38;
  }
}
@media screen and (min-width: 768px) {
  .side-cnv ul li.SC-reserve .txt {
    letter-spacing: normal;
  }
}
@media screen and (max-width: 767px) {
  .side-cnv ul li.SC-pagetop a {
    background: #000;
  }
}

/*==========================================
 【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;
}
.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
===========================================*/
.wp-pagenavi {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
  border: none;
}
.wp-pagenavi .pages {
  display: none;
}
.wp-pagenavi .extend {
  margin: 0 0.5em;
  color: #004a95;
  border: none;
}
@media (max-width: 480px) {
  .wp-pagenavi .extend {
    margin: 0 0.25em;
  }
}
.wp-pagenavi .page,
.wp-pagenavi .current {
  border: solid 1px #004a95;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  line-height: 34px;
  padding: 0;
  margin: 0 0.5em;
  display: inline-block;
  font-family: "Bebas Neue", cursive;
  font-weight: bold;
  color: #004a95;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi .page:hover,
  .wp-pagenavi .current:hover {
    background: #004a95;
    color: #fff;
  }
}
@media (max-width: 480px) {
  .wp-pagenavi .page,
  .wp-pagenavi .current {
    margin: 0 0.25em;
  }
}
.wp-pagenavi .current {
  background: #004a95;
  color: #fff;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  width: 34px;
  height: 34px;
  margin: 0 8px;
  font-size: 0;
  border: none;
  display: inline-block;
  position: relative;
  transition: 0.3s ease-in-out;
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after {
  content: "";
  display: block;
  border-right: 2px solid #004a95;
  border-bottom: 2px solid #004a95;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 25%;
  transition: 0.3s ease-in-out;
}
@media (max-width: 480px) {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    margin: 0 4px;
  }
}
.wp-pagenavi .first,
.wp-pagenavi .last {
  display: none;
}
.wp-pagenavi .previouspostslink {
  right: 0;
}
.wp-pagenavi .previouspostslink::after {
  transform: rotate(135deg);
}
.wp-pagenavi .nextpostslink {
  left: 0;
}
.wp-pagenavi .nextpostslink::after {
  transform: rotate(-45deg);
}
.wp-pagenavi.white a,
.wp-pagenavi.white span {
  color: #fff;
}
.wp-pagenavi.white .page,
.wp-pagenavi.white .current {
  border-color: #fff;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi.white .page:hover,
  .wp-pagenavi.white .current:hover {
    background: #fff;
    color: #000;
  }
}
.wp-pagenavi.white .current {
  background: #fff;
  color: #000;
}
.wp-pagenavi.white .previouspostslink::before {
  border-color: transparent #fff transparent transparent;
}
.wp-pagenavi.white .nextpostslink::before {
  border-color: transparent transparent transparent #fff;
}

/*==========================================
 BUTTON
===========================================*/
/*==========================================
 パンくず
===========================================*/
.breadcrumb {
  color: #333;
  padding-left: 30px;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .breadcrumb {
    display: none;
  }
}
.breadcrumb.wht {
  color: #fff;
}

/*==========================================
 共通パーツ
===========================================*/
.ttl_area {
  color: #164B8B;
  padding: 20px 0;
  text-align: center;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.3;
  margin-bottom: 30px;
}
.ttl_area .ttl_ja {
  font-size: 5rem;
  line-height: 1.2;
}
.ttl_area .ttl_en {
  font-size: 2rem;
  margin-bottom: 15px;
}

.sec-ttl .ttl-en {
  font-size: clamp(3rem, 10vw, 10rem);
  letter-spacing: 0.05em;
  line-height: 1;
  color: #6e6e6e;
  font-weight: bold;
}
.sec-ttl .ttl-ja {
  font-weight: 900;
  letter-spacing: 0.4em;
}
.sec-ttl .ttl-jaG span {
  text-align: center;
  display: inline-block;
  background: linear-gradient(to right, #187fc2, #003387);
  color: #fff;
  padding: 0.5em 2em;
  font-weight: 900;
  letter-spacing: 0.05em;
}
.sec-ttl .ttl-lead {
  margin-top: 0.6rem;
  color: #6e6e6e;
  letter-spacing: 0.2em;
  line-height: 2.2rem;
  font-size: clamp(1.6rem, 2vw, 3rem);
}
@media screen and (min-width: 961px) {
  .sec-ttl .ttl-lead {
    line-height: 3rem;
  }
}
@media screen and (min-width: 1201px) {
  .sec-ttl .ttl-lead {
    line-height: 4rem;
  }
}
.sec-ttl .ttl-lead span {
  display: inline-block;
}
@media screen and (min-width: 1201px) {
  .sec-ttl .ttl-lead {
    font-size: clamp(2rem, 2.22vw, 2.1rem);
    line-height: 2.6rem;
  }
}
@media screen and (max-width: 1200px) {
  .sec-ttl .ttl-lead {
    letter-spacing: 0.1em;
  }
}
.sec-ttl.Cblue {
  color: #004a95;
}
.sec-ttl.Cblue .ttl-en {
  color: #004a95;
}
.sec-ttl.Cwht {
  color: #fff;
}
.sec-ttl.Cwht .ttl-en {
  color: #fff;
}

.ttl-tag {
  background: linear-gradient(to right, #187fc2, #003387);
  color: #fff;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.head01 {
  padding-top: 120px;
  margin-bottom: 100px;
  color: #004a95;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 576px) {
  .head01 {
    padding-top: 60px;
    margin-bottom: 50px;
  }
}
.head01_en {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(8rem, 20vw, 14rem);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.head01_ja {
  font-weight: 900;
  letter-spacing: 0.4em;
}

.sec-ttl {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .sec-ttl .ttl-en {
    font-size: clamp(5rem, 6vw, 6rem);
    font-weight: bold;
  }
}
.sec-ttl .ttl-jaG {
  font-size: 1.4rem;
  margin-top: 1rem;
}

/*==========================================
 一覧ページ
===========================================*/
/* 絞り込みボタン */
.btnArea {
  margin-bottom: 60px;
}
.btnArea_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.btnArea_item {
  width: 23.5%;
  max-width: 395px;
  height: clamp(50px, 5vw, 80px);
  font-size: 1.8rem;
  font-weight: 900;
  letter-spacing: 0.2em;
  color: #004a95;
  border: 1px solid #000;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
@media screen and (max-width: 576px) {
  .btnArea_item {
    width: 48%;
  }
  .btnArea_item:nth-child(n+3) {
    margin-top: 30px;
  }
}
.btnArea_item:hover {
  color: #fff;
  border: none;
  background: linear-gradient(to right, #187fc2, #003387);
  transition: 0.3s ease-in-out;
}

/* 絞り込みタグ */
.tagArea {
  margin-bottom: 80px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
.tagArea_ttlWrap {
  border-bottom: 1px solid #000;
}
.tagArea_ttl {
  font-size: 2.6rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
  color: #6e6e6e;
}
.tagArea_ttl .fa-tags {
  margin-right: 0.3em;
  font-size: 3rem;
  color: #004a95;
  vertical-align: middle;
}
@media screen and (max-width: 576px) {
  .tagArea_ttl {
    font-size: 2.6rem;
  }
  .tagArea_ttl .fa-tags {
    font-size: 2.25rem;
  }
}
.tagArea_tagWrap {
  padding: 40px 0 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 576px) {
  .tagArea_tagWrap {
    padding: 30px 0 20px;
  }
}
.tagArea_tag {
  min-width: 85px;
  height: 30px;
  padding: 0 1em;
  margin-right: 10px;
  margin-bottom: 10px;
  color: #004a95;
  border: 1px solid #004a95;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.tagArea_tag.current {
  color: #fff;
  background: #004a95;
}

/* 一覧リスト */
.archiveArea {
  margin-bottom: clamp(80px, 20vw, 150px);
}

.archive-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.archive-list::before {
  content: "";
  display: block;
  width: 24%;
  order: 1;
}
.archive-list::after {
  content: "";
  display: block;
  width: 24%;
}
.archive-list::before, .archive-list::after,
.archive-list .archive-list_item {
  width: 24%;
}
@media screen and (min-width: 1201px) {
  .archive-list::before, .archive-list::after,
  .archive-list .archive-list_item {
    max-width: 405px;
  }
}
@media screen and (max-width: 1200px) {
  .archive-list::before, .archive-list::after,
  .archive-list .archive-list_item {
    width: 32%;
  }
}
@media screen and (max-width: 768px) {
  .archive-list::before, .archive-list::after,
  .archive-list .archive-list_item {
    width: 48%;
  }
}
@media screen and (max-width: 576px) {
  .archive-list::before, .archive-list::after,
  .archive-list .archive-list_item {
    width: 100%;
  }
}
.archive-list_item {
  margin-bottom: 70px;
}
.archive-list_img {
  height: 15.2vw;
  margin-bottom: 20px;
}
@media screen and (min-width: 1201px) {
  .archive-list_img {
    max-height: 270px;
  }
}
@media screen and (max-width: 1200px) {
  .archive-list_img {
    height: 20.2666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .archive-list_img {
    height: 30.4vw;
  }
}
@media screen and (max-width: 576px) {
  .archive-list_img {
    height: 63.3333333333vw;
  }
}
.archive-list_img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.archive-list_ttl {
  font-size: 1.8rem;
  font-weight: 900;
  margin-bottom: 10px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.archive-list_date {
  margin-bottom: 20px;
  font-family: "Bebas Neue", cursive;
  letter-spacing: 0.05em;
  color: #6e6e6e;
}
.archive-list_tagArea {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

/*==========================================
 詳細ページ
===========================================*/
/* 店舗情報 */
.info-shop-wrap {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .info-shop-wrap {
    margin-bottom: 80px;
  }
}

.info-shop {
  padding: 80px 0;
  margin-bottom: 120px;
  background: #ededed;
}
.info-shop.type1 {
  margin-bottom: 0;
  padding-bottom: 0;
}
.info-shop.type2 {
  margin-bottom: 0;
}
.info-shop_ttl {
  margin-bottom: 10px;
  line-height: 1;
  color: #004a95;
}
.info-shop_ttl_en {
  font-family: "Bebas Neue", cursive;
  font-size: 5rem;
  letter-spacing: 0.05em;
  margin-right: 10px;
}
.info-shop_ttl_ja {
  font-weight: 600;
  letter-spacing: 0.1em;
}
.info-shop_inner {
  padding: clamp(20px, 3.5vw, 40px);
  background: #fff;
  border-radius: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.info-shop_img {
  width: 280px;
  height: 280px;
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .info-shop_img {
    width: 240px;
    height: 240px;
  }
}
@media screen and (max-width: 576px) {
  .info-shop_img {
    width: 280px;
    height: 280px;
    margin: 0 auto 30px;
  }
}
.info-shop_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.info-shop_info {
  width: 750px;
  padding-top: 20px;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .info-shop_info {
    width: calc(100% - 280px - clamp(20px, 3.5vw, 40px));
  }
}
@media screen and (max-width: 768px) {
  .info-shop_info {
    width: calc(100% - 240px - clamp(20px, 3.5vw, 40px));
    padding-bottom: 70px;
  }
}
@media screen and (max-width: 576px) {
  .info-shop_info {
    width: 100%;
    padding: 0;
  }
}
.info-shop_name {
  margin-bottom: 30px;
  font-size: 2.8rem;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.1em;
}
.info-shop_text {
  margin-bottom: 30px;
  line-height: 2.25;
}
.info-shop .btn-reserve {
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .info-shop .btn-reserve {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 576px) {
  .info-shop .btn-reserve {
    position: static;
  }
}
.info-shop .btn-more {
  position: absolute;
  top: 0;
  right: 0;
}

/*==========================================
 店舗情報
===========================================*/
.location {
  display: block;
  width: 100%;
  /*  &:hover {
      .location {
        &_img_cover {
          opacity: 1;
          transition: 0.3s ease-in-out;
        }
        &_ttl {
          background: $gradDf;
          background-clip: text;
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
        }
      }
    }*/
}
.location_img {
  position: relative;
}
.location_img img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.location_img_cover {
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 74, 149, 0.6), rgba(24, 127, 194, 0.6));
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}
.location_img_cover_btn {
  width: 46px;
  height: 46px;
  background: #fff;
  border-radius: 50%;
  position: relative;
}
.location_img_cover_btn::before, .location_img_cover_btn::after {
  content: "";
  display: block;
  -o-border-image: linear-gradient(to right, #187fc2, #003387);
     border-image: linear-gradient(to right, #187fc2, #003387);
  border-image-slice: 1;
  width: 14px;
  height: 14px;
  position: absolute;
  top: calc(50% - 7px);
  left: calc(50% - 11px);
}
.location_img_cover_btn::before {
  border-top: 2px solid #187fc2;
  transform: rotate(45deg);
}
.location_img_cover_btn::after {
  border-bottom: 2px solid #187fc2;
  transform: rotate(-45deg);
}
.location_img_cover_more {
  font-family: "Bebas Neue", cursive;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0, 1em;
}
.location_ttl {
  color: #6e6e6e;
  display: flex;
  flex-direction: column;
}
.location_ttl_en {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(6rem, 10vw, 6rem);
  line-height: 1;
  letter-spacing: 0, 5em;
}
.location_ttl_ja {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.location_number {
  font-family: "Bebas Neue", cursive;
  letter-spacing: 0.05em;
  display: flex;
  flex-wrap: wrap;
}
.location_number_tel {
  margin-right: 1em;
}
.location_number_freedial {
  width: 100%;
}

/*==========================================
 こちらのコンテンツもお楽しみください
===========================================*/
.sec-contents_ttl {
  padding: 0 clamp(20px, 6vw, 110px);
  margin: 0 auto 20px;
  color: #6e6e6e;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.sec-contents_ttl_en {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(5rem, 12.5vw, 10rem);
  line-height: 1;
  letter-spacing: 0.05em;
  margin-right: 20px;
}
.sec-contents_ttl_ja {
  font-size: clamp(1.6rem, 3.5vw, 2.8rem);
  letter-spacing: 0.05em;
}
.sec-contents_list {
  display: flex;
  flex-wrap: wrap;
}
.sec-contents_item {
  width: 33.3333333333%;
  padding: clamp(10px, 2.2vw, 40px);
  border-top: 1px solid #000;
}
@media screen and (min-width: 577px) {
  .sec-contents_item:nth-child(n+2) {
    border-left: 1px solid #000;
  }
}
@media screen and (max-width: 576px) {
  .sec-contents_item {
    width: 100%;
    padding: clamp(10px, 5vw, 25px);
  }
}
.sec-contents_item_inner {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.sec-contents_item_inner::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #187fc2, #003387);
  background: linear-gradient(to right, rgba(0, 74, 149, 0.6), rgba(24, 127, 194, 0.6));
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}
.sec-contents_item_inner:hover::after {
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.sec-contents_item_img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-contents_item_ttl {
  padding-left: 15px;
  color: #fff;
  border-left: 2px solid #fff;
  display: flex;
  flex-direction: column;
  position: absolute;
  right: 10%;
  bottom: 10%;
  z-index: 5;
}
.sec-contents_item_ttl_en {
  font-family: "Bebas Neue", cursive;
  font-size: clamp(3.2rem, 5vw, 5rem);
  line-height: 0.8;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
@media screen and (max-width: 576px) {
  .sec-contents_item_ttl_en {
    font-size: clamp(3.2rem, 10vw, 5rem);
  }
}
.sec-contents_item_ttl_ja {
  font-size: clamp(1.4rem, 1.6vw, 1.6rem);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 576px) {
  .sec-contents_item_ttl_ja {
    font-size: clamp(1.4rem, 3.2vw, 1.6rem);
  }
}

/*==========================================
 フォームはこちらから
===========================================*/
.lead-form {
  width: 100vw;
  padding: clamp(60px, 11.25vw, 90px) 4vw;
  margin-bottom: clamp(80px, 20vw, 150px);
  background: #ededed;
}
.lead-form_inner {
  width: 100%;
  max-width: 1200px;
  padding: clamp(60px, 11.25vw, 90px) 4vw;
  margin: 0 auto;
  background: #fff;
  border-radius: 30px;
}
.lead-form_btn {
  max-width: 890px;
  height: clamp(120px, 22.5vw, 180px);
  margin: 0 auto;
  font-size: clamp(1.6rem, 3.25vw, 2.6rem);
  font-weight: 900;
  letter-spacing: 0.2em;
  position: relative;
}
.lead-form_btn a {
  height: 100%;
  padding: 0 4%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.lead-form_btn a .txt {
  border: none;
}
.lead-form_btn a .arw-wrap {
  position: absolute;
  top: calc((100% - 45px) / 2);
  right: 4%;
}
@media screen and (max-width: 576px) {
  .lead-form_btn a .arw-wrap {
    top: 50%;
  }
}
.lead-form_btn a .arw {
  margin: 0;
}

/*==========================================
  youtube
===========================================*/
.youtube_area {
  width: 100vw;
  padding: clamp(30px, 10vw, 100px) 0;
  background: #000;
}
.youtube_video {
  display: block;
  width: 1150px;
  height: 647px;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .youtube_video {
    width: 90vw;
    height: 58.725vw;
  }
}

/*==========================================
  2023.08 追加
===========================================*/
.marusyo-box01 {
  margin: 80px 25px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.marusyo-box01 .box01_innner {
  border: 2px solid #e60033;
  padding: 30px;
  width: 1150px;
}

.marusyo-box01 .text01 {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 15px;
  color: #D92D2B;
}

.marusyo-box01 .text02 {
  margin-bottom: 15px;
  text-align: center;
}

.marusyo-box01 .btn01 {
  display: flex;
  align-items: center;
  justify-content: center;
}

.marusyo-box01 .btn01 a {
  text-decoration: underline;
  color: #103B95;
  font-size: 18px;
  font-weight: bold;
}

.marusyo-box01 .btn01 .text03 {
  text-align: right;
}

@media screen and (max-width: 1200px) {
  .marusyo-box01 .box01_innner {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .marusyo-box01 {
    margin: 30px 2%;
  }
  .marusyo-box01 .box01_innner {
    padding: 10px;
  }
  .marusyo-box01 .text01 {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .marusyo-box01 .btn01 a {
    font-size: 15px;
  }
}
.tagArea_tag.current a {
  color: #FFF;
}

/*==========================================
  2023.12 追加 header concept nav
===========================================*/
#header .header-nav ul .nav_concept {
  position: relative;
}

#header .header-nav ul .nav_concept {
  position: relative;
  cursor: pointer;
}

#header .header-nav ul .nav_concept:hover {
  color: #ffb900;
}

#header .header-nav ul .nav_concept ul {
  position: absolute;
  left: -20px;
  margin: 0;
  width: 250px;
  z-index: 999999;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
  display: block;
  background-color: #FFF;
  padding: 2rem;
}

#header .header-nav ul .nav_concept:hover ul {
  visibility: visible;
  opacity: 1;
}

#header .header-nav ul .nav_concept ul li {
  margin-right: 0;
  text-align: left;
}

#header .header-nav ul .nav_concept ul li a {
  display: block;
  padding: 0.5rem 0;
  color: #187fc2;
}

#header .header-nav ul .nav_concept ul li a span {
  border-bottom: 1px solid #187fc2;
}

@media screen and (max-width: 430px) {
  .sec-aboutus .aboutus-list .aboutus-item {
    padding: 0 5px;
  }
  .sec-aboutus .aboutus-list .aboutus-item .item-ttl .ttl-ja {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 5px;
  }
  .sec-aboutus .aboutus-list .aboutus-item .item-inner {
    bottom: 5px;
    padding: 0 5px 10px 0;
  }
  .sec-aboutus .aboutus-list .aboutus-item .item-ttl .ttl-en {
    font-size: 12px;
  }
  .marusho-no1 {
    margin-top: 10px;
  }
  .marusho-no1 .row-body {
    display: flex;
    justify-content: space-between;
  }
  .marusho-no1 .row-body img {
    width: 49%;
  }
  .marusho-no1 .no1-ttl .ttl-inner::before, .marusho-no1 .no1-ttl .ttl-inner::after {
    width: 50px;
    bottom: 20px;
  }
  .marusho-no1 .no1-ttl .ttl-inner::before {
    left: -45px;
  }
  .marusho-no1 .no1-ttl .ttl-inner::after {
    right: -45px;
  }
  .sec-works .works-list .works-item {
    padding: 5px;
  }
  .sec-works .works-list .works-item .item-body {
    display: block !important;
    padding: 0;
    margin-top: 5px;
  }
  .sec-works .works-list .works-item .item-ttl {
    font-size: 1.2rem;
  }
}
/*==========================================
  2023.12 追加 丸商の家づくりconceptコーナートップのマージンを取る
===========================================*/
.scenery {
  padding-top: 0 !important;
}

.sec-concept01 {
  margin-bottom: 0 !important;
}

/*==========================================
  2024.4 追加 ブログで画像を中央揃えに
===========================================*/
img.blog_center {
  display: block;
  margin: 0 auto;
  max-width: 600px;
}
@media screen and (min-width: 480px) {
  img.blog_center {
    width: 100%;
  }
}

/*==========================================
  2024.4 追加 店舗情報のInstagram
===========================================*/
.archive-office .location_number .instagram_office_url_link {
  font-family: "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  font-size: 2.2rem;
  color: #004a95;
  display: block;
  text-decoration: underline;
  /* クリックしていないリンク */
  /* クリック済みのリンク */
  /* カーソルを合わせたとき */
  /* 選択中のリンク */
}
.archive-office .location_number .instagram_office_url_link a:link {
  color: #004a95;
}
.archive-office .location_number .instagram_office_url_link a:visited {
  color: #302680;
}
.archive-office .location_number .instagram_office_url_link a:hover {
  color: #187fc2;
}
.archive-office .location_number .instagram_office_url_link a:active {
  color: #004a95;
}

/*==========================================
  2024.46 追加 TOP PAGE　ピックアップ情報
===========================================*/
#pick_up_slider li {
  padding: 0 1rem;
}

#pick_up_slider li p {
  font-weight: bold;
  margin-top: 1rem;
  text-align: center;
}

#pick_up_slider li .item-head {
  position: relative;
}

#pick_up_slider li .item-head:hover .hoverGR {
  opacity: 1;
}

@media screen and (max-width: 480px) {
  #pick_up_slider li {
    padding: 0;
  }
}
.snsetext {
  font-size: 12px;
  margin-top: -5px;
}

/*==========================================
  2024.7.31 追加 モデルハウスアーカイブページ 投稿から30日以内の記事にNEWマークをつける
===========================================*/
.newmark {
  background-color: #e81414;
  box-sizing: border-box;
  padding: 0px 3px 0px 5px;
  margin: 0 auto;
  color: #ffffff;
}

/*==========================================
  2024.8.23 追加 YouTube表示方法
===========================================*/
/* css */
.youtube-ratio {
  display: flex;
  justify-content: center;
}
.youtube-ratio iframe {
  max-width: 600px;
  aspect-ratio: 16/9;
}/*# sourceMappingURL=common.css.map */