@charset "UTF-8";
/* コンテンツ最大幅 */
/* color */
/* ============================================ */
/* font */
/* ============================================ */
/* attractions */
/* ============================================ */
.item_miyroku {
  display: flex;
  gap: 4vw;
  place-items: center;
}
@media all and (max-width: 480px) {
  .item_miyroku {
    padding: 10px 0;
    display: block;
  }
}
.item_miyroku:nth-child(even) {
  flex-direction: row-reverse;
}
.item_miyroku .side_img {
  width: 36%;
}
@media all and (max-width: 480px) {
  .item_miyroku .side_img {
    width: 100%;
  }
}
.item_miyroku .side_txt {
  text-align: left;
  width: 64%;
}
@media all and (max-width: 480px) {
  .item_miyroku .side_txt {
    margin-top: -20px;
    width: 100%;
  }
}
.item_miyroku .side_txt .btn_link a {
  font-size: 1.7rem;
}
@media all and (max-width: 480px) {
  .item_miyroku .side_txt .btn_link a {
    font-size: 1.4rem;
    padding-bottom: 5px;
  }
}
.item_miyroku .side_txt .btn_link a::after {
  top: 32%;
  transform: translateY(-32%);
  width: 16px;
  height: 15px;
}
@media all and (max-width: 480px) {
  .item_miyroku .side_txt .btn_link a::after {
    width: 13px;
    height: 12px;
  }
}

.box_charm_img {
  border-radius: 300px;
  width: 100%;
  aspect-ratio: 24/31;
  overflow: hidden;
  margin: auto;
}
@media all and (max-width: 480px) {
  .box_charm_img {
    width: 60%;
  }
}
.box_charm_img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.charm_no {
  width: 21%;
  margin: 0 auto 0 0;
}
.charm_no img {
  width: 100%;
  height: auto;
}

.charm_ttl {
  font-size: 4rem;
  padding: 30px 0 0;
}
@media all and (max-width: 1300px) {
  .charm_ttl {
    font-size: clamp(2.4rem, 3.1vw, 4rem);
  }
}
@media all and (max-width: 896px) {
  .charm_ttl {
    padding: 15px 0 0;
  }
}

.charm_txt {
  font-size: 1.7rem;
  line-height: 2em;
  padding: 25px 0 0;
}
@media all and (max-width: 1300px) {
  .charm_txt {
    font-size: clamp(1.4rem, 1.3vw, 1.7rem);
  }
}
@media all and (max-width: 896px) {
  .charm_txt {
    padding: 10px 0 0;
  }
}

.charm_txt_kome {
  font-size: 1.7rem;
  line-height: 1.8em;
  padding: 18px 0 0 1em;
  text-indent: -1em;
}
.charm_txt_kome::before {
  content: "※";
}
@media all and (max-width: 1300px) {
  .charm_txt_kome {
    font-size: clamp(1.4rem, 1.3vw, 1.7rem);
  }
}
@media all and (max-width: 896px) {
  .charm_txt_kome {
    padding: 8px 0 0 1em;
  }
}

.box_btn {
  margin: 0 0 0 auto;
  display: inline-block;
}
.box_btn .btn_link {
  display: inline-block;
  padding-right: 20px;
}

.block__staff {
  position: relative;
  margin-top: 100px;
}
@media all and (max-width: 1300px) {
  .block__staff {
    margin-top: 7.8vw;
  }
}
.block__staff--bg {
  margin: 0 calc(50% - 50vw);
  position: relative;
  background-color: #FFF;
  height: 200px;
}
@media all and (max-width: 1300px) {
  .block__staff--bg {
    height: 15.6vw;
  }
}
@media all and (max-width: 480px) {
  .block__staff--bg {
    height: 160px;
  }
}
.block__staff--column {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.6vw;
  margin-top: -100px;
}
@media all and (max-width: 1300px) {
  .block__staff--column {
    margin-top: -7.8vw;
  }
}
@media all and (max-width: 480px) {
  .block__staff--column {
    grid-template-columns: 1fr;
    gap: 0vw;
    margin-top: -130px;
  }
}
.block__staff--column .side_img .box_img {
  border-radius: 16px;
  overflow: hidden;
}
.block__staff--column .side_img .box_img img {
  width: 100%;
  height: auto;
}
.block__staff--column .side_txt {
  padding-top: 18px;
}
@media all and (max-width: 480px) {
  .block__staff--column .side_txt {
    padding-top: 8px;
  }
}

.ttl_staff {
  font-family: "Dancing Script", cursive;
  font-optical-sizing: auto;
  font-style: normal;
  color: #4CABB1;
  font-size: 5.4rem;
  line-height: 1em;
}
@media all and (max-width: 1300px) {
  .ttl_staff {
    font-size: clamp(3rem, 4.2vw, 5.4rem);
  }
}

.heading_staff {
  font-size: 3.6rem;
  padding: 50px 0 0;
  line-height: 1.3em;
}
@media all and (max-width: 1300px) {
  .heading_staff {
    font-size: clamp(2rem, 2.8vw, 3.6rem);
  }
}
@media all and (max-width: 896px) {
  .heading_staff {
    padding: 10px 0 0;
  }
}

.txt_staff {
  line-height: 1.8em;
  padding: 16px 0 0;
}
@media all and (max-width: 1300px) {
  .txt_staff {
    padding: 1vw 0 0;
  }
}