@charset "utf-8";

/* ============================================================
   .base
   ============================================================ */
html.is-fixed,
body.is-fixed {
  overflow: hidden;
}
body.is-fixed::before {
  content:'';
  display: block;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background: #000;
  opacity: .6;
  position: fixed;
  top:-1px;
  left: -1px;
  z-index: 99998;
}
header {
  height: 80px;
}
header.current{
  height: 60px;
}
header .h-logo{
  width: 200px;
}
header nav .lang-box,
header nav .h-rec-btn{
  display: none !important;
}
header nav .menu > li > a{
  font-size: 16px;
  margin-top: 0;
}
header nav .menu li.contact-btn{
  margin-top: 0 !important;
}

#wrapper{
  padding-top: 140px;
}
@media(min-width:921px){
  header nav .menu > li.parent {
    padding: 0;
  }
  header nav .menu > li.parent a{
    padding: 10px 15px;
  }
}
@media(max-width:920px){
  header{
    height: 60px;
  }
  header nav .menu li.contact-btn{
    margin-top: 20px !important;
  }
  #wrapper{
    padding-top: 0;
  }
}
@media(max-width:737px){
  #main{
    margin-bottom: 0;
  }
  #cont{
    padding-top: 0;
  }
  .p-hire { font-size: 15px; }
}

/* ============================================================
   .p-hire
   ============================================================ */
.p-hire {
  --navy: #071E3C;
  --navy-deep: #081830;
  --navy-mid: #122f57;
  --gold: #CFB670;
  --gold-deep: #B1995C;
  --cream: #F1E9DE;
  --cream-2: #efe9da;
  --ink: #232323;
  --ink-soft: #4a4a4a;
  --line: #ddd5c4;
  --maxw: 1140px;
}

.p-hire__inner {
  width: 100%;
  max-width: var(--maxw);
  padding: 88px 20px 100px;
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  z-index: 1;
}
.p-hire .mincho {
  font-family: "Zen Old Mincho", serif;
}

#main section{
  margin: 0 auto;
}

.p-hire-darkbg {
  background-color: var(--navy);
  color: #fff;
}
.p-hire-darkbg:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background:url(../../imgs/hire/bg-ilst.svg) center center;
  position: absolute;
  top:0;
  left: 0;
  z-index: 1;
}
@media(max-width:737px){  
  .p-hire__inner {
    padding: 40px 20px;
  }
}

/* ============================================================
   セクション見出し
   ============================================================ */
.p-hire-band{
  text-align: center;
  font-family: "Zen Old Mincho", serif;
  margin: 0 auto 33px;
}
#hire .p-hire-ttl {
  display: inline-block;
  padding: 0 160px;
  color: #fff;
  position: relative;
  margin: 0;
}
.p-hire-ttl::before {
  content: '';
  display: block;
  width: 140px;
  height: 100%;
  background: url(../../imgs/hire/ttl-img02.svg)no-repeat center center / contain;
  position: absolute;
  top:0;
  left: 0;
}
.p-hire-ttl::after {
  content: '';
  display: block;
  width: 140px;
  height: 100%;
  background: url(../../imgs/hire/ttl-img01.svg)no-repeat center center / contain;
  position: absolute;
  top:0;
  right: 0;
}
.p-hire-ttl__en {
  display: block;
  font-size: clamp(16px, 2vw, 22px);
  font-weight: 600;
  line-height: 1;
  margin: -1px auto 0;
}
.p-hire-ttl__ja {
  font-weight: 600;
  font-size: clamp(35px, 5vw, 44px);
  line-height: 1.2;
}
#hire .p-hire-ttl--light {
  color: #000;
}
#hire .p-hire-ttl--light .p-hire-ttl__en{
  color:var(--gold-deep);
}
@media(max-width:737px){
  .p-hire-band{
    margin: 0 auto 25px;
  }
  #hire .p-hire-ttl{
    line-height: 1;
    padding: 0 60px;
  }
  .p-hire-ttl::before {
    width: 50px;
  }
  .p-hire-ttl::after {
    width: 50px;
  }
  .p-hire-ttl__en {
    font-size: clamp(12px, 1vw, 14px);
    margin-top: 5px;
  }
  .p-hire-ttl__ja {
    line-height: 1.2;
    font-size: clamp(24px, 7vw, 30px);
  }
  #hire .p-hire-ttl--light {
    color: #000;
  }
  #hire .p-hire-ttl--light .p-hire-ttl__en{
    color:var(--gold-deep);
  }
}

/* .p-hire-nav */
.p-hire-nav {
  width: 100%;
  background: #000;
  position: fixed;
  top:80px;
  left: 0;
  z-index: 9;
  transition: .3s;
}
.p-hire-nav.current{
  top:60px;
}
.p-hire-nav__list{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  box-sizing: border-box;
  padding: 10px 0;
  border-top: solid 3px #CFB670;
}
.p-hire-nav__list-item:not(:first-child){
  border-left: solid 1px rgba(255,255,255,0.3);
}
.p-hire-nav__list-item a{
  display: block;
  padding: 11px 20px 12px;
  line-height: 1;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(12px, 2vw, 16px);
  font-weight: 500;
  text-decoration: none;
  color: #fff;
  transition: .3s;
}
.p-hire-nav-tgl{
  display: none;
}
@media(any-hover: hover){
  .p-hire-nav__list-item a:hover{
    color: var(--gold);
  }
}
@media(max-width:1150px){
    
  .p-hire-nav__list-item a{
    padding: 11px 10px 12px;
    font-size: clamp(12px, 1.5vw, 18px);
  }
}
@media(max-width:920px){
  .p-hire-nav,
  .p-hire-nav.current{
    width: 300px;
    max-width: 100%;
    padding: 10px 20px 60px;
    border-radius: 10px 10px 0 0;
    background: #B1995C;
    position: fixed;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    z-index: 99999;
    transform: translateY(100%);
  }
  .p-hire-nav.is-open{
    transform: translateY(0);
  }
  .p-hire-nav__list{
    display: block;
    height: auto;
    padding: 0;
    border: none;
    text-align: center;
  }
  .p-hire-nav.is-open{
    transform: translateY(0);
  }
  .p-hire-nav__list-item:not(:first-child){
    border-top: solid 1px rgba(255,255,255,0.3);
    border-left: none;
  }
  .p-hire-nav__list-item a{
    padding:18px 10px;
    font-size: 16px;
  }
  .p-hire-nav-tgl{
    display: block;
    width: 110px;
    max-width: 100%;
    height: 40px;
    position:fixed;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    z-index: 100000;
  }
  .menu-open .p-hire-nav-tgl{
    display: none;
  }
  .p-hire-nav-tgl__button{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90px;
    max-width: 100%;
    height: 100%;
    padding: 0 40px 0 12px;
    border-radius: 10px;
    background: #001F36;
    border: none;
    appearance: none;
    line-height: 1;
    font-size: 16px;
    color: #fff;
    position: relative;
    margin: 0 auto;
    transition: .3s;
  }
  .p-hire-nav-tgl__button.is-open{
    width: 110px;
    transition: 0s;
  }
  .p-hire-nav-tgl__button-bar{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 40px;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: absolute;
    top:0;
    right: 12px;
  }
  .p-hire-nav-tgl__button-bar span,
  .p-hire-nav-tgl__button-bar span::before,
  .p-hire-nav-tgl__button-bar span::after {
    display: block;
    width: 20px;
    height: 2px;
    background: #ccc;
    border-radius: 2px;
  }
  .p-hire-nav-tgl__button-bar span {
    position: relative;
  }
  .is-open .p-hire-nav-tgl__button-bar span {
    background: none;
  }
  .p-hire-nav-tgl__button-bar span::before,
  .p-hire-nav-tgl__button-bar span::after {
    content: "";
    position: absolute;
    left: 0;
    transition: .3s;
  }
  .p-hire-nav-tgl__button-bar span::before {
    top: -6px;
  }
  .is-open .p-hire-nav-tgl__button-bar span::before {
    top:0;
    transform: rotate(45deg);
  }
  .p-hire-nav-tgl__button-bar span::after {
    top: 6px;
  }
  .is-open .p-hire-nav-tgl__button-bar span::after {
    top:0;
    transform: rotate(-45deg);
  }
  .p-hire-nav-tgl__button-close{
    display: none;
  }
  .is-open .p-hire-nav-tgl__button-close{
    display: block;
    transition: .3s;
  }
  .is-open .p-hire-nav-tgl__button-open{
    display: none;
    transition: .3s;
  }
}

/* .visual */
.p-hire-mv {
  position: relative;
  height: 580px;
  display: flex;
  align-items: center;
  background:url(../../imgs/hire/visual.jpg)no-repeat center center / cover;
  overflow: hidden;
}
.p-hire-mv__ghost {
  width: 1084px;
  max-width: 90%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.p-hire-mv__copy {
  display: inline-block;
  text-align: right;
  color: #fff;
  position: absolute;
  top: 62px;
  right: 67px;
}
.p-hire-mv__lead {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(20px, 2vw, 30px);
  letter-spacing: 1.5px;
  margin-bottom: 14px;
}
.p-hire-mv__ttl {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: clamp(30px, 4.5vw, 56px);
  letter-spacing:-1px;
  line-height: 1.35;
}
@media (max-width: 737px) {
  .p-hire-mv {
    height: 112vw;
    background:url(../../imgs/hire/visual--sp.jpg)no-repeat center center / cover;
  }
  .p-hire-mv__copy {
    width: calc(100% - 40px);
    text-align: center;
    top:44px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  #cont .p-hire-mv__copy br{
    display: block;
  }
}

/* intro */
#hire .p-hire-intro {
  background: url(../../imgs/hire/cream-bg.jpg)center center;
  position: relative;
  text-align: center;
  padding: 80px 20px 100px;
  margin-bottom: 0;
}
.p-hire-intro .p-hire__inner{
  max-width: 1100px;
  padding:38px 20px 70px;
  background: url(../../imgs/hire/suggest-visual.jpg)no-repeat center center / cover;
  border: solid 4px #CFB670;
  box-shadow: 0px 10px 14px rgba(0,0,0,0.25);
  position: relative;
}
.p-hire-intro .p-hire__inner::before{
  content:'';
  display: block;
  width: 240px;
  max-width: 30%;
  height: 100%;
  background: url(../../imgs/hire/suggest-ilst01.svg)no-repeat left bottom / contain;
  position: absolute;
  left: 17px;
  bottom: 16px;
}
.p-hire-intro .p-hire__inner::after{
  content:'';
  display: block;
  width: 240px;
  max-width: 30%;
  height: 100%;
  background: url(../../imgs/hire/suggest-ilst02.svg)no-repeat right bottom / contain;
  position: absolute;
  right: 17px;
  bottom: 16px;
}
#hire .p-hire-intro__ttl {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: clamp(30px, 3vw, 44px);
  letter-spacing: 1px;
  line-height: 1.4;
  margin-bottom: 20px;
}
#hire .p-hire-intro__ttl span{
  display: inline-block;
  background: linear-gradient(0deg, #F3C937 0%, #FFFFED 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
#hire .p-hire-intro__txt{
  font-size: clamp(16px, 2vw, 22px);
  color: #fff;
  margin: 0;
}

@media (max-width: 737px) {
  #hire .p-hire-intro {
    padding: 40px 20px;
  }
  .p-hire-intro .p-hire__inner {
    padding: 40px 30px;
    background: url(../../imgs/hire/suggest-visual--sp.jpg) no-repeat center center / cover;
    border: solid 2px #CFB670;
  }
  .p-hire-intro .p-hire__inner::before{
    width: 120px;
    max-width: 40%;
    left: 10px;
    bottom: 11px;
  }
  .p-hire-intro .p-hire__inner::after{
    width: 120px;
    max-width: 40%;
    right: 10px;
    bottom: 11px;
  }
  #hire .p-hire-intro__ttl {
    font-size: clamp(22px, 3vw, 28px);
    margin-bottom: 22px;
  }
}

/* feature */
.p-hire-features {
  position: relative;
}
.p-hire-features .p-hire__inner{
  padding: 85px 20px 140px;
  position: relative;
  z-index: 2;
}
.p-hire-features__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 42px;
}
.p-hire-feature {
  background: #fff;
  border: solid 1px #CFB670;
  text-align: center;
}
#cont .p-hire-feature__img {
  margin-bottom: 11px;
}
.p-hire-feature__img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.p-hire-feature__ttl {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(20px,3vw, 28px);
  font-weight: 600;
  color: #000;
  margin: 11px auto 32px;
  position: relative;
}
.p-hire-feature__ttl::after {
  content: "";
  display: block;
  width: 55px;
  height: 3px;
  background: var(--gold);
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  margin: 0 auto;
}
.p-hire-feature__txt {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
}

@media(max-width:737px){
  .p-hire-features .p-hire__inner{
    padding: 40px 20px;
  }
  .p-hire-features__list{
    display: flex;
    flex-wrap: wrap;
    gap:40px;
  }
  .p-hire-feature__ttl {
    font-size: clamp(20px,6vw, 28px);
    margin: -10px auto 20px;
  }
  .p-hire-feature__ttl::after {
    content: "";
    display: block;
    width: 55px;
    height: 2px;
    background: var(--gold);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -9px;
    margin: 0 auto;
  }
  .p-hire-feature__txt {
    line-height: 1.4;
  }
}

/* scene */
.p-hire-scene{
  background: url(../../imgs/hire/cream-bg.jpg)center center;
  position: relative;
}
.p-hire-scene__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap:50px 40px;
  margin-bottom: 30px;
}
.p-hire-scene__item {
  color: #000;
  position: relative;
}
.p-hire-scene__item img {
  display: block;
  width: 100%;
  border-radius: 10px;
  border: solid 1px var(--gold);
}
#hire .p-hire-scene__cap {
  display: block;
  text-align: center;
  font-size: clamp(20px,3vw, 28px);
  font-weight: 600;
  margin: 11px auto 13px;
}
#hire .p-hire-scene__txt {
  font-size: 14px;
}
@media(max-width:737px){
  .p-hire-scene__list {
    display:flex;
    flex-wrap: wrap;
    gap:40px;
    margin-bottom: 0;
  }
  #hire .p-hire-scene__cap {
    font-size: clamp(20px,6vw, 28px);
    margin: 10px auto 5px;
  }
  #hire .p-hire-scene__txt {
    margin-bottom: 0;
  }
}

/* .vehicle */
.p-hire-vehicle .p-hire__inner{
  max-width: 1040px;
  padding-top: 110px;
  padding-bottom: 140px;
}
.p-hire-vehicle .p-hire-band {
    margin-bottom: 21px;
}
#hire .p-hire-vehicle__lead {
  text-align: center;
  font-size: 16px;
  color: #fff;
  margin: 0 auto 35px;
}
.p-hire-vehicle__tabs {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.p-hire-vehicle__tabs li{
  display: block;
}
.p-hire-vehicle__tab {
  display: block;
  appearance: none;
  cursor: pointer;
  width: 200px;
  padding: 20px;
  border-radius: 50px;
  border: 1px solid var(--gold);
  background: none;
  line-height: 1;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  overflow: hidden;
  transition: .3s;
}
.p-hire-vehicle__tab:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #E2AE5D 0%, #957427 100%);
  position: absolute;
  top:0;
  left: 0;
  z-index: -1;
  transition: .3s;
}
.p-hire-vehicle__tab:after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  position: absolute;
  top:0;
  left: 0;
  z-index: -2;
  transition: .3s;
}
.p-hire-vehicle__tab:hover,
.p-hire-vehicle__tab.is-active {
  color: var(--gold);
}
.p-hire-vehicle__tab.is-active{
  pointer-events: none;
}
.p-hire-vehicle__tab:hover:before,
.p-hire-vehicle__tab.is-active:before {
  opacity: 0;
}

.p-hire-vehicle__panel { display: none; }
.p-hire-vehicle__panel.is-active { display: block; animation: pHireFade .4s ease; }
@keyframes pHireFade { from { opacity: 0; } to { opacity: 1; } }

@media(max-width:737px){
  .p-hire-vehicle .p-hire__inner{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  #hire .p-hire-vehicle__lead{
    margin-bottom: 25px;
  }
  .p-hire-vehicle__tabs{
    gap:15px;
  }
  .p-hire-vehicle__tabs li{
    width: 100%;
  }
  .p-hire-vehicle__tab {
    width:100%;
    padding: 15px;
    font-size: 16px;
  }
}

/* スライダー */
.p-hire-slider__main {
  position: relative;
  display: flex;
  align-items: center;
}
.p-hire-slider__viewport {
  overflow: hidden;
  width: 100%;
}
.p-hire-slider__track {
  display: flex;
  transition: transform .5s cubic-bezier(.4,0,.2,1);
}
.p-hire-slider__slide {
  flex: 0 0 100%;
  width: 100%;
  margin-bottom: 20px;
}
.p-hire-slider__slide img {
  display: block;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
}
#cont .p-hire-slider__thumbs{
  display: flex;
  gap: 12px;
  margin: 0 auto 41px;
}
.p-hire-slider__thumb {
  width: calc((100% - 84px) / 8);
  cursor: pointer;
  border-radius: 8px;
  overflow: hidden;
  transition: .25s;
  list-style: none;
}
.p-hire-slider__thumb img {
  display: block;
  width: 100%;
}
.p-hire-slider__thumb:hover { opacity: .85; }
.p-hire-slider__thumb.is-active { opacity: 1; }

#hire .p-hire-vehicle__spec-txt {
  line-height: 1.6;
  font-size: 16px;
  margin: 0 auto 35px;
}
#hire .p-hire-vehicle__spec dl {
  display: grid;
  grid-template-columns: 160px 1fr;
  border: 1px solid var(--gold);
  border-bottom: none;
  color: #000;
  margin: 0 auto;
}
.p-hire-vehicle__spec dt,
.p-hire-vehicle__spec dd {
  margin: 0;
}
.p-hire-vehicle__spec dt {
  padding: 7px 20px;
  background: var(--gold);
  border-bottom: 1px solid #fff;
  font-size: 18px;
  font-weight: 700;
}
.p-hire-vehicle__spec dd {
  padding: 11px 29px;
  background: #fff;
  border-bottom: 1px solid var(--gold);
  font-size: 15px;
}
.p-hire-vehicle__spec div:last-child dt {
  border-bottom: 1px solid var(--gold);
}
.p-hire-vehicle__spec dl > div { display: contents; }

@media(max-width:737px){
  .p-hire-slider__thumbs {
    gap: 12px;
  }
  #cont .p-hire-slider__thumb {
    width: calc((100% - 36px) / 4);
  }
  #hire .p-hire-vehicle__spec-txt {
    line-height: 1.8;
    font-size: 16px;
    margin: 0 auto 20px;
  }
  #hire .p-hire-vehicle__spec dl {
    grid-template-columns: 120px 1fr;
  }
  .p-hire-vehicle__spec dt {
    padding: 10px;
    text-align: center;
    font-size: 16px;
  }
  .p-hire-vehicle__spec dd {
    padding: 10px;
    font-size: 15px;
  }
  .p-hire-vehicle__spec div:last-child dt {
    border-bottom: 1px solid var(--gold);
  }
  .p-hire-vehicle__spec dl > div { display: contents; }

}

/* simulation */
.p-hire-sim {
  background: url(../../imgs/hire/cream-bg.jpg)center center;
  position: relative;
}
.p-hire-sim .p-hire__inner{
  padding-bottom: 50px;
}
.p-hire-sim__body {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  padding: 40px;
  border: solid 1px var(--gold);
  background: #fff;
}
.p-hire-sim__form {
  width: calc(50% - 25px);
}
.p-hire-field__label {
  display: flex;
  justify-content:space-between;
  align-items: flex-end;
  line-height: 1.8;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 5px;
}
.p-hire-field__label span{
  line-height: 1;
  font-size: 14px;
  font-weight: 400;
  color: #888888;
}
.p-hire-field__row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
.p-hire-field__row--mb-short{
  margin-bottom: 5px;
}
.p-hire-input,
.p-hire-select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 7px 14px;
  background:var(--cream);
  font-size: 16px;
  border: none;
}
.p-hire-input:focus,
.p-hire-select:focus {
  outline: 1px solid var(--gold-deep);
  outline-offset: 0;
}
#hire .p-hire-input.p-hire-input--half{
  width: 150px;
  margin-right: 10px;
}
#hire .p-hire-input__unit{
  padding-top: 14px;
  line-height: 1;
  margin-bottom: 0;
}

.p-hire-seg {
  display: flex;
  justify-content: center;
  align-items: center;
  gap:30px;
  padding: 13px;
  border: 1px solid var(--gold);
  overflow: hidden;
  margin-bottom: 15px;
}
.p-hire-seg input {
  display: none;
}
.p-hire-seg label {
  display: inline-block;
  padding-right: 62px;
  font-weight: bold;
  font-size: 14px;
  position: relative;
  cursor: pointer;
  transition: .2s;
}
.p-hire-seg label::before {
  content: '';
  display: block;
  width: 52px;
  height: 24px;
  border-radius: 100px;
  background: #C8C8C8;
  position: absolute;
  top:0;
  right: 0;
  z-index: 1;
  transition: .3s;
}
.p-hire-seg label::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 100px;
  background: #fff;
  position: absolute;
  top:2px;
  right: 30px;
  z-index: 2;
  transition: .3s;
}
.p-hire-seg input:checked + label:before {
  background: #166FD0;
}
.p-hire-seg input:checked + label:after {
  left: auto;
  right: 2px;
}
.car-cards{
  display: flex;
  flex-wrap: wrap;
  gap:15px;
  margin-bottom: 15px;
}
.car-card{
  display: block;
  width: calc((100% - 30px) / 3);
  border: solid 1px var(--gold);
  box-sizing: border-box;
  cursor: pointer;
  transition: .3s;
}
.car-card:has(input:checked) {
  background: var(--gold);
}
.car-card__inner{
  display: block;
}
.car-card input{
  display: none;
}
.car-card__txt{
  display: block;
  padding: 12px 20px 16px;
  text-align: center;
  color: #000;
}
.car-card__name{
  display: block;
  line-height: 1;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
}
.car-card__sub{
  line-height: 1.3;
  font-family: 12px;
}
.p-hire-field__checkbox{
  display: block;
  margin-bottom: 15px;
}
.p-hire-field__checkbox label{
  display: block;
  font-size: 14px;
  font-weight: bold;
  color: #000;
  margin-bottom: 3px;
}
.p-hire-field__checkbox label input{
  width: auto;
}
#hire .p-hire-input__annot{
  color: #888888;
  margin: 0;
}

.p-hire-sim__result {
  width: calc(50% - 25px);
}
.p-hire-sim__map {
  background: #e9e4d6 center/cover no-repeat;
  border: 1px solid var(--line);
  margin-bottom: 20px;
}
.p-hire-sim__map iframe{
  width: 100% !important;
  height: 460px !important;
}
.p-hire-sim__est {
  display: flex;
  justify-content: space-between;
  line-height: 1;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 10px;
}
.p-hire-sim__est-label {
  width: 160px;
  background: var(--gold);
  padding: 18px 32px;
}
.p-hire-sim__est-num {
  display: flex;
  align-items: center;
  width: calc(100% - 160px);
  padding: 18px 32px;
  border: solid 1px var(--gold);
  background: var(--cream);
  color: #000;
}
.p-hire-sim__note {
  line-height: 1.2;
  font-size: 14px;
  font-weight: bold;
  color: var(--gold);
  margin: 0;
}
.p-hire-submit{
  width: 100%;
  padding: 30px 0 0;
  border-top: solid 1px var(--gold);
  text-align: center;
}
@media(max-width:737px){
  #hire .p-hire-input.p-hire-input--half{
    width: 95%;
  }
  span.wpcf7-form-control-wrap.your-member,
  span.wpcf7-form-control-wrap.your-daisu{
    width: 80%;

  }
}

/* 共通ボタン */
#hire .p-hire-btn {
  display: inline-block;
  cursor: pointer;
  padding: 25px 40px;
  border-radius: 50px;
  border: 1px solid var(--gold);
  background: none;
  text-align: center;
  line-height: 1;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  overflow: hidden;
  transition: .3s;
}
.p-hire-btn:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #E2AE5D 0%, #957427 100%);
  position: absolute;
  top:0;
  left: 0;
  z-index: 2;
  transition: .3s;
}
.p-hire-btn:after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  position: absolute;
  top:0;
  left: 0;
  z-index: 1;
  transition: .3s;
}
#hire .p-hire-btn--submit{
  background: linear-gradient(90deg, #E2AE5D 0%, #957427 100%);
}
#hire .p-hire-btn--submit::before,
#hire .p-hire-btn--submit::after {
  display: none;
}
.p-hire-btn span {
  position: relative;
  transition: .3s;
  z-index: 3;
}
@media(any-hover: hover){
  .p-hire-btn:hover:before {
    opacity: 0;
  }
  #hire .p-hire-btn:hover {
    color:var(--gold);
    text-decoration: none;
  }
  #hire .p-hire-btn--submit:hover{
    background:#fff;
  }
}

/* case */
.p-hire-case {
  background: url(../../imgs/hire/cream-bg.jpg)center center;
}
.p-hire-case .p-hire__inner{
  padding-bottom:3px;
}
.p-hire-case__item {
  display: flex;
  gap: 4.5%;
  margin: 0 auto 75px;
}
.p-hire-case__item:nth-child(even) {
  flex-direction: row-reverse;
}
#hire .p-hire-case__img {
  width: 42%;
  margin-bottom: 0;
}
#hire .p-hire-case__img--pc{
  display: block;
}
#hire .p-hire-case__img--sp{
  display: none;
}
.p-hire-case__img img {
  width: 100%;
  border: solid 2px var(--gold);
}
.p-hire-case__body{
  width: 53.5%;
}
.p-hire-case__ttl {
  display: block;
  padding-top:5px;
  line-height: 1.4;
  letter-spacing: -.5px;
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(20px, 3vw, 32px);
  font-weight: bold;
  color: #000;
  margin-bottom: 20px;
}
.p-hire-case__meta {
  margin-bottom: 18px;
}
#hire .p-hire-case__tag {
  line-height: 1.2;
  font-size: 16px;
  font-weight: bold;
  color: #000;
  margin-bottom: 7px;
}
.p-hire-case__tag span{
  display: inline-block;
  color: #A17C53;
  margin-right: 20px;
}
#hire .p-hire-case__txt {
  line-height: 1.8;
  font-size: 16px;
  color: #000;
  margin-bottom: 0;
}
@media(max-width:737px){
  .p-hire-case__item {
    display: flex;
    flex-wrap: wrap;
    gap:20px;
    padding-top: 30px;
    border-top: solid 1px var(--gold);
    margin: 0 auto 40px;
  }
  #hire .p-hire-case__img {
    width: 150px;
    box-sizing: border-box;
    position: absolute;
    top:0;
    left: 0;
  }
  #hire .p-hire-case__img--pc{
    display: none;
  }
  #hire .p-hire-case__img--sp{
    display: block;
  }
  .p-hire-case__img img {
    width: 100%;
    box-sizing: border-box;
  }
  .p-hire-case__body{
    width:100%;
  }
  .p-hire-case__ttl {
    text-align: center;
    font-size: clamp(20px, 5.5vw, 32px);
    margin-bottom: 20px;
  }
  .p-hire-case__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap:5px;
    min-height: 106px;
    padding-left: 165px;
    position: relative;
    margin-bottom: 15px;
  }
  #hire .p-hire-case__tag {
    width: 100%;
    font-size: 14px;
    margin-bottom: 0;
  }
  .p-hire-case__tag span{
    display: block;
    font-size: 16px;
    margin: 0 15px 5px 0;
  }
  #hire .p-hire-case__txt {
    line-height: 1.8;
    font-size: 16px;
    color: #000;
    margin-bottom: 0;
  }
}

/* trust */
.p-hire-trust {
  background: url(../../imgs/hire/cream-bg.jpg)center center;
}
.p-hire-trust .p-hire__inner{
  padding-top: 40px;
  padding-bottom: 90px;
}
.p-hire-trust__list {
  display: flex;
  gap: 40px;
}
.p-hire-trust__item {
  width: calc((100% - 80px) / 3);
  background:#fff;
  border: 1px solid var(--gold);
  text-align: center;
  color: #000;
}
.p-hire-trust__item img {
  margin-bottom: 13px;
}
.p-hire-trust__ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 50px);
  height: 78px;
  line-height: 1.2;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 600;
  margin: 0 auto 35px;
  position: relative;
}
.p-hire-trust__ttl:before {
  content: '';
  display: block;
  width: 55px;
  height: 3px;
  background: var(--gold);
  position: absolute;
  left: 0;
  right: 0;
  bottom: -14px;
  margin: 0 auto;
}
#hire .p-hire-trust__txt {
  width: calc(100% - 50px);
  text-align: left;
  line-height: 1.6;
  font-size: 14px;
  margin: 0 auto 45px;
}
@media(max-width:850px){
    .p-hire-trust__ttl {
      font-size: clamp(20px, 2vw, 28px);
  }
}
@media(max-width:737px){
  .p-hire-trust .p-hire__inner{
    padding-top: 20px;
    padding-bottom: 40px;
  }
  .p-hire-trust__list {
    flex-wrap: wrap;
    gap: 20px;
  }
  .p-hire-trust__item {
    width: 100%;
  }
  .p-hire-trust__item img {
    margin-bottom: 15px;
  }
  .p-hire-trust__ttl {
    height: auto;
    font-size: clamp(20px, 3vw, 28px);
    margin: 0 auto 21px;
  }
  .p-hire-trust__ttl:before {
    height: 1px;
    bottom: -11px;
    margin: 0 auto;
  }
  #hire .p-hire-trust__txt {
    margin: 0 auto 20px;
  }
}

/* flow */
.p-hire-flow .p-hire__inner{
  padding-top: 106px;
  padding-bottom: 160px;
}
.p-hire-flow__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 60px;
  padding:35px 55px 55px;
  border: solid 1px var(--gold);
  border-radius: 10px;
  background: #fff;
  position: relative;
}
.p-hire-flow__item {
  text-align: center;
  position: relative;
}
.p-hire-flow__step {
  font-family: "Bebas Neue", sans-serif;
  font-size: 15px;
  letter-spacing: .14em;
  color: var(--gold);
  margin-bottom: 16px;
}
#cont .p-hire-flow__icon {
  display: block;
  width: 100%;
  max-width: 280px;
  margin: 0 auto 12px;
}
.p-hire-flow__ttl {
  display: block;
  line-height: 1.2;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 600;
  color: #000;
  margin: 0 auto 10px;
}
#hire .p-hire-flow__txt {
  display: block;
  line-height: 1.6;
  font-size: 14px;
  color: #000;
  margin: 0 auto;
}
@media(max-width:737px){
  .p-hire-flow .p-hire__inner{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .p-hire-flow__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 40px;
    padding:40px 20px;
  }
  .p-hire-flow__step {
    margin-bottom: 10px;
  }
  #cont .p-hire-flow__icon {
    width: 200px;
    margin: 0 auto 15px;
  }
  .p-hire-flow__ttl {
    margin: 0 auto 10px;
  }
}

/* faq */
.p-hire-faq {
  background: url(../../imgs/hire/cream-bg.jpg)top center;
  position: relative;
}
.p-hire-faq::before {
  content: '';
  display: block;
  width: 1100px;
  max-width: 100%;
  height: 1px;
  border-top: dotted 1px var(--gold);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
}
.p-hire-faq .p-hire__inner{
  padding-top: 105px;
  padding-bottom: 105px;
}
.p-hire-faq__list {
  display:flex;
  flex-wrap: wrap;
  gap:30px;
}
.p-hire-faq__item {
  display: block;
  width: 100%;
  background:var(--gold);
  margin-bottom: 14px;
}
#hire .p-hire-faq__q {
  padding:15px 20px 15px 60px;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
  list-style: none;
  color: #fff;
  margin: 0;
  position: relative;
  cursor: pointer;
}
.p-hire-faq__q::-webkit-details-marker { display: none; }
.p-hire-faq__q::before {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  padding: 0 0 3px;
  box-sizing: border-box;
  border-radius: 50px;
  background:#fff;
  line-height: 1;
  font-size: 18px;
  color: var(--gold);
  position: absolute;
  top:18px;
  left: 20px;
}
.p-hire-faq__q::after {
  content: "";
  display: block;
  width: 15px;
  height:9px;
  background:url(../../imgs/hire/icon/arrow-dwn.svg)no-repeat center center / contain;
  position: absolute;
  top:calc(50% - 4px);
  right: 19px;
  transition: transform .3s;
}
.p-hire-faq__item.is-open .p-hire-faq__q::after {
  transform:rotate(-180deg);
}
#hire .p-hire-faq__a {
  display: block;
  max-height: 0;
  padding: 0 20px 0 60px;
  border: solid 1px var(--gold);
  background: #fff;
  overflow: hidden;
  font-size: clamp(16px, 2vw, 18px);
  color: #000;
  position: relative;
  margin: 0;
  transition: max-height 0.35s ease, padding 0.35s ease;;
}
#hire .is-open .p-hire-faq__a {
  padding: 21px 20px 22px 60px;
}
#hire .p-hire-faq__a-bold{
  display: inline-block;
  font-weight: bold;
  margin-top: 10px
}
#hire .p-hire-faq__a-bold--catch{
  color: #A17C53;
  margin-top: 20px
}
#hire .p-hire-faq__a-note{
  font-size: 12px;
}
.p-hire-faq__a::before {
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  padding: 0 0 3px;
  box-sizing: border-box;
  border-radius: 50px;
  background:var(--gold);
  line-height: 1;
  font-size: 18px;
  color: #fff;
  position: absolute;
  top:20px;
  left: 20px;
}
@media(max-width:737px){
  .p-hire-faq .p-hire__inner{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .p-hire-faq__list {
    gap:0;
  }
}

/* contatc */
.p-hire-contact {
  background: url(../../imgs/hire/cream-bg.jpg)center center;
}
.p-hire-contact .p-hire__inner{
  padding-top: 108px;
  padding-bottom: 140px;
}
.p-hire-contact .p-hire-band{
  margin-bottom: 42pz;
}
#hire .p-hire-contact__lead {
  display: block;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0 auto 35px;
}
.p-hire-contact__tel {
  width: 700px;
  max-width: 100%;
  border: solid 2px var(--gold);
  text-align: center;
  color: var(--navy);
  margin: 0 auto 60px;
}
#hire .p-hire-contact__tel-ttl {
  display: block;
  padding:8px 20px 9px;
  box-sizing: border-box;
  background: var(--gold);
  line-height: 1;
  font-size: clamp(16px, 2vw, 18px);
  font-weight: bold;
  margin: 0;
}
.p-hire-contact__tel a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap:10px;
  padding: 15px 20px 22px;
  background: var(--navy);
  text-decoration: none;
  font-weight: bold;
  color: var(--gold);
}
.p-hire-contact__tel a span{
  display: inline-block;
  padding-left: 61px;
  line-height: 1;
  font-size: clamp(40px, 4vw, 50px);
  position: relative;
}
.p-hire-contact__tel a span::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  background: url(../../imgs/hire/icon/phone.svg)no-repeat center center / contain;
  position: absolute;
  top:7px;
  left: 0;
}
.p-hire-contact__tel small {
  display: inline-block;
  line-height: 1;
  font-size: 16px;
  color: var(--gold);
 }

.p-hire-form {
  max-width: 800px;
  padding: 45px 40px 40px;
  box-sizing: border-box;
  background: #fff;
  border-radius: 10px;
  border: solid 1px var(--gold);
  margin: 0 auto;
}
#hire .p-hire-form__subttl {
  display: block;
  padding-bottom: 9px;
  border-bottom: 2px solid var(--gold);
  line-height: 1.2;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: bold;
  color: #000;
  margin-bottom: 30px;
}
.p-hire-form__row {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0 auto 30px;
}
.p-hire-form__row--last {
  padding-bottom: 30px;
  border-bottom: dotted 1px var(--gold);
}
.p-hire-form__th {
  display: block;
  width: 160px;
  padding-top: 9px;
  padding-right: 20px;
  box-sizing: border-box;
  line-height: 1;
  font-size: clamp(16px, 2vw, 18px);
  font-weight: bold;
  color: #000;
  position: relative;
}
.p-hire-form__row .p-hire-field__row{
  width: calc(100% - 160px);
  margin: 0;
}

.p-hire-form__row--wide .p-hire-form__th{
  width: 220px;
}
.p-hire-form__row--wide .p-hire-field__row{
  width: calc(100% - 220px);
}
.p-hire-form__row--wide > .p-hire-input{
  width: calc(100% - 220px);
}

.p-hire-form__row .p-hire-field__row input{
  width: 500px;
  max-width: 100%;
}
.p-hire-form__check{
  padding-top: 11px;
  font-size: 16px;
  color: #000;
}
.p-hire-form__check label{
  margin-right: 40px;
}
.p-hire-form__result{
  display: flex;
  align-items: center;
  width: 100%;
  background: var(--cream);
  border: solid 1px var(--gold);
  box-sizing: border-box;
  margin-bottom: 10px;
}
.p-hire-form__result-ttl{
  display: inline-block;
  padding: 20px 32px;
  background: var(--gold);
  line-height: 1;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: bold;
  color: #fff;
}
.p-hire-form__result-price{
  padding: 20px 30px;
  line-height: 1;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: bold;
  color: #000;
}
#hire .p-hire-form__result-note{
  display: block;
  text-align: right;
  font-size: 14px;
  color: #000;
  margin-bottom: 80px;
}
.p-hire-form__req {
  display: inline-block;
  padding: 7px 10px 8px;
  background: var(--gold);
  line-height: 1;
  font-size: 12px;
  color: #fff;
  position: absolute;
  top:9px;
  right: 20px;
}
.p-hire-form__req--any { background: #8a8170; }
.p-hire-form textarea.p-hire-input { min-height: 140px; resize: vertical; }
.p-hire-form__privacy{
   text-align: center;
}
#hire .p-hire-form__privacy p{
  color: #000;
  margin-bottom: 12px;
}
.p-hire-form__privacy a{
  display: inline-block;
  padding-left: 22px;
  background: url(../../imgs/hire/icon/tab.svg)no-repeat center left / 12px;
  line-height: 1;
  font-size: 16px;
  font-weight: bold;
  color: var(--gold);
}
.p-hire-form__submit {
  text-align: center;
  margin-top: 30px;
}
#hire .p-hire-form__submit .p-hire-btn{
  width: 280px;
}
@media(max-width:950px){
  #main .p-hire-contact .p-hire-ttl br.pc_none{
    display: block;
  }
}
@media(max-width:737px){
  .p-hire-contact .p-hire__inner{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .p-hire-contact .p-hire-band{
    margin-bottom: 20px;
  }
  #hire .p-hire-contact__lead {
    margin: 0 auto 20px;
  }
  .p-hire-contact__tel {
    margin: 0 auto 40px;
  }
  #hire .p-hire-contact__tel-ttl {
    padding: 10px;
  }
  .p-hire-contact__tel a {
    display: block;
    padding: 15px;
  }
  .p-hire-contact__tel a span{
    padding-left: 40px;
    font-size: clamp(35px, 4vw, 50px);
  }
  .p-hire-contact__tel a span::before {
    width: 30px;
    height: 30px;
    top:2px;
  }
  .p-hire-contact__tel small {
    font-size: 15px;
  }
  .p-hire-form {
    padding: 20px;
  }
  #hire .p-hire-form__subttl {
    padding-bottom: 20px;
    font-size: clamp(20px, 6vw, 28px);
    margin-bottom: 30px;
  }
  .p-hire-form__row {
    flex-wrap: wrap;
    margin: 0 auto 25px;
  }
  .p-hire-form__row--last {
    padding-bottom: 20px;
  }
  .p-hire-form__th {
    width: auto;
    padding:0 0 15px;
    font-size: clamp(16px, 3vw, 18px);
  }
  .p-hire-form__row .p-hire-field__row{
    width: 100%;
    margin: 0;
  }

  .p-hire-form__row--wide .p-hire-form__th{
    width: auto;
    padding-bottom: 10px;
  }
  .p-hire-form__row--wide .p-hire-field__row{
    width:100%;
  }
  .p-hire-form__row--wide > .p-hire-input{
    width:100%;
  }
  .p-hire-form__row .p-hire-field__row input{
    width: 100%;
  }
  .p-hire-form__check{
    padding-top: 11px;
    font-size: 16px;
    color: #000;
  }
  .p-hire-form__check label{
    margin-right: 40px;
  }
  .p-hire-form__result{
    display: flex;
    align-items: center;
    width: 100%;
    background: var(--cream);
    border: solid 1px var(--gold);
    box-sizing: border-box;
    margin-bottom: 10px;
  }
  .p-hire-form__result-ttl{
    display: inline-block;
    padding: 20px 32px;
    background: var(--gold);
    line-height: 1;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: bold;
    color: #fff;
  }
  .p-hire-form__result-price{
    padding: 20px 30px;
    line-height: 1;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: bold;
    color: #000;
  }
  #hire .p-hire-form__result-note{
    display: block;
    text-align: right;
    font-size: 14px;
    color: #000;
    margin-bottom: 80px;
  }
  .p-hire-form__req {
    padding: 5px;
    font-size: 12px;
    position: relative;
    top:-2px;
    right: 0;
    margin-left: 5px;
  }
  #hire .p-hire-form__privacy p{
    font-size: 15px;
    margin-bottom: 5px;
  }
  .p-hire-form__privacy a{
    display: inline-block;
    padding-left: 22px;
    background: url(../../imgs/hire/icon/tab.svg)no-repeat center left / 12px;
    line-height: 1;
    font-weight: bold;
    color: var(--gold);
  }
  .p-hire-form__submit {
    text-align: center;
    margin-top: 20px;
  }
}