@charset "utf-8";
/* CSS Document */

/* ========================================

guidance

======================================== */
.guidance {
  position: relative;
  margin-bottom: clamp(90px, 11.3334vw, 170px);
  padding-bottom: clamp(100px, 12.3334vw, 185px);
	padding-top:clamp(100px, 12.3334vw, 185px);
  z-index: 2;
	background-color: #FFF2E5;
}
.guidance::before {
  width: 100%;
  height: calc(100% - 440px);
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.1);
}
.guidance .arrow, .guidance .arrow_ul {
  margin-left: 20px;
 color:var(--c_yamabuki);
}
.guidance_about {
  max-width: 1500px;
  margin: 0 auto 135px;
  padding-left: clamp(60px, 8vw, 120px);
  position: relative;
  z-index: 2;
}
.guidance_about .copy {
  font-family: var(--f_serif);
  font-size: 48px;
	color: var(--c_base);
  line-height: 1.66;
  letter-spacing: 0.025em;
  position: relative;
  margin-bottom: 36px;
  z-index: 2;
}
.guidance_about .txt {
  font-family: var(--f_serif);
  font-size: 17px;
 color: var(--c_base);
  line-height: 2.35;
  letter-spacing: 0.06em;
  position: relative;
  margin-bottom: 182px;
  z-index: 2;
}
.guidance_about .img {
  width: 64%;
  position: absolute;
  right: 0;
  top: 272px;
  z-index: 1;
}
.guidance_about .img .caption {
  color: rgba(255, 255, 255, 0.6);
  font-size: 11px;
  letter-spacing: 0.02;
  text-align: right;
  display: block;
  margin: 6px 6px 0 0;
}
.guidance_about .box_text {
  position: relative;
	color: var(--c_base);
  z-index: 2;
}
.guidance_about h2 {
  font-family: var(--f_serif);
	color: var(--c_base);
  font-size: 48px;
  letter-spacing: 0.05em;
  margin-bottom: 24px;
}
.guidance_about h2 a {
  pointer-events: none;
	color: var(--c_base);
}
.guidance_about .en {
  font-size: 12px;
  margin-bottom: 64px;
}
.guidance_about .link {
  font-size: 16px;
  letter-spacing: 0.025em;
  width: 120px;
	color: var(--c_base);
}
.guidance_about .link a {
  width: 100%;
  padding-bottom: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.guidance_about .illust {
  width: 26.1%;
  max-width: 261px;
  position: absolute;
  top: 15px;
  right: 16.4%;
}
.guidance_inner {
  width: var(--w_pc2);
  max-width: 1380px;
  position: relative;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.guidance_inner .illust {
  width: 129%;
  max-width: 129px;
  position: absolute;
  top: -30px;
  left: -5.3175%;
  z-index: 2;
}
.guidance_item {
  width: 46.0318%;
  position: relative;
	color: var(--c_base);
  z-index: 2;
}
.guidance_item a {
  display: block;
}
.guidance_item a:hover .img {
  opacity: 0.8;
}
.guidance_item a:hover .link::before {
  width: 100%;
}
.guidance_item .img {
  margin-bottom: 30px;
  -webkit-transition: all .2s;
  transition: all .2s;
}
.guidance_item .box_text {
  position: relative;
}
.guidance_item h2 {
  font-family: var(--f_serif);
  font-size: 34px;
  letter-spacing: 0.025em;
  margin-bottom: 20px;
}
.guidance_item .en {
  font-size: 12px;
}
.guidance_item .link {
  font-size: 14px;
  letter-spacing: 0.025em;
  position: absolute;
  top: 6px;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.guidance_item .link::before {
  width: 0%;
  height: 1px;
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: -8px;
  background-color: #F8B500;
  -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1);
  transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1);
}

@media screen and (max-width: 800px) {
  .guidance {
    margin-bottom: 84px;
    padding-bottom: 105px;
  }
  .guidance::before {
    height: 86.5%;
  }
  .guidance_about {
    width: var(--w_sp);
    margin-bottom: 64px;
    padding-left: 0;
  }
  .guidance_about .copy {
    font-size: 26.5px;
    line-height: 1.7;
    margin-bottom: 18px;
  }
  .guidance_about .txt {
    font-size: 15px;
    line-height: 2.15;
    margin-bottom: 66px;
  }
  .guidance_about .img {
    width: 100%;
    position: relative;
    top: auto;
    right: auto;
    margin-bottom: 23px;
  }
  .guidance_about .img .caption {
    font-size: 10px;
    margin-right: 0;
  }
  .guidance_about h2 {
    font-size: 26.5px;
    margin-bottom: 15px;
  }
  .guidance_about h2 a {
    pointer-events: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .guidance_about h2 .arrow, .guidance_about h2 .arrow_ul {
    margin: 4px 0 0 6px;
  }
  .guidance_about .en {
    margin-bottom: 0;
  }
  .guidance_about .link {
    display: none;
  }
  .guidance_about .illust {
    width: 57.8667%;
    top: -86px;
    right: 4.1334%;
  }
  .guidance_inner {
    width: var(--w_sp);
    margin: 0 auto;
  }
  .guidance_inner .illust {
    display: none;
  }
  .guidance_item {
    width: 100%;
  }
  .guidance_item:not(:last-of-type) {
    margin-bottom: 64px;
  }
  .guidance_item h2 {
    font-size: 28px;
    margin-bottom: 13px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .guidance_item h2 .arrow, .guidance_item h2 .arrow_ul {
    margin: 6px 0 0 6px;
  }
  .guidance_item .img {
    margin-bottom: 22px;
  }
  .guidance_item .link {
    display: none;
  }
}