/*--------------------------------
base
--------------------------------*/
:root {
  /*---------- color ----------*/
  --font-en: "Roboto";

  /*---------- color ----------*/
  --color-main-gold: #b18c10;
  --color-main-black: #0f0f0f;
}

*,
*:before,
*:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 16px;
  line-height: 1.6;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  color: var(--color-main-black);
  font-family: "Noto Sans JP", sans-serif;
  min-width: 350px;
  width: 100%;
  overflow-x: hidden;
}

img,
object,
video {
  border: none;
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

a {
  color: initial;
  text-decoration: none;
  transition: 0.4s;
}

a:hover {
  opacity: 0.8;
  transition: all 0.3s;
}

a:hover img {
  text-decoration: none;
  opacity: 0.8;
  transition: all 0.3s;
}

/*********************************
	LAYOUT SET
*********************************/
/*---------- header ----------*/
.l-header {
  background: #fff;
  position: sticky;
  top: 0;
  z-index: 100;
}

.l-header__main {
  background-color: #fff;
  padding: 10px 0;
  position: relative;
}

.l-header__content {
  display: flex;
  justify-content: space-between;
}

.l-header__logo {
  max-width: 372px;
  width: 33vw;
  min-width: 192px;
}

.l-header__sub {
  display: flex;
  align-items: center;
  gap: 1.5em;
}

.l-header__lang {
  font-family: var(--font-en);
  text-decoration: underline;
  text-underline-offset: 0.4em;
  text-decoration-color: var(--color-main-black);
  font-size: clamp(14px, 0.755rem + 0.25vw, 16px);
}

.l-header__contact a {
  background-color: var(--color-main-gold);
  padding: 0.8em 2.2em;
  text-align: center;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  font-size: clamp(12px, 0.509rem + 0.5vw, 16px);
}

.l-header__contact a:hover {
  background-color: #81660a;
  transition: 0.3s;
  opacity: initial;
}

.l-header__contact img {
  width: 1.68em;
  aspect-ratio: 27 / 16;
}

.l-header__menu {
  background-color: var(--color-main-black);
}

.l-header__menu-list {
  display: flex;
  font-size: clamp(10px, 0.324rem + 0.63vw, 15px);
}

.l-header__menu-list li {
  flex-grow: 1;
}

.l-header__menu-list li a {
  width: 100%;
  text-align: center;
  display: block;
  padding: 1em 0;
  font-size: clamp(0.75rem, 0.569rem + 0.38vw, 0.938rem);
  color: #fff;
}

.l-header__menu-list li a {
  border-right: 1px solid #262626;
}

.l-header__menu-list .arrow {
  position: relative;
  display: inline-block;
}

.l-header__menu-list .arrow::before {
  content: "";
  width: clamp(8px, 0.379rem + 0.25vw, 10px);
  height: clamp(8px, 0.379rem + 0.25vw, 10px);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  right: clamp(8px, -0.103rem + 1.25vw, 18px);
  top: 37%;
}

.arrow.arrow-bottom::before {
  transform: rotate(135deg);
}

.arrow.arrow-right::before {
  transform: rotate(45deg);
}

.l-header__menu-list li.has-child ul {
  position: absolute;
  left: 0;
  z-index: 4;
  background: var(--color-main-black);
  width: 200%;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
}

.l-header__menu-list-second {
  top: 100%;
  width: 200%;
}

.l-header__menu-list-second li.arrow {
  position: static;
}

.l-header__menu-list-second > li > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.l-header__menu-list-second > li::before {
  display: none;
}
/* li.service ul.l-header__menu-list-second li a {
  display: none;
} */

.l-header__menu-list-second > li > a::after {
  content: "";
  width: clamp(8px, 0.379rem + 0.25vw, 10px);
  height: clamp(8px, 0.379rem + 0.25vw, 10px);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  right: clamp(8px, -0.103rem + 1.25vw, 18px);
  transform: rotate(45deg);
}

.l-header__menu-list-second li a {
  border-right: 1px solid #262626;
}

/* .l-header__menu-list-second .arrow::before {
  content: '';
  width: clamp(8px, 0.379rem + 0.25vw, 10px);
  height: clamp(8px, 0.379rem + 0.25vw, 10px);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  right: clamp(8px, -0.103rem + 1.25vw, 18px);
  top: 37%;
} */

li.service ul.l-header__menu-list-third {
  display: grid;
  width: auto !important;
  padding: 10px;
  bottom: 0;
  grid-template-rows: auto auto auto auto auto;
  grid-auto-flow: column;
}

li.service ul.l-header__menu-list-third li {
  white-space: nowrap;
  min-width: 19.6em;
}
li.service ul.l-header__menu-list-third li a {
  padding: 6px 10px;
  border-right: none !important;
}

.l-header__menu-list .has-child:hover > ul,
.l-header__menu-list .has-child ul li:hover > ul,
.l-header__menu-list .has-child:active > ul,
.l-header__menu-list .has-child ul li:active > ul {
  visibility: visible;
  opacity: 1;
}

.l-header__menu-list li > ul > li a {
  text-align: left;
  padding: 1em;
}

.l-header__menu-list li > ul > li a:not(:last-child) {
  border-bottom: 1px solid #262626;
}

.l-header__menu-list .l-header__menu-list-third {
  /* width: 100% !important; */
  left: 100% !important;
  top: 0 !important;
  padding: 1em;
  flex-wrap: wrap;
}

.l-header__menu-list .l-header__menu-list-third a {
  padding: 0.4em 1em;
}

.l-header .nolink a {
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .l-header__content.c-inner {
    padding: 0 12px;
  }

  .l-header__lang {
    display: none;
  }

  .l-header__hamburger img {
    position: absolute;
    width: 21px;
    aspect-ratio: 42 / 38;
    top: 26px;
    right: 24px;
    cursor: pointer;
  }

  /* .l-header__menu {
    position: fixed;
    inset: 0;
    z-index: 100;
  }

  .l-header__menu-list {
    flex-wrap: wrap;
  }

  .l-header__menu-list li {
    width: 50%;
  }

  .l-header__menu-list li:nth-of-type(1) {
    width: 100%;
  } */

  .l-header__main {
    padding: 17px 0;
  }

  .l-header__menu {
    display: none;
  }

  .l-header__main .l-header__contact {
    display: none;
  }

  .l-header__nav.u-sp-only {
    position: fixed;
    z-index: 100;
    display: none;
    inset: 0;
    background-color: var(--color-main-black);
    transition: transform 0.3s;
    overflow: auto;
  }

  /* .open .l-header__nav {
    display: block;
  } */

  .open body {
    position: fixed;
    overflow: hidden;
  }

  .l-header__nav-main {
    padding: 12px 17px;
  }

  .l-header__nav .l-footer__menu,
  .l-header__nav .l-header__contact {
    padding: 17px 30px;
  }

  .l-header__nav .l-footer__menu a {
    color: #fff;
    font-size: 14px;
  }

  .l-header__nav .l-footer__menu-sub > .category_menu > li > a {
    width: 85%;
  }

  .l-header__nav .l-header__contact a {
    border: 1px solid #fff;
    padding: 1em;
    font-size: 15px;
  }
}
/*---------- footer ----------*/
.l-footer {
  padding: clamp(60px, 1.941rem + 3.76vw, 90px) 0;
  background-color: #efefef;
}

.l-footer__content {
  display: flex;
  gap: 0.5em;
}

.l-footer__main {
  width: clamp(200px, 5.867rem + 13.8vw, 310px);
}

.l-footer__logo {
  width: clamp(130px, 1.612rem + 13.55vw, 238px);
  margin-bottom: 35px;
}

.l-footer__address {
  font-size: 12px;
  margin-bottom: 1.2em;
}

.l-footer__copyright {
  font-size: 12px;
}

.l-footer__menu {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.l-footer__menu-main {
  display: flex;
  gap: clamp(7px, -0.829rem + 2.63vw, 28px);
  font-size: clamp(12px, 0.629rem + 0.25vw, 14px);
  margin-bottom: 2em;
  justify-content: space-between;
}

.category_menu {
  border-left: 1px solid #4d5565;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: clamp(10px, 0.023rem + 1.25vw, 20px);
}

.category_menu > li {
  width: 25%;
}

.l-footer__menu-sub > a {
  display: block;
  line-height: 1;
  padding: 20px 0;
  text-decoration: none;
  font-size: 14px;
}

.category_menu > li > a {
  font-size: clamp(12px, 0.63rem + 0.25vw, 14px);
  margin-bottom: 1em;
  display: block;
}

.child_list a {
  font-size: clamp(10px, 0.505rem + 0.25vw, 12px);
  line-height: 1.4;
  display: block;
}

.child_list .nolink a {
  pointer-events: none;
}

.child_list ul {
  padding-left: 1em;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}

@media screen and (max-width: 768px) {
  .l-footer__content {
    flex-direction: column-reverse;
    gap: 20px;
  }

  .l-footer__main {
    width: 100%;
    text-align: center;
  }

  .l-footer__main img {
    width: 100%;
    text-align: center;
  }

  .l-footer {
    padding: 43px 0 20px;
  }

  .l-footer__menu {
    flex-direction: column-reverse;
    gap: 40px;
  }

  .l-footer__menu-main {
    flex-wrap: wrap;
    margin-bottom: 0.5em;
    gap: 2em 3%;
    justify-content: end;
  }

  .l-footer__menu-main li {
    width: 46%;
  }

  .l-footer__menu-main li:nth-of-type(1) {
    order: 1;
  }

  .l-footer__menu-main li:nth-of-type(2) {
    order: 3;
  }

  .l-footer__menu-main li:nth-of-type(3) {
    order: 5;
  }

  .l-footer__menu-main li:nth-of-type(4) {
    order: 7;
  }

  .l-footer__menu-main li:nth-of-type(5) {
    order: 2;
  }

  .l-footer__menu-main li:nth-of-type(6) {
    order: 4;
  }

  .l-footer__menu-main li:nth-of-type(7) {
    order: 6;
  }

  .l-footer__menu-main li:nth-of-type(8) {
    order: 8;
  }

  .l-footer__menu-main li:nth-of-type(9) {
    order: 9;
  }

  .l-footer__address {
    font-size: 11px;
  }

  .l-footer__logo {
    margin: 0 auto 16px;
    width: clamp(195px, 11.341rem + 3.61vw, 238px);
  }

  .l-footer__menu-sub > a {
    padding: 0 0 1em;
    font-size: 16px;
  }

  .category_menu {
    border-left: none;
    padding-left: 0;
    flex-wrap: wrap;
  }

  .category_menu > li {
    width: 100%;
    flex-wrap: wrap;
    /* padding: 1em; */
    border-top: 1px solid #a1a1a1;
    transition: all 0.5s ease;
    position: relative;
  }

  .category_menu > li:last-of-type {
    border-bottom: 1px solid #a1a1a1;
  }

  .category_menu > li > a {
    margin-bottom: 0;
    font-size: 14px;
    padding: 1em;
  }

  .category_menu > li::before,
  .category_menu > li::after {
    display: none;
    position: absolute;
    content: "";
    width: 12px;
    height: 1px;
    background-color: var(--color-main-gold);
    transition: 0.3s;
  }

  .category_menu > li:has(.child_list li)::before,
  .category_menu > li:has(.child_list li)::after {
    display: block !important;
  }

  .category_menu > li::before {
    top: 25px;
    right: 15px;
    transform: rotate(0deg);
  }

  .category_menu > li::after {
    top: 25px;
    right: 15px;
    transform: rotate(90deg);
  }

  .category_menu > li.open::after {
    transform: rotate(180deg);
  }

  .child_list {
    display: none;
    /* padding-top: 1em; */
  }

  .child_list a {
    font-size: 14px;
  }

  .child_list ul {
    gap: 0;
    padding: 0 0 1em 1em;
  }

  .child_list li a {
    padding: 0.5em 1em;
  }
}

/*---------- sidebar ----------*/
.l-container__content {
  display: flex;
  gap: 3.1%;
  margin-top: clamp(40px, 1.713rem + 3.36vw, 80px);
}

.l-container .l-main {
  width: 68.7%;
  margin-bottom: clamp(40px, 0.139rem + 10.08vw, 160px);
}

.l-container .l-sidebar {
  width: 28.2%;
}

.l-sidebar__topkiji,
.l-sidebar__category,
.l-sidebar__tag,
.l-sidebar__service {
  margin-bottom: 30px;
}

.l-sidebar__topkiji-title,
.l-sidebar__category-title,
.l-sidebar__tag-title,
.l-sidebar__service-title {
  font-size: clamp(14px, 0.754rem + 0.25vw, 16px);
  color: #fff;
  background-color: var(--color-main-black);
  border: 1px solid #dddddd;
  padding: 0.8em;
}

.l-sidebar__category-list,
.l-sidebar__service-list {
  border: 1px solid #dddddd;
}

.l-sidebar__category-list-item a,
.l-sidebar__service-list-item a {
  padding: 1.3em;
  font-size: clamp(12px, 0.629rem + 0.25vw, 14px);
  background-color: #fff;
  display: block;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.3s;
}

.l-sidebar__category-list-item a::after,
.l-sidebar__service-list-item a::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--color-main-gold);
  border-right: 2px solid var(--color-main-gold);
  display: block;
  transform: rotate(45deg);
}

.l-sidebar__category-list-item:not(:last-of-type),
.l-sidebar__service-list-item:not(:last-of-type) {
  border-bottom: 1px solid #dddddd;
}

.l-sidebar__category-list-item a:hover {
  color: var(--color-main-gold);
}

.l-sidebar__service-list-item-en {
  display: block;
  color: #d7c485;
  font-family: var(--font-en);
  font-size: clamp(10px, 0.632rem + 0.38vw, 12px);
  width: 100%;
  text-transform: uppercase;
}

.l-sidebar__service-list-item-jp {
  font-weight: bold;
  color: var(--color-main-black);
  font-size: clamp(13px, 0.632rem + 0.38vw, 16px);
  display: block;
}

.l-sidebar__tag-box {
  border: 1px solid #dddddd;
  padding: 20px;
}

.l-sidebar__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  margin-bottom: 5px;
}

.l-sidebar__tag-list-item a {
  border: 1px solid #dddddd;
  color: #a1a1a1;
  font-size: 12px;
  padding: 0.5em;
  border-radius: 2px;
  white-space: nowrap;
  display: inline-block;
}

.l-sidebar__tag-more {
  text-align: right;
}

.l-sidebar__tag-more span {
  color: var(--color-main-gold);
  font-size: 13px;
  font-weight: bold;
  position: relative;
  padding-right: 2em;
  cursor: pointer;
}

.l-sidebar__tag-more span::before,
.l-sidebar__tag-more span::after {
  content: "";
  display: block;
  width: 12px;
  height: 1.2px;
  background: var(--color-main-gold);
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
}

.l-sidebar__tag-more span::after {
  transform: translateY(-50%) rotate(90deg);
}

.l-sidebar__tag-more.open span::after {
  display: none;
}

.l-sidebar__tag-list-item.js-hide {
  display: none;
}

.l-sidebar__tag-more.js-hide {
  display: none;
}

.l-sidebar__topkiji-title {
  margin-bottom: 20px;
}

.l-sidebar__topkiji-list ul {
  display: flex;
  gap: 20px;
  flex-direction: column;
}

.l-sidebar__topkiji-list a {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-template-rows: max-content 1fr;
  gap: 0.6em;
  grid-template-areas:
    "figure p"
    "figure div";
}

.l-sidebar__topkiji-list a figure {
  grid-area: figure;
}

.l-sidebar__topkiji-list a p {
  grid-area: p;
  font-size: 13px;
}

.l-sidebar__topkiji-list a div {
  grid-area: div;
  font-size: 13px;
  color: var(--color-main-gold);
}

.search-form {
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: hidden;
  border: 1px solid #dddddd;
  border-radius: 3px;
  margin-bottom: 30px;
}

.search-form input {
  width: 250px;
  height: 45px;
  padding: 15px 20px;
  border: none;
  box-sizing: border-box;
  font-size: 14px;
  outline: none;
}

.search-form input::placeholder {
  color: #a1a1a1;
}

.search-form button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 45px;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.search-form button::after {
  width: 20px;
  height: 20px;
  background-image: url(../img/common/icon-search.jpg);
  background-repeat: no-repeat;
  content: "";
  background-size: contain;
}

@media screen and (max-width: 768px) {
  .l-container__content {
    flex-direction: column;
  }

  .l-container .l-main,
  .l-container .l-sidebar {
    width: 100%;
  }

  .l-container .l-sidebar {
    margin-bottom: 40px;
  }
}

/*********************************
	COMPONENT SET
*********************************/
/*---------- inner ----------*/
.c-inner {
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 30px;
}

/*---------- section ----------*/
.c-section {
  padding: clamp(40px, 1.713rem + 3.36vw, 80px) 0;
}

/*---------- block ----------*/
.c-block {
  margin-bottom: clamp(40px, 1.319rem + 5.04vw, 100px);
}

/*---------- heading ----------*/
.c-heading2 {
  margin-bottom: 2.7em;
}

.c-heading2__en {
  font-size: clamp(48px, 2.52rem + 1.99vw, 72px);
  font-family: var(--font-en);
  letter-spacing: 3px;
}

.c-heading2__jp {
  font-size: clamp(14px, 0.763rem + 0.5vw, 20px);
  margin-bottom: 2em;
  font-weight: 500;
}

.c-heading2--gold {
  color: var(--color-main-gold);
}

.c-heading2--white {
  color: #fff;
}

.c-heading-main {
  background-color: #f7f5ef;
  font-size: clamp(20px, 1.093rem + 0.67vw, 28px);
  font-weight: bold;
  padding: 0.4em 0.4em 0.4em 0.6em;
  margin-bottom: clamp(20px, 0.568rem + 3.41vw, 50px);
  color: var(--color-main-black);
  position: relative;
  display: flex;
  gap: 0.2em;
}

.c-heading-main::before {
  content: "";
  width: 1em;
  height: 3px;
  background-color: #b18c10;
  margin-top: 0.7em;
}

.c-heading-underline {
  font-size: clamp(20px, 1.171rem + 0.34vw, 24px);
  font-weight: bold;
  padding-bottom: 0.8em;
  border-bottom: 1px solid #dddddd;
  position: relative;
  margin-bottom: 0.8em;
}

.c-heading-underline::before {
  content: "";
  width: 60px;
  position: absolute;
  bottom: -0.5px;
  left: 0;
  height: 2px;
  background-color: var(--color-main-gold);
}

@media screen and (max-width: 768px) {
  .c-heading2 {
    margin-bottom: 1.25em;
  }

  .c-heading-underline {
    padding-bottom: 0.5em;
  }
}

/*---------- list ----------*/
.c-list-num {
  padding-left: 2em;
  text-indent: -1em;
}

.c-list-dots {
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 768px) {
  .c-list-num {
    padding-left: 1.4em;
  }
}

/*---------- btn ----------*/
.c-btn-more a {
  background-color: #000000;
  color: #fff;
  display: inline-block;
  /* width: 260px; */
  padding: 0.8em 4.74em;
  font-size: clamp(16px, 0.963rem + 0.17vw, 18px);
  font-family: var(--font-en);
  border: 1px solid #000000;
  position: relative;
  font-weight: bold;
  text-align: center;
}

.c-btn-more a:before {
  background: #ffffff;
  content: "";
  height: 2px;
  position: absolute;
  right: 30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s, right 0.3s;
  transition: background 0.3s, right 0.3s;
  width: 18px;
}

.c-btn-more a:after {
  border-bottom: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  content: "";
  height: 7px;
  position: absolute;
  right: 26px;
  top: calc(50% - 1px);
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  -webkit-transition: border-right-color 0.3s, border-bottom-color 0.3s,
    right 0.3s;
  transition: border-right-color 0.3s, border-bottom-color 0.3s, right 0.3s;
  width: 7px;
}

.c-btn-more a:hover {
  background-color: #fff;
  color: #000;
  border: 1px solid #000;
  transition: 0.3s;
}

.c-btn-more a:hover:before {
  background: #000;
}

.c-btn-more a:hover:after {
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
}

.c-btn-more2 {
  color: var(--color-main-gold);
  font-family: var(--font-en);
  position: relative;
  font-weight: bold;
  text-align: right;
  padding-right: 2em;
}

.c-btn-more2:before {
  background: var(--color-main-gold);
  content: "";
  height: 2px;
  position: absolute;
  right: 6px;
  top: 54%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s, right 0.3s;
  transition: background 0.3s, right 0.3s;
  width: 18px;
}

.c-btn-more2:after {
  border-bottom: 2px solid var(--color-main-gold);
  border-right: 2px solid var(--color-main-gold);
  content: "";
  height: 7px;
  position: absolute;
  right: 4px;
  top: 51%;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  -webkit-transition: border-right-color 0.3s, border-bottom-color 0.3s,
    right 0.3s;
  transition: border-right-color 0.3s, border-bottom-color 0.3s, right 0.3s;
  width: 7px;
}

.c-btn__archive {
  text-align: center;
}

.c-btn__archive a {
  border: 1px solid #a1a1a1;
  font-size: 14px;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: 300px;
  justify-content: center;
  padding: 20px 0;
}

.c-btn__archive a::before {
  content: "";
  background-image: url(../img/common/icon-menu-grid.png);
  background-size: cover;
  background-size: 100%;
  display: block;
  width: 24px;
  height: 24px;
}

.c-btn__viewmore {
  text-align: right;
  color: var(--color-main-gold);
  font-family: var(--font-en);
  padding-bottom: 0.5em;
  border-bottom: 1px solid var(--color-main-gold);
  align-self: end;
  position: relative;
  padding-right: 2.5em;
  line-height: 1.2;
}

.c-btn__viewmore:before {
  background: var(--color-main-gold);
  content: "";
  height: 2px;
  position: absolute;
  right: 12px;
  top: 33%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s, right 0.3s;
  transition: background 0.3s, right 0.3s;
  width: 17px;
}

.c-btn__viewmore:after {
  border-bottom: 2px solid var(--color-main-gold);
  border-right: 2px solid var(--color-main-gold);
  content: "";
  height: 7px;
  position: absolute;
  right: 10px;
  top: 30%;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  -webkit-transition: border-right-color 0.3s, border-bottom-color 0.3s,
    right 0.3s;
  transition: border-right-color 0.3s, border-bottom-color 0.3s, right 0.3s;
  width: 7px;
}

.p-oyacate__list-item:hover .c-btn__viewmore:after {
  right: 0px;
}

/*---------- arrow ----------*/

.c-arrow {
  display: block;
  position: relative;
  width: 100%;
}

.c-arrow:before {
  border: 1px solid var(--color-main-gold);
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
  display: block;
  height: 50px;
  width: 50px;
  position: absolute;
  right: 55px;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
  transform: translateY(-50%) scale(1);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.c-arrow a {
  position: relative;
  padding: clamp(18px, 0.968rem + 0.67vw, 26px)
    clamp(30px, 1.481rem + 1.68vw, 50px);
  display: block;
}

.c-arrow a:before {
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
  top: 50%;
  border-bottom: 1px solid var(--color-main-gold);
  border-right: 1px solid var(--color-main-gold);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 9px;
  right: 76px;
  -webkit-transform: rotate(-45deg) translate(6.5px);
  transform: rotate(-45deg) translate(6.5px);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  width: 9px;
}

.c-arrow a:after {
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
  top: 50%;
  background: var(--color-main-gold);
  height: 1px;
  right: 71px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18px;
}

@media (hover: hover) {
  .c-arrow:hover {
    background-color: #f7f5ef;
  }

  .c-arrow:hover:before {
    background-color: #b18c10;
    transform: translate(10px, -50%);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .c-arrow:hover a:before {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(-45deg) translate(13px, 7px);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }

  .c-arrow:hover a {
    opacity: initial;
    color: var(--color-main-gold);
  }

  .c-arrow:hover a:after {
    background-color: #fff;
    opacity: initial;
    transform: translate(10px, -50%);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
}

@media screen and (max-width: 768px) {
  .c-arrow:before,
  .c-arrow a:before,
  .c-arrow a:after {
    display: none;
  }
}

/*---------- pagination ----------*/
.pagination__container {
  display: flex;
  font-size: 18px;
  justify-content: center;
  gap: 10px;
  font-family: var(--font-en);
}

.pagination__item a {
  padding: 0.55em 1em;
  border-radius: 50%;
  border: 1px solid var(--color-main-black);
  background-color: #fff;
  color: var(--color-main-black);
  font-family: var(--font-en);
  width: 48px;
  height: 48px;
  display: grid;
  align-content: center;
}

.pagination__item a img {
  width: 10px;
}

.pagination__item span {
  padding: 0.55em 1em;
  border-radius: 50%;
  border: 1px solid var(--color-main-black);
  background-color: var(--color-main-black);
  color: #fff;
  font-family: var(--font-en);
  display: inline-block;
}

/*---------- post-link ----------*/
.postlink__list {
  display: flex;
  margin-bottom: 40px;
}

.postlink__list-item {
  width: 50%;
}

.postlink__list-item a {
  font-size: clamp(12px, 0.629rem + 0.25vw, 14px);
  display: flex;
  align-items: center;
  min-height: 80px;
  gap: 1.78em;
  position: relative;
  height: 100%;
}

.postlink__list-item--left {
  text-align: left;
  border-right: 1px solid #dddddd;
}

.postlink__list-item--left a {
  padding-left: 25%;
  padding-right: 8%;
}

.postlink__list-item--left.c-arrow:before {
  left: 0;
}

.postlink__list-item--left.c-arrow a:before {
  top: 45%;
  left: 17px;
  -webkit-transform: rotate(135deg) translate(0px);
  transform: rotate(135deg) translate(0px);
}

.postlink__list-item--left.c-arrow a:after {
  right: 0;
  left: 16px;
}

.postlink__list-item--left.c-arrow:empty:before {
  content: none;
}

.postlink__list-item--right {
  text-align: right;
}

.postlink__list-item--right a {
  padding-right: 25%;
  justify-content: flex-end;
  padding-left: 8%;
}

.postlink__list-item--right.c-arrow:before {
  right: 0;
}

.postlink__list-item--right.c-arrow a:before {
  right: 22px;
}

.postlink__list-item--right.c-arrow a:after {
  right: 16px;
}

.postlink__list-item.c-arrow:hover {
  background-color: initial;
}

.postlink__list-item.c-arrow:hover:before {
  transform: translate(0px, -50%);
}

.postlink__list-item--right.c-arrow:hover a:before {
  transform: rotate(-45deg) translate(6px, 0px);
}

.postlink__list-item.c-arrow:hover a:after {
  transform: inherit;
}

.postlink__list-item--right.c-arrow:empty .postlink__list-item--left {
  border-right: none;
}

.postlink__list-item--right.c-arrow:empty:before {
  content: none;
}

@media screen and (max-width: 768px) {
  .postlink__list-item.c-arrow:before,
  .postlink__list-item.c-arrow a:before,
  .postlink__list-item.c-arrow a:after {
    display: block;
  }

  .postlink__list-item--left.c-arrow::before,
  .postlink__list-item--right.c-arrow::before {
    height: 35px;
    width: 35px;
  }

  .postlink__list-item--right.c-arrow a:before {
    right: 15px;
  }

  .postlink__list-item--right.c-arrow a:after {
    right: 10px;
  }

  .postlink__list-item--left.c-arrow a:before {
    left: 10px;
  }

  .postlink__list-item--left.c-arrow a:after {
    left: 8px;
  }
}

/*********************************
	PROJECT SET
*********************************/
.p-mv {
  background-image: url(../img/index/index-bg-mv-01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #ffffff;
}

.p-mv__contents {
  /* height: 540px; */
  height: clamp(430px, 24.71rem + 9.24vw, 540px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.p-mv__catch {
  font-size: clamp(15px, 0.839rem + 0.42vw, 20px);
  border: 1px solid #ffffff;
  background-color: #dcdcdc33;
  margin-bottom: 1em;
  padding: 0.4em 0.9em;
  /* max-width: 518px; */
  font-weight: 500;
}

.p-mv__title {
  font-size: clamp(27px, 1.117rem + 2.43vw, 56px);
  margin-bottom: 30px;
  letter-spacing: 2px;
}

.p-mv__text {
  font-size: clamp(15px, 0.918rem + 0.08vw, 16px);
}

.p-door__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: clamp(20px, 0.044rem + 2.51vw, 40px) clamp(20px, 0.526rem + 1.51vw, 32px);
}

.p-card {
  width: 48.5%;
  border-top: 6px solid var(--color-main-gold);
  display: block;
  background-color: #ffffff;
  box-shadow: 0px 0px 10px 0px #0000001a;
}

.p-card img {
  aspect-ratio: 584 / 204;
}

.p-card__contents {
  padding: 1.2em;
}

.p-card__title {
  color: var(--color-main-gold);
  font-size: clamp(16px, 0.925rem + 0.33vw, 20px);
  margin-bottom: 1em;
}

.p-card__text {
  font-size: clamp(14px, 0.856rem + 0.08vw, 15px);
  margin-bottom: 2em;
  line-height: 1.7em;
}

.p-card__link {
  font-size: clamp(11px, 0.507rem + 0.38vw, 14px);
  color: #7a818e;
  display: flex;
  gap: 0.8em;
  justify-content: flex-end;
  align-items: center;
}

.p-card__link::after {
  content: "";
  vertical-align: middle;
  width: 0.6em;
  height: 0.6em;
  border-top: 2px solid #7a818e;
  border-right: 2px solid #7a818e;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-about {
  background-image: url(../img/index/index-bg-about-01.jpg);
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.p-about__contents {
  text-align: center;
  max-width: 998px;
  margin: 0 auto;
}

.p-about__title {
  color: var(--color-main-gold);
  font-size: clamp(14px, 0.726rem + 0.66vw, 22px);
  font-weight: bold;
  font-family: var(--font-en);
  letter-spacing: 1px;
  margin-bottom: 1em;
  line-height: 1em;
}

.p-about__catch {
  font-size: clamp(18px, 0.752rem + 1.66vw, 38px);
  font-weight: bold;
  margin-bottom: 0.8em;
  line-height: 1.4em;
}

.p-about__text {
  font-size: clamp(14px, 0.838rem + 0.17vw, 16px);
  line-height: 1.8em;
  margin-bottom: 43px;
}

.p-message.c-section {
  padding: clamp(40px, 1.713rem + 3.36vw, 80px) 0
    clamp(40px, 1.319rem + 5.04vw, 100px);
}

.p-message__contents {
  display: flex;
  justify-content: space-between;
}

.p-message__contents > * {
  width: 48%;
}

.p-message__text {
  font-size: clamp(14px, 0.838rem + 0.17vw, 16px);
  margin-bottom: auto;
  line-height: 1.9em;
}

.p-message__main {
  display: flex;
  flex-direction: column;
}

.p-message__img {
  height: 400px;
  margin-top: 0.5em;
  aspect-ratio: 567 /400;
  display: grid;
  align-content: center;
}

.p-case {
  padding: clamp(40px, 1.319rem + 5.04vw, 100px) 0;
}

.p-case__box-tab {
  display: flex;
  margin-bottom: 2.2em;
  font-size: 14px;
}

.p-case__box-tab li {
  width: 24.25%;
}

.p-case__box-tab li a {
  background-color: #f4f4f4;
  color: #a1a1a1;
  display: block;
  text-align: center;
  padding: 2em 0;
  position: relative;
  border: 1px solid #dddddd;
  font-size: clamp(13px, 0.757rem + 0.25vw, 16px);
}

.p-case__box-tab li a.active {
  background-color: var(--color-main-black);
  color: #fff;
}

.p-case__box-tab li a.active::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 98%;
  left: 50%;
  border: 15px solid transparent;
  border-top-color: #000;
  transform: translate(-50%, 0px);
}

.p-news__list {
  border-bottom: 1px solid #dddddd;
  margin-bottom: 50px;
}

.p-news__list > p,
.p-news__list > .c-nodata {
  padding: clamp(18px, 0.968rem + 0.67vw, 26px)
    clamp(30px, 1.481rem + 1.68vw, 50px);
}

.p-news__list .category {
  display: flex;
  gap: 0.7em;
  align-items: center;
}

.p-news__container {
  display: none;
}

.p-news__container.active {
  display: block;
}

.p-news__list .item {
  border-bottom: 1px solid #dddddd;
}

.p-news__list .item:last-of-type {
  border-bottom: none;
}

.p-news__list .item dt {
  font-size: clamp(12px, 0.713rem + 0.17vw, 14px);
  display: flex;
  gap: 0.7em;
  margin-bottom: 0.8em;
  color: #7a818e;
  align-items: center;
}

.p-news__list .item dd {
  line-height: 1.8;
  font-size: clamp(13px, 0.757rem + 0.25vw, 16px);
  padding-right: 8vw;
}

.p-blog {
  display: flex;
}

#top .p-column {
  background-image: url(../img/index/index-bg-column-01.jpg);
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

#top .p-news {
  background-image: url(../img/index/index-bg-news-01.jpg);
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.p-blog > * {
  width: 50%;
}

#top .p-column,
#top .p-news {
  padding: clamp(40px, 1.319rem + 5.04vw, 100px)
    clamp(1.875rem, -2.346rem + 8.78vw, 6.25rem);
}

#top .p-column .p-news__list,
#top .p-news .p-news__list {
  margin-bottom: 33px;
}

#top .p-column .p-news__list .item,
#top .p-news .p-news__list .item {
  /* padding: 20px 0px */
}

.p-column .p-news__list .item a,
.p-news .p-news__list .item a {
  /* padding: 0px 0px */
  padding: 20px 0px;
  width: 100%;
}

#top .p-column .p-news__list .c-arrow:before,
#top .p-news .p-news__list .c-arrow:before {
  right: 10px;
  height: 40px;
  width: 40px;
}

#top .p-column .p-news__list .c-arrow a:before,
#top .p-news .p-news__list .c-arrow a:before {
  right: 29px;
}

#top .p-column .p-news__list .c-arrow a:after,
#top .p-news .p-news__list .c-arrow a:after {
  right: 24px;
  width: 15px;
}

#top .p-column .p-news__list .c-arrow:hover,
#top .p-news .p-news__list .c-arrow:hover {
  background-color: initial;
}

.p-news__list-item-label {
  display: flex;
  gap: 0.7em;
  align-items: center;
  flex-wrap: wrap;
}

.p-news__list .parent {
  color: #fff;
  background-color: #777c8b;
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 1;
}

.p-news__list .children {
  border: 1px solid var(--color-main-black);
  background-color: #fff;
  color: var(--color-main-black);
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 100;
}

.p-contact {
  background-image: url(../img/index/index-bg-contact-01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(30px, 0.891rem + 4.2vw, 80px) 0
    clamp(30px, 0.635rem + 5.29vw, 93px);
}

.p-contact .c-heading2 {
  margin-bottom: 2em;
}

.p-contact__text {
  color: #fff;
  font-size: clamp(14px, 0.757rem + 0.5vw, 20px);
  line-height: 1.7em;
}

.p-contact__contents {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.p-contact__btn a {
  background-color: var(--color-main-gold);
  max-width: 460px;
  width: 29.4vw;
  min-width: 315px;
  height: 100%;
  text-align: center;
  color: #fff;
  display: flex;
  align-items: center;
  /* justify-content: center; */
  font-size: clamp(16px, 0.921rem + 0.34vw, 20px);
  border: 1px solid #fff;
}

.p-contact__btn-inner {
  z-index: 10;
  position: relative;
  height: 100%;
  width: 100%;
  padding: 2.3em 0;
}

.p-contact__btn-inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #fff;
  z-index: -1;
  transition: 0.3s;
}

.p-contact__btn a:hover {
  opacity: initial;
  border: 1px solid var(--color-main-gold);
  color: var(--color-main-gold);
}

.p-contact__btn a:hover:before {
  width: 100%;
}

.p-contact__icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-contact__icon:before {
  content: "";
  background-image: url(../img/common/icon-mail.png);
  width: 50px;
  height: 33px;
  transform: scale(0.6);
  /* position: absolute; */
  /* top: 0px; */
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  /* left: 9.5%; */
}

.p-contact__btn a:hover .p-contact__icon:before {
  background-image: url(../img/common/icon-mail-gold.png);
}

.p-contact__btn-inner:hover {
  color: var(--color-main-gold);
}

.p-contact__btn-inner:hover:before {
  width: 100%;
}

.p-cover {
  background-image: url(../img/common/title-bg-01.jpg);
  background-size: cover;
  position: relative;
  background-position: center;
  aspect-ratio: 1566/456;
  display: flex;
  align-items: flex-end;
}

.p-cover:before {
  content: "";
  position: absolute;
  width: 49%;
  height: 160px;
  background: #fff;
  bottom: -1px;
}

#service .p-cover:before {
  width: 54%;
}

#service .p-cover {
  background-image: url(../img/common/title-bg-02.jpg);
}

.p-cover__title {
  width: 100%;
  position: relative;
  left: 0;
  padding: 2em 1.8em;
}

.p-cover__title h1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.2em;
}

.p-cover__title-jp {
  font-size: clamp(24px, 1.028rem + 2.02vw, 48px);
  font-weight: bold;
  letter-spacing: 2px;
}

.p-cover__title-en {
  font-family: var(--font-en);
  font-size: 16px;
  color: var(--color-main-gold);
  position: relative;
  display: flex;
  align-items: center;
  gap: 1em;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.p-cover__title-en::after {
  content: "";
  display: block;
  width: 50px;
  height: 1px;
  background-color: var(--color-main-gold);
}

.p-cover2 {
  /* height: clamp(180px, 10.758rem + 2.1vw, 205px); */
  background-image: url(../img/common/cover-bg-01.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 5em 0;
}

.p-cover2 .c-inner {
  display: grid;
  align-items: center;
  height: 100%;
}

.p-cover2__title {
  font-size: clamp(20px, 1.014rem + 1.01vw, 32px);
  font-weight: bold;
  line-height: 1.8em;
}

.p-cover2__date {
  color: #a1a1a1;
  font-size: 14px;
  padding-right: 0.7em;
  font-family: var(--font-en);
}

.p-cover2__category {
  display: inline-flex;
  gap: 0.7em;
  align-items: center;
}

.p-cover2__category .parent {
  color: #fff;
  background-color: #777c8b;
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 1;
}

.p-cover2__category .children {
  border: 1px solid var(--color-main-black);
  background-color: #fff;
  color: var(--color-main-black);
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 100;
}

.p-cover3 {
  background-image: url(../img/service/service-bg-ko-01-pc.jpg);
  padding: clamp(26px, 0.366rem + 5.37vw, 90px) 0 0 0;
  background-size: 100% 70%;
  background-repeat: no-repeat;
}

.p-cover3__title {
  text-align: center;
}

.p-cover3__title-en {
  color: var(--color-main-gold);
  font-family: var(--font-en);
  text-transform: uppercase;
}

.p-cover3__title-jp {
  color: #fff;
  font-size: clamp(24px, 1.028rem + 2.02vw, 48px);
  margin-bottom: clamp(26px, 0.562rem + 4.53vw, 80px);
}

.p-cover4 {
  background-color: #f7f7f7;
}

.p-cover4 .c-inner {
  position: relative;
}

.p-cover4__img {
  height: clamp(130px, 1.552rem + 28.04vw, 464px);
}

.p-cover4__img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  aspect-ratio: 1566 / 464;
  max-height: 464px;
}

.p-cover4__title {
  position: relative;
  padding: 0 30px;
  transform: translateY(-50%);
}

.p-cover4__title .c-inner {
  max-width: 1200px;
  padding: 70px 0;
  z-index: 10;
  position: relative;
}

.p-cover4__title .c-inner::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  background-image: url(../img/members/members-bg-01-pc.jpg);
  background-position: right;
  background-size: cover;
  width: 100vw;
}

/* .p-cover4__title::before {
  content: '';
  position: absolute;
  width: 88.3%;
  height: 100%;
  background-image: url(../img/members/members-bg-01-pc.jpg);
  display: block;
  top: 0;
  left: 0;
  background-position: right;
  background-size: cover;
} */

.p-cover4__title-en {
  text-transform: uppercase;
  font-size: clamp(12px, 0.632rem + 0.5vw, 18px);
  color: var(--color-main-gold);
  margin-bottom: 0.4em;
  position: relative;
  z-index: 100;
}

.p-cover4__title-jp {
  font-size: clamp(24px, 1.028rem + 2.02vw, 48px);
  color: #fff;
  position: relative;
  z-index: 100;
}

.p-breadcrumb__list {
  display: flex;
  font-size: clamp(12px, 0.711rem + 0.17vw, 14px);
  color: var(--color-main-black);
  gap: 0.7em;
  float: right;
  margin-top: 1em;
  flex-wrap: wrap;
}

.p-breadcrumb__list-item {
  position: relative;
  display: flex;
  gap: 0.5em;
  white-space: nowrap;
}

.p-breadcrumb__list-item:not(:first-of-type)::before {
  content: ">";
}

.p-breadcrumb__list-item:last-of-type {
  color: #a1a1a1;
  white-space: pre-wrap;
}

.p-breadcrumb__list-item:last-of-type > a {
  color: #a1a1a1;
}

.p-sns {
  text-align: right;
}

.p-sns__list {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 40px;
}

.p-sns__list-item a {
  width: 32px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: grid;
  align-content: center;
  justify-content: center;
}

.p-sns__list-item img {
  width: 20px;
}

.p-sns__list-item--facebook a {
  border: 1px solid #4267b2;
}

.p-sns__list-item--facebook img {
  width: 9px;
}

.p-sns__list-item--x a {
  border: 1px solid #000000;
}

.p-sns__list-item--x img {
  width: 14px;
}

.p-sns__list-item--hatena a {
  border: 1px solid #0084d7;
}

.p-sns__list-item--hatena img {
  width: 14px;
}

@media screen and (max-width: 768px) {
  .p-cover {
    aspect-ratio: 375 / 150;
  }

  .p-cover3__img.c-inner {
    max-width: initial;
    padding: 0;
  }

  .p-cover3 {
    background-image: url(../img/service/service-bg-ko-01-sp.jpg);
  }

  .p-cover4__img img {
    aspect-ratio: 375 / 130;
  }

  .p-cover:before {
    width: 46%;
    height: 19vw;
  }

  .p-cover__title {
    padding: 0 1.8em;
  }

  .p-cover__title-jp {
    position: relative;
    top: -0.3em;
    letter-spacing: 0;
  }

  .p-cover__title-en {
    font-size: 12px;
    letter-spacing: 0;
  }

  .p-mv__contents {
    height: 430px;
  }

  .p-mv__catch {
    padding: 0.4em 0.4em;
  }

  .p-breadcrumb__list {
    float: initial;
  }

  .p-mv__title {
    letter-spacing: initial;
  }

  .p-card__text {
    margin-bottom: 0.8em;
  }

  .p-card__link {
    font-size: 14px;
  }

  .p-door__list {
    flex-direction: column;
  }

  .p-card {
    width: 100%;
  }

  .p-message__contents {
    flex-direction: column;
  }

  .p-message__contents > * {
    width: 100%;
  }

  .p-message__main {
    display: contents;
  }

  .p-message__contents .c-heading2 {
    order: 1;
  }

  .p-message__contents .p-message__text {
    order: 2;
    margin-bottom: 50px;
  }

  .p-message__contents .p-message__img {
    height: initial;
    order: 3;
    margin-bottom: 30px;
    margin-top: 0;
  }

  .p-message__contents .c-btn-more {
    /* margin-top: 3.5em; */
    order: 4;
    align-self: center;
  }

  #top .p-blog .c-btn-more,
  #top .p-news .c-btn-more {
    text-align: center;
  }

  .p-blog {
    flex-direction: column;
  }

  .p-blog > * {
    width: 100%;
  }

  .p-contact__contents {
    flex-direction: column;
    align-items: baseline;
  }

  .p-case .c-inner {
    padding: initial;
  }

  .p-news__list .item dd {
    padding-right: initial;
  }

  .p-case .c-heading2 {
    padding: 0 30px;
  }

  .p-about__catch {
    margin-bottom: 1.2em;
  }

  .p-about__text {
    text-align: left;
    margin-bottom: 30px;
  }

  .p-case__box-tab li a.active::after {
    display: none;
  }

  .p-case__box-tab {
    margin-bottom: 0;
    overflow-x: scroll;
  }

  .p-case__box-tab::-webkit-scrollbar {
    height: 5px;
  }

  .p-case__box-tab::-webkit-scrollbar-track {
    background: #f1f1f1;
  }

  .p-case__box-tab::-webkit-scrollbar-thumb {
    background: #bcbcbc;
  }

  .p-case__box-tab li a {
    padding: 1.2em 1em;
    white-space: nowrap;
  }

  .p-case__box-tab li {
    width: 100%;
  }

  .p-contact__text {
    margin-bottom: 30px;
  }

  .p-contact__btn-inner {
    padding: 1.1em 0;
  }

  .p-contact__icon:before {
    width: 38px;
    height: 27px;
    left: 8px;
  }

  .p-card img {
    aspect-ratio: 315 / 120;
  }

  .p-card__contents {
    padding: 0.8em 0.6em;
  }

  .p-oyacate__lead {
    line-height: 1.8em;
  }

  .p-cover2__category {
    display: flex;
    margin-top: 0.3em;
  }

  .p-news__list .item dt {
    align-items: flex-start;
    flex-direction: column;
  }

  .p-cover4__title .c-inner {
    padding: 25px 0;
    padding-right: 1em;
  }
}

@media screen and (min-width: 600px) and (max-width: 786px) {
  .p-contact__icon:before {
    left: 2px;
  }
}

@media screen and (min-width: 600px) and (max-width: 786px) {
  .p-contact__icon:before {
    left: 2px;
  }
}

/*********************************
	HOME SET
*********************************/
.home .p-door {
  background-color: #f4f4f4;
}

.home .p-member__contents {
  display: flex;
}

.home .p-member__img img {
  height: 100%;
  object-fit: cover;
}

.home .p-member__contents > * {
  width: 50%;
}

.home .p-member__main {
  background-color: #000;
  padding: 8vw 7.5vw;
  display: flex;
  flex-direction: column;
}

.home .p-member__main .c-btn-more a {
  border: 1px solid #ffffff;
}

.home .p-member__main .c-btn-more a:hover {
  opacity: initial;
}

@media screen and (max-width: 768px) {
  .home .p-member__contents {
    flex-direction: column;
  }

  .home .p-member__contents > * {
    width: 100%;
  }

  .home .p-member__main .c-btn-more {
    align-self: center;
  }
}

/*********************************
	SERVICE SET
*********************************/
#service .p-door .c-inner {
  padding: clamp(40px, 1.713rem + 3.36vw, 80px) 30px
    clamp(40px, 0.139rem + 10.08vw, 160px);
}

#service .p-intro__text {
  line-height: 2em;
  max-width: 522px;
  width: 43%;
  padding-top: 0.5em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-oyacate {
  background-image: url(../img/service/service-bg-oya-01.png);
  background-repeat: no-repeat;
  background-position: center 10vw;
  background-size: 100%;
  position: relative;
}

/* .p-oyacate::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
} */

.p-oyacate__lead {
  padding: clamp(40px, 0.926rem + 6.72vw, 120px) 0
    clamp(40px, 1.713rem + 3.36vw, 80px);
  text-align: center;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-oyacate__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 3fr));
  gap: clamp(30px, 0.891rem + 4.2vw, 80px) 33px;
  padding-bottom: clamp(40px, 1.319rem + 5.04vw, 100px);
}

.p-oyacate__list-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.p-oyacate__list-item a:hover .c-btn__viewmore:after {
  right: 0px;
}

.p-oyacate__list-item a:hover .c-btn__viewmore:before {
  right: 2px;
}

.p-oyacate__list-item-title {
  font-size: clamp(18px, 1.046rem + 0.34vw, 22px);
  font-weight: bold;
  margin-bottom: 0.82em;
}

.p-oyacate__list-item-thumbnail {
  aspect-ratio: 378 / 232;
  margin-bottom: 1.2em;
  width: 100%;
}

.p-oyacate__list-item-text {
  font-size: 14px;
  margin-bottom: 1.45em;
  flex-grow: 1;
  line-height: 1.8em;
}

.p-oyacate__list-item.nolink a {
  pointer-events: none;
}

.p-oyacate__list-item.nolink .c-btn__viewmore {
  display: none;
}

.p-jirei {
  background-color: #efefef;
  padding: clamp(40px, 1.319rem + 5.04vw, 100px) 0;
}

.p-jirei .c-inner {
  max-width: 1140px;
}

.p-jirei .p-news__list {
  background-color: #fff;
}

.p-column {
  padding: clamp(40px, 1.319rem + 5.04vw, 100px) 0;
}

.p-column .c-inner {
  max-width: 1140px;
}

.p-other {
  padding: clamp(40px, 1.319rem + 5.04vw, 100px) 0;
  background-color: #f7f7f7;
}

.p-other__menu {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(450px, 2fr));
  gap: clamp(20px, 0.856rem + 1.68vw, 40px);
}

.p-other__menu-item {
  border: 1px solid #dddddd;
  background-color: #fff;
}
.p-other__menu-item a {
  padding: clamp(30px, 1.285rem + 2.52vw, 60px)
    clamp(25px, 1.267rem + 1.26vw, 40px);
  display: block;
}

.p-other__menu-item-en {
  color: #d7c485;
  margin-bottom: 0.56em;
  text-transform: uppercase;
  font-weight: var(--font-en);
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.p-other__menu-item-jp {
  color: var(--color-main-black);
  font-size: clamp(18px, 0.849rem + 1.18vw, 32px);
  font-weight: bold;
}

@media (hover: hover) {
  .p-other__menu-item:hover {
    background-image: url(../img/service/other-img-menu-01.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 1;
  }

  .p-other__menu-item--cb:hover {
    background-image: url(../img/service/other-img-menu-01.jpg);
  }

  .p-other__menu-item--fc:hover {
    background-image: url(../img/service/other-img-menu-01.jpg);
  }

  .p-other__menu-item--fi:hover {
    background-image: url(../img/service/other-img-menu-02.jpg);
  }

  .p-other__menu-item--at:hover {
    background-image: url(../img/service/other-img-menu-03.jpg);
  }
  .p-other__menu-item.c-arrow:hover:before {
    border: 1px solid #fff;
    background-color: initial;
  }

  .p-other__menu-item a:hover .p-other__menu-item-jp,
  .p-other__menu-item a:hover .p-other__menu-item-en {
    color: #fff;
  }
}

.p-service__title::before {
  content: "";
  width: 50px;
  height: 2px;
  background-color: var(--color-main-gold);
}

.p-service__title-en {
  font-size: 14px;
  color: var(--color-main-gold);
  font-family: var(--font-en);
  margin-bottom: 0.79em;
  text-transform: uppercase;
  text-align: center;
}

.p-service__title-jp {
  position: relative;
  display: flex;
  flex-direction: column;
  font-size: clamp(18px, 0.849rem + 1.18vw, 32px);
  font-weight: bold;
  align-items: center;
  gap: 10px;
  margin-bottom: clamp(30px, 1.678rem + 0.84vw, 40px);
}

.p-service__title-jp::after {
  content: "";
  width: clamp(28px, 1.317rem + 1.85vw, 50px);
  height: 2px;
  background-color: var(--color-main-gold);
}

.single-service_genre {
  background-color: #f7f7f7;
}

.p-kokate {
  padding-top: clamp(20px, -0.521rem + 7.56vw, 110px);
}

.p-kokate .p-breadcrumb {
  background-color: #f7f7f7;
  padding: 120px 0 100px;
}

.p-kokate .c-inner {
  max-width: 1002px;
}

.p-kokate .c-inner > *:not(:last-child) {
  margin-bottom: 40px;
  line-height: 2em;
}

.p-kokate__title {
  font-weight: bold;
  font-size: clamp(20px, 1.093rem + 0.67vw, 28px);
  padding: 0 0.5em 0.5em 0.5em;
  border-bottom: 2px solid #b18c10;
  margin-bottom: 20px;
}

.p-kokate .wp-block-spacer {
  margin-bottom: 0 !important;
}

.p-kokate__custom .c-block {
  margin-bottom: clamp(30px, 0.891rem + 4.2vw, 80px);
}

.p-kokate p {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-kokate th,
.p-kokate td {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-riyuu {
  background-color: #ffffff;
  padding: clamp(20px, 1.053rem + 0.84vw, 30px) 30px;
}

.p-riyuu__item:not(:last-child) {
  border-bottom: 1px solid #dddddd;
  padding-bottom: clamp(20px, 0.994rem + 1.09vw, 33px);
  margin-bottom: clamp(20px, 1.053rem + 0.84vw, 30px);
}

.p-riyuu__item-num {
  color: var(--color-main-gold);
  font-size: 18px;
  font-family: var(--font-en);
  margin-bottom: 0.67em;
  position: relative;
  display: flex;
  align-items: center;
  gap: 5px;
}

.p-riyuu__item-num::before {
  content: "";
  width: 13px;
  height: 2px;
  display: block;
  background-color: var(--color-main-gold);
}

.p-riyuu__item-riyuu {
  font-size: clamp(16px, 0.882rem + 0.5vw, 22px);
  font-weight: bold;
  margin-bottom: 0.45em;
}

.p-kadai {
  background-color: #ffff;
  padding: clamp(20px, 0.994rem + 1.09vw, 33px) 30px;
  text-decoration: dotted;
  font-size: clamp(16px, 0.961rem + 0.17vw, 18px);
}

.p-kadai__item {
  position: relative;
  display: flex;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-kadai__item::before {
  content: "・";
}

.p-tokuchou__item {
  margin-bottom: 43px;
}

.p-tokuchou__item-midashi {
  position: relative;
  display: flex;
  font-size: clamp(18px, 1.007rem + 0.5vw, 24px);
  font-weight: bold;
  padding-bottom: 0.66em;
  border-bottom: 1px solid #dddddd;
  margin-bottom: 1em;
}

.p-tokuchou__item-midashi-check {
  color: var(--color-main-gold);
  margin-right: 5px;
}

.p-nagare {
  background-color: #ffffff;
  padding: clamp(20px, 1.053rem + 0.84vw, 30px) 30px;
}

.p-nagare__item:not(:last-child) {
  border-bottom: 1px solid #dddddd;
  padding-bottom: clamp(20px, 0.994rem + 1.09vw, 33px);
  margin-bottom: clamp(20px, 1.053rem + 0.84vw, 30px);
}

.p-nagare__item-num {
  font-weight: bold;
  font-family: var(--font-en);
  color: var(--color-main-gold);
  font-size: clamp(18px, 1.086rem + 0.17vw, 20px);
}

.p-shitumon__item {
  margin-bottom: 10px;
}

.p-nagare__item-midashi {
  display: inline-block;
  font-size: clamp(16px, 0.961rem + 0.17vw, 18px);
  margin-bottom: 0.67em;
}

.p-shitumon__item-q {
  display: list-item;
  display: block;
}

.p-shitumon__item-q::-webkit-details-marker {
  display: none;
}

.p-shitumon__item-q .inner {
  display: flex;
  flex-direction: row;
  font-weight: bold;
  font-size: clamp(16px, 0.921rem + 0.34vw, 20px);
  padding: 1em;
  background-color: #fff;
  position: relative;
}

.p-shitumon__item-q .Q {
  color: #7a818e;
  font-size: clamp(18px, 1.007rem + 0.5vw, 24px);
  font-family: var(--font-en);
  line-height: 1.2em;
}

.p-shitumon__item-a .inner {
  padding: 1em;
  text-indent: -1.5em;
  padding-left: 2.8em;
  transition: 0.5s;
}

.p-shitumon__item-a .A {
  color: var(--color-main-gold);
  font-size: clamp(18px, 1.007rem + 0.5vw, 24px);
  font-weight: bold;
  font-family: var(--font-en);
  position: relative;
  top: 2px;
}

.p-shitumon__item-a {
  font-size: 16px;
}

.p-shitumon__item-q .inner::before,
.p-shitumon__item-q .inner::after {
  content: "";
  display: block;
  width: 16px;
  height: 1.6px;
  background: var(--color-main-gold);
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.p-shitumon__item-q .inner::after {
  transform: translateY(-50%) rotate(90deg);
}

.p-shitumon__item[open] .p-shitumon__item-q .inner::after {
  /* display: none; */
  animation: fadeOut 0.3s ease;
}

@keyframes fadeIn {
  0% {
    display: block;
  }
  100% {
    display: none;
  }
}

@keyframes fadeOut {
  0% {
    display: none;
  }
  100% {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  #service .p-intro__text {
    width: 100%;
    line-height: 1.8em;
  }

  .p-jirei .c-arrow a {
    padding: 1.5em 1em;
  }

  .p-other__menu {
    grid-template-columns: repeat(auto-fill, minmax(316px, 1fr));
  }

  .p-other__menu-item.c-arrow:before,
  .p-other__menu-item.c-arrow a:before,
  .p-other__menu-item.c-arrow a:after {
    display: block;
  }

  .p-other__menu-item.c-arrow:before {
    height: 40px;
    width: 40px;
    right: 30px;
  }

  .p-other__menu-item.c-arrow a:before {
    top: 51%;
    right: 47px;
    width: 7px;
    height: 7px;
  }

  .p-other__menu-item.c-arrow a:after {
    right: 41px;
    width: 16px;
  }

  .p-kokate__title {
    padding: 0 0 0.5em 0;
  }

  .p-shitumon__item-q .Q {
    line-height: 1.3em;
  }

  .p-kokate .c-inner > *:not(:last-child) {
    line-height: 1.6em;
  }

  .p-kadai__item:not(:last-child) {
    margin-bottom: 0.5em;
  }
}

/*********************************
	MEMBERS SET
*********************************/
.post-type-archive-members .p-cover {
  background-image: url(../img/common/title-bg-01.jpg);
}

.post-type-archive-members .p-breadcrumb {
  margin-bottom: clamp(60px, 2.963rem + 3.36vw, 100px);
}

.p-member__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 3fr));
  gap: clamp(20px, -0.324rem + 6.72vw, 100px) 2.75%;
  margin-bottom: clamp(40px, -0.227rem + 13.64vw, 160px);
}

/* .p-member__list-item {
  width: 31.5%;
} */

.p-member__list-item > a {
  border: 1px solid #dddddd;
  display: block;
}

/* .p-member__list-item-img {
  height: 380px;
} */

.p-member__list-item-img img {
  object-fit: cover;
  object-position: top;
  /* width: 100%;
  height: 100%; */
  aspect-ratio: 378 / 380;
}

.p-member__list-item a:hover img {
  opacity: 1;
}

.p-member__list-item-contents {
  padding: 5%;
}

.p-member__list-item-katagaki {
  font-size: 13px;
  margin-bottom: 0.77em;
}

.p-member__list-item-name {
  font-size: clamp(22px, 1.257rem + 0.5vw, 28px);
  border-bottom: 1px solid #dddddd;
  padding-bottom: 0.3em;
  margin-bottom: 0.3em;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}

.p-member__list-item-name-jp {
  margin-right: 0.3em;
}

.p-member__list-item-name-roma {
  font-size: 12px;
  white-space: nowrap;
  font-weight: normal;
}

.p-member__list-item-senmon {
  font-size: 13px;
  margin-bottom: 1.4em;
}

.p-member__list-item:hover .c-btn-more2:before,
.p-member__list-item:hover .c-btn-more2:after {
  transition: 0.3s;
}
.p-member__list-item:hover .c-btn-more2:before {
  right: 2px;
}
.p-member__list-item:hover .c-btn-more2:after {
  right: 0px;
}

.p-member__list-item a:hover {
  border: 1px solid var(--color-main-gold);
  opacity: 1;
}

.p-profile {
  background-image: url(../img/members/members-bg-01-pc.jpg);
  color: #fff;
  padding: clamp(40px, 1.772rem + 3.11vw, 77px) 0;
  background-size: 100%;
}

.single-members main .c-inner {
  max-width: 1122px;
}

.p-profile__katagaki {
  margin-bottom: 1em;
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.p-profile__name {
  display: flex;
  align-items: baseline;
  gap: 0.48em;
  margin-bottom: 1.66em;
}

.p-profile__name-roma {
  font-size: clamp(12px, 0.593rem + 0.67vw, 20px);
  color: var(--color-main-gold);
  font-weight: normal;
}

.p-profile__name-jp {
  font-size: clamp(24px, 0.988rem + 2.18vw, 50px);
  font-weight: normal;
  line-height: 1;
}

.p-profile__senmon {
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.p-profile__senmon span {
  border: 1px solid #fff;
  font-size: clamp(11px, 0.574rem + 0.57vw, 16px);
  padding: 0.1em 0.5em;
  margin-right: 0.625em;
}

.single-members .p-aisatsu {
  margin-top: clamp(40px, 0.227rem + 11.36vw, 140px);
  margin-bottom: clamp(40px, 1.136rem + 6.82vw, 100px);
}

.single-members .p-aisatsu__box {
  display: flex;
  justify-content: space-between;
}

.single-members .p-aisatsu__box-text {
  width: 51.5%;
  margin-top: 6.5vw;
  font-size: 14px;
  line-height: 1.86;
}

.single-members .p-aisatsu__box-img {
  width: 38.8%;
}

.single-members .p-gyomu {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(225px, 4fr));
  gap: 1em;
  font-size: 14px;
  justify-content: space-between;
}

.single-members .p-gyomu__item a {
  border: 1px solid var(--color-main-black);
  padding: 1.5em 2.8em 1.5em 1em;
  width: 100%;
  display: grid;
  height: 100%;
  align-content: center;
  line-height: 1.2;
  position: relative;
  transition: 0.3s;
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.single-members .p-gyomu__item a:hover {
  color: #fff;
  background-color: var(--color-main-black);
}

.single-members .p-gyomu__item a:before {
  background: var(--color-main-black);
  content: "";
  height: 2px;
  position: absolute;
  right: 15px;
  top: 54%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background 0.3s, right 0.3s;
  transition: background 0.3s, right 0.3s;
  width: 18px;
}

.single-members .p-gyomu__item a:hover:before {
  background: #fff;
}

.single-members .p-gyomu__item a:after {
  border-bottom: 2px solid var(--color-main-black);
  border-right: 2px solid var(--color-main-black);
  content: "";
  height: 8px;
  position: absolute;
  right: 12px;
  top: 52%;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  -webkit-transition: border-right-color 0.3s, border-bottom-color 0.3s,
    right 0.3s;
  transition: border-right-color 0.3s, border-bottom-color 0.3s, right 0.3s;
  width: 7px;
}

.single-members .p-gyomu__item a:hover:after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
}

.single-members .p-chosyo {
  gap: 1.44em;
  display: flex;
  flex-direction: column;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-chosyo__item {
  position: relative;
  display: flex;
  gap: 0.5em;
  padding-left: 0.2em;
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.p-chosyo__item::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  background-color: var(--color-main-gold);
  display: block;
  transform: rotate(45deg);
  top: 0.5em;
  position: relative;
  line-height: 2em;
  flex-shrink: 0;
}

.p-dl {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.p-dl__item {
  display: flex;
  gap: 3.2em;
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.p-dl__item dt {
  min-width: 166px;
}

@media screen and (max-width: 768px) {
  .p-member__list-item-contents {
    padding: 5% 8%;
  }

  .p-member__list-item-katagaki {
    font-size: 14px;
  }

  .p-member__list-item-senmon {
    margin-bottom: 1em;
  }

  .p-profile {
    background-image: url(../img/members/members-bg-01-sp.jpg);
    color: #fff;
    padding: clamp(40px, 1.772rem + 3.11vw, 77px) 0;
  }

  .p-profile__name {
    margin-bottom: 1em;
  }

  .single-members .p-aisatsu__box {
    flex-direction: column-reverse;
  }

  .single-members .p-aisatsu__box-text {
    width: 100%;
    margin-top: 20px;
  }

  .single-members .p-aisatsu__box-img {
    width: 100%;
  }

  .single-members .p-gyomu {
    grid-template-columns: repeat(auto-fill, minmax(150px, 4fr));
  }

  .single-members .p-gyomu__item a:before,
  .single-members .p-gyomu__item a:after {
    display: none;
  }

  .p-dl__item {
    gap: 0.2em;
  }

  .p-dl__item dt {
    width: 23.2%;
    min-width: 73px;
  }
}

/*********************************
	COMPANY SET
*********************************/
#company .p-cover {
  background-image: url(../img/common/title-bg-03.jpg);
}

.p-company {
  margin-top: clamp(65px, 2.193rem + 7.98vw, 160px);
}

.p-company__info-content dl {
  display: flex;
  gap: 3em;
  padding: 40px;
  border-bottom: 1px solid #dddddd;
  font-size: clamp(13px, 0.753rem + 0.25vw, 16px);
}

.p-company__info-content dt {
  font-weight: bold;
  flex-shrink: 0;
  min-width: 4em;
  text-align: center;
}

.p-company .c-inner {
  max-width: 1122px;
}

.p-company__info-content > dl:first-of-type {
  padding-top: 10px;
}

.p-company__access-map {
  margin-bottom: clamp(11px, 0.392rem + 1.26vw, 26px);
}

.p-company__access-map iframe {
  width: 100%;
}

.p-company__access-text dl {
  display: flex;
  gap: 3em;
  margin-bottom: 1.2em;
}

.p-company__access-text dt {
  font-weight: bold;
  flex-shrink: 0;
  min-width: 4em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-company__access-text dd {
  font-size: clamp(13px, 0.753rem + 0.25vw, 16px);
}

@media screen and (max-width: 768px) {
  #company .p-cover:before {
    width: 54%;
  }

  .p-company__info-content dl {
    padding: 2.5em 0.5em;
    gap: 1em;
  }

  .p-company__info-content dt {
    width: 16%;
  }

  .p-company__access-map iframe {
    height: 195px;
  }

  .p-company__access-text dl {
    flex-direction: column;
    gap: 0;
  }
}

/*********************************
	MESSAGE SET
*********************************/
#message .p-cover {
  background-image: url(../img/common/title-bg-10.jpg);
}

#message .p-message {
  margin: clamp(40px, 0.532rem + 8.4vw, 140px) 0
    clamp(40px, 0.139rem + 10.08vw, 160px);
}

#message .p-message .c-inner {
  max-width: 1122px;
}

.p-message__content {
  box-shadow: 0px 0px 30px 0px #00000029;
  background-color: #fff;
}

#message .p-message__title {
  width: 100%;
  background: url(../img/message/message-img-title-01-pc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  aspect-ratio: 1062 / 363;
  padding: clamp(37px, -0.1rem + 5.02vw, 77px)
    clamp(40px, 0.088rem + 5.02vw, 80px) clamp(17px, -1.35rem + 5.02vw, 57px);
  padding-right: 33%;
  background-position: right;
  color: #fff;
}

#message .p-message__title-main {
  font-weight: normal;
  font-size: clamp(18px, 0.582rem + 1.13vw, 27px);
  line-height: 2em;
  margin-bottom: 0.74em;
  font-family: "Noto Serif JP", serif;
}

#message .p-message__title-sub {
  text-align: right;
  font-size: clamp(14px, 0.754rem + 0.25vw, 16px);
  font-family: "Noto Serif JP", serif;
}

#message .p-message__text {
  padding: clamp(50px, 0.713rem + 5.02vw, 90px)
    clamp(40px, 0.088rem + 5.02vw, 80px) clamp(60px, 1.338rem + 5.02vw, 100px);
}

@media screen and (max-width: 768px) {
  #message .p-message__content {
    box-shadow: none;
  }

  #message .p-message__title {
    width: 100%;
    background: url(../img/message/message-img-title-01-sp.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    aspect-ratio: 315 / 188;
    background-position: top;
    margin-bottom: 40px;
    padding: 75% 0 0 0;
    color: initial;
  }

  #message .p-message__text {
    padding: 0;
  }

  #message .p-message__title-main {
    font-size: clamp(16px, 0.881rem + 0.51vw, 18px);
    margin-bottom: 1.85em;
  }

  #message .p-message__title-sub {
    line-height: 2em;
  }
}

/*********************************
	CASE STUDY SET
*********************************/
.post-type-archive-case_study .p-cover {
  background-image: url(../img/common/title-bg-06.jpg);
}

.post-type-archive-case_study .p-news__list {
  margin-bottom: clamp(40px, 2.106rem + 1.68vw, 60px);
}

.post-type-archive-case_study .p-case {
  padding: clamp(10px, -1.146rem + 7.56vw, 100px) 0
    clamp(40px, 0.139rem + 10.08vw, 160px);
}

.single-case_study .p-cover2 .c-inner,
.single-case_study .p-breadcrumb .c-inner,
.single-case_study .l-container .c-inner {
  max-width: 1122px;
}

.single-case_study .p-cover2 {
  padding: clamp(30px, 0.891rem + 4.2vw, 80px) 0;
}

/*********************************
	NEWS SET
*********************************/
.post-type-archive-news .p-cover,
.tax-news_category .p-cover {
  background-image: url(../img/common/title-bg-07.jpg);
}

.post-type-archive-news .l-container .c-inner,
.tax-news_category .l-container .c-inner {
  max-width: 1122px;
}

.post-type-archive-news .p-news .p-news__list .item a,
.tax-news_category .p-news .p-news__list .item a {
  padding: 42px 20px;
}

.post-type-archive-news .p-news__list .c-arrow:before,
.tax-news_category .p-news__list .c-arrow:before {
  right: 28px;
  height: 40px;
  width: 40px;
}

.post-type-archive-news .p-news__list .c-arrow a:before,
.tax-news_category .p-news__list .c-arrow a:before {
  right: 45px;
}

.post-type-archive-news .p-news__list .c-arrow a:after,
.tax-news_category .p-news__list .c-arrow a:after {
  right: 40px;
}

.single-news .p-cover2 {
  padding: clamp(30px, 0.891rem + 4.2vw, 80px) 0;
}

@media screen and (max-width: 768px) {
  .post-type-archive-news .p-news .p-news__list .item a,
  .tax-news_category .p-news .p-news__list .item a {
    padding: 20px 15px;
  }
}

/*********************************
	COLUMN SET
*********************************/
.post-type-archive-column .p-cover {
  background-image: url(../img/common/title-bg-08.jpg);
}

.post-type-archive-column .l-container .c-inner {
  max-width: 1122px;
}

.single-column .p-cover2 .c-inner,
.single-column .p-breadcrumb .c-inner,
.single-column .l-container .c-inner {
  max-width: 1122px;
}

.single-column .p-cover2 {
  padding: clamp(23px, 0.709rem + 3.11vw, 60px) 0;
}

.single-column .p-cover2__title {
  margin-bottom: 0.44em;
}

.single-column .p-cover2__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  color: #a1a1a1;
  font-size: clamp(10px, 0.546rem + 0.34vw, 14px);
  margin-top: auto;
}

.p-columns {
  margin-bottom: clamp(40px, 2.106rem + 1.68vw, 60px);
}

.single-column .p-eyecatch {
  margin-bottom: clamp(20px, 0.797rem + 1.93vw, 43px);
}

.p-columns__list-item:not(:last-of-type) {
  margin-bottom: clamp(20px, 1.053rem + 0.84vw, 30px);
}

.p-columns__list-item a {
  display: flex;
  box-shadow: 0px 0px 20px 0px #00000029;
}

.p-columns__list-item-img {
  width: 40%;
}

.p-columns__list-item-img img {
  height: 100%;
  object-position: center;
  object-fit: cover;
}

.p-columns__list-item-content {
  padding: clamp(15px, 0.033rem + 1.88vw, 30px);
  display: flex;
  flex-direction: column;
  width: 60%;
}

.p-columns__list-item-content-date {
  font-family: var(--font-en);
  font-size: clamp(11px, 0.628rem + 0.25vw, 14px);
  padding-right: 1em;
  color: #a1a1a1;
  margin-bottom: 1.25em;
}

.p-columns__list-item-content-category {
  display: inline-flex;
  gap: 0.7em;
  align-items: center;
}

.p-columns__list-item-content-category .parent {
  color: #fff;
  background-color: #777c8b;
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 1;
}

.p-columns__list-item-content-category .children {
  border: 1px solid var(--color-main-black);
  background-color: #fff;
  color: var(--color-main-black);
  padding: 0.2em 0.5em;
  font-size: clamp(10px, 0.586rem + 0.17vw, 12px);
  order: 100;
}

.p-columns__list-item-content-title {
  font-size: clamp(13px, 0.734rem + 0.34vw, 17px);
  margin-bottom: 1.25em;
}

.p-columns__list-item-content-tag {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  color: #a1a1a1;
  font-size: clamp(10px, 0.546rem + 0.34vw, 14px);
  margin-top: auto;
}

.p-kijikansyuusya {
  margin-bottom: clamp(30px, 1.678rem + 0.84vw, 40px);
}

.p-kijikansyuusya__title {
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
  padding: 0.3em 1.25em;
  background-color: var(--color-main-black);
  color: #fff;
  font-weight: normal;
  display: inline-block;
}

.p-kijikansyuusya a {
  border: 1px solid #dddddd;
  padding: 20px;
  background-color: #fff;
  display: flex;
  gap: 20px;
}

.p-kijikansyuusya a :hover .c-btn__viewmore:after {
  right: 0px;
}

.p-kijikansyuusya a :hover .c-btn__viewmore:before {
  right: 2px;
}

.p-kijikansyuusya a:hover {
  opacity: 1;
  background-color: #f7f5ef;
}

.p-kijikansyuusya a:hover img {
  opacity: 1;
}

.p-kijikansyuusya__img img {
  aspect-ratio: 1 / 1;
  width: 140px;
  object-fit: cover;
  object-position: top;
}

.p-kijikansyuusya__info {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.p-kijikansyuusya__info-katagaki {
  font-size: clamp(11px, 0.628rem + 0.25vw, 14px);
  margin-bottom: 0.78em;
}

.p-kijikansyuusya__info-name {
  margin-bottom: 0.83em;
}

.p-kijikansyuusya__info-name-jp {
  font-size: clamp(19px, 1.089rem + 0.42vw, 24px);
  margin-right: 0.5em;
  display: inline-block;
}

.p-kijikansyuusya__info-name-roma {
  font-family: var(--font-en);
  font-size: clamp(9px, 0.464rem + 0.42vw, 14px);
  font-weight: bold;
  color: #a1a1a1;
  white-space: nowrap;
}

.p-kijikansyuusya__info-senmon {
  font-size: 14px;
  margin-bottom: 0.78em;
}

.p-kijikansyuusya__info-btn {
  text-align: right;
}

.p-kijikansyuusya__info-btn .c-btn__viewmore {
  font-size: clamp(12px, 0.671rem + 0.34vw, 16px);
}

.single-column .c-btn__archive {
  margin-bottom: 80px;
}

.single-column .p-news__list {
  margin-bottom: 40px;
  margin-top: clamp(-9px, -0.248rem + -1.34vw, -25px);
}

.single-column .p-news__list a {
  padding: clamp(17px, 0.885rem + 0.76vw, 26px)
    clamp(0px, -0.394rem + 1.68vw, 20px);
}

.single-column .p-news__list li:before {
  right: 34px;
}

.single-column .p-news__list li a:before {
  right: 55px;
}

.single-column .p-news__list li a:after {
  right: 50px;
}

.single-column .p-news__list + .c-btn-more {
  margin-bottom: 100px;
  text-align: center;
}

.p-relation {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 3fr));
  gap: 40px 20px;
}

.p-relation__menu a {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.p-relation__menu-img {
  transition: 0.3s;
  overflow: hidden;
}

.p-relation__menu-title {
  transition: 0.3s;
}

.p-relation__menu a:hover .p-relation__menu-img img {
  transform: scale(1.1);
  filter: brightness(35%);
  opacity: 1;
}

.p-relation__menu a:hover .p-relation__menu-title {
  color: var(--color-main-gold);
}

@media screen and (max-width: 768px) {
  .single-column .p-cover2__title {
    line-height: 1.5em;
  }

  .p-columns__list-item a {
    box-shadow: none;
  }

  .p-columns__list-item-content-tag {
    display: none;
  }

  .p-columns__list-item-img {
    width: 32%;
  }

  .p-columns__list-item-content {
    width: 68%;
    padding: 0 0 0 1em;
  }

  .p-columns__list-item-content-title {
    font-weight: normal;
  }

  .p-columns__list-item-img img {
    object-position: top;
    object-fit: contain;
  }

  .p-relation__menu a {
    flex-direction: column-reverse;
  }

  .p-relation__menu-title {
    font-weight: bold;
  }

  .p-kijikansyuusya__title {
    padding: 0.3em 1.8em;
  }

  .p-kijikansyuusya a {
    display: block;
    overflow: hidden;
  }

  .p-kijikansyuusya a figure {
    display: inline-block;
    width: 30%;
    float: left;
    margin-right: 20px;
  }

  .p-kijikansyuusya__info {
    display: block;
  }

  .p-kijikansyuusya__img img {
    width: 100%;
  }

  .p-kijikansyuusya__info-katagaki {
    margin-bottom: 1.4em;
  }

  .p-kijikansyuusya__info-name {
    border-bottom: 1px solid #dddddd;
    margin-left: calc(30% + 20px);
    padding-bottom: 0.63em;
    line-height: 1.2em;
  }

  .p-kijikansyuusya__info-name-jp {
    margin-right: 0.1em;
  }

  .p-kijikansyuusya__info-senmon {
    margin-bottom: 0.5em;
  }

  .p-kijikansyuusya__info-btn .c-btn__viewmore:before {
    right: 9px;
  }

  .p-kijikansyuusya__info-btn .c-btn__viewmore:after {
    right: 7px;
  }
}
/*********************************
	PRIVACY POLICY SET
*********************************/
#privacypolicy .p-cover {
  background-image: url(../img/common/title-bg-04.jpg);
}

#privacypolicy .p-intro.c-inner,
#privacypolicy .p-privacy .c-inner {
  max-width: 1122px;
}

#privacypolicy .p-privacy {
  margin-bottom: clamp(67px, 1.767rem + 10.33vw, 190px);
}

#privacypolicy .p-intro {
  margin-top: clamp(40px, 1.319rem + 5.04vw, 100px);
  margin-bottom: 40px;
}

#privacypolicy .p-intro__text {
  font-size: clamp(14px, 0.855rem + 0.08vw, 15px);
  line-height: 1.86em;
}

.p-privacy .c-heading-underline {
  padding-left: 1em;
  text-indent: -1em;
}

.p-privacy__box {
  margin-bottom: clamp(40px, 2.106rem + 1.68vw, 60px);
}

.p-privacy p {
  font-size: clamp(14px, 0.855rem + 0.08vw, 15px);
  line-height: 1.86em;
}

.p-privacy p + ul {
  margin-top: 1.2em;
}

.p-privacy li {
  font-size: 14px;
  line-height: 1.9em;
}

@media screen and (max-width: 768px) {
  #privacypolicy .p-cover:before {
    width: 80%;
  }

  .p-application {
    background-image: none;
  }
}

/*********************************
	RECRUIT SET
*********************************/
#recruit .p-cover {
  background-image: url(../img/common/title-bg-05.jpg);
}

.single-recruitment .p-cover2__title {
  padding-left: 0.4em;
  border-left: 2px solid var(--color-main-gold);
  font-size: clamp(20px, 1.014rem + 1.01vw, 32px);
}

.p-recruit {
  background: url(../img/recruit/recruit-bg-01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: clamp(54px, 2.076rem + 5.54vw, 160px) 0 180px;
  margin-top: 80px;
  position: relative;
}

.p-recruit::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 1) 100%
  );
}

.p-recruit .c-inner {
  max-width: 992px;
}

.p-recruit__text {
  margin-bottom: clamp(40px, 0.237rem + 9.66vw, 155px);
  line-height: 2em;
  text-align: left;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-recruit__title::before {
  content: "";
  width: 50px;
  height: 2px;
  background-color: var(--color-main-gold);
}

.p-recruit__title-en {
  font-size: 14px;
  color: var(--color-main-gold);
  font-family: var(--font-en);
  margin-bottom: 0.79em;
  text-transform: uppercase;
  text-align: center;
}

.p-recruit__title-jp {
  position: relative;
  display: flex;
  flex-direction: column;
  font-size: clamp(18px, 0.692rem + 1.85vw, 40px);
  font-weight: bold;
  align-items: center;
  gap: 10px;
  margin-bottom: clamp(46px, 2.599rem + 1.18vw, 60px);
}

.p-recruit__title-jp::after {
  content: "";
  width: clamp(28px, 1.317rem + 1.85vw, 50px);
  height: 2px;
  background-color: var(--color-main-gold);
}

.p-recruit__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(325px, 2fr));
  gap: 20px 56px;
}

.p-recruit__list-item {
  background-color: #fff;
  border: 1px solid #ddd6bf;
}

.p-recruit__list-item a {
  font-size: clamp(16px, 0.941rem + 0.25vw, 19px);
  padding: 2em 5em 2em 2em;
  text-align: left;
}

.p-recruit__list-item.c-arrow:before {
  height: 40px;
  width: 40px;
  right: 40px;
}

.p-recruit__list-item.c-arrow a:before {
  top: 51%;
  right: 57px;
  width: 7px;
  height: 7px;
}

.p-recruit__list-item.c-arrow a:after {
  right: 51px;
  width: 16px;
}

.single-recruitment .p-cover2 .c-inner,
.single-recruitment .p-application .c-inner {
  max-width: 1155px;
}

.single-recruitment .p-form .c-inner {
  max-width: 1115px;
}

.single-recruitment .p-form .p-form__list-item {
  padding: clamp(16px, 8.443px + 2.015vw, 40px) 0
    clamp(16px, 8.443px + 2.015vw, 40px) clamp(16px, 5.924px + 2.687vw, 48px);
  border-bottom: 1px solid #dddddd;
}

.single-recruitment .p-form .p-form__list-item dt {
  top: 0;
  font-weight: bold;
  width: 5em;
}

.single-recruitment .p-form .p-form__list-item dt,
.single-recruitment .p-form .p-form__list-item dd {
  line-height: 1.6;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

@media screen and (max-width: 768px) {
  .p-recruit {
    background-image: url(../img/recruit/recruit-bg-01-sp.jpg);
    padding: 54px 0 40px;
    margin-top: 0px;
  }

  .p-recruit::after {
    height: 40px;
  }

  .p-recruit__title-en {
    margin-bottom: 0.5em;
  }

  .p-recruit__text {
    line-height: 1.8em;
  }

  .p-recruit__list {
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  }

  .p-recruit__list-item a {
    padding: 1.4em 5em 1.4em 2em;
  }

  .p-recruit__list-item.c-arrow:before,
  .p-recruit__list-item.c-arrow a:before,
  .p-recruit__list-item.c-arrow a:after {
    display: block;
  }

  .p-recruit__list-item.c-arrow:before {
    right: 30px;
  }

  .p-recruit__list-item.c-arrow a:before {
    right: 47px;
  }

  .p-recruit__list-item.c-arrow a:after {
    right: 41px;
  }

  .single-recruitment .p-form .p-form__list-item {
    flex-direction: row;
  }
}

/*********************************
	RECRUIT FORM SET
*********************************/
#recruit_application .p-cover2 .c-inner,
#recruit_application .p-form .c-inner,
#confirm .p-cover2 .c-inner,
#confirm .p-form .c-inner,
#thanks .p-cover2 .c-inner,
#thanks .p-form .c-inner {
  max-width: 1115px;
}

.p-application {
  padding: clamp(40px, 0.532rem + 8.4vw, 140px) 0
    clamp(37px, -0.108rem + 10.33vw, 160px);
  background-image: url(../img/recruit/application-bg-01.jpg);
  background-position: top;
  background-repeat: no-repeat;
  background-size: 100%;
}

.p-application__content {
  box-shadow: 0px 0px 30px 0px #00000029;
  background-color: #fff;
  padding: 60px 82px;
}

.p-application__title {
  font-size: clamp(18px, 0.928rem + 0.84vw, 28px);
  font-weight: bold;
  padding-bottom: 0.82em;
  border-bottom: 2px solid var(--color-main-gold);
  text-align: center;
  margin-bottom: 1.2em;
}

.p-application__list {
  margin-bottom: clamp(28px, 1.514rem + 1.01vw, 40px);
}

.p-application__list-item {
  display: flex;
  padding: 2.5em;
  border-bottom: 1px solid #dddddd;
}

.p-application__list-item dt {
  font-weight: bold;
  min-width: 7.75em;
  flex-shrink: 0;
  gap: 1em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-application__list-item dt,
.p-application__list-item dd {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-application__btn a {
  background-color: var(--color-main-gold);
  color: #fff;
  width: 240px;
  display: block;
  text-align: center;
  padding: 1em;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .p-application {
    background-image: none;
  }

  .p-application__content {
    box-shadow: none;
    background-color: initial;
    padding: 0;
  }

  .p-application__list-item {
    padding: 0.8em;
  }

  .p-application__list-item dt {
    min-width: 5.75em;
  }

  .p-application__list-item dd {
    line-height: 1.7em;
  }

  .p-application__btn a {
    width: 193px;
    padding: 0.8em;
  }

  .p-form__list-item #syokusyu {
    display: flex;
    flex-direction: column;
  }
}

/*********************************
	CONTACT FORM SET
*********************************/
#contact .p-form,
#confirm.page-id-35 .p-form,
#thankspage-id-37 .p-form {
  background: none;
}

#contact .p-cover:before {
  width: 54%;
}

#contact .p-form .c-inner,
#confirm .p-form .c-inner,
#thanks .p-form .c-inner {
  max-width: 1115px;
}

#contact .p-cover {
  background-image: url(../img/common/title-bg-09.jpg);
}

.p-form__list-item.naiyou dt {
  position: relative;
}

.p-form__list-item.naiyou dt::after {
  content: "※複数選択可";
  font-size: 10px;
  position: absolute;
  bottom: -1.5em;
  left: 3.8em;
}

#confirm2 .p-form__list-item.naiyou dt::after {
  display: none;
}

.p-form__list-item.kaisyamei dt {
  position: relative;
}

.p-form__list-item.kaisyamei dt::after {
  content: "※個人の方は「個人」とご記入ください。";
  font-size: 10px;
  position: absolute;
  bottom: -1.5em;
  left: 3.8em;
}

#confirm2 .p-form__list-item.kaisyamei dt::after {
  display: none;
}

@media screen and (max-width: 768px) {
  .p-form__list-item.naiyou #naiyou {
    display: flex;
    flex-direction: column;
  }

  .p-form__list-item.naiyou dt::after {
    bottom: 0.2em;
    right: 9em;
    left: initial;
  }

  .p-form__list-item.kaisyamei dt::after {
    bottom: 0.2em;
    left: initial;
    right: 3em;
    white-space: nowrap;
  }
}

/*********************************
	FORM SET
*********************************/
.p-form {
  padding: clamp(40px, 0.532rem + 8.4vw, 140px) 0
    clamp(37px, -0.108rem + 10.33vw, 160px);
  background-image: url(../img/recruit/application-bg-01.jpg);
  background-position: top;
  background-repeat: no-repeat;
  background-size: 100%;
}

.p-form__content {
  box-shadow: 0px 0px 30px 0px #00000029;
  background-color: #fff;
  padding: 60px 82px;
}

.p-form__title {
  font-size: clamp(18px, 0.928rem + 0.84vw, 28px);
  font-weight: bold;
  padding-bottom: 0.82em;
  border-bottom: 2px solid var(--color-main-gold);
  text-align: center;
  margin-bottom: 1.2em;
}

.p-form__list {
  margin-bottom: clamp(28px, 1.514rem + 1.01vw, 40px);
}

.p-form__list p:not(:last-child) {
  margin-bottom: 46px;
  line-height: 1.8em;
  font-size: clamp(13px, 0.753rem + 0.25vw, 16px);
}

.p-form__list-item {
  display: flex;
  padding: 24px 0;
  gap: 6%;
}

.p-form__list-item input,
.p-form__list-item textarea,
.p-form__list-item select {
  padding: 0.5em;
  border: 1px solid #dddddd;
  width: 100%;
  border-radius: 5px;
}

.p-form__list-item input[type~="checkbox"] {
  width: initial;
}

.p-form__list-item input[name~="yuubin"] {
  width: 150px;
  margin-bottom: 14px;
}

.p-form__list-item input::placeholder {
  color: #cccccc;
}

.p-form__list-item.seinengappi dd {
  font-size: 14px;
}

.p-form__list-item select[name~="nen"] {
  width: 80px;
  margin-right: 0.5em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-form__list-item select[name~="tsuki"],
.p-form__list-item select[name~="nichi"] {
  width: 60px;
  margin-right: 0.5em;
  margin-left: 0.8em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-form__list-item #denwa input {
  width: 90px;
}

.mwform-checkbox-field-text {
  font-size: 14px;
}

.p-form__list-item dt {
  width: 11em;
  flex-shrink: 0;
  gap: 0.5em;
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
  display: flex;
  align-items: flex-start;
  position: relative;
  top: 0.5em;
}

.p-form__list-item.syokusyu dt {
  top: 0em;
}

.p-form__list-item.syokusyu dd {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.5em;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}

.p-form__list-item dt span {
  font-size: 10px;
  font-weight: normal;
  color: #fff;
  padding: 0.2em 0.5em;
  display: grid;
  align-content: center;
  white-space: nowrap;
  position: relative;
  top: 0.3em;
}

.p-form__list-item dt span.hissu {
  background-color: #c62121;
}

.p-form__list-item dt span.ninni {
  background-color: #bec1c7;
}

.p-form__list-item dd {
  flex-grow: 1;
}

.p-form__list-item dt,
.p-form__list-item dd {
  /* font-size: clamp(14px, 0.836rem + 0.17vw, 16px); */
}

.p-form__btn a {
  background-color: var(--color-main-gold);
  color: #fff;
  width: 240px;
  display: block;
  text-align: center;
  padding: 1em;
  margin: 0 auto;
  border: none;
  cursor: pointer;
}

.p-form__btn a:disabled {
  background-color: #dddddd;
  color: #fff;
}

.p-form__tab {
  display: flex;
  margin-bottom: clamp(20px, 0.856rem + 1.68vw, 40px);
  font-size: 14px;
}

.p-form__tab li {
  width: 33.3%;
}

.p-form__tab li a {
  color: #a1a1a1;
  display: block;
  text-align: center;
  padding: 1em 0;
  position: relative;
  border: 1px solid #dddddd;
  font-size: clamp(13px, 0.757rem + 0.25vw, 16px);
}

.p-form__tab li a.active {
  background-color: var(--color-main-black);
  color: #fff;
}

.p-form__tab li a.active::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 98%;
  left: 50%;
  border: 15px solid transparent;
  border-top-color: #000;
  transform: translate(-50%, 0px);
}

.p-form__list .error + .error {
  display: none;
}

.p-form__list .p-privacy {
  font-size: 14px;
  max-width: 640px;
  margin: clamp(0px, -1.082rem + 4.62vw, 55px) auto
    clamp(20px, 0.856rem + 1.68vw, 40px);
}

.p-form__list .p-privacy__intro {
  margin-bottom: 40px !important;
  font-size: 14px !important;
}

.p-privacy__content {
  border: 1px solid #dddddd;
  padding: 20px clamp(20px, 1.053rem + 0.84vw, 30px);
  font-size: 13px;
  height: 184px;
  overflow-y: scroll;
  border-radius: 5px;
  margin-bottom: clamp(15px, 0.446rem + 2.1vw, 40px);
}

.p-privacy__content p strong {
  display: block;
  font-weight: bold;
  font-size: 16px !important;
  padding-bottom: 0.5em;
  margin-top: 46px;
}

.p-privacy .p-privacy__content p {
  font-size: 13px !important;
  margin: 0;
}

.p-privacy__content hr {
  border: none;
  border-bottom: 1px solid var(--color-main-black);
  margin: 0 0 0.5em !important;
}

.p-privacy__btn {
  text-align: center;
}

.p-privacy__done {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.p-privacy__done .p-form__btn {
  background-color: var(--color-main-gold);
  color: #fff;
  width: 240px;
  display: block;
  text-align: center;
  padding: 1em;
  margin: 0 auto;
  border: none;
  cursor: pointer;
}

.p-form__btn.back {
  background-color: #dddddd;
}

#confirm .p-privacy__btn,
#confirm2 .p-privacy__btn {
  display: none;
}

.p-notfound {
  padding: 7vw 0 15vw;
}

@media screen and (max-width: 768px) {
  .p-form {
    background-image: none;
  }

  .p-form__content {
    box-shadow: none;
    background-color: initial;
    padding: 0;
  }

  .p-form__list-item {
    padding: 0.47em 0;
    flex-direction: column;
    gap: 1em;
  }

  .p-form__list-item dt {
    min-width: 5.75em;
    width: 100%;
  }

  .p-form__list-item dd {
    line-height: 1.7em;
  }

  .p-form__btn a {
    width: 193px;
    padding: 0.8em;
  }

  .p-form__tab li a {
    padding: 0.6em 0;
  }

  .p-form__tab li a.active::after {
    display: none;
  }

  .p-form__list p:not(:last-child) {
    margin-bottom: 40px;
  }
}

/*********************************
	EDITOR SET
*********************************/
.p-content {
  margin-bottom: clamp(40px, 2.106rem + 1.68vw, 60px);
}

.p-content p + p {
  margin-top: 2em;
}

.p-content h1 {
}

.p-content h2 {
  font-size: clamp(20px, 1.093rem + 0.67vw, 28px);
  font-weight: bold;
  padding: 0.6em;
  background-color: #f7f5ef;
  margin-bottom: 0.7em;
  margin-top: 1.5em;
}

.p-content h3 {
  font-size: clamp(20px, 1.171rem + 0.34vw, 24px);
  font-weight: bold;
  padding-bottom: 0.6em;
  border-bottom: 1px solid #dddddd;
  position: relative;
  margin-bottom: 0.88em;
  margin-top: 1em;
}

.p-content h3::before {
  content: "";
  width: 60px;
  position: absolute;
  bottom: -0.5px;
  left: 0;
  height: 2px;
  background-color: var(--color-main-gold);
}

.p-content h4 {
  font-size: clamp(18px, 1.086rem + 0.17vw, 20px);
  font-weight: bold;
  border-left: 4px solid var(--color-main-gold);
  padding-left: 0.8em;
  margin-bottom: 0.88em;
}

.p-content h5 {
  font-size: clamp(16px, 1.086rem + 0.17vw, 18px);
  font-weight: bold;
  padding: 0.3em 0.8em;
  background-color: #e4decb;
}

.p-content h6 {
}

.p-content p {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
  line-height: 2.1em;
}

.p-content ol {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-content ul {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-content img {
  margin-bottom: clamp(20px, 0.797rem + 1.93vw, 43px);
}

.p-content th,
.p-content td {
  font-size: clamp(14px, 0.836rem + 0.17vw, 16px);
}

.p-content .wp-block-group {
  padding: 40px;
  background-color: #f9f9f9;
}

.wp-block-flexible-table-block-table td,
.wp-block-flexible-table-block-table th {
  padding: 1em !important;
  border: 1px solid #dddddd !important;
}

.wp-block-flexible-table-block-table,
.wp-block-table {
  margin: 30px 0;
}

/*********************************
	UTILITY SET
*********************************/
/*---------- SP/PC ----------*/
.u-sp-only {
  display: none;
}

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

@media screen and (max-width: 768px) {
  .u-sp-only {
    display: block;
  }

  .u-pc-only {
    display: none;
  }
}

/*---------- font family ----------*/
.u-font-en {
  font-family: "Roboto";
}

/*---------- display ----------*/
.u-inline-block {
  display: inline-block;
}

/*---------- text-align ----------*/
.u-text-center {
  text-align: center;
}

/*---------- margin ----------*/
