/* ==========================================
# retouch.css
## 修正用共通CSS
assets/css/style.css に関してSCSSで作成されていたため、
retouch.css にて修正用共通CSSを記述しています。
（作成日：2026/05/07）
yrt- という prefix を付与しています。
（競合しないようリニューアル用プレフィックス）
========================================== */


/* ==========================================
# ヘッダー・フッターのリニューアル start
（修正日：2026/05/07）
========================================== */

/* header / footer only — yrt- prefix */

:root{
  --color-yrt-navy: #0e2236;
  --color-yrt-blue: #008cba;
  --color-yrt-green: #00c257;
  --color-yrt-black: #333333;
  --color-yrt-gray: #f7f7f7;
  --color-yrt-white: #ffffff;
  --color-yrt-orange: #ffbc05;
  --color-yrt-red: #ff0000;
  --screen-base-size-yrt: 1440;
}

.yrt-sp-only{
  display: none !important;
}

.yrt-pc-only{
  display: block;
}

@media (max-width: 750px) {
  :root {
    --screen-base-size-yrt: 375;
  }

  .yrt-sp-only{
    display: inherit !important;
  }

  .yrt-pc-only{
    display: none !important;
  }
}

.u-visually-hidden {
  position: absolute;
  width: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw));
  height: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw));
  padding: 0;
  margin: min(-1px, calc(-1 / var(--screen-base-size-yrt) * 100vw));
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.yrt-header {
  position: sticky;
  top: 0;
  z-index: 100;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(min(4px, calc(4 / var(--screen-base-size-yrt) * 100vw)));
}

.yrt-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(24px, calc(24 / var(--screen-base-size-yrt, 1440) * 100vw));
  max-width: min(1440px, calc(1440 / var(--screen-base-size-yrt) * 100vw));
  margin: 0 auto;
  padding: min(12px, calc(12 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(50px, calc(50 / var(--screen-base-size-yrt, 1440) * 100vw));
  min-height: min(120px, calc(120 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-header__logo {
  display: flex;
  align-items: center;
  gap: min(11px, calc(11 / var(--screen-base-size-yrt, 1440) * 100vw));
  flex-shrink: 0;
}

.yrt-header__logo-img {
  width: min(78px, calc(78 / var(--screen-base-size-yrt, 1440) * 100vw));
  height: min(79px, calc(79 / var(--screen-base-size-yrt, 1440) * 100vw));
  border-radius: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw));
  object-fit: cover;
}

.yrt-header__logo-text {
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  font-size: min(20px, calc(20 / var(--screen-base-size-yrt, 1440) * 100vw));
  line-height: 1.3;
  color: #333333;
}

.yrt-header__nav {
  display: flex;
  align-items: center;
  gap: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw));
  flex-wrap: wrap;
  justify-content: center;
  margin-right: min(15px, calc(15 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-header__nav-link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(20px, calc(20 / var(--screen-base-size-yrt, 1440) * 100vw));
  line-height: 1;
  color: #333333;
  padding: min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
  border: none;
  background: none;
  cursor: pointer;
  text-align: left;
}

.yrt-header__nav-link:hover,
.yrt-header__nav-link:focus-visible {
  color: #008cba !important;
  outline: none;
}

.yrt-header__cta {
  align-items: center;
  gap: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw));
  flex-shrink: 0;
  padding-right: min(5px, calc(5 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-header__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: min(187px, calc(187 / var(--screen-base-size-yrt, 1440) * 100vw));
  min-height: min(41px, calc(41 / var(--screen-base-size-yrt, 1440) * 100vw));
  padding: 0 min(16px, calc(16 / var(--screen-base-size-yrt, 1440) * 100vw));
  border-radius: min(47px, calc(47 / var(--screen-base-size-yrt, 1440) * 100vw));
  border: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(16px, calc(16 / var(--screen-base-size-yrt, 1440) * 100vw));
  color: #ffffff !important;
  cursor: pointer;
  text-decoration: none;
  
  transition: all 0.2s ease;
}


.yrt-header__cta-btn--line {
  border-color: #00c257;
  background: linear-gradient(180deg, #33ce18 0%, #00a000 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
  position: relative;
}

.yrt-header__cta-btn--line:hover{
  background: linear-gradient(0deg, #45B545 0%, #45B545 50%, #63D053 100%);
}

.yrt-header__cta-btn--line::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
  height: min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
  display: block;
  background-color: #ffffff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  transform: translateY(-50%);
}

.yrt-header__cta-btn--tel {
  border-color: #008cba;
  background: linear-gradient(180deg, #5994f7 0%, #347bf2 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
}

.yrt-header__cta-btn--tel:hover{
  background: linear-gradient(0deg, #699BEE 0%, #699BEE 50%, #5E96F5 100%);
}

.yrt-header__sp {
  display: none;
}

.yrt-header__sp-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  width: 100%;
  padding: 0 min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  min-height: min(50px, calc(50 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-header__sp-cta {
  display: flex;
  align-items: center;
  gap: min(6px, calc(6 / var(--screen-base-size-yrt) * 100vw));
  flex: 1;
  justify-content: center;
}

.yrt-header__sp-cta-btn {
  flex: 1;
  max-width: min(145px, calc(145 / var(--screen-base-size-yrt) * 100vw));
  min-height: min(30px, calc(30 / var(--screen-base-size-yrt) * 100vw));
  padding: 0 min(8px, calc(8 / var(--screen-base-size-yrt) * 100vw));
  border-radius: min(27px, calc(27 / var(--screen-base-size-yrt) * 100vw));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  color: #ffffff !important;
  border: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid #ffffff;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.yrt-header__sp-cta-btn--line {
  border-color: #03a001;
  background: linear-gradient(180deg, #33ce18 0%, #00a000 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
  position: relative;
}

.yrt-header__sp-cta-btn--line:after{
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: min(5px, calc(5 / var(--screen-base-size-yrt) * 100vw));
  height: min(5px, calc(5 / var(--screen-base-size-yrt) * 100vw));
  display: block;
  background-color: #ffffff;
  transform: translateY(-50%);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.yrt-header__sp-cta-btn--tel {
  font-size: min(11px, calc(11 / var(--screen-base-size-yrt) * 100vw));
  border-color: #008cba;
  background: linear-gradient(180deg, #5994f7 0%, #347bf2 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
}

.yrt-header__menu-btn {
  width: min(24px, calc(24 / var(--screen-base-size-yrt) * 100vw));
  height: min(18px, calc(18 / var(--screen-base-size-yrt) * 100vw));
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-shrink: 0;
}

.yrt-header__menu-btn-line {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #333333;
  border-radius: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-nav-drawer {
  position: fixed;
  inset: 0;
  z-index: 200;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.25s ease;
}

.yrt-nav-drawer.is-open {
  pointer-events: auto;
  opacity: 1;
}

.yrt-nav-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(14, 34, 54, 0.45);
}

.yrt-nav-drawer__panel {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  max-height: min(100vh);
  background: linear-gradient(180deg, #008CBA 0%, #99E6FF 100%);
  background-color: #ffffff;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
  overflow: auto;
  box-shadow: 0 min(8px, calc(8 / var(--screen-base-size-yrt) * 100vw)) min(24px, calc(24 / var(--screen-base-size-yrt) * 100vw)) rgba(117, 147, 158, 0.25);
}

.yrt-nav-drawer.is-open .yrt-nav-drawer__panel {
  transform: translateY(0);
}

.yrt-nav-drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw)) min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  min-height: min(50px, calc(50 / var(--screen-base-size-yrt) * 100vw));
  background-color: #ffffff;
}

.yrt-nav-drawer__close {
  width: min(32px, calc(32 / var(--screen-base-size-yrt) * 100vw));
  height: min(32px, calc(32 / var(--screen-base-size-yrt) * 100vw));
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.yrt-nav-drawer__close::before,
.yrt-nav-drawer__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  height: min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw));
  background: #008CBA;
}

.yrt-nav-drawer__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.yrt-nav-drawer__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.yrt-nav-drawer__list {
  padding: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw)) min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw)) min(32px, calc(32 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-nav-drawer__item {
  border-bottom: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid #dddddd;
}

.yrt-nav-drawer__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw)) 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(15px, calc(15 / var(--screen-base-size-yrt) * 100vw));
  font-weight: 500;
  color: #fff !important;
  border: none;
  background: none;
  cursor: pointer;
  text-align: left;
}

.yrt-nav-drawer__link:hover,
.yrt-nav-drawer__link:focus-visible {
  color: #008cba !important;
  outline: none;
}

.yrt-nav-drawer__chevron {
  display: block;
  background-color: #fff;
  width: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  height: min(6px, calc(8 / var(--screen-base-size-yrt) * 100vw));
  clip-path: polygon(50% 65%, 85% 0, 100% 10%, 50% 100%, 0 10%, 15% 0);
}

.yrt-nav-drawer-cta{
  display: flex;
  flex-direction: column;
  gap: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  width: 65%;
  margin: 0 auto min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-nav-drawer-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: min(53px, calc(53 / var(--screen-base-size-yrt) * 100vw));
  padding: 0 min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  border-radius: min(47px, calc(47 / var(--screen-base-size-yrt) * 100vw));
  border: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(21px, calc(21 / var(--screen-base-size-yrt) * 100vw));
  color: #ffffff !important;
  position: relative;
}

.yrt-nav-drawer-cta__btn--line {
  border: min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) solid #03A001;
  background: linear-gradient(180deg, #33ce18 0%, #00a000 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
}

.yrt-nav-drawer-cta__btn--line:after{
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  height: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  display: block;
  background-color: #ffffff;
  transform: translateY(-50%);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.yrt-nav-drawer-cta__btn--tel {
  border: min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) solid #008CBA;
  background: linear-gradient(180deg, #5994f7 0%, #347bf2 100%);
  box-shadow: inset 0 0 0 min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) #ffffff;
}

.yrt-footer {
  background-color: #0e2236;
  color: #ffffff;
  padding: 
    min(80px, calc(80 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(80px, calc(80 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-footer__inner {
  max-width: min(1280px, calc(1280 / var(--screen-base-size-yrt) * 100vw));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: min(40px, calc(40 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-footer__row {
  display: flex;
  justify-content: space-between;
  gap: min(32px, calc(32 / var(--screen-base-size-yrt, 1440) * 100vw));
  padding: 0 min(40px, calc(40 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-footer__brand {
  max-width: 100%;
}

.yrt-footer__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(20px, calc(20 / var(--screen-base-size-yrt, 1440) * 100vw));
  line-height: 1.5;
}

.yrt-footer__social {
  display: flex;
  gap: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  margin-top: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-footer__social-link {
  display: block;
  width: min(49px, calc(49 / var(--screen-base-size-yrt, 1440) * 100vw));
  height: min(49px, calc(49 / var(--screen-base-size-yrt, 1440) * 100vw));
  border-radius: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw));
  overflow: hidden;
}

.yrt-footer__social-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.yrt-footer__links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: min(14px, calc(14 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-footer__link-row {
  border-bottom: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid #ffffff;
  padding: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw)) 0;
  text-align: center;
}

.yrt-footer__link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(20px, calc(20 / var(--screen-base-size-yrt, 1440) * 100vw));
  color: #ffffff !important;
}

.yrt-footer__legal {
  display: flex;
  flex-direction: column;
  gap: min(7px, calc(7 / var(--screen-base-size-yrt) * 100vw));
  align-items: center;
}

.yrt-footer__legal-item {
  border-bottom: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid #ffffff;
  padding: min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw)) 0;
  width: fit-content;
  text-align: center;
}

.yrt-footer__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(14px, calc(14 / var(--screen-base-size-yrt, 1440) * 100vw));
  text-align: center;
  opacity: 0.85;
  margin-top: min(8px, calc(8 / var(--screen-base-size-yrt) * 100vw));
}

body.is-yrt-menu-open {
  overflow: hidden;
}

@media (max-width: 750px) {
  .yrt-header__inner {
    display: none;
  }

  .yrt-header__sp {
    display: block;
  }

  .yrt-header__logo-img{
    width: min(35px, calc(35 / var(--screen-base-size-yrt) * 100vw));
    height: auto;
    object-fit: initial;
  }

  .yrt-footer{
    padding: 
      min(65px, calc(65 / var(--screen-base-size-yrt) * 100vw)) 
      0
      min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-footer__row {
    flex-direction: column;
    justify-content: center;
    gap: min(24px, calc(24 / var(--screen-base-size-yrt, 1440) * 100vw));
    align-items: flex-start;
    padding: 0 min(30px, calc(30 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-footer__text{
    font-size: min(14px, calc(14 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-footer__link {
    font-size: min(14px, calc(14 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-footer__legal {
    flex-direction: column;
    justify-content: center;
    flex-wrap: wrap;
  }

  .yrt-footer__legal-item {
    width: auto;
    max-width: none;
  }
  
  .yrt-footer__social{
    justify-content: center;
    width: 100%;
  }

  .yrt-footer__copy{
    font-size: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  }
}

/* * * footer：インスタグラム start * * */

.yrt-p-instagram {
  background-color: var(--color-yrt-white);
  padding-top: min(146px, calc(146 / var(--screen-base-size-yrt, 1440) * 100vw));
  padding-bottom: min(150px, calc(150 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-p-instagram__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(24px, calc(24 / var(--screen-base-size-yrt, 1440) * 100vw));
  flex-wrap: wrap;
}

.yrt-p-instagram__logo {
  width: min(108px, calc(108 / var(--screen-base-size-yrt, 1440) * 100vw));
  height: min(106px, calc(106 / var(--screen-base-size-yrt, 1440) * 100vw));
  object-fit: contain;
}

.yrt-p-instagram__swiper {
  margin-top: min(80px, calc(80 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-c-insta-slide__img {
  aspect-ratio: 1 / 1;
  /* width: min(280px, calc(280 / var(--screen-base-size-yrt) * 100vw)); */
  width: calc(280 / var(--screen-base-size-yrt) * 100vw);
  height: auto;
  margin: 0 auto;
  object-fit: cover;
}

@media (max-width: 750px) {
  .yrt-p-instagram{
    padding-top: min(80px, calc(80 / var(--screen-base-size-yrt) * 100vw));
    padding-bottom: min(80px, calc(80 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-instagram__head{
    align-items: flex-start;
    gap: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-instagram__logo{
    height: auto;
    width: min(33px, calc(33 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-instagram__swiper{
    margin-top: min(40px, calc(40 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-insta-slide__img{
    width: 100%;
    height: auto;
  }
}
/* * * footer：インスタグラム end * * */

/* * * footer：お問い合わせ start * * */
.yrt-p-contact {
  position: relative;
  padding: min(156px, calc(156 / var(--screen-base-size-yrt, 1440) * 100vw)) 0;
  background-image: url("../img/renewal/contact-bg.jpg");
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.yrt-p-contact__inner {
  position: relative;
  z-index: 1;
  max-width: min(936px, calc(936 / var(--screen-base-size-yrt) * 100vw));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: min(80px, calc(80 / var(--screen-base-size-yrt, 1440) * 100vw));
  padding-left: initial;
  padding-right: initial;
}

.yrt-p-contact__cta-row {
  display: flex;
  gap: min(85px, calc(85 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-p-contact__cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(92px, calc(92px / var(--screen-base-size-yrt, 1440) * 100vw));
  width: 100%;
  min-height: min(94px, calc(94 / var(--screen-base-size-yrt, 1440) * 100vw));
  
  border-radius: min(47px, calc(47 / var(--screen-base-size-yrt, 1440) * 100vw));
  border: min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) solid;

  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(37px, calc(37 / var(--screen-base-size-yrt, 1440) * 100vw));
  color: var(--color-yrt-white) !important;
  text-decoration: none;
  cursor: pointer;
  box-shadow: inset 0 0 0 min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) var(--color-yrt-white);
}



.yrt-p-contact__cta-btn--line {
  border-color: #00c257;
  background: linear-gradient(180deg, #33ce18 0%, #00a000 100%);
  position: relative;
}

.yrt-p-contact__cta-btn--line:hover{
  background: linear-gradient(0deg, #45B545 0%, #45B545 50%, #63D053 100%);
}

.yrt-p-contact__cta-btn--line::after{
  content: "";
  width: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  height: min(22px, calc(22 / var(--screen-base-size-yrt) * 100vw));
  display: block;
  background-color: var(--color-yrt-white);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);

  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.yrt-p-contact__cta-btn--tel {
  border-color: var(--color-yrt-blue);
  background: linear-gradient(180deg, #5994f7 0%, #347bf2 100%);
}

.yrt-p-contact__cta-btn--tel:hover{
  background: linear-gradient(0deg, #699BEE 0%, #699BEE 50%, #5E96F5 100%);
}

.yrt-p-contact__form-wrap {
  background-color: var(--color-yrt-white);
  box-shadow:
    min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(8px, calc(8 / var(--screen-base-size-yrt, 1440) * 100vw)) 0
    rgba(117, 147, 158, 0.3);
  padding: min(80px, calc(80 / var(--screen-base-size-yrt, 1440) * 100vw))
    min(40px, calc(40 / var(--screen-base-size-yrt, 1440) * 100vw));
  display: flex;
  flex-direction: column;
  gap: min(100px, calc(100 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-p-contact__fields {
  display: flex;
  flex-direction: column;
  gap: min(45px, calc(45 / var(--screen-base-size-yrt, 1440) * 100vw));
  width: 100%;
  max-width: min(856px, calc(856 / var(--screen-base-size-yrt) * 100vw));
  margin: 0 auto;
}

.yrt-c-field {
  display: flex;
  flex-direction: column;
  gap: min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-c-field__label-row p {
  display: flex;
  align-items: center;
  gap: min(10px, calc(10 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-c-field__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: min(44px, calc(44 / var(--screen-base-size-yrt) * 100vw));
  min-height: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  padding: 0 min(8px, calc(8 / var(--screen-base-size-yrt) * 100vw));
  border-radius: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  border: min(1px, calc(1 / var(--screen-base-size-yrt) * 100vw)) solid;
  font-size: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  font-weight: 500;
}

.yrt-c-field__badge--required {
  border-color: var(--color-yrt-red);
  color: var(--color-yrt-red);
}

.yrt-c-field__badge--optional {
  border-color: var(--color-yrt-black);
  color: var(--color-yrt-black);
}

.yrt-c-field__label {
  font-size: min(19px, calc(19 / var(--screen-base-size-yrt, 1440) * 100vw));
  font-weight: 500;
}

.yrt-c-field__control {
  width: 100%;
  min-height: min(55px, calc(55 / var(--screen-base-size-yrt, 1440) * 100vw));
  border: none;
  background-color: var(--color-yrt-gray);
  padding: min(8px, calc(8 / var(--screen-base-size-yrt) * 100vw)) min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  font-size: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  border: none !important;
}

.yrt-c-field__control--textarea {
  min-height: min(285px, calc(285 / var(--screen-base-size-yrt, 1440) * 100vw));
  resize: vertical;
}

.yrt-p-contact__submit {
  display: flex;
  justify-content: center;
}

.yrt-p-contact__submit input {
  display: flex;
  justify-content: center;
  align-items: center;

  padding: initial;
  margin-top: min(100px, calc(100 / var(--screen-base-size-yrt) * 100vw));

  width: min(425px, calc(425 / var(--screen-base-size-yrt, 1440) * 100vw));
  height: min(94px, calc(94 / var(--screen-base-size-yrt, 1440) * 100vw));

  border-radius: min(47px, calc(47 / var(--screen-base-size-yrt, 1440) * 100vw));
  border: min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) solid var(--color-yrt-orange);
  background: linear-gradient(180deg, #ffd370 0%, #e7a918 100%);
  color: var(--color-yrt-white);

  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(37px, calc(37 / var(--screen-base-size-yrt, 1440) * 100vw));
  cursor: pointer;
  box-shadow: inset 0 0 0 min(2px, calc(2 / var(--screen-base-size-yrt) * 100vw)) var(--color-yrt-white);
  position: relative;

  transition: all 0.2s ease;
}

.yrt-p-contact__submit input:hover{
  background: linear-gradient(0deg,#E7BB56 0%, #E7BB56 50%, #FFD370 100%);
}

.yrt-p-contact__submit input::after{
  content: "";
  width: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  height: min(22px, calc(22 / var(--screen-base-size-yrt) * 100vw));
  display: block;
  background-color: var(--color-yrt-white);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);

  position: absolute;
  right: 16%;
  top: 50%;
  transform: translateY(-50%);
}

.yrt-p-contact__submit input:hover,
.yrt-p-contact__submit input:focus-visible {
  filter: brightness(1.05);
  outline: none;
}

@media (max-width: 750px) {
  .yrt-p-contact{
    background-image: url("../img/renewal/contact-bg-sp.jpg");
    padding-top: min(86px, calc(86 / var(--screen-base-size-yrt) * 100vw));
    padding-bottom: min(86px, calc(86 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__inner{
    gap: min(27px, calc(27 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__cta-row {
    flex-direction: column;
    justify-content: center;
    width: min(260px, calc(260 / var(--screen-base-size-yrt) * 100vw));
    min-height: initial;
    margin: 0 auto;
    gap: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__cta-btn {
    flex: initial;
    width: 100%;
    height: min(60px, calc(60 / var(--screen-base-size-yrt) * 100vw));
    min-height: initial;
    font-size: min(21px, calc(21 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__cta-btn--line::after{
    width: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
    height: min(12px, calc(12 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__form-wrap{
    padding: 
      min(17px, calc(17 / var(--screen-base-size-yrt) * 100vw))
      min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
    gap: min(25px, calc(25 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-field__badge{
    font-size: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-field__label{
    font-size: min(14px, calc(14 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-field__control{
    min-height: initial;
  }

  .yrt-p-contact__submit input{
    font-size: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
    height: min(42px, calc(42 / var(--screen-base-size-yrt) * 100vw));
    width: min(200px, calc(200 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-p-contact__submit input::after{
    width: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
    height: min(10px, calc(10 / var(--screen-base-size-yrt) * 100vw));
  }
}
/* * * footer：お問い合わせ end * * */


/* * * 共通 * * */
.yrt-l-wrap {
  width: 100%;
  max-width: min(1440px, calc(1440 / var(--screen-base-size-yrt) * 100vw));
  margin-left: auto;
  margin-right: auto;
  padding-left: min(40px, calc(40 / var(--screen-base-size-yrt, 1440) * 100vw));
  padding-right: min(40px, calc(40 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-l-wrap--narrow {
  max-width: min(1054px, calc(1054 / var(--screen-base-size-yrt) * 100vw));
}

.yrt-c-section-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(16px, calc(16 / var(--screen-base-size-yrt, 1440) * 100vw));
  text-align: center;
}

.yrt-c-section-title__en {
  font-family: "Bree Serif", serif;
  font-weight: 400;
  font-size: min(64px, calc(64 / var(--screen-base-size-yrt, 1440) * 100vw));
  line-height: 1;
  color: var(--color-yrt-blue);
  margin-bottom: initial;
}

.yrt-c-section-title__en--ranking {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
}

.yrt-c-section-title__en--and{
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(48px, calc(48 / var(--screen-base-size-yrt, 1440) * 100vw));
}

.yrt-c-section-title__ja {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(20px, calc(20 / var(--screen-base-size-yrt, 1440) * 100vw));
  line-height: 1;
  color: var(--color-yrt-black);
}

.yrt-c-section-title__ja--semibold {
  font-weight: 600;
}

@media (max-width: 750px) {
  .yrt-l-wrap {
    padding-left: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
    padding-right: min(20px, calc(20 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-section-title {
    gap: min(11px, calc(11 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-section-title__en {
    font-size: min(32px, calc(32 / var(--screen-base-size-yrt, 750) * 100vw));
  }

  .yrt-c-section-title__ja{
    font-size: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-section-title__en--and{
    font-size: min(16px, calc(16 / var(--screen-base-size-yrt) * 100vw));
  }

  .yrt-c-section-title__en--ranking {
    font-size: min(24px, calc(24 / var(--screen-base-size-yrt, 750) * 100vw));
  }
}

/* ==========================================
# ヘッダー・フッターのリニューアル end
========================================== */


/* ==========================================
# 以降の共通CSS修正は下記に記述してください。
========================================== */