.p-select {
  padding: calc(190 / 1920 * 100vw) 0 calc(156 / 1920 * 100vw);
}
.s-logo {
  width: calc(990 / 1920 * 100vw);
  margin: 0 auto calc(40 / 1920 * 100vw);
}
.s-box {
  padding: calc(72 / 1920 * 100vw) 0;
  background-color: #303030;
  max-width: calc(1280/1920*100vw);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(44 / 1920 * 100vw);
}
.s-box_ttl h3 {
  font-size: min(calc(40 / 1920 * 100vw), 4rem);
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.s-box_ttl {
  position: relative;
}
.s-box_ttl img {
  width: calc(547 / 1920 * 100vw);
}
.s-box_honten p,
.s-box_ichijo p {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  text-align: center;
  padding-top: calc(22 / 1920 * 100vw);
  color: #fff;
}
@media screen and (max-width: 768px) {
  .p-select {
    background-color: #353535;
    padding: 56px 4% 64px;
  }
  .s-logo {
    width: 348px;
  }
  .s-box {
    background-color: #fff;
    padding: 70px 4% 54px;
    display: block;
    max-width: unset;
  }
  .s-box_ttl img {
    width: auto;
  }
  .s-box_ttl h3 {
    font-size: 4rem;
  }
  .s-box_honten p, .s-box_ichijo p {
    font-size: 3.2rem;
    color: #111;
  }
}
/* -----------------
top
-------------------*/
.p-top_mv {
  position: relative;
}
.slider {
  width: calc(1434 / 1920 * 100vw) !important;
}
.p-mv_box01 {
  background: url(../img/honten_top_mv01.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}
.p-mv_box02 {
  background: url(../img/kodawari_img03.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}
.p-mv_box03 {
  background: url(../img/honten_top_img02.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}

.p-top_ttl {
  writing-mode: vertical-rl;
  position: absolute;
  right: calc(265 / 1920 * 100vw);
  top: 17px;
  letter-spacing: 0.8rem;
  line-height: 1.6;
}

.p-top_greet {
  padding: calc(133 / 1920 * 100vw) 0 0;
}
.t-greet_ttl {
  writing-mode: vertical-rl;
  letter-spacing: 0.8rem;
  line-height: 1.6;
}
.t-greet__inner {
  display: flex;
  gap: calc(85 / 1920 * 100vw);
  justify-content: flex-end;
  position: relative;
}
.t-greet__inner::after {
  content: "";
  background: url(../img/dec_02.png) no-repeat;
  background-size: contain;
  width: calc(692 / 1920 * 100vw);
  aspect-ratio: 692/606;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.t-greet_img {
  aspect-ratio: 1381/646;
  width: calc(1381 / 1920 * 100vw);
  position: relative;
}
.t-greet_lead {
  position: absolute;
  background-color: #fff;
  padding: calc(88 / 1920 * 100vw) calc(331 / 1920 * 100vw)
    calc(107 / 1920 * 100vw) calc(76 / 1920 * 100vw);
  top: calc(307 / 1920 * 100vw);
  right: 0;
  width: calc(821 / 1920 * 100vw);
}
.t-greet_lead p {
  line-height: 2;
  font-weight: 500;
}
.p-top_kodawari {
  background: url(../img/top_kodawari_bg.webp) no-repeat;
  background-size: cover;
  padding: calc(108 / 1920 * 100vw) 0;
}

.t-menu_ttl {
  background: url(../img/top_menu_bg.webp) no-repeat;
  background-size: cover;
  aspect-ratio: 1920/392;
  margin: calc(348 / 1920 * 100vw) 0 calc(140 / 1920 * 100vw);
  position: relative;
}
.t-menu_ttl h2 {
  font-size: min(calc(48 / 1920 * 100vw), 4.8rem);
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: 700;
  letter-spacing: 0.8rem;
}

.t-menu_list ul {
  display: flex;
  justify-content: center;
  gap: calc(20 / 1920 * 100vw);
  margin-bottom: calc(148 / 1920 * 100vw);
}
.t-menu_list li {
  width: calc(306 / 1920 * 100vw);
}

.gallery-slider {
  width: 100%;
  margin: 0 auto;
}
.gallery-slider li {
  margin-right: 20px; /* 右側の余白を20pxに設定 */
}
.gallery-slider img {
  width: 100%; /* 画像を親要素に合わせる */
  display: block;
}

.p-top__shop {
  margin-top: calc(220 / 1920 * 100vw);
}
.t-shop__box {
  position: relative;
}
.t-shop__ttl {
  background-color: #a78d00;
  height: calc(317 / 1920 * 100vw);
  width: calc(114 / 1920 * 100vw);
  position: absolute;
  right: calc(472 / 1920 * 100vw);
  top: calc(-70 / 1920 * 100vw);
}
.t-shop__ttl h2 {
  font-size: min(calc(48 / 1920 * 100vw), 4.8rem);
  writing-mode: vertical-rl;
  color: #fff;
  padding: calc(26 / 1920 * 100vw) calc(29 / 1920 * 100vw) 0;
  font-weight: 500;
  letter-spacing: 0.7rem;
}
.t-shop__img {
  width: calc(1381 / 1920 * 100vw);
}

.t-shop_btn {
  background-color: #a8191e;
  padding: calc(19 / 1920 * 100vw) 0;
  width: calc(280 / 1920 * 100vw);
  margin: calc(66 / 1920 * 100vw) auto calc(101 / 1920 * 100vw);
}

.t-shop_btn a {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.p-top__instagram {
  padding:0 0  calc(80/1920*100vw);
}
.instagram_ttl {
  margin-bottom: calc(35 / 1920 * 100vw);
}
.instagram_ttl a {
  color: #fff;
  font-size: min(calc(40 / 1920 * 100vw), 4rem);
  text-align: center;
  font-weight: 400;
  letter-spacing: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(10/1920*100vw);
  width: calc(350/1920*100vw);
  margin: 0 auto;
  padding: calc(12/1920*100vw) 0;
  border: solid 2px #fff;
}
.instagram_ttl a img {
  width: calc(40/1920*100vw);
}
/* ----------------
ichijo
---------------------*/

#ichijo .slider {
  margin: 0 0 0 auto;
}
#ichijo .p-mv_box01 {
  background: url(../img/honten_top_img01.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}
#ichijo .p-mv_box02 {
  background: url(../img/gallery_img09.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}
#ichijo .p-mv_box03 {
  background: url(../img/ichijo_top_img02.webp) no-repeat center;
  aspect-ratio: 1434/794;
  background-size: cover;
  width: calc(1434 / 1920 * 100vw);
}

#ichijo .p-top_ttl {
  left: calc(265 / 1920 * 100vw);
  right: unset;
}
#ichijo .p-top_ttl h1 {
  color: #353535;
}
#ichijo .red {
  color: #a8191e;
}

#ichijo .t-greet__inner {
  flex-direction: row-reverse;
}
#ichijo .t-greet_ttl h1 {
  color: #353535;
}
#ichijo .t-greet_lead {
  left: 0;
  padding: calc(88 / 1920 * 100vw) calc(76 / 1920 * 100vw)
    calc(107 / 1920 * 100vw) calc(331 / 1920 * 100vw);
}

#ichijo .t-shop__ttl {
  background-color: #a8191e;
}

#ichijo .t-shop_btn {
  background-color: #303030;
}

#ichijo .instagram_ttl h3 {
  color: #303030;
}
@media screen and (max-width: 768px) {
  .slider {
    width: auto !important;
  }
  .p-mv_box01 {
    aspect-ratio: 440/525;
  }
  .p-mv_box02 {
    aspect-ratio: 440/525;
  }
  .p-mv_box03 {
    aspect-ratio: 440/525;
    background: url(../img/honten_top_img02_sp.webp) no-repeat left;
    background-size: cover;
  }
  .p-top_ttl {
    writing-mode: unset;
    position: static;
    padding: 26px 4% 63px;
  }
  .t-greet_lead {
    position: static;
    width: auto;
    padding: 30px 4%;
  }
  .t-greet__inner {
    display: block;
  }
  .t-greet_ttl {
    writing-mode: unset;
    padding: 0 4%;
  }
  .t-greet_img {
    width: calc(367 / 440 * 100vw);
    margin: 40px 0 0 auto;
    aspect-ratio: 367/231;
  }
  .t-menu_ttl {
    margin: 58px 0;
    aspect-ratio: 440/112;
    background-position: center;
  }
  .t-menu_ttl h2 {
    font-size: 3.6rem;
  }
  .t-menu_list {
    padding: 0 4%;
  }
  .t-menu_list ul {
    gap: 12px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 63px;
  }
  .t-menu_list li {
    width: calc(195 / 440 * 100vw);
  }
  .p-top__shop {
    margin-top: 72px;
  }
  .t-shop__ttl {
    height: unset;
    width: auto;

    padding: 26px 16px;
    right: 25px;
    top: -33px;
  }
  .t-shop__ttl h2 {
    font-size: 3.2rem;
  }
  .t-shop__img {
    width: calc(378 / 440 * 100vw);
  }
  .t-shop_btn {
    width: 280px;
    margin: 54px auto 64px;
    padding: 28px 0;
  }
  .t-shop_btn a {
    font-size: 2.4rem;
  }
  .p-top__instagram {
    padding: 0 0 60px;
  }
  .instagram_ttl a {
    font-size: 3.2rem;
    margin-bottom: 30px;
    gap: 10px;
    width: 300px;
    padding: 12px 0;
  }
   .instagram_ttl a img {
    width: 30px;
   }
  /* -------------------
  ichijo
  ------------------------*/
  #ichijo .l-header_inner {
    background-color: unset;
  }
  #ichijo .t-greet_lead {
    padding: 119px 4% 59px;
  }
  #ichijo  .p-mv_box01 {
    aspect-ratio: 440/525;
  }
  #ichijo .p-mv_box02 {
    aspect-ratio: 440/525;
  }
  #ichijo .p-mv_box03 {
    aspect-ratio: 440/525;
    background: url(../img/ichijo_top_img02_sp.webp) no-repeat left;
    background-size: cover;
  }

}

/* -----------
shop
-----------------*/
.p-shop {
  margin: calc(80 / 1920 * 100vw) 0 0;
}
.p-ttl {
  position: relative;
  width: calc(210 / 1920 * 100vw);
  margin: 0 auto;
}
.p-ttl::before {
  content: "";
  background: url(../img/dec03.png) no-repeat;
  background-size: contain;
  width: calc(133 / 1920 * 100vw);
  aspect-ratio: 133/88;
  position: absolute;
  top: calc(-48 / 1920 * 100vw);
  left: calc(-55 / 1920 * 100vw);
}
.p-shop__box {
  width: calc(820 / 1920 * 100vw);
  margin: calc(92 / 1920 * 100vw) auto calc(200 / 1920 * 100vw);
}
.p-shop__box dl {
  display: flex;
  color: #fff;
  margin-bottom: calc(20 / 1920 * 100vw);
  font-size: min(calc(20 / 1920 * 100vw));
}
.p-shop__box dt {
  background-color: #a8191e;
  width: calc(150 / 1920 * 100vw);
  text-align: center;
  padding: calc(19 / 1920 * 100vw) 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-shop__box dd {
  margin-left: calc(56 / 1920 * 100vw);
  line-height: 2;
  display: flex;
  align-items: center;
}
.p-shop__map {
  max-width: calc(1280 / 1920 * 100vw);
  margin: 0 auto;
}
.p-shop__map .map {
  aspect-ratio: 1280/717;
  margin: calc(40 / 1920 * 100vw) 0 calc(152 / 1920 * 100vw);
}
.p-shop__greet {
  position: relative;
  margin: 0 0 calc(346 / 1920 * 100vw);
}
.p-shop__greet_img {
  aspect-ratio: 1381/646;
  width: calc(1381 / 1920 * 100vw);
  margin-top: calc(66 / 1920 * 100vw);
}
.p-shop__greet_lead {
  position: absolute;
  background-color: #fff;
  padding: calc(53 / 1920 * 100vw) calc(320 / 1920 * 100vw)
    calc(61 / 1920 * 100vw) calc(67 / 1920 * 100vw);
  top: calc(383 / 1920 * 100vw);
  right: 0;
  width: calc(974 / 1920 * 100vw);
}
.p-shop__greet p {
  line-height: 2;
  font-weight: 500;
}

/* ---------------
ichijo
-----------------*/
#ichijo .p-ttl::before {
  background: url(../img/dec04.png) no-repeat;
  background-size: contain;
}
#ichijo .p-ttl h2 {
  color: #353535;
}
#ichijo .p-shop__box {
  width: calc(910 / 1920 * 100vw);
}
#ichijo .p-shop__box dt {
  background-color: #353535;
}
#ichijo .p-shop__box dd {
  color: #353535;
}

@media screen and (max-width: 768px) {
  .p-ttl h2 {
    font-size: 3.2rem;
  }
  .p-ttl {
    width: 168px;
  }
  .p-ttl::before {
    width: 68px;
    top: -20px;
    left: -30px;
  }
  .p-shop {
    margin: 80px 0 0;
  }
  .p-shop__box {
    width: auto;
    margin: 40px 4% 60px;
  }
  .p-shop__box dl {
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
  .p-shop__box dt {
    width: 105px;
    padding: 15px 0;
  }
  .p-shop__box dd {
    width: 283px;
    line-height: 1.6;
  }
  .p-shop__greet_img {
    margin-top: 40px;
    width: auto;
    padding: 0 4%;
  }
  .p-shop__map {
    max-width: unset;
    padding: 0 4%;
  }
  .p-shop__map .map {
    margin: 40px 0 60px;
  }
  .p-shop__greet_lead {
    position: static;
    width: auto;
    padding: 20px 4% 30px;
    margin: 40px 4%;
  }
  #ichijo .p-shop__box {
    width: auto;
  }
  #ichijo .p-shop__greet_lead {
    padding: 0;
  }
}
/* --------------------
menu
----------------------*/
.p-menu {
  margin: 0 0 calc(120 / 1920 * 100vw);
}
.p-menu .p-ttl {
  margin: calc(73 / 1920 * 100vw) auto calc(56 / 1920 * 100vw);
}
.p-menu .p-ttl h2 {
  font-size: min(calc(40 / 1920 * 100vw), 4rem);
}
.p-menu_ttl h2::after {
  content: "";
  border-bottom: solid 2px #00bbc8;
  width: calc(60 / 1920 * 100vw);
  margin: 0 auto;
  display: block;
  padding: 18px 0 0;
}
.p-menu_ttl p {
  margin: 38px 0 0;
}
.p-menu_select {
  background-color: #a8191e;
  padding: calc(46 / 1920 * 100vw) 0;
}
.p-menu_select ul {
  display: flex;
  justify-content: center;
  gap: calc(220 / 1920 * 100vw);
}
.p-menu_select li a {
  color: #fff;
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
}
.p-menu__box {
  margin: calc(112 / 1920 * 100vw) 0 0;
}
.p-menu .kome {
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  text-align: center;
  color: #fff;
  margin-bottom: calc(50 / 1920 * 100vw);
}
.p-menu__list dl {
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  display: flex;
  justify-content: space-between;
  color: #fff;
  max-width: 800px;
  margin: 0 auto calc(32 / 1920 * 100vw);
  align-items: center;
}
.p-menu__list dt {
  width: calc(485 / 1920 * 100vw);
  line-height: 1.6;
}
.p-menu__list p {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  margin-top: calc(48 / 1920 * 100vw);
  font-weight: 700;
}
.p-menu__list01 dl {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  margin-bottom: calc(38 / 1920 * 100vw);
  max-width: calc(1020 / 1920 * 100vw);
  margin: 0 auto;
}
.p-menu__list01 dt {
  width: calc(912 / 1920 * 100vw);
}
.p-menu__list03 .p-ttl {
  width: calc(450 / 1920 * 100vw);
}
.p-menu__list12 .p-ttl {
  width: calc(790 / 1920 * 100vw);
}
.p-menu__list13 .p-ttl {
  width: calc(260 / 1920 * 100vw);
}
.p-menu__list17 .p-ttl {
  width: calc(450 / 1920 * 100vw);
}
.p-menu__list18 .p-ttl {
  width: calc(440 / 1920 * 100vw);
}
.p-menu__list19 .p-ttl {
  width: calc(310 / 1920 * 100vw);
}
.p-menu__list25 .p-ttl {
  width: calc(350 / 1920 * 100vw);
}
.p-menu__list29 .p-ttl {
  width: calc(315 / 1920 * 100vw);
}
@media screen and (max-width: 768px) {
  .p-menu .p-ttl h2 {
    font-size: 2.4rem;
  }
  .p-menu .kome {
    font-size: 1.3rem;
  }
  .p-menu .p-ttl {
    margin: 60px auto 20px;
  }
  .p-menu_select ul {
    gap: 40px;
  }
  .p-menu_select li a {
    font-size: 2rem;
  }
  .p-menu__list {
    padding: 0 4%;
  }

  .p-menu__list dl {
    font-size: 1.8rem;
    justify-content: space-between;
    margin: 0 auto 20px;
  }
  .p-menu__list dt {
    width: calc(288 / 440 * 100vw);
    line-height: 1.6;
  }
  .p-menu__list01 dl {
    max-width: unset;
  }
  .p-menu__list03 .p-ttl {
    width: 264px;
  }
  .p-menu__list12 .p-ttl {
    width: 270px;
  }
  .p-menu__list13 .p-ttl {
    width: 180px;
  }
  .p-menu__list17 .p-ttl {
    width: 300px;
  }
  .p-menu__list18 .p-ttl {
    width: 280px;
  }
  .p-menu__list19 .p-ttl {
    width: 200px;
  }
  .p-menu__list25 .p-ttl {
    width: 220px;
  }
  .p-menu__list29 .p-ttl {
    width: 190px;
  }
}
/* ------------
gallery
------------------*/
.p-gallery__box {
  max-width: 1400px;
  margin: calc(117 / 1920 * 100vw) auto calc(140 / 1920 * 100vw);
  width: 90%;
}

.p-gallery__box ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: calc(17 / 1920 * 100vw);
}
@media screen and (max-width: 768px) {
  .p-gallery__box {
    margin: 60px auto 80px;
  }
  .p-gallery__box ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 17px;
  }
}
/* ----------------
kodawari
------------------------*/
.kodawari__inner {
  padding: calc(120 / 1920 * 100vw) 0 calc(219 / 1920 * 100vw);
}
.kodawari__box01 {
  display: flex;
  gap: calc(217 / 1920 * 100vw);
  justify-content: flex-end;
  position: relative;
}
.kodawari__inner::after {
  content: "";
  background: url(../img/dec_02.png) no-repeat;
  background-size: contain;
  width: calc(692 / 1920 * 100vw);
  aspect-ratio: 692/606;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.kodawari_ttl {
  writing-mode: vertical-rl;
  letter-spacing: 0.8rem;
  line-height: 1.6;
  position: relative;
}

.kodawari_ttl::before {
  content: "";
  background: url(../img/dec03.png) no-repeat;
  background-size: contain;
  width: calc(133 / 1920 * 100vw);
  aspect-ratio: 133/88;
  display: block;
  position: absolute;
  left: calc(-110 / 1920 * 100vw);
  top: calc(-50 / 1920 * 100vw);
}
.kodawari_img {
  aspect-ratio: 1245/674;
  width: calc(1245 / 1920 * 100vw);
  position: relative;
}
.kodawari_lead {
  position: absolute;
  top: calc(512 / 1920 * 100vw);
  left: calc(606 / 1920 * 100vw);
}

.kodawari_lead p {
  line-height: 3;
  font-weight: 700;
  background-color: #fff;
  display: inline;
  padding: calc(10 / 1920 * 100vw);
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
}

.kodawari__box02 {
  position: relative;
  margin: calc(192 / 1980 * 100vw) 0 calc(170 / 1920 * 100vw);
}
.kodawari__box02--ttl {
  position: absolute;
  left: calc(321 / 1920 * 100vw);
  top: calc(-70 / 1920 * 100vw);
}
.kodawari__box02--ttl h2 {
  font-size: min(calc(32 / 1920 * 100vw), 3.2rem);
  writing-mode: vertical-rl;
  color: #fff;
  padding: calc(22 / 1920 * 100vw) calc(15 / 1920 * 100vw) 0;
  font-weight: 700;
  letter-spacing: 0.7rem;
  background-color: #c2b04d;
}
.kodawari__box02--flex {
  display: flex;
  justify-content: center;
  align-items: end;
}
.kodawari__box02--img {
  width: calc(566 / 1920 * 100vw);
}

.kodawari__box02--lead {
  background-color: #fff;
  padding: calc(85 / 1920 * 100vw) calc(48 / 1920 * 100vw);
  width: calc(602 / 1920 * 100vw);
  margin-left: calc(-58 / 1920 * 100vw);
}

.kodawari__box03 {
  margin-bottom: calc(217 / 1920 * 100vw);
  position: relative;
}
.kodawari__box03 .kodawari__box02--flex {
  flex-direction: row-reverse;
}
.kodawari__box03 .kodawari__box02--img {
  width: calc(705 / 1920 * 100vw);
}
.kodawari__box03 .kodawari__box02--lead {
  margin-left: 0;
  margin-right: calc(-128 / 1920 * 100vw);
  position: relative;
}
.kodawari__box03 .kodawari__box02--ttl {
  left: unset;
  right: calc(347 / 1920 * 100vw);
}
.kodawari__box04 {
  position: relative;
}
.kodawari__box04 .kodawari__box02--ttl h2 {
  line-height: 2;
  display: inline-block;
  background-color: unset;
}
.kodawari__box02--ttl span {
  writing-mode: vertical-rl;
  display: inline-block;
  background-color: #c2b04d;
  padding: calc(22 / 1920 * 100vw) calc(15 / 1920 * 100vw);
  margin-right: calc(17 / 1920 * 100vw);
}

.kodawari__box04 .kodawari__box02--img {
  width: calc(705 / 1920 * 100vw);
}
.kodawari__box04 .kodawari__box02--lead {
  padding: calc(29 / 1920 * 100vw) calc(48 / 1920 * 100vw);
  margin-left: calc(-118 / 1920 * 100vw);
}

.kodawari__box05 {
  display: flex;
  gap: calc(135 / 1920 * 100vw);
  justify-content: flex-end;
  position: relative;
  flex-direction: row-reverse;
  margin: calc(320 / 1920 * 100vw) 0 calc(398 / 1920 * 100vw);
}
.kodawari__box05 .kodawari_ttl::before {
  content: "";
  background: url(../img/dec05.png) no-repeat;
  background-size: contain;
  width: calc(80 / 1920 * 100vw);
  aspect-ratio: 80/127;
  display: block;
  position: absolute;
  left: calc(97 / 1920 * 100vw);
  top: calc(-107 / 1920 * 100vw);
}
.kodawari__box05 .kodawari_lead {
  position: absolute;
  top: calc(512 / 1920 * 100vw);
  left: calc(623 / 1920 * 100vw);
}

.kodawari__box05 .kodawari_lead p {
  line-height: 2;
  font-weight: 500;
  background-color: #fff;
  padding: calc(44 / 1920 * 100vw) calc(48 / 1920 * 100vw);
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  display: block;
  width: calc(602 / 1920 * 100vw);
}

.kodawari__box06 {
  display: flex;
  gap: calc(217 / 1920 * 100vw);
  justify-content: flex-end;
  position: relative;
}

.kodawari__box06 .kodawari_lead {
  position: absolute;
  top: calc(521 / 1920 * 100vw);
  left: calc(583 / 1920 * 100vw);
}

.kodawari__box06 .kodawari_lead p {
  line-height: 2;
  font-weight: 500;
  background-color: #fff;
  padding: calc(44 / 1920 * 100vw) calc(48 / 1920 * 100vw);
  font-size: min(calc(20 / 1920 * 100vw), 2rem);
  display: block;
  width: calc(602 / 1920 * 100vw);
}
@media screen and (max-width: 768px) {
  .kodawari__inner {
    padding: 60px 0 120px;
  }
  .kodawari__box01 {
    display: block;
    padding: 0 4%;
  }
  .kodawari_ttl {
    writing-mode: unset;
    letter-spacing: 0.5rem;
  }
  .kodawari_img {
    width: auto;
    aspect-ratio: unset;
  }
  .kodawari_ttl::before {
    width: 68px;
    left: -20px;
    top: -10px;
  }
  .kodawari_lead {
    position: static;
  }
  .kodawari_lead p {
    font-size: 2rem;
    line-height: 2;
  }
  .kodawari__box02 {
    margin: 60px 0 100px;
  }
  .kodawari__box02--flex {
    display: block;
    padding: 0 4%;
  }
  .kodawari__box02--img {
    width: auto;
  }
  .kodawari__box02--ttl {
    left: 0;
    top: -30px;
  }
  .kodawari__box02--ttl h2 {
    font-size: 2.4rem;
    padding: 10px;
    letter-spacing: 0.4rem;
    writing-mode: unset;
  }
  .kodawari__box02--lead {
    width: auto;
    padding: 20px 4%;
    margin: 20px 0 0 0;
  }
  .kodawari__box03 .kodawari__box02--img {
    width: auto;
  }
  .kodawari__box03 .kodawari__box02--ttl {
    right: 0;
    z-index: 99;
  }
  .kodawari__box03 .kodawari__box02--lead {
    margin-right: 0;
  }
  .kodawari__box04 .kodawari__box02--img {
    width: auto;
  }
  .kodawari__box04 .kodawari__box02--ttl h2 {
    line-height: 1.8;
  }
  .kodawari__box02--ttl span {
    writing-mode: unset;
    display: inline;
    font-size: 2rem;
    padding: 5px;
  }
  .kodawari__box04 .kodawari__box02--lead {
    padding: 10px;
    margin-left: unset;
  }
  .kodawari__box05 {
    display: block;
    margin: 100px 4%;
  }
  .kodawari__box05 .kodawari_ttl::before {
    width: 80px;
    aspect-ratio: 80/48;
    left: -10px;
    top: -20px;
  }
  .kodawari__box05 .kodawari_lead {
    position: static;
    margin-top: 20px;
  }
  .kodawari__box05 .kodawari_lead p {
    width: auto;
    font-size: 1.6rem;
    padding: 10px 4%;
  }
  .kodawari__box06 {
    display: block;
    padding: 0 4%;
  }
  .kodawari__box06 .kodawari_lead {
    position: static;
    margin-top: 20px;
  }
  .kodawari__box06 .kodawari_lead p {
    width: auto;
    font-size: 1.6rem;
    padding: 10px 4%;
  }
}

/* -----------------
recruit
---------------------*/
.p-recruit {
  padding: calc(100 / 1920 * 100vw) 0 calc(152 / 1920 * 100vw);
}
.recruit__lead {
  color: #fff;
  text-align: center;
}
.recruit__lead h3 {
  font-size: min(calc(40 / 1920 * 100vw), 4rem);
  margin-bottom: calc(40 / 1920 * 100vw);
  font-weight: 500;
}
.recruit__lead p {
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  color: #fff;
}
.recruit__lead h4 {
  font-size: min(calc(36 / 1920 * 100vw), 3.6rem);
  line-height: 1.6;
  margin: calc(20 / 1920 * 100vw) 0 0;
  font-weight: 500;
}
.p-recruit_description {
  padding-bottom: calc(196 / 1920 * 100vw);
}
.recruit__box {
  max-width: calc(596 / 1920 * 100vw);
  margin: calc(80 / 1920 * 100vw) auto;
}
.recruit__box dl {
  display: flex;
  color: #fff;
  margin-bottom: calc(20 / 1920 * 100vw);
  font-size: min(calc(20 / 1920 * 100vw));
}
.recruit__box dt {
  background-color: #a8191e;
  width: calc(150 / 1920 * 100vw);
  text-align: center;
  padding: calc(19 / 1920 * 100vw) 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.recruit__box dd {
  margin-left: calc(56 / 1920 * 100vw);
  line-height: 2;
  display: flex;
  align-items: center;
}

.recruit__btn {
  background-color: #a8191e;
  padding: calc(33 / 1920 * 100vw) 0;
  width: calc(368 / 1920 * 100vw);
  margin: 0 auto;
}
.recruit__btn a {
  color: #fff;
  text-align: center;
  font-size: min(calc(24 / 1920 * 100vw), 2.4rem);
  font-weight: 700;
}

/* ---------------
ichijo
---------------------*/
#ichijo .recruit__lead,
#ichijo .recruit__lead p,
#ichijo .recruit__box dd {
  color: #353535;
}

@media screen and (max-width: 768px) {
  .p-recruit {
    padding: 60px 4% 100px;
  }
  .recruit__lead h3 {
    font-size: 2rem;
    margin-bottom: 20px;
  }
  .recruit__lead p {
    font-size: 1.6rem;
  }
  .recruit__lead h4 {
    font-size: 2rem;
    margin: 20px 0 0;
  }
  .recruit__box {
    max-width: unset;
    margin: 40px 4%;
  }
  .recruit__box dl {
    margin-bottom: 15px;
    font-size: 1.6rem;
  }
  .recruit__box dt {
    width: 100px;
  }
  .recruit__box dd {
    width: 219px;
  }
  .recruit__btn {
    width: 180px;
    padding: 15px 0;
  }
  .recruit__btn a {
    font-size: 1.6rem;
  }
}
