@charset "UTF-8";
/**
* reset.css
* ========================== */
html {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
}

*,
::before,
::after {
  box-sizing: inherit;
}

h1, h2, h3, h4, h5, h6, a, p, span, em, small, strong, sub, sup, mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre, ol, ul, li, dl, dt, dd, div, section, article, main, aside, nav, header, hgroup, footer, img, figure, figcaption, address, time, audio, video, canvas, iframe, details, summary, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

article, aside, footer, header, nav, section, main, figure, figcaption {
  display: block;
}

ul, ol {
  list-style: none;
  list-style-type: none;
}

code, kbd, pre, samp {
  font-family: monospace, sans-serif;
  font-size: inherit;
}

blockquote, q {
  quotes: none;
}

blockquote::after, blockquote::before, q::after, q::before {
  content: "";
  content: none;
}

address {
  font-style: normal;
}

/**
* variables
* ========================== */
/**フォントサイズ*********/
/**カラー*********/
/**max-width********/
/**padding*********/
/**margin*********/
/**font-family*********/
@font-face {
  font-family: "Rounded Mgen+ 2";
  src: url("../path/rounded-mgenplus-2c-regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Rounded Mgen+ 2";
  src: url("../path/rounded-mgenplus-2c-regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "KouzanMouhitu";
  src: url("../path/KouzanMouhituFontOTF.otf") format("opentype");
}
/**
* mixin
* ========================== */
/**
* base.css
* ========================== */
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  color: #333333;
  line-height: 1.56;
  background-color: #FBFBF8;
  font-size: clamp(16px, 2.34375vw, 18px);
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  body {
    line-height: 1.75;
  }
}

a {
  text-decoration: none;
  color: #333333;
  display: inline-block;
  transition: 0.4s;
}

img {
  width: 100%;
  height: auto;
}

/**
* header
* ========================== */
.l-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 999;
  height: 72px;
  background: linear-gradient(#fff, rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.05));
}
@media screen and (max-width: 980px) {
  .l-header {
    height: 63px;
    padding: 11px 7px;
  }
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}
.l-header__logo {
  margin: 0 0 0 8.6%;
  position: relative;
  z-index: 999;
}
@media screen and (max-width: 1024px) {
  .l-header__logo {
    margin: 0 0 0 4.3%;
  }
}
@media screen and (max-width: 980px) {
  .l-header__logo {
    margin: 0;
  }
}
.l-header__img {
  height: clamp(30px, 5.2083333333vw, 40px);
  width: auto;
}
.l-header__openbtn {
  display: none;
}
@media screen and (max-width: 980px) {
  .l-header__openbtn {
    display: block;
    position: fixed;
    z-index: 9999; /*ボタンを最前面に*/
    top: 14px;
    right: 11px;
    cursor: pointer;
    width: 36px;
    height: 25px;
  }
  .l-header__openbtn span {
    display: inline-block;
    transition: all 0.4s;
    position: absolute;
    left: 0;
    height: 3px;
    background-color: #B93B2E;
  }
  .l-header__openbtn span:nth-of-type(1) {
    top: 0;
    width: 100%;
  }
  .l-header__openbtn span:nth-of-type(2) {
    top: 11px;
    width: 75%;
  }
  .l-header__openbtn span:nth-of-type(3) {
    top: 22px;
    width: 50%;
  }
  .l-header__openbtn.active span:nth-of-type(1) {
    transform: translateY(6px) rotate(-45deg);
    width: 36px;
    top: 4px;
    left: 4px;
  }
  .l-header__openbtn.active span:nth-of-type(2) {
    opacity: 0;
  }
  .l-header__openbtn.active span:nth-of-type(3) {
    top: 16px;
    left: 4px;
    transform: translateY(-6px) rotate(45deg);
    width: 36px;
  }
}
@media screen and (max-width: 980px) {
  .l-header-nav {
    position: fixed;
    z-index: 99;
    top: 0;
    right: -120%;
    width: 75.2%;
    height: 100vh;
    background: rgba(255, 255, 255, 0.9);
    transition: all 0.6s;
  }
  .l-header-nav.open {
    right: 0;
  }
  .l-header-nav.open .l-header-nav__inner {
    position: relative;
    z-index: 999;
    width: 100%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.l-header-nav__list {
  display: flex;
  align-items: center;
  gap: 40px;
}
@media screen and (max-width: 980px) {
  .l-header-nav__list {
    position: absolute;
    z-index: 99;
    width: 77.6%;
    top: 16.4%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    flex-direction: column;
    gap: 0;
  }
}
.l-header-nav__item {
  font-family: "Kiwi Maru", serif;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item:nth-child(1) {
    width: 100%;
    position: relative;
    padding: 0 0 34px;
    margin: 0px 0 29px;
    text-align: center;
  }
  .l-header-nav__item:nth-child(1):after {
    content: "";
    width: 100%;
    height: 0.5px;
    background-color: #B93B2E;
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
@media screen and (max-width: 980px) {
  .l-header-nav__item:nth-child(2) {
    margin: 0 0 62px;
  }
}
@media screen and (max-width: 980px) {
  .l-header-nav__item:nth-child(3) {
    margin: 0 0 25px;
  }
}
@media screen and (max-width: 980px) {
  .l-header-nav__item:nth-child(4) {
    margin: 0 0 25px;
  }
}
.l-header-nav__item:nth-child(5) {
  display: none;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item:nth-child(5) {
    display: block;
    font-size: 12px;
    margin: 0 0 24px;
  }
}
.l-header-nav__item-link {
  display: block;
  position: relative;
  padding: 0 0 8px;
  line-height: 1.2;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item-link {
    font-size: 20px;
  }
}
.l-header-nav__item-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #B93B2E;
  transition: all 0.3s;
  transform: scale(0, 1);
  transform-origin: left top;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item-link::after {
    content: none;
  }
}
.l-header-nav__item-link:hover::after {
  transform: scale(1, 1);
}
.l-header-nav__item-contact, .l-header-nav__item-tel {
  display: flex;
  align-items: center;
  justify-content: center;
}
.l-header-nav__item-contact {
  background-color: #6495CA;
  border-radius: 40px;
  color: #fff;
  padding: 12px 31px 12px 24px;
  width: 200px;
  height: 48px;
  gap: 8px;
  line-height: 1.2;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item-contact {
    font-size: 18px;
  }
}
.l-header-nav__item-contact:hover {
  background-color: #2F6AAA;
}
.l-header-nav__item-contact img {
  width: 24px;
}
.l-header-nav__item-tel {
  background-color: #B93B2E;
  color: #fff;
  width: 264px;
  height: 72px;
  gap: 8px;
}
@media screen and (max-width: 980px) {
  .l-header-nav__item-tel {
    width: clamp(200px, 34.375vw, 264px);
    height: clamp(64px, 9.375vw, 72px);
    gap: 0;
  }
}
.l-header-nav__item-tel:hover {
  background-color: #A71204;
}
.l-header-nav__item-tel img {
  width: clamp(19.5px, 3.125vw, 24px);
}
.l-header-nav__item-tel-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 11px;
  line-height: 1;
}
.l-header-nav__item-tel-content span {
  font-size: 12px;
  line-height: 1.18;
}
.l-header-nav__item-tel-content p {
  font-family: "Rounded Mgen+ 2", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  .l-header-nav__item-tel-content p {
    font-size: 16px;
  }
}

/**
* footer
* ========================== */
.l-footer {
  padding: 40px 0 24px;
}
@media screen and (max-width: 480px) {
  .l-footer {
    padding: 16px 0;
  }
}
.l-footer__inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 480px) {
  .l-footer__inner {
    gap: 16px;
  }
}
.l-footer__logo-img {
  width: clamp(111px, 17.96875vw, 138px);
  vertical-align: bottom;
}
.l-footer__nav {
  display: flex;
  align-items: center;
  font-family: "Kiwi Maru", serif;
  font-size: clamp(12px, 2.0833333333vw, 16px);
}
@media screen and (max-width: 480px) {
  .l-footer__nav {
    flex-direction: column;
    gap: 8px;
  }
}
.l-footer__item {
  padding: 0 25px 0 5px;
  position: relative;
}
@media screen and (max-width: 480px) {
  .l-footer__item {
    padding: 0;
  }
}
.l-footer__item:not(:last-child):after {
  content: "";
  width: 1px;
  height: 80%;
  background-color: #656565;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: skewX(-38deg);
  transform-origin: right top;
}
@media screen and (max-width: 480px) {
  .l-footer__item:not(:last-child):after {
    content: none;
  }
}
.l-footer__item-link:hover {
  color: #6495CA;
}
.l-footer__copy {
  font-size: clamp(12px, 1.8229166667vw, 14px);
}

/**
* contact
* ========================== */
.l-contact {
  font-family: "Kiwi Maru", serif;
}
.l-contact__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 32px;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .l-contact__ttl {
    margin: 0 0 24px;
  }
}
.l-contact__ttl--txt {
  padding: 0 0 8px;
  position: relative;
  font-size: clamp(20px, 4.1666666667vw, 32px);
}
.l-contact__ttl--txt::after {
  content: "";
  width: 100%;
  height: 2px;
  background-color: #BA4237;
  position: absolute;
  bottom: 0;
  left: 0;
}
.l-contact__content {
  text-align: center;
  margin: 0 0 80px;
}
@media screen and (max-width: 768px) {
  .l-contact__content {
    margin: 0 0 24px;
  }
}
.l-contact__head {
  font-size: clamp(14px, 3.125vw, 24px);
  margin: 0 0 24px;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .l-contact__head {
    margin: 0 0 16px;
    line-height: 1.6;
  }
}
.l-contact__head .br {
  display: none;
}
@media screen and (max-width: 480px) {
  .l-contact__head .br {
    display: block;
  }
}
.l-contact__business {
  font-size: clamp(14px, 2.6041666667vw, 20px);
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .l-contact__business {
    line-height: 1.6;
  }
}
.l-contact__business-holiday--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-contact__business-holiday--sp {
    display: block;
  }
}
.l-contact__list {
  margin: 0 0 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-contact__list {
    flex-direction: column;
    gap: 8px;
    margin: 0 0 24px;
  }
}
.l-contact-item {
  /*width: 30.3%; 3つ丸が並ぶ場合*/
  width: 50%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .l-contact-item {
    width: auto;
  }
}
.l-contact-item__link {
  width: clamp(200px, 26.6666666667vw, 240px);
  height: clamp(200px, 26.6666666667vw, 240px);
  border-radius: 50%;
  background-color: #B93B2E;
  position: relative;
}
@media screen and (max-width: 768px) {
  .l-contact-item__link {
    width: auto;
    height: auto;
    background-color: transparent;
  }
}
.l-contact-item__link:hover {
  background-color: #A71204;
}
@media screen and (max-width: 768px) {
  .l-contact-item__link:hover {
    background-color: transparent;
  }
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--line .l-contact-item__img {
    margin: 0;
  }
}
.l-contact-item__link--line .l-contact-item__img img {
  width: clamp(72px, 9.6666666667vw, 112px);
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--line .l-contact-item__img img {
    width: clamp(30px, 8.3333333333vw, 40px);
  }
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--line .l-contact-item__qr {
    display: none;
  }
}
.l-contact-item__link--line .l-contact-item__qr img {
  width: clamp(60px, 7.0833333333vw, 64px);
}
.l-contact-item__link--tel .l-contact-item__img {
  margin: 0 0 8.5%;
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--tel .l-contact-item__img {
    margin: 0;
  }
}
.l-contact-item__link--tel .l-contact-item__img img {
  width: clamp(64px, 8.6666666667vw, 80px);
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--tel .l-contact-item__img img {
    width: clamp(28px, 7.9166666667vw, 38px);
  }
}
.l-contact-item__link--mail .l-contact-item__img {
  margin: 0 0 9.8%;
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--mail .l-contact-item__img {
    margin: 0;
  }
}
.l-contact-item__link--mail .l-contact-item__img img {
  width: clamp(64px, 8.4166666667vw, 80px);
}
@media screen and (max-width: 768px) {
  .l-contact-item__link--mail .l-contact-item__img img {
    width: clamp(28px, 7.9166666667vw, 38px);
  }
}
.l-contact-item__inner {
  position: absolute;
  top: 10.2%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .l-contact-item__inner {
    position: static;
    transform: translateX(0);
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    flex-direction: row;
    justify-content: flex-start;
    gap: 1.8rem;
    margin: 0 auto;
    width: clamp(237px, 42vw, 294px);
  }
}
.l-contact-item__inner .line_text {
  display: none;
}
@media screen and (max-width: 480px) {
  .l-contact-item__inner .line_text {
    display: block;
    color: #B93B2E;
  }
}
.l-contact-item__img {
  transition: 0.4s;
}
@media screen and (max-width: 768px) {
  .l-contact-item__img {
    border-radius: 50%;
    background-color: #B93B2E;
    width: clamp(48px, 12.0833333333vw, 58px);
    height: clamp(48px, 12.0833333333vw, 58px);
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .l-contact-item__link:hover .l-contact-item__img {
    background-color: #A71204;
  }
}
.l-contact-item__txt {
  color: #fff;
  font-family: "Rounded Mgen+ 2", sans-serif;
  font-size: clamp(20px, 2vw, 16px);
  transition: 0.4s;
}
@media screen and (max-width: 768px) {
  .l-contact-item__txt {
    color: #B93B2E;
    font-size: clamp(16px, 3.125vw, 24px);
  }
}
.l-contact-item__txt__line {
  display: none;
  color: #fff;
  font-family: "Rounded Mgen+ 2", sans-serif;
  font-size: clamp(20px, 2vw, 16px);
  transition: 0.4s;
}
@media screen and (max-width: 768px) {
  .l-contact-item__txt__line {
    display: block;
    color: #B93B2E;
    font-size: clamp(16px, 3.125vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .l-contact-item__link:hover .l-contact-item__txt {
    color: #A71204;
  }
}
.l-contact__map {
  margin: 0 calc(50% - 50vw);
}
.l-contact__map iframe {
  height: clamp(115px, 30.243902439vw, 248px);
  width: 100%;
}

/**
* totop
* ========================== */
.l-totop {
  position: fixed;
  right: 11%;
  bottom: 128px;
}
@media screen and (max-width: 480px) {
  .l-totop {
    display: none;
  }
}
.l-totop__link {
  width: 88px;
  height: 88px;
  background-color: #6495CA;
  border: 1px solid #6495CA;
  position: relative;
  border-radius: 50%;
}
.l-totop__link:hover {
  background-color: #fff;
}
.l-totop__link:hover .l-totop__img--hover {
  opacity: 1;
}
.l-totop__img {
  width: 56px;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.l-totop__img--hover {
  opacity: 0;
}

/**
* section
* ========================== */
.c-section-inner {
  max-width: 1056px;
  width: 87.2%;
  margin: 0 auto;
}

.c-first-section {
  margin: 80px auto 112px;
  max-width: 1280px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .c-first-section {
    margin: 32px 0 48px;
  }
}

.c-section {
  margin: 0 auto 112px;
  max-width: 1280px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .c-section {
    margin: 0 0 48px;
  }
}

.c-section-box {
  max-width: 933px;
  width: 100%;
  margin: 0 auto;
}

/**
* section title
* ========================== */
.c-section-ttl01 {
  position: relative;
  padding: 0 0 0 16px;
  margin: 0 0 48px;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  .c-section-ttl01 {
    margin: 0 0 16px;
    padding: 0 0 0 8px;
    line-height: 1.11;
  }
}
.c-section-ttl01::before {
  content: "";
  width: 2px;
  height: clamp(48px, 9.375vw, 72px);
  background-color: #BA4237;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.c-section-ttl01__en {
  margin: 0 0 8px;
  color: #BA4237;
  font-size: clamp(16px, 2.6041666667vw, 20px);
  font-family: "Rounded Mgen+ 2", sans-serif;
}
.c-section-ttl01__ja {
  font-size: clamp(20px, 4.1666666667vw, 32px);
  font-family: "Kiwi Maru", serif;
}

.c-section-ttl02 {
  margin: 0 0 16px;
  position: relative;
  padding: 0 0 16px;
  line-height: 1.15;
}
@media screen and (max-width: 480px) {
  .c-section-ttl02 {
    margin: 0 0 8px;
    padding: 0 0 8px;
  }
}
.c-section-ttl02::before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: #BA4237;
  position: absolute;
  bottom: 0;
  left: 0;
}
.c-section-ttl02__en {
  margin: 0 0 8px;
  color: #BA4237;
  font-size: clamp(16px, 3.125vw, 24px);
  font-family: "Rounded Mgen+ 2", sans-serif;
}
@media screen and (max-width: 480px) {
  .c-section-ttl02__en {
    margin: 0;
  }
}
.c-section-ttl02__ja {
  font-size: clamp(20px, 4.1666666667vw, 32px);
  font-family: "Kiwi Maru", serif;
}

/**
* block title
* ========================== */
.c-block-ttl {
  margin: 0 0 64px;
}
@media screen and (max-width: 480px) {
  .c-block-ttl {
    margin: 0 0 16px;
  }
}
.c-block-ttl__inner {
  display: inline-block;
  position: relative;
  padding: 0 0 8px;
}
.c-block-ttl__inner::before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: #BA4237;
  position: absolute;
  bottom: 0;
  left: 0;
}
.c-block-ttl__flex {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}
.c-block-ttl__num {
  font-size: clamp(28px, 6.5104166667vw, 50px);
  color: #B93B2E;
  font-family: "Rounded Mgen+ 2", sans-serif;
  line-height: 1.12;
}
.c-block-ttl__ja {
  font-size: clamp(20px, 4.1666666667vw, 32px);
  font-family: "Kiwi Maru", serif;
  line-height: 1.25;
}

/**
* block subtitle
* ========================== */
.c-block-subttl {
  margin: 0 0 16px;
}
.c-block-subttl__inner {
  width: clamp(160px, 24.21875vw, 186px);
  height: clamp(32px, 5.2083333333vw, 40px);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 52%, 90.9% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 52%, 90.9% 100%, 0 100%);
  padding: 8px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #BA4237;
  position: relative;
}
.c-block-subttl__inner::after {
  content: "";
  width: clamp(15px, 2.2135416667vw, 17px);
  height: clamp(16px, 2.5390625vw, 19.5px);
  background: linear-gradient(to top left, transparent 50%, #881409 50%) no-repeat top left/100% 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}
.c-block-subttl__txt {
  color: #fff;
  font-family: "Kiwi Maru", serif;
  font-size: clamp(18px, 2.6041666667vw, 20px);
}

/**
* hero
* ========================== */
.c-hero {
  width: 100%;
  height: clamp(335px, 66.2760416667vw, 509px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.c-hero::after {
  content: "";
  width: clamp(294px, 55.2083333333vw, 424px);
  height: clamp(129px, 24.609375vw, 189px);
  background: linear-gradient(to bottom right, transparent 50%, #BA382B 50%) no-repeat top left/100% 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}
.c-hero__content {
  position: absolute;
  z-index: 10;
  right: 72px;
  bottom: 30px;
}
@media screen and (max-width: 768px) {
  .c-hero__content {
    right: 32px;
    bottom: 19px;
  }
}
.c-hero__ttl {
  color: #fff;
  font-family: "Kiwi Maru", serif;
  font-size: clamp(26px, 4.5572916667vw, 35px);
}

/**
* imgbox
* ========================== */
.c-imgbox {
  position: absolute;
  width: clamp(376px, 38.75vw, 496px);
  top: 0;
  right: 14%;
}
@media screen and (max-width: 768px) {
  .c-imgbox {
    position: static;
    margin: 0 calc(50% - 50vw) 16px;
    width: auto;
  }
}
@media screen and (max-width: 1080px) {
  .c-imgbox {
    top: 5%;
    right: 12%;
  }
}
@media screen and (max-width: 920px) {
  .c-imgbox {
    top: 10%;
    right: 7%;
  }
}
@media screen and (max-width: 860px) {
  .c-imgbox {
    right: 4%;
  }
}
.c-imgbox__img {
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-imgbox__img {
    padding: 0 0 16px;
  }
}
.c-imgbox__img::before {
  content: "";
  background-color: #D5CFBB;
  position: absolute;
  bottom: -16.5%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .c-imgbox__img::before {
    bottom: 0;
  }
}
.c-imgbox__img img {
  vertical-align: bottom;
  height: clamp(176px, 18.203125vw, 233px);
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .c-imgbox__img img {
    height: clamp(112px, 19.53125vw, 150px);
  }
}

/**
* fv
* ========================== */
.p-fv {
  width: 100%;
  height: 100vh;
  background-image: url(../img/fv.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 1024px) {
  .p-fv {
    height: 65vh;
    background-image: url(../img/fv_sp.jpg);
    background-position: left 22% top;
  }
}
.p-fv::after {
  content: "";
  height: 373px;
  width: 827px;
  background: linear-gradient(to bottom right, transparent 50%, #BA382B 50%) no-repeat top left/100% 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-fv::after {
    height: clamp(181px, 48.5677083333vw, 373px);
    width: clamp(664px, 107.6822916667vw, 827px);
  }
}
.p-fv__content {
  position: absolute;
  right: 33px;
  bottom: 28px;
  z-index: 10;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-fv__content {
    right: 21px;
    bottom: 22px;
  }
}
.p-fv__content-ttl {
  color: #fff;
  line-height: 2.5;
  font-size: clamp(22px, 4.1666666667vw, 32px);
  font-family: "Kiwi Maru", serif;
}
@media screen and (max-width: 768px) {
  .p-fv__content-ttl {
    line-height: 1.8;
  }
}

/**
* news
* ========================== */
.p-news-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-news-item {
    flex-direction: column;
    gap: 8px;
  }
}
.p-news__ttlbox {
  width: 23%;
}
@media screen and (max-width: 768px) {
  .p-news__ttlbox {
    width: 100%;
  }
}
.p-news__ttlbox-ttl {
  font-size: clamp(16px, 3.125vw, 24px);
  color: #6495CA;
  font-family: "Kiwi Maru", serif;
  margin: 0 0 8px;
}
@media screen and (max-width: 768px) {
  .p-news__ttlbox-ttl {
    margin: 0 0 6px;
  }
}
.p-news__ttlbox-date {
  color: #818181;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  .p-news__ttlbox-date {
    font-size: 12px;
  }
}
.p-news__content {
  width: 75.3%;
}
@media screen and (max-width: 768px) {
  .p-news__content {
    width: 100%;
  }
}
.p-news__content-txt {
  line-height: 1.88;
  font-size: clamp(14px, 2.34375vw, 18px);
}
@media screen and (max-width: 480px) {
  .p-news__content-txt {
    line-height: 1.42;
  }
}

/**
* about
* ========================== */
.p-about__inner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-about__inner {
    display: block;
  }
}
.p-about__content, .p-about__img-pc {
  width: calc((100% - 80px) / 2);
}
@media screen and (max-width: 1024px) {
  .p-about__content, .p-about__img-pc {
    width: calc((100% - 16px) / 2);
  }
}
.p-about__content {
  margin: 48px 80px 48px 0;
}
@media screen and (max-width: 1024px) {
  .p-about__content {
    margin: 24px 16px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-about__content {
    margin: 0;
    width: 100%;
  }
}
.p-about__ttlbox {
  margin: 0 0 16px 0;
}
@media screen and (max-width: 768px) {
  .p-about__ttlbox {
    margin: 0 0 24px;
  }
}
.p-about__ttlbox-ttl {
  font-family: "Kiwi Maru", serif;
}
.p-about__ttlbox-ttl--top {
  font-size: clamp(18px, 2vw, 24px);
}
@media screen and (max-width: 768px) {
  .p-about__ttlbox-ttl--top {
    font-size: clamp(18px, 3.125vw, 24px);
  }
}
.p-about__ttlbox-ttl--bottom {
  font-size: clamp(22px, 2.6666666667vw, 32px);
  letter-spacing: -0.01em;
}
@media screen and (max-width: 768px) {
  .p-about__ttlbox-ttl--bottom {
    font-size: clamp(22px, 4.1666666667vw, 32px);
  }
}
.p-about__ttlbox-ttl--bottom span {
  color: #BB3C30;
}
.p-about__img-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-about__img-sp {
    display: block;
    width: 63.6%;
    margin: 0 auto 24px;
  }
}
@media screen and (max-width: 768px) {
  .p-about__img-pc {
    display: none;
  }
}
.p-about__txt {
  line-height: 1.88;
}
@media screen and (max-width: 768px) {
  .p-about__txt {
    line-height: 1.75;
  }
}

/**
* business
* ========================== */
.p-business {
  padding: 0 0 56px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-business {
    padding: 0;
  }
}
.p-business::after {
  content: "";
  width: 53.2%;
  height: 97%;
  -webkit-clip-path: polygon(0 35.6%, 100% 0, 100% 100%, 100% 100%, 0 100%);
          clip-path: polygon(0 35.6%, 100% 0, 100% 100%, 100% 100%, 0 100%);
  background-image: url(../img/business-content-bg.jpg);
  background-position: left 18% bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
}
@media screen and (max-width: 1200px) {
  .p-business::after {
    background-position: left 25% bottom;
  }
}
@media screen and (max-width: 768px) {
  .p-business::after {
    width: 100%;
    height: 20.6%;
    -webkit-clip-path: polygon(0 45.7%, 100% 0, 100% 100%, 100% 100%, 0 100%);
            clip-path: polygon(0 45.7%, 100% 0, 100% 100%, 100% 100%, 0 100%);
    background-position: center;
    bottom: auto;
    top: 0;
  }
}
@media screen and (max-width: 480px) {
  .p-business::after {
    -webkit-clip-path: polygon(0 35.7%, 100% 0, 100% 100%, 100% 100%, 0 100%);
            clip-path: polygon(0 35.7%, 100% 0, 100% 100%, 100% 100%, 0 100%);
  }
}
@media screen and (max-width: 620px) {
  .p-business::after {
    background-size: 110%;
  }
}
@media screen and (max-width: 480px) {
  .p-business::after {
    background-size: 140%;
  }
}
.p-business .c-section-ttl01 {
  margin: 0 0 64px;
}
@media screen and (max-width: 1280px) {
  .p-business .c-section-ttl01 {
    margin: 0 0 56px;
  }
}
@media screen and (max-width: 768px) {
  .p-business .c-section-ttl01 {
    margin: 0 0 112px;
  }
}
.p-business__list {
  display: flex;
  flex-direction: column;
  gap: 64px;
  width: 57.6%;
}
@media screen and (max-width: 1280px) {
  .p-business__list {
    gap: 40px;
  }
}
@media screen and (max-width: 1200px) {
  .p-business__list {
    width: 77.6%;
  }
}
@media screen and (max-width: 768px) {
  .p-business__list {
    width: 100%;
    gap: 24px;
  }
}
.p-business__link {
  width: 100%;
  height: 208px;
  background-color: #B93B2E;
  position: relative;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  .p-business__link {
    height: 228px;
  }
}
@media screen and (max-width: 768px) {
  .p-business__link {
    height: 288px;
  }
}
.p-business__link:hover {
  background-color: #A71204;
}
.p-business__link-num {
  font-family: "Rounded Mgen+ 2", sans-serif;
  font-size: clamp(24px, 3.6458333333vw, 28px);
  position: absolute;
  top: 16px;
  left: 40px;
}
@media screen and (max-width: 768px) {
  .p-business__link-num {
    top: 32px;
    left: 28px;
  }
}
@media screen and (max-width: 480px) {
  .p-business__link-num {
    top: 33px;
    left: 17.2px;
  }
}
.p-business__link-bubble {
  font-family: "Kiwi Maru", serif;
  width: clamp(144px, 34.1666666667vw, 164px);
  height: clamp(64px, 13.9583333333vw, 67px);
  background-image: url(../img/speech-bubble.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #BA4237;
  font-size: 14px;
  position: absolute;
  top: 7.3px;
  right: 32px;
  padding: 0 0 10px;
}
@media screen and (max-width: 768px) {
  .p-business__link-bubble {
    top: -16px;
  }
}
@media screen and (max-width: 480px) {
  .p-business__link-bubble {
    right: 16px;
  }
}
.p-business__link-content {
  position: absolute;
  width: 72.2%;
  top: 48px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .p-business__link-content {
    top: 70px;
  }
}
.p-business__link-ttl {
  font-family: "Kiwi Maru", serif;
  font-size: 20px;
  padding: 0 0 16px;
  margin: 0 0 16px;
  border-bottom: 1px solid #fff;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  .p-business__link-ttl {
    padding: 0 0 12px;
    margin: 0 0 6px;
  }
}

/**
* greeting
* ========================== */
@media screen and (max-width: 768px) {
  .p-greeting {
    margin: 0 0 32px;
  }
}
.p-greeting__subttl {
  font-family: "Kiwi Maru", serif;
  font-size: clamp(16px, 4.1666666667vw, 20px);
  color: #6495CA;
  margin: 0 0 32px;
}
@media screen and (max-width: 768px) {
  .p-greeting__subttl {
    margin: 0 0 16px;
  }
}
.p-greeting__txt {
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-greeting__txt {
    line-height: 1.75;
  }
  .p-greeting__txt--pc {
    display: none;
  }
}

/**
* bg
* ========================== */
.p-bg {
  width: 100%;
  height: 318px;
  overflow: hidden;
  margin: 0 0 64px;
  background-image: url(../img/greeting-img.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 1280px) {
  .p-bg {
    height: clamp(112px, 34.375vw, 264px);
  }
}
@media screen and (max-width: 768px) {
  .p-bg {
    margin: 0 0 48px;
    background-image: url(../img/greeting-img_sp.png);
  }
}

/**
* hero
* ========================== */
.business .c-hero {
  background-image: url(../img/page_business-content.jpg);
}
@media screen and (max-width: 1024px) {
  .business .c-hero {
    background-position: left center;
  }
}
@media screen and (max-width: 480px) {
  .business .c-hero {
    background-image: url(../img/page_business-content_sp.jpg);
  }
}

/**
* businesshead
* ========================== */
.p-businesshead__list {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 72px;
}
@media screen and (max-width: 1024px) {
  .p-businesshead__list {
    gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .p-businesshead__list {
    gap: 24px 45px;
  }
}
@media screen and (max-width: 768px) {
  .p-businesshead__list {
    gap: 24px 35px;
  }
}
.p-businesshead__list-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: clamp(104px, 17.7083333333vw, 136px);
}
@media screen and (max-width: 768px) {
  .p-businesshead__list-item {
    width: calc((100% - 45px) / 2);
  }
}
@media screen and (max-width: 480px) {
  .p-businesshead__list-item {
    width: calc((100% - 35px) / 2);
  }
}
.p-businesshead__list-item img {
  height: clamp(72px, 11.4583333333vw, 88px);
  vertical-align: bottom;
  width: auto;
}
.p-businesshead__txt {
  font-family: "Kiwi Maru", serif;
  color: #BA4237;
  font-size: clamp(18px, 3.125vw, 24px);
  line-height: 1.2;
}

/**
* privacy
* ========================== */
.p-privacy {
  background-color: #BA4237;
  color: #fff;
  max-width: none;
}
.p-privacy__inner {
  margin-right: calc(50% - 50vw);
  display: flex;
  align-items: stretch;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .p-privacy__inner {
    margin-right: 0;
    display: block;
  }
}
.p-privacy__content {
  padding: 64px 0;
  width: calc(37.9% - 70px);
  margin: 0 70px 0 0;
}
@media screen and (max-width: 1024px) {
  .p-privacy__content {
    width: calc(37.9% - 35px);
    margin: 0 35px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-privacy__content {
    width: 100%;
    margin: 0;
    padding: 32px 0;
  }
}
.p-privacy__content-ttl {
  font-family: "Kiwi Maru", serif;
  font-size: clamp(20px, 3.125vw, 24px);
  margin: 0 0 16px;
}
@media screen and (max-width: 768px) {
  .p-privacy__content-ttl {
    margin: 0 0 24px;
  }
}
.p-privacy__img {
  width: 62.1%;
}
@media screen and (max-width: 768px) {
  .p-privacy__img {
    margin: 0 calc(50% - 50vw);
    width: auto;
  }
}
.p-privacy__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media screen and (max-width: 768px) {
  .p-privacy__img img {
    height: clamp(84px, 16.1458333333vw, 124px);
    -o-object-position: 50% 70%;
       object-position: 50% 70%;
  }
}
@media screen and (max-width: 480px) {
  .p-privacy__img img {
    -o-object-position: 50% 90%;
       object-position: 50% 90%;
  }
}

/**
* consulting
* ========================== */
.p-consulting {
  margin: 0 auto 96px;
}
@media screen and (max-width: 768px) {
  .p-consulting {
    margin: 0 auto 32px;
  }
}
.p-consulting .c-block-subttl {
  margin: 0 0 24px;
}
@media screen and (max-width: 768px) {
  .p-consulting .c-block-subttl {
    margin: 0 auto 16px;
  }
}
.p-consulting__img {
  margin: 0 0 24px;
}
@media screen and (max-width: 768px) {
  .p-consulting__img {
    margin: 0 auto 16px;
  }
}
.p-consulting__img img {
  vertical-align: bottom;
}
@media screen and (max-width: 480px) {
  .p-consulting__img-pc {
    display: none;
  }
}
.p-consulting__img-sp {
  display: none;
}
@media screen and (max-width: 480px) {
  .p-consulting__img-sp {
    display: block;
  }
}
.p-consulting__ttl {
  font-family: "Kiwi Maru", serif;
  color: #BA4237;
  font-size: clamp(16px, 3.125vw, 24px);
  margin: 0 0 24px;
}
@media screen and (max-width: 768px) {
  .p-consulting__ttl {
    margin: 0 0 16px;
  }
}
.p-consulting__content {
  margin: 0 0 0 18px;
}
@media screen and (max-width: 768px) {
  .p-consulting__content {
    margin: 0 0 0 12px;
  }
}
.p-consulting__content-txt {
  margin: 0 0 8px;
}
.p-consulting__content-cau {
  color: #BA4237;
  font-weight: 900;
  font-size: clamp(14px, 2.0833333333vw, 16px);
}
.p-consulting__list {
  margin: 0 0 32px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  list-style-type: disc;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-consulting__list {
    gap: 8px;
    margin: 0 0 16px 20px;
  }
}

/**
* estate
* ========================== */
.p-estate {
  margin: 0 auto 96px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-estate {
    margin: 0 auto 32px;
  }
}
@media screen and (max-width: 768px) {
  .p-estate .c-block-ttl {
    margin: 0 0 16px;
  }
}
.p-estate .c-imgbox__img::before {
  width: clamp(156px, 40.8854166667vw, 314px);
  height: clamp(80px, 20.1822916667vw, 155px);
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-estate .c-imgbox__img img {
    width: 93.6%;
  }
}
.p-estate__group:not(:last-child) {
  margin: 0 0 64px;
}
@media screen and (max-width: 768px) {
  .p-estate__group:not(:last-child) {
    margin: 0 0 24px;
  }
}
.p-estate__group--sell .p-estate__group-txt:nth-of-type(1),
.p-estate__group--sell .p-estate__group-txt:nth-of-type(2) {
  width: 42.8%;
}
@media screen and (max-width: 768px) {
  .p-estate__group--sell .p-estate__group-txt:nth-of-type(1),
  .p-estate__group--sell .p-estate__group-txt:nth-of-type(2) {
    width: 100%;
  }
}
.p-estate__group-txt {
  line-height: 1.72;
}
.p-estate__group-txt--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-estate__group-txt--sp {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .p-estate__group-txt--pc {
    display: none;
  }
}

/**
* renovation
* ========================== */
.p-renovation {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-renovation .c-block-ttl {
    margin: 0 0 16px;
  }
}
@media screen and (max-width: 920px) {
  .p-renovation .c-imgbox {
    top: 28%;
  }
}
.p-renovation .c-imgbox__img {
  text-align: right;
}
.p-renovation .c-imgbox__img::before {
  width: clamp(156px, 45.4427083333vw, 349px);
  height: clamp(80px, 21.875vw, 168px);
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-renovation .c-imgbox__img img {
    width: 93.6%;
  }
}
.p-renovation__group-txt {
  width: 42.8%;
  line-height: 1.72;
}
@media screen and (max-width: 768px) {
  .p-renovation__group-txt {
    width: 100%;
  }
}

/**
* hero
* ========================== */
.about .c-hero {
  background-image: url(../img/page_about.jpg);
}
@media screen and (max-width: 480px) {
  .about .c-hero {
    background-image: url(../img//page_about_sp.jpg);
  }
}

/**
* representative
* ========================== */
.p-representative__ttl {
  font-family: "Kiwi Maru", serif;
  color: #6495CA;
  font-size: clamp(18px, 3.125vw, 24px);
  margin: 0 0 32px;
}
@media screen and (max-width: 768px) {
  .p-representative__ttl {
    margin: 0 0 16px;
  }
}
.p-representative__content-txt {
  margin: 0 0 32px;
  line-height: 1.7;
}
.p-representative__content-txt:last-of-type {
  margin: 0 0 48px;
}
@media screen and (max-width: 768px) {
  .p-representative__content-txt:last-of-type {
    margin: 0 0 24px;
  }
}
.p-representative__name {
  display: flex;
  justify-content: flex-end;
}
.p-representative__namebox-jobttl {
  margin: 0 0 8px;
  font-size: clamp(14px, 2.0833333333vw, 16px);
}
.p-representative__namebox-name {
  font-size: clamp(18px, 3.125vw, 24px);
  line-height: 1.2;
  font-family: "KouzanMouhitu", sans-serif;
}

/**
* company
* ========================== */
@media screen and (max-width: 768px) {
  .p-company .c-section-ttl01 {
    margin: 0 0 16px;
  }
}
.p-company__list {
  max-width: 648px;
  width: 100%;
  margin: 0 auto;
}
.p-company__item {
  display: flex;
  align-items: flex-start;
  padding: 24px 0;
  width: 100%;
}
.p-company__item:not(:last-child) {
  border-bottom: 1px solid #333333;
}
@media screen and (max-width: 480px) {
  .p-company__item {
    flex-direction: column;
    gap: 8px;
    padding: 8px 0;
  }
}
.p-company__item-ttl {
  width: 12.4rem;
  font-family: "Kiwi Maru", serif;
  font-size: clamp(14px, 2.34375vw, 18px);
}
@media screen and (max-width: 768px) {
  .p-company__item-ttl {
    width: 7rem;
  }
}
@media screen and (max-width: 480px) {
  .p-company__item-ttl {
    width: 100%;
  }
}
.p-company__item-txt {
  width: calc(100% - 12.4rem);
}
@media screen and (max-width: 768px) {
  .p-company__item-txt {
    width: calc(100% - 7rem);
  }
}
@media screen and (max-width: 480px) {
  .p-company__item-txt {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0 8px;
    width: 100%;
  }
}

/**
* history
* ========================== */
.p-history__area {
  margin: 0 0 112px;
}
@media screen and (max-width: 768px) {
  .p-history__area {
    margin: 0 0 48px;
  }
}
.p-history__list {
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
}
.p-history__unit {
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 480px) {
  .p-history__unit {
    flex-direction: column;
    position: relative;
    padding: 0 0 16px 8px;
  }
  .p-history__unit::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 120%;
    background-color: #B93B2E;
    top: 0;
    left: 0;
  }
  .p-history__unit:first-child:before {
    height: 80%;
    top: auto;
    bottom: 0;
  }
  .p-history__unit:last-child:before {
    content: none;
  }
}
.p-history__unit-timeline {
  color: #BA4237;
  font-family: "Rounded Mgen+ 2", sans-serif;
  font-size: clamp(16px, 3.125vw, 24px);
  line-height: 1.2;
  text-align: left;
  position: relative;
  padding: 0 56px 32px 0;
  width: 14rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-history__unit-timeline {
    padding: 0 32px 32px 0;
    width: 12rem;
  }
}
@media screen and (max-width: 680px) {
  .p-history__unit-timeline {
    width: 11rem;
  }
}
@media screen and (max-width: 540px) {
  .p-history__unit-timeline {
    padding: 0 24px 32px 0;
    width: 8rem;
  }
}
@media screen and (max-width: 480px) {
  .p-history__unit-timeline {
    text-align: left;
    width: 100%;
    padding: 4px 0 4px 8px;
  }
}
.p-history__unit-timeline::before, .p-history__unit-timeline::after {
  content: "";
  position: absolute;
}
.p-history__unit-timeline::before {
  width: 8px;
  height: 8px;
  background-color: #B93B2E;
  right: -3.5px;
  top: 11px;
}
@media screen and (max-width: 480px) {
  .p-history__unit-timeline::before {
    right: auto;
    left: -11.5px;
  }
}
.p-history__unit-timeline::after {
  width: 1px;
  height: 130%;
  background-color: #B93B2E;
  top: 0;
  right: 0;
}
@media screen and (max-width: 480px) {
  .p-history__unit-timeline::after {
    content: none;
  }
}
.p-history__unit:first-child .p-history__unit-timeline::after {
  height: 70%;
  top: auto;
  bottom: 0;
}
.p-history__unit:last-child .p-history__unit-timeline {
  padding: 0 56px 0 0;
}
@media screen and (max-width: 768px) {
  .p-history__unit:last-child .p-history__unit-timeline {
    padding: 0 32px 0 0;
  }
}
@media screen and (max-width: 540px) {
  .p-history__unit:last-child .p-history__unit-timeline {
    padding: 0 24px 0 0;
  }
}
@media screen and (max-width: 480px) {
  .p-history__unit:last-child .p-history__unit-timeline {
    padding: 4px 0 4px 8px;
  }
}
.p-history__unit:last-child .p-history__unit-timeline::after {
  height: 60%;
}
.p-history__unit-event {
  padding: 0 0 0 56px;
  width: calc(100% - 14rem);
}
@media screen and (max-width: 768px) {
  .p-history__unit-event {
    padding: 0 0 0 32px;
    width: calc(100% - 12rem);
  }
}
@media screen and (max-width: 680px) {
  .p-history__unit-event {
    width: calc(100% - 11rem);
  }
}
@media screen and (max-width: 540px) {
  .p-history__unit-event {
    padding: 0 0 0 24px;
    width: calc(100% - 8rem);
  }
}
@media screen and (max-width: 480px) {
  .p-history__unit-event {
    width: 100%;
    padding: 0;
  }
}
.p-history__imgarea {
  display: flex;
  justify-content: space-between;
  position: relative;
  max-width: 850px;
  margin: 0 auto;
  width: 81.2%;
  gap: 64px;
}
@media screen and (max-width: 1024px) {
  .p-history__imgarea {
    gap: 32px;
  }
}
@media screen and (max-width: 768px) {
  .p-history__imgarea {
    display: block;
    padding: 0 0 93px;
  }
}
.p-history__imgarea::before {
  content: "";
  width: 96%;
  height: clamp(72px, 18.75vw, 192px);
  background-color: #EBE7D9;
  position: absolute;
  right: 0;
  top: 144px;
  margin: 0 calc(50% - 50vw);
  z-index: -1;
}
@media screen and (min-width: 1480px) {
  .p-history__imgarea::before {
    width: 120%;
  }
}
@media screen and (max-width: 1024px) {
  .p-history__imgarea::before {
    top: 34.5%;
  }
}
@media screen and (max-width: 768px) {
  .p-history__imgarea::before {
    width: 100%;
  }
}
.p-history__img--left {
  width: 58.6%;
}
@media screen and (max-width: 768px) {
  .p-history__img--left {
    width: 74%;
  }
}
.p-history__img-sp {
  display: none;
}
@media screen and (max-width: 480px) {
  .p-history__img-sp {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .p-history__img-pc {
    display: none;
  }
}
.p-history__img--right {
  margin: 208px 0 0;
  width: 33.6%;
}
@media screen and (max-width: 1024px) {
  .p-history__img--right {
    margin: 180px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-history__img--right {
    margin: 0;
    position: absolute;
    width: 54%;
    bottom: 0;
    right: 0;
  }
}
@media screen and (max-width: 480px) {
  .p-history__img--right {
    width: 72.5%;
  }
}

/**
* policy
* ========================== */
.p-policy {
  margin-top: 152px;
}
@media screen and (max-width: 980px) {
  .p-policy {
    margin-top: 143px;
  }
}
@media screen and (max-width: 768px) {
  .p-policy {
    margin-top: 95px;
  }
}
.p-policy-content {
  margin: 0 0 24px;
}
.p-policy-content--last {
  margin: 0 0 48px;
}
.p-policy__ttl {
  font-family: "Kiwi Maru", serif;
  font-size: clamp(20px, 5vw, 24px);
  margin: 0 0 16px;
  position: relative;
  padding: 0 0 0 13px;
}
.p-policy__ttl::before {
  content: "";
  width: 4px;
  height: 100%;
  background-color: #BA4237;
  position: absolute;
  top: 0;
  left: 0;
}
.p-policy__txt {
  line-height: 2.2;
}
.p-policy__txt a:hover {
  color: #6495CA;
}
.p-policy__list {
  line-height: 2.2;
  list-style-type: disc;
  margin: 0 0 0 26px;
}
.p-policy__end {
  margin: 0 0 48px;
}

.l-header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

@media screen and (min-width: 980px) {
  .l-header-nav__item-privacy {
    display: none;
  }
  .l-header-nav__item-policy{
    display: none;
  }
  .l-header-nav {
    margin-left: auto; /* 右寄せ */
  }
  
  .l-header-nav__inner {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  .l-header-nav__list {
    display: flex;
    align-items: center;
    gap: 40px; /* 要素間のスペースをgapで調整 */
  }

  .l-header-nav__item:nth-child(3){
    margin-right: -40px;
  }
}

/**
* foundation
* ========================== */
/**
* layout
* ========================== */
/**
* object
* ========================== *//*# sourceMappingURL=style.css.map */