@charset "utf-8";


/* @font-face {
    font-family: "hannari_min_r";
    src: url('../fonts/HannariMincho-Regular.woff') format('woff'),
} */
@font-face {
    font-family: "hiragino_sans_w3";
    src: url('../fonts/HiraginoSansGB-W3-Alphabetic.woff') format('woff'),
}

@font-face {
    font-family: "hiragino_sans_w6";
    src: url('../fonts/HiraginoSansGB-W6-Alphabetic.woff') format('woff'),
}

@font-face {
    font-family: "hiragino_min_w3";
    src: url('../fonts/Hiragino Mincho ProN W3.woff') format('woff'),
}

@font-face {
    font-family: "hiragino_min_w6";
    src: url('../fonts/Hiragino Mincho ProN W6.woff') format('woff'),
}

@font-face {
    font-family: "noto_sans";
    src: url('../fonts/NotoSansCJKjp-VF.woff') format('woff'),
}

@font-face {
    font-family: "noto_sans_mono";
    src: url('../fonts/NotoSansMonoCJKjp-VF.woff') format('woff'),
}

@font-face {
    font-family: "shippori_min_b";
    src: url('../fonts/ShipporiMincho-Bold.woff') format('woff'),
}
@font-face {
    font-family: "shippori_min_r";
    src: url('../fonts/ShipporiMincho-Regular.woff') format('woff'),
}
/* @font-face {
    font-family: "songti_b";
    src: url('../fonts/songti-sc-bold.woff') format('woff'),
}
@font-face {
    font-family: "songti_r";
    src: url('../fonts/songti-sc-regular.woff') format('woff'), 
}*/
@font-face {
    font-family: "noto_serif";
    src: url('../fonts/NotoSerifJP-VariableFont_wght.woff') format('woff'),
}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html{
    overflow-x: hidden;
    scroll-padding-top:200px;  
    scroll-behavior: smooth;
}
body {
    font-family:"MS PMincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;
    color: #333;
    overflow-x: clip;
    box-sizing: border-box;
}
.hannari {
    font-family: 'hannari_min_r';
}
.hiraSans_w3 {
    font-family: 'hiragino_sans_w3';
}
.hiraSans_w6 {
    font-family: 'hiragino_sans_w6';
}
.hiraMin_w3 {
    font-family: 'hiragino_min_w3';
}
.hiraMin_w6 {
    font-family: 'hiragino_min_w6';
}
.notoSans {
    font-family: 'noto_sans';
}
.notoSans_mono {
    font-family: 'noto_sans_mono';
}
.shippori_b {
    font-family: 'shippori_min_b';
}
.shippori_r {
    font-family: 'shippori_min_r';
}
.songti_b {
    font-family: 'songti_b';
}
.songti_r {
    font-family: 'songti_r';
}
.notoSerif {
    font-family: 'noto_serif';
}

img,
video {
    display: block;
    width: 100%;
}

a {
    text-decoration: none;
    /* color: #fff; */
    transition: all .3s;
}

a:hover {
    opacity: 0.5;
}

li {
    list-style: none;
}

[id] {
  scroll-margin-top:-200px; /* 固定ヘッダーの高さ分 */
}

/* 共通 */
.pc,.pc_2 {
    display: block;
}

.sp,.sp_2 {
    display: none !important;
}
.pc_only {
    display:block;
}
@media (max-width: 768px) {
    .pc_only {
        display:none !important;
    }
    .pc_2 {
        display: none !important;
    }

    .sp_2 {
        display: block !important;
    }
}
@media (max-width: 480px) {
    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }
}


/* wrapper */
.mv_wrapper {
    position: relative;
}
.wrapper_top_m {
    margin-top: 200px;
}
.contents_wrapper {
    position: relative;
    width: 980px;
    margin: 0 auto;
}
.contents_wrapper_w {
    position: relative;
    width: 1180px;
    margin: 0 auto;
}
.contents_wrapper.bg_w,
.contents_wrapper_w.bg_w { 
    background: #fff;
}
.footer_wrapper {
    position: relative;
    padding: 120px 0 0;
    background: url("../images/footer_bg.webp") no-repeat center center / cover;
}
.bg_wrapper {
    padding: 120px 0 50px;
    position: relative;
}
.bg_wrapper.bg_w {
    background: #fff;
}
.bg_wrapper.bg_washi {
    padding: 70px 0 50px;
    background: url("../images/bg_washi.webp") no-repeat center center / cover;
}
.bg_wrapper.bg_goma1 {
    padding: clamp(6.25rem, 3.571rem + 14.286vw, 12.5rem) 0 clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    background: url("../images/gomakigan/bg_goma1.webp") no-repeat center center / cover;
}
.bg_wrapper.bg_goma2 {
    padding: 120px 0 50px;
    background: url("../images/gomakigan/bg_goma2.webp") no-repeat center center / cover;
}
.bg_wrapper.bg_goma3 {
    padding: 120px 0 50px;
    background: #F2F0E8;
}
.bg_wrapper.bg_eitai1 {
    padding: 70px 0 50px;
    background: #F2F0E8;
}
.bg_wrapper.bg_mizuko {
    padding: 120px 0 120px;
    background: #F2F0E8;
}
.bg_wrapper.about_bg_plus {
    padding: 20px 0 50px;
    background: #F2F0E8;
}
.bg_wrapper.bg_kuyo {
    padding: 170px 0 10px;
    background: #F2F0E8;
}
.about_bg_plus .about_bg_inner {
    position: absolute;
    top: -100px;
    width: 100%;
    height: 100px;
    background: #F2F0E8;
    z-index: -10;
}
.bg_be {
    background: #F2F0E8;
}

@media screen and (max-width: 1200px) {
    .contents_wrapper_w {
        width: 100%;
    }
    .inner_wrapper {
        padding: 0 10px;
    }
}
@media screen and (max-width: 1000px) {
    .contents_wrapper {
        width: 100%;
    }
    .wrapper_top_m {
        margin-top: 0px;
    }
    .footer_wrapper {
        padding: 80px 0 0;
    }
    .bg_wrapper {
        padding: 80px 0 50px;
    }
    .bg_wrapper.bg_washi {
        padding: 50px 0 30px;
    }
    .bg_wrapper.bg_goma2 {
        padding: 80px 0 50px;
    }
    .bg_wrapper.bg_goma3 {
        padding: 80px 0 50px;
    }
    .bg_wrapper.bg_eitai1 {
        padding: 50px 0 30px;
    }
    .bg_wrapper.bg_mizuko {
        padding: 70px 0 70px;
    }
    .bg_wrapper.bg_kuyo {
        padding: 70px 0 10px;
    }
}
@media screen and (max-width: 480px) {
    .footer_wrapper {
        padding: 50px 0 0;
    }
    .bg_wrapper {
        padding: 50px 0 30px;
    }
    .bg_wrapper.bg_washi {
        padding: 30px 0 20px;
    }
    .bg_wrapper.bg_goma2 {
        padding: 50px 0 30px;
    }
    .bg_wrapper.bg_goma3 {
        padding: 50px 0 30px;
    }
    .bg_wrapper.bg_eitai1 {
        padding: 30px 0 20px;
    }
    .bg_wrapper.bg_mizuko {
        padding: 50px 0 50px;
    }
    .bg_wrapper.about_bg_plus {
        padding: 20px 0 30px;
    }
    .bg_wrapper.bg_kuyo {
        padding: 50px 0 10px;
    }
}


/* 見出し */
h1, h2, h3, h4, h5, h6 {
    letter-spacing: 2px;
}
h1.top_title {
    display: none;
}
h1.mv_title {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70%;
    /* font-size: 40px; */
    font-size: clamp(1.5rem, 1.071rem + 2.286vw, 2.5rem);
    color: #fff;
    transform: translate(-50%, -50%);
    text-align: center;
}
h1.mv_title.small_title {
    /* font-size: 32px; */
    font-size: clamp(0.875rem, 0.393rem + 2.571vw, 2rem);
    letter-spacing: 0;
}
h2.top_content_title {
    margin: 0 0 30px;
    /* font-size: 32px; */
    font-size: clamp(1.375rem, 1.107rem + 1.429vw, 2rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
h2.top_news_title {
    margin: 0 0 30px;
    text-align: center;
    /* font-size: 32px; */
    font-size: clamp(1.5rem, 1.125rem + 2vw, 2.375rem);
    font-weight: 700;
    color: #A98804;
}
.mv_josyoji {
    position: absolute;
    top: clamp(1.25rem, 1.250rem + 0vw, 1.25rem);
    left: clamp(1.25rem, 0.446rem + 4.286vw, 3.125rem);
    width: clamp(1.25rem, 0.982rem + 1.429vw, 1.875rem);
}
h2.page_big_title {
    margin: clamp(4.375rem, 1.429rem + 15.714vw, 11.25rem) 0 30px;
    /* font-size: 36px; */
    font-size: clamp(1.375rem, 1.000rem + 2vw, 2.25rem);
    font-weight: 400;
    color: #A98804;
    text-align: center;
}
h2.page_w_title {
    margin: 0 0 30px;
    /* font-size: 45px; */
    font-size: clamp(1.625rem, 1.116rem + 2.714vw, 2.813rem);
    color: #fff;
    text-align: center;
}
h2.page_g_title {
    margin: 0 0 30px;
    /* font-size: 36px; */
    font-size: clamp(1.375rem, 1.000rem + 2vw, 2.25rem);
    font-weight: bold;
    color: #A98804;
    text-align: center;
}
h2.page_g_s_title {
    margin: 0 0 30px;
    /* font-size: 32px; */
    font-size: clamp(1.25rem, 0.929rem + 1.714vw, 2rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
.page_g_s_title .t_Furigana {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 400;
    line-height: 0.5;
    color: #333;
}
h2.page_g_ss_title {
    margin: 0 0 30px;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
h2.title_m {
    margin: 0 0 50px;
}
h2.title_top {
    margin: clamp(4.375rem, 1.429rem + 15.714vw, 11.25rem) 0 30px;
}
h2.title_top_in {
    margin: clamp(3.125rem, 1.786rem + 7.143vw, 6.25rem) 0 30px;
}
h2.title_left {
    text-align: left;
}
h2.title_line {
    position: relative;
    margin-bottom: 120px;
}
.title_line::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 120%);
  width: 1px; /* 縦線の太さ */
  height: 80px; /* 縦線の長さ */
  background-color: #A98804; /* 線の色 */
}


/* ハンバーガー */

.hamburger {
    position: absolute;
    display: flex;
    justify-content: center;
    top: 20px;
    right: 20px;
    z-index: 100;
    width: 50px;
    height: 50px;
    padding: 5px 0;
    border: none;
    /* font-size: 12px; */
    font-size: clamp(0.625rem, 0.571rem + 0.286vw, 0.75rem);
    color: #fff;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
    background: rgba(150, 150, 150, 0.3);
    cursor: pointer;
    transition: all .4s;
    pointer-events: auto;
}

.hamburger_line {
    position: absolute;
    left: 9px;
    width: 32px;
    height: 2px;
    background-color: #fff;
    transition: all .4s;
    box-shadow:1px 1px 2px rgba(0, 0, 0, 0.5);
}

.hamburger_line:nth-of-type(1) {
    top: 26px;
}
.hamburger_line:nth-of-type(2) {
    top: 33px;
}
.hamburger_line:nth-of-type(3) {
    top: 40px;
}

/* メニューオープン時 */
.hamburger.active {
    color: #333;
}
.hamburger.active .hamburger_line {
    background-color: #333;
}
.hamburger.active .hamburger_line:nth-of-type(1) {
    transform: translateY(7px) rotate(-30deg);
}
.hamburger.active .hamburger_line:nth-of-type(2) {
    opacity: 0;
}
.hamburger.active .hamburger_line:nth-of-type(3) {
    transform: translateY(-7px) rotate(30deg);
}


/* アコーディオン */

.accordion {
    margin: 0 0 30px;
  list-style: none;
  border-top: 1px solid #A98804;
}
.accordion.acco_m {
    margin: 0 0 120px;
}
@media screen and (max-width: 767px) {
.accordion.acco_m {
    margin: 0 0 70px;
}
}

.accordion-q-prefix {
  display: block;
  position: absolute;
  line-height: 1;
  color: #A98804;
}
@media print, (min-width: 768px) {
  .accordion-q-prefix {
    left: 20px;
    top: 24px;
    /* font-size: 32px; */
    font-size: clamp(1.375rem, 1.107rem + 1.429vw, 2rem);
  }
}
@media screen and (max-width: 767px) {
  .accordion-q-prefix {
    left: 10px;
    top: 18px;
  }
}

.accordion-q-content {
  display: block;
  line-height: 1.6;
}
.accordion-q-content {
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
}

.accordion-q-icon {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media print, (min-width: 768px) {
  .accordion-q-icon {
    right: 20px;
    width: 20px;
    height: 20px;
  }
}
@media screen and (max-width: 767px) {
  .accordion-q-icon {
    right: 10px;
    width: 16px;
    height: 16px;
  }
}
.accordion-q-icon::before,
.accordion-q-icon::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #333;
}
@media print, (min-width: 768px) {
  .accordion-q-icon::before,
  .accordion-q-icon::after {
    top: 9px;
  }
}
@media screen and (max-width: 767px) {
  .accordion-q-icon::before,
  .accordion-q-icon::after {
    top: 7px;
  }
}
.accordion-q-icon::after {
  transform: rotate(90deg);
  transition: transform 400ms;
}

.accordion-q button {
  display: block;
  position: relative;
  width: 100%;
  box-sizing: border-box;
  border: none;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  appearance: none;
  cursor: pointer;
  transition: opacity 400ms;
}
@media print, (min-width: 768px) {
  .accordion-q button {
    padding: 25px 60px 25px 57px;
  }
}
@media screen and (max-width: 767px) {
  .accordion-q button {
    padding: 15px 36px 15px 41px;
  }
}
@media print, (min-width: 768px) {
  .accordion-q button:hover,
  .accordion-q button:active {
    opacity: 0.5;
  }
}

.accordion-a {
  display: none;
  overflow: hidden;
}
.accordion-a-inner {
  position: relative;
}
@media print, (min-width: 768px) {
  .accordion-a-inner {
    padding: 5px 0 30px 57px;
  }
    .accordion.yaku-type .accordion-a-inner {
        padding: 5px 0 30px;
    }
    .accordion.arrow-type .accordion-a-inner {
        padding: 5px 0 30px 50px;
    }
}
@media screen and (max-width: 767px) {
  .accordion-a-inner {
    padding: 0 0 25px 41px;
  }
    .accordion.yaku-type .accordion-a-inner {
    padding: 0 0 25px;
    }
    .accordion.arrow-type .accordion-a-inner {
    padding: 0 0 25px 15px;
    }
}
.accordion-a-prefix {
  position: absolute;
  line-height: 1;
  color: #740A00;
}
@media print, (min-width: 768px) {
  .accordion-a-prefix {
    left: 20px;
    top: 1px;
    /* font-size: 30px; */
    font-size: clamp(1.25rem, 0.982rem + 1.429vw, 1.875rem);
  }
}
@media screen and (max-width: 767px) {
  .accordion-a-prefix {
    left: 10px;
    top: 3px;
  }
}

@media print, (min-width: 768px) {
  .accordion-a-content p {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  .accordion-a-content p {
    line-height: 1.7;
  }
}

.accordion > li {
  border-bottom: 1px solid #A98804;
}
.accordion > li.is-open .accordion-q-icon::after {
  transform: rotate(0deg);
}

/* arrow-type */
.accordion.arrow-type .accordion-q-icon::before,
.accordion.arrow-type .accordion-q-icon::after {
  content: none;
  background: none;
  width: 0;
  height: 0;
}
.accordion.arrow-type .accordion-q-icon::before {
  content: "▼";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  text-align: center;
  transform: translateY(-50%);
  color: #333;
    /* font-size: 14px; */
    font-size: clamp(0.375rem, 0.107rem + 1.429vw, 1rem);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.accordion.arrow-type > li.is-open .accordion-q-icon::before {
  opacity: 0;
}
.accordion.arrow-type {
  border: none;
}
.accordion.arrow-type > li {
  border: none;
}
.accordion.arrow-type .accordion-q {
  background: #F2F0E8;
}
.accordion.arrow-type .accordion-a-content {
    margin: 20px 0 0;
}
.accordion-a-content a {
    color: #A98804;
}

/* yaku-type */
.accordion.yaku-type .accordion-q-icon::before,
.accordion.yaku-type .accordion-q-icon::after {
  content: none;
  background: none;
  width: 0;
  height: 0;
}
.accordion.yaku-type .accordion-q-icon::before {
  content: "▼";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  color: #333;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.accordion.yaku-type > li.is-open .accordion-q-icon::before {
  opacity: 0;
}
.accordion.yaku-type {
  border: none;
}
.accordion.yaku-type > li {
  border: none;
}
.accordion.yaku-type .accordion-q {
    /* font-size: 36px; */
    font-size: clamp(1.5rem, 1.179rem + 1.714vw, 2.25rem);
    font-weight: 700;
    color: #A98804;
  border: 1px solid #333;
}
.accordion.yaku-type .accordion-q button {
  text-align: center;
}
/* ボタン */
.contact_btn {
    display: flex;
    align-items: center;
}
.contact_btn.btn_m20 {
    margin-bottom: 20px;
}
.contact_btn.m20 a {
    margin-bottom: 20px;
}
.contact_btn a {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 250px;
    min-height: 70px;
    padding: 10px 35px 10px 30px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.5;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #A98804;
    border-radius: 50px;
}
.contact_btn.btn_mail a {
    min-width: 270px;
}
.contact_btn.btn_m a {
    min-height: 50px;
}
.contact_btn:hover {
    opacity: 0.7;
}
.contact_btn.btn_center {
    justify-content: center;
}
.contact_btn.btn_center a {
    margin: 0 auto;
}
.contact_btn.btn_w a {
    background: #fff;
    color: #333;
}
.contact_btn.btn_g a {
    background: #A98804;
    color: #fff;
}
.contact_btn.btn_r a {
    background: #fff;
    color: #740A00;
    border: 1px solid #740A00;
}
.box_color .contact_btn a {
    border: 1px solid #C9BA7C;
}
.box_color .contact_btn.btn_g a {
    background: #C9BA7C;
    color: #fff;
}
.contact_btn.btn_small a {
    min-width: 200px;
    min-height: 50px;
}
.contact_btn.kuyo_s_btn a {
    min-width: 200px;
    min-height: 40px;
    font-size: 0.8em;
    padding: 5px 30px 5px 20px;
}
.contact_btn.btn_w.btn_arrow a::after,
.contact_btn.btn_g.btn_arrow a::after,
.contact_btn.btn_r.btn_arrow a::after {
    content: '';
    position: absolute;
    right: 15px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 0.35em 0.7em;
    border-right: 0;
}
.contact_btn.btn_w.btn_arrow a::after {
    border-left-color: #A98804;
}
.box_color .contact_btn.btn_w.btn_arrow a::after {
    border-left-color: #C9BA7C;
}
.contact_btn.btn_g.btn_arrow a::after {
    border-left-color: #fff;
}
.contact_btn.btn_r.btn_arrow a::after {
    border-left-color: #740A00;
}

.contact_btn.btn_g.btn_mail a {
    padding: 10px 10px 10px 55px;
}
.contact_btn.btn_g.btn_mail a::after {
    content: '';
    position: absolute;
    left: 30px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    width: 20px;
    height: 16px;
    background: url("../images/mail.webp") no-repeat center center / cover;
}
.contact_btn.btn_between {
    justify-content: space-between;
}

@media screen and (max-width: 1000px) {
    .contact_btn a {
        min-width: 200px;
        min-height: 50px;
    }
    .contact_btn.btn_mail a {
        min-width: 220px;
    }
    .contact_btn.btn_m a {
        min-height: 40px;
    }
    .contact_btn.btn_g.btn_mail a::after {
        left: 20px;
    }
    .contact_btn.btn_g.btn_mail a {
        padding: 10px 10px 10px 45px;
    }
}
@media screen and (max-width: 768px) {
    .contact_btn.btn_between {
        flex-direction: column;
        align-items: center;
    }
    .contact_btn.btn_between a {
        margin: 0 auto 20px;
    }
}
@media screen and (max-width: 480px) {
    .contact_btn.btn_small a {
        min-width: auto;
        min-height: auto;
        padding: 10px 30px 10px 20px;
    }
}

/* header */

.nav_menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    padding: 130px 0 0;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform .4s;
    z-index: 90;
    background: url("../images/nav_bg.webp") no-repeat center center / cover;
    pointer-events: auto;
}

.nav_menu.active {
    transform: translateX(0);
}

.header {
    position: fixed;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    height: 85px;
    z-index: 100;
    pointer-events: none;
}
.header_nav {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 45px;
    margin: 0 clamp(5rem, 3.929rem + 5.714vw, 7.5rem) 0 0;
    pointer-events: auto;
}

.header_nav_btn {
    height: 100%;
}
.header_nav_btn a {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    padding: 0 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    background: #A98804;
    color: white;
}
.header_nav_btn.btn_red a {
    background: #740A00;
}

.nav_menu_inner {
    position: relative;
}
.header_menu {
    position: absolute;
    top: 0;
    list-style: none;
    z-index: 10;
}
.header_menu_bottom {
    position: relative;
    left: 15%;
    width: 85%;
    padding: 450px 0 0;
}
.header_menu_bottom_ul {
    display: flex;
    gap: 10%;
    list-style: none;
}
.header_menu.menu_1 {
    left: 15%;
}
.header_menu.menu_2 {
    left: 35%;
}
.header_menu.menu_3 {
    left: 60%;
}
.header_menu_li {
    margin: 0 0 40px;
    padding: 0 10px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
}
.header_menu_li a {
    color: #333;
}
.header_menu_li_title {
    margin: 0 0 30px;
    padding: 0 10px;
    /* font-size: 20px; */
    font-size: clamp(0.875rem, 0.714rem + 0.857vw, 1.25rem);
    color: #740A00;
}
.header_menu_li.menu_li_m {
    margin: 0 0 25px;
}
.header_menu_li.menu_li_f {
    font-size: clamp(0.875rem, 0.607rem + 1.429vw, 1.5rem);
}
.header_menu_m {
    margin-top: 30px;
}
.nav_link {
    display: block;
    padding: 15px 0;
    color: #0E0E0E;
}

/* top */
.index .mv_wrapper {
    margin: 0 auto 180px;
}

.mv_contents {
    display: flex;
    justify-content: space-evenly;
    align-items: stretch;
}
.mv_content_left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 33%;
}
.mv_content_right {
    width: 62%;
    max-width: 900px;
}
.mv_content_text_s {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    text-align: center;
    margin: 0 0 10px;
}
.mv_content_text {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    text-align: center;
    margin: 0 0 30px;
}

/* contents */
.contents_flex {
    display: flex;
    flex-wrap: wrap;
}
.contents_flex,center {
    justify-content: center;
}
.contents_flex.between {
    justify-content: space-between;
}
.contents_flex.gap1 {
    gap: 1%;
}
.contents_link {
    position: relative;
    width: 50%;
    line-height: 0;
    transition: filter 0.3s ease;
}
.contents_link a:hover {
    opacity: 1;
}
.contents_link:hover {
    
  filter: brightness(1.3);
}
.contents_link {
  position: relative;
  overflow: hidden;
}

.contents_link img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.contents_link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-25deg);
}

.contents_link:hover::before {
  animation: shine 0.3s ease-in-out;
}

@keyframes shine {
  0% {
    left: -75%;
  }
  100% {
    left: 125%;
  }
}

.contents_link_block {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    max-width: 240px;
    width: 100%;
    height: clamp(3.125rem, 2.054rem + 5.714vw, 5.625rem);
    color: #fff;
    background: rgba(51, 51, 51, 0.7);
}
.contents_link_text {
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    margin: 0 0 0 40px;
}
.contents_link_text.text_m {
    margin: 0 0 0 25px;
}
.contents_link_text::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 30px;
    width: 50px;
    height: 1px;
    background-color: #ffffff;
}
.contents_link_text::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 30px;
    width: 15px;
    height: 1px;
    border-radius: 9999px;
    background-color: #ffffff;
    transform: rotate(25deg);
    transform-origin: calc(100% - 0.5px) 50%;
}
/* news */
.news_block {
    width: 24%;
    margin: 0 0 20px;
}
.news_block.content_3 {
    width: 32.5%;
}
.news_block a {
    color: #333;
}
.news_img {
    margin: 0 0 15px;
}
.news_img img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}
.news_title {
    margin: 0 0 10px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.news_text {
  font-size: clamp(0.875rem, 0.571vw + 0.768rem, 1.125rem);
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}


.top_form {
    max-width: 680px;
    width: 100%;
    margin: 0 auto 68px;
}
.top_line {
    max-width: 320px;
    width: 100%;
    margin: 0 auto 30px;
}

/* footer */
.footer_gmap iframe {
    display: block;
    width: 100%;
    height: 500px;
}
.footer_logo {
    max-width: 420px;
    width: 100%;
    margin: 0 auto 40px;
    padding: 0 10px;
}
.footer_text {
    margin: 0 auto 300px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    color: #fff;
    text-align: center;
    text-shadow: 4px 4px 8px rgba(0,0,0,0.5);
}
.footer_text a {
    color: white;
}
.footer_copy {
    padding: 0 0 10px;
    /* font-size: 12px; */
    font-size: clamp(0.625rem, 0.571rem + 0.286vw, 0.75rem);
    color: #fff;
    text-align: center;
}


/* page */
.top_mv {
  width: 100%;
  max-width: 1500px;
  height: 70vw;
  min-height: 500px;
  max-height: 800px;
  margin: 0 auto 30px;
  position: relative;
  overflow: hidden;
}

.top_mv_bg {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
}
.top_mv_bg.top_mv4 {
    background-image: url('../images/top/top_mv04.webp');
}
@media screen and (max-width: 480px) {
    .top_mv_bg.top_mv4 {
        background-image: url('../images/top/top_mv04_sp.webp');
    }
}

.mv_border_left {
  position: absolute;
  top: 16%;
  left: 4%;
  right: 60%;
  bottom: 6%;
  border: 1px solid #fff;
  border-right: none;
  box-sizing: border-box;
  pointer-events: none;
  border-radius: 40px 0 0 40px;
  z-index: 10;
}
.mv_border_center {
  position: absolute;
  top: 16%;
  left: 40%;
  right: 40%;
  bottom: 6%;
  border: 1px solid #fff;
  border-top: none;
  border-left: none;
  border-right: none;
  box-sizing: border-box;
  pointer-events: none;
  z-index: 10;
}
.mv_border_right {
  position: absolute;
  top: 16%;
  left: 60%;
  right: 4%;
  bottom: 6%;
  border: 1px solid #fff;
  border-left: none;
  box-sizing: border-box;
  pointer-events: none;
  border-radius: 0 40px 40px 0;
  z-index: 10;
}
.swiper-pagination-bullet {
  background: #fff;
  opacity: 0.7;
}
.swiper-pagination-bullet-active {
  opacity: 1;
}
.top_mv_inner {
  position: absolute;
  top: clamp(30px, -13.750px + 6.25vw, 80px);
  left: 50%;
  transform: translate(-50%, 0);
  text-align: center;
  z-index: 10;
}
.top_mv_logo {
  width: clamp(120px, -36.522px + 17.391vw, 200px);
  height: auto;
  display: inline-block;
  filter: drop-shadow(0 0 10px rgba(0,0,0,0.4));
}

.mv_bg {
    margin: 0 0 30px;
}
.breadcrumb {
    margin: 0 0 0 clamp(0rem, -0.536rem + 2.857vw, 1.25rem);
    /* font-size: 12px; */
    font-size: clamp(0.625rem, 0.571rem + 0.286vw, 0.75rem);
}
.breadcrumb a {
    color: #333;
}

.page_title_text {
    margin: 0 0 clamp(1.25rem, 0.446rem + 4.286vw, 3.125rem);
    /* font-size: 20px; */
    font-size: clamp(0.875rem, 0.714rem + 0.857vw, 1.25rem);
    line-height: 2;
    letter-spacing: 2px;
    text-align: center;
}
.page_w_contents {
    position: relative;
    background: #fff;
}
.page_r_contents {
    position: relative;
    background: #740A00;
}
.page_w_contents.page_contents_matsuri {
    margin: 0 0 50px;
    padding: clamp(3.125rem, -2.232rem + 28.571vw, 15.625rem) 0 clamp(1.875rem, 1.071rem + 4.286vw, 3.75rem);
    background: url("../images/gomakigan/bg_matsuri.webp") repeat center center / cover;
    box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
.page_w_contents.page_contents_block_matsuri {
    padding: 50px 20px 40px;
    background: url("../images/gomakigan/bg_matsuri.webp") repeat center center / cover;
    box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
.page_w_contents.page_contents_gokigan {
    padding: 50px 150px;
}
.page_r_contents.page_contents_guid {
    width: 70%;
    margin: 120px auto;
    padding: 50px 0;
}

.page_post {
    margin: 0 0 50px;
}
.page_post_inner {
    padding: 120px;
}
.page_post.page_archive {
    margin: 0 0 120px;
}
.page_post_block {
    display: flex;
    justify-content: space-between;
    margin: 0 0 30px;
    padding: 20px;
    background: #fff;
}
.page_archive .page_post_block {
    border-bottom: 1px solid #F2F0E8;
    margin: 0;
    padding: 30px 0;
}
.page_archive .page_post_block:first-child {
    border-top: 1px solid #F2F0E8;
}
.page_post_content {
    display: flex;
    flex-direction: column;
}
.page_post_content a {
    color: #333;
}
.page_post_img {
    width: 25%;
}

.page_post_img img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}
.page_post_content {
    width: 70%;
}
.page_post_title {
  margin: 10px 0 10px;
  font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.page_archive .page_post_title {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    font-weight: 700;
}
.page_post_text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
}
.page_archive .page_post_text {
    /* font-size: 24px; */
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
    font-weight: 700;
}

.page_contact_box {
    padding: clamp(1.875rem, 0.536rem + 7.143vw, 5rem) 0 clamp(3.125rem, 1.786rem + 7.143vw, 6.25rem);
    background: #F2F0E8;
}
.page_contact_flex {
    display: flex;
    justify-content: center;
    align-items: center;
}
.page_contact_flex.align_start {
    align-items: flex-start;
}
.page_contact_flex.w_80 {
    width: 80%;
    margin: 0 auto;
}
.page_contact_tel {
    padding: 0 150px 0 0;
}
.page_contact_tel_num {
    position: relative;
    display: inline-block;
    padding: 0 0 0 50px;
    /* font-size: 36px; */
    font-size: clamp(1.5rem, 1.179rem + 1.714vw, 2.25rem);
    line-height: 2;
    font-weight: 700;
    text-align: center;
}
.page_contact_tel_num a {
    color: #333;
}
.page_contact_tel_num::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 35px;
    height: 35px;
    transform: translate(0, -50%);
    background: url("../images/tel.webp") no-repeat center center / cover;
    z-index: 10;
}
.page_contact_tel_text {
    margin: 0 0 20px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    text-align: center;
}
.page_contact_access {
    margin: 0 0 50px;
}
.page_price_inner {
    width: 70%;
    margin: 0 auto;
}
.page_price_box {
    margin: 0 0 clamp(1.25rem, 0.179rem + 5.714vw, 3.75rem);
    background: #fff;
}
.page_price_box.harf_box {
    width: 32%;
}
.page_price_flex {
    display: flex;
    justify-content: space-between;
    padding: 30px 20px 40px;
}
.page_price_title {
    padding: 20px 0;
    /* font-size: 24px; */
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
    font-weight: 700;
    text-align: center;
    color: #fff;
    background: #A98804;
}
.page_price_text {
    font-size: clamp(14px, 12.500px + 0.5vw, 16px);
    line-height: 1.5;
    margin: 20px 0 0;

}
.box_color .page_price_title {
    background: #C9BA7C;
}
.page_price_content {
    padding: 30px 150px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.page_price_content.flex_between {
    justify-content: space-between;
}
.page_price_flex .page_price_content {
    width: 100%;
    padding: 20px;
}
.page_price_line {
    width: 1px;
    background: #A98804;
}
.box_color .page_price_line {
    background: #C9BA7C;
}
.page_contact_flex_title {
    position: relative;
    margin: 0 0 15px;
    padding: 0 0 0 50px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.571vw + 0.768rem, 1.125rem);
}
.page_contact_flex_title::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
}
.page_contact_flex_title.train::before {
    width: 22px;
    height: 24px;
    background: url("../images/train.webp") no-repeat center center / cover;
}
.page_contact_flex_title.bus::before {
    width: 21px;
    height: 24px;
    background: url("../images/bus.webp") no-repeat center center / cover;
}
.page_contact_flex_title.car::before {
    width: 25px;
    height: 19px;
    background: url("../images/car.webp") no-repeat center center / cover;
}
.page_contact_flex_text {
    margin: 0 0 15px;
    padding: 0 30px 0 0;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
    line-height: 2;
}
.page_contact_flex_block {
    width: 50%;
}
.page_contact_gmap iframe {
    display: block;
    width: 100%;
    height: 350px;
}
.left_padding_ast {
    position: relative;
    padding-left: 1em;
}
.left_padding_ast::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0;
}
.left_padding_maru {
    position: relative;
    padding-left: 1em;
}
.left_padding_maru::before {
    content: "○";
    position: absolute;
    left: 0;
    top: 0;
}
.left_padding_dot {
    position: relative;
    padding-left: 1em;
}
.left_padding_dot::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
}

/* gomakigan */
.matsuri_img {
    position: absolute;
    top: -80px;
    left: 50%;
    max-width: 680px;
    width: 100%;
    transform: translate(-50%, 0);
}
.matsuri_top_img {
    width: 45%;
    margin: 0 auto 50px;
}
.matsuri_title {
    margin: 0 0 10px;
    /* font-size: 34px; */
    font-size: clamp(1.5rem, 1.232rem + 1.429vw, 2.125rem);
    font-weight: 700;
    color: #740A00;
    text-align: center;
}
.page_contents_block_matsuri .matsuri_title {
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
}
.matsuri_date {
    margin: 0 0 10px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    color: #A98804;
    text-align: center;
}
.matsuri_link {
    color: #A98804;
    border-bottom: 1px solid #A98804;
}
.page_contents_block_matsuri .matsuri_date {
    margin: 0 0 10px 15px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    text-align: left;
}
.matsuri_text {
    margin: 0 0 25px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    text-align: center;
}
.page_contents_block_matsuri .matsuri_text {
    margin: 0 0 10px 20px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    text-align: left;
}
.matsuri_flex {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
.matsuri_list {
    font-size: 16px;
    line-height: 2;
    margin: 0 0 20px;
    padding: 0 0 0 40px;
}
.matsuri_flex .matsuri_list {
    padding: 0 50px 0 40px;
}
.matsuri_list li {
    position: relative;
}
.matsuri_list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    transform: translate(-125%, -50%);
    background: url("../images/check.webp") no-repeat center center / cover;
    z-index: 10;
}
.matsuri_btn {
    display: flex;
    align-items: center;
}
.matsuri_btn .contact_btn {
    margin: 0;
}
.page_contents_block_matsuri .matsuri_btn .contact_btn {
    margin: 0 auto;
}
.matsuri_blocks {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.gokigan_text {
    position: relative;
    margin: 0 0 10px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    line-height: 1.5;
    text-align: center;
}
.gokigan_text span {
    color: #740A00;
}
.gokigan_text::before {
    content: "";
    position: absolute;
    top: 30%;
    right: clamp(0rem, -2.411rem + 12.857vw, 5.625rem);
    width: clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    height: clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    background: url("../images/gomakigan/goma_img1.webp") no-repeat center center / cover;
    z-index: 10;
}
.gokigan_text::after {
    content: "";
    position: absolute;
    top: 75%;
    left: clamp(0rem, -1.875rem + 10vw, 4.375rem);
    width: clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    height: clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    background: url("../images/gomakigan/goma_img2.webp") no-repeat center center / cover;
    z-index: 10;
}
.gokigan_time_inner {
    display: flex;
    justify-content: flex-end;
}
.gokigan_time {
    display: inline-block;
    margin: 0 10px 10px 0;
    padding: 15px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    background: #F2F0E8;
}
.gokigan_table {
    margin: 0 0 70px;
    padding: 60px 50px 0;
    border: 1px solid #A98804;
}
.gokigan_table_block_title {
    margin: 0 0 10px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    color: #740A00;
    text-align: center;
}
.gokigan_table_block_flex {
    margin: 0 0 50px;
    padding: 0 0 30px;
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #A98804;
    text-align: center;
}
.gokigan_table_block_flex.gokigan_dot_border {
    margin: 0 0 20px;
    padding: 0 0 20px;
    border-bottom: 1px dotted #333;
}
.gokigan_table_block_flex.gokigan_no_border {
    padding: 0 0 0;
    border-bottom: none;
}
.gokigan_table_block_flex_left {
    width: 40%;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    font-weight: 700;
}
.gokigan_table_block_flex_right {
    width: 60%;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.2;
}

    .gokigan_table {
        margin: 0 0 30px;
        padding: 30px 20px 0;
    }
    .gokigan_table_block_flex {
        flex-direction: column;
        margin: 0 0 15px;
        padding: 0 0 15px;
    }
    .gokigan_table_block_flex_left {
        margin: 0 0 10px;
        width: 100%;
    }
    .gokigan_table_block_flex_right {
        width: 100%;
    }

.gokigan_tel {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.gokigan_tel_text {
    margin: 0 0 20px;
    /* font-size: 20px; */
    font-size: clamp(0.75rem, 0.536rem + 1.143vw, 1.25rem);
}
.gokigan_tel_num {
    position: relative;
    display: inline-block;
    margin: 0 auto;
    padding: 0 0 0 50px;
    /* font-size: 23px; */
    font-size: clamp(1.125rem, 0.991rem + 0.714vw, 1.438rem);
    font-weight: 700;
}
.gokigan_tel_num a {
    color: #333;
}
.gokigan_tel_num::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 31px;
    height: 25px;
    background: url("../images/tel.webp") no-repeat center center / cover;
    transform: translate(0, -50%);
}

.guid_title {
    margin: 0 0 50px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    color: #fff;
    text-align: center;
}
.guid_text {
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
    color: #fff;
    text-align: center;
}


.yaku_nendo {
    padding: 10px 0;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    color: #A98804;
    text-align: center;
}
.yaku_nendo p {
    padding: 10px 0;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    color: #A98804;
    text-align: center;
}
.yaku_block {
    width: 48%;
}
.yaku_gender {
    margin: 0 0 10px;
    padding: 20px 0;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    border: 1px solid #740A00;
    text-align: center;
}
.yaku_table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 20px;
}
.yaku_table th,
.yaku_table td {
    padding: 10px 0;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    text-align: center;
}
.yaku_table th {
    padding: 50px 0 0;
    border-bottom: 1px solid #707070;
}
.yaku_table th.th_bg,
.yaku_table td.td_bg {
    background: rgba(116, 10, 0, 0.1);
}
.yaku_red {
    color: #740A00;
}
.yaku_table td span {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
}
.yaku_asterisk {
    margin: 0 0 clamp(3.125rem, 1.250rem + 10vw, 7.5rem);
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
}

.hoi_table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 clamp(3.125rem, -0.893rem + 21.429vw, 12.5rem);
}
.hoi_table th,
.hoi_table td {
    width: 25%;
    padding: 20px 0;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    text-align: center;
    border: 1px solid #333;
}
.hoi_table th {
    border: 2px solid #333;
    background: #F2F0E8;
}
.kihuda {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
    margin: 0 0 70px;
}
.kihuda_block {
    width: 23.5%;
}
.kihuda_img {
    margin: 0 0 20px;
}
.kihuda_title {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    margin: 0 0 20px;
}
.kihuda_text {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
}


/* eitai */
.eitai_img {
    margin: 0 0 50px;
}
.eitai_kuyo_col {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.eitai_kuyo_top {
    margin: 0 0 40px;
    /* font-size: 24px; */
    font-size: clamp(0.875rem, 0.607rem + 1.429vw, 1.5rem);
    line-height: 2;
    text-align: center;
}
.eitai_kuyo_list {
    display: inline-block;
    margin: 0 auto clamp(1.875rem, 0.804rem + 5.714vw, 4.375rem);
    text-align: left;
    padding: 0 0 0 40px;
}
.eitai_kuyo_list li {
    position: relative;
    margin: 0 0 10px;
    /* font-size: 24px; */
    font-size: clamp(0.875rem, 0.607rem + 1.429vw, 1.5rem);
    line-height: 2;
}
.eitai_kuyo_list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 35px;
    height: 35px;
    transform: translate(-125%, -50%);
    background: url("../images/check.webp") no-repeat center center / cover;
    z-index: 10;
}
.eitai_kuyo_text {
    margin: 0 0 clamp(1.25rem, 0.446rem + 4.286vw, 3.125rem);
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    text-align: center;
}
.eitai_kuyo_g {
    margin: 0 0 20px;
    /* font-size: 24px; */
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
    line-height: 2;
    color: #A98804;
    text-align: center;
}

.eitai_joshinbyo_flex {
    display: flex;
    justify-content: space-between;
}
.eitai_joshinbyo_img {
    width: 50%;
}
.eitai_joshinbyo_content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 47%;
}
.eitai_joshinbyo_title {
    margin: 0 0 50px;
    /* font-size: 24px; */
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
    line-height: 2;
    color: #A98804;
}
.eitai_joshinbyo_text {
    padding: 0 0 0 20px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.8;
}

.eitai_price_yen {
    /* font-size: 45px; */
    font-size: clamp(1.75rem, 1.295rem + 2.429vw, 2.813rem);
    line-height: 2;
    font-weight: 700;
    text-align: center;
    color: #740A00;
}
.eitai_price_yen span {
    /* font-size: 32px; */
    font-size: clamp(1.25rem, 0.929rem + 1.714vw, 2rem);
    font-weight: 400;
}
.eitai_price_sub {
    padding: 0 0 20px;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
    line-height: 2;
    text-align: center;
}
.eitai_price_text {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    text-align: center;
}
.eitai_price_bottom {
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
    margin: 0 0 clamp(1.25rem, 0.446rem + 4.286vw, 3.125rem);
    list-style: none;
}
.eitai_price_bottom li {
    position: relative;
    padding-left: 1em;
}
.eitai_price_bottom li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
}
.eitai_price_bottom_s {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
}
.eitai_title_down_text {
    margin: clamp(1.25rem, 0.446rem + 4.286vw, 3.125rem) 0 clamp(1.875rem, -1.339rem + 17.143vw, 9.375rem) ;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
    text-align: center;
}



/* mizukokuyo */
.mizuko_top {
    margin: clamp(4.375rem, 2.232rem + 11.429vw, 9.375rem) 0 clamp(1.875rem, 0.804rem + 5.714vw, 4.375rem);
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
    text-align: center;
}
.mizuko_list {
    display: inline-block;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    margin: 20px auto 30px;
    padding: 0 0 0 40px;
    line-height: 2;
}
.mizuko_list li {
    position: relative;
    margin: 0 0 10px;
}
.mizuko_list.mizuko_kuyo li {
    margin: 0 0 30px;
    font-size: clamp(16px, 12.500px + 0.5vw, 20px);
}
.mizuko_list li::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 25px;
    height: 25px;
    transform: translate(-125%, 10%);
    background: url("../images/check.webp") no-repeat center center / cover;
    z-index: 10;
}
.box_color .mizuko_list li::before {
    background: url("../images/check_c.webp") no-repeat center center / cover;
}
.mizuko_not_title {
    margin: 0 0 40px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    text-align: center;
    text-decoration-line: underline;
    text-decoration-color: #A98804;
    text-decoration-style: solid;
    text-decoration-thickness: 2px;
    text-underline-offset: 12px;
}
.box_color .mizuko_not_title {
    text-decoration-color: #C9BA7C;
}
.mizuko_not_text {
    margin: 0 0 40px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
}
.mizuko_relieved {
    display: flex;
    justify-content: space-between;
    margin: 120px 0;
}
.mizuko_relieved_img1 {
    width: 50%;
}
.mizuko_relieved_right {
    width: 45%;
}
.mizuko_relieved_title {
    margin: 30px 0 100px;
    /* font-size: 32px; */
    font-size: clamp(1.25rem, 0.929rem + 1.714vw, 2rem);
    color: #A98804;
}
.mizuko_relieved_img2 {
    width: 95%;
}

.mizuko_post_wrapper {
    background: #fff;
    padding: 50px;
}
.mizuko_post_wrapper .page_post_content {
    border-bottom: 1px solid #A98804;
    width: 100%;
    margin: 0 0 10px;
    padding: 0 0 10px;
}
.page_post_title.mizuko_date {
    margin: 0 0 10px;
}
.page_post_text.mizuko_title {
    margin: 0 0 10px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    color: #740A00;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mizuko_text_post {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* pet */
.pet_top_img {
    width: 100%;
    margin: 0 0 100px;
}
.pet_feature_bg {
    width: 95%;
    margin: 0 auto;
    padding: 10px 0 50px;
    background: #F2F0E8;
}
.pet_feature_inner {
    width: 1100px;
    margin: 0 auto;
}
.pet_feature_box {
    width: 32%;
    padding: 30px 20px 20px;
    background: #fff;
    box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
.pet_feature_box_img {
    max-width: 180px;
    width: 100%;
    margin: 0 auto 60px;
}
.pet_feature_box_title {
    min-height: 4em;
    margin: 0 0 10px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    font-weight: 700;
    line-height: 2;
    color: #A98804;
}
.pet_feature_box_text {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
}

.pet_flow_box {
    border: 2px solid #740A00;
    margin: 50px 0;
    padding: 50px 25px;
}
.pet_flow_box_flex {
    display: flex;
}
.pet_flow_box_left {
    margin: 0 50px 0 0 ;
}
.pet_flow_box_right {
    width: 100%;
}
.pet_flow_box_num {
    display: inline-block;
    padding: 20px 20px 25px 20px;
    /* font-size: 36px; */
    font-size: clamp(1.625rem, 1.357rem + 1.429vw, 2.25rem);
    line-height: 1;
    font-weight: 700;
    color: #fff;
    background: #740A00;
    border-radius: 50px;
    text-align: center;
}
.pet_flow_box_title {
    margin: 20px 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    color: #740A00;
}
.pet_flow_box_text {
    margin: 0 0 20px;
    padding: 0 150px 0 0;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 1.5;
    text-align: center;
}
.pet_flow_box_img {
    width: 82%;
    margin: 0 0 30px;
}
.pet_flow_titlebox_img_t {
    margin: 0 0 10px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
.pet_flow_arrow {
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 20px solid #740A00;
    margin: 10px auto;
}
.pet_flow_box_select {
    display: flex;
    gap: 40px;
    margin: 0 0 0 30px;
}
.pet_flow_box_selectbox {
    position: relative;
    margin: 20px 0 0;
    padding: 35px 20px 20px;
    border: 1px solid #A98804;
}
.pet_flow_box_selecttitle {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-20px, -50%);
    padding: 10px 20px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    color: #fff;
    background: #A98804;
}
.pet_flow_box_selecttext {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.5;
}
.pet_flow_titlebox {
    position: relative;
    margin: 100px 0;
    padding: 70px 25px 50px;
    border: 2px solid #A98804;
}
.pet_flow_titlebox_slim {
    width: 70%;
    margin: 0 auto;
}
.pet_flow_titlebox_flex {
    display: flex;
    justify-content: center;
    gap: 50px;
}
.pet_flow_titlebox_title {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 68%;
    padding: 20px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    color: #fff;
    text-align: center;
    background: #A98804;
}
.pet_flow_titlebox_text {
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    line-height: 2;
}
.pet_flow_titlebox_list {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    margin: 0 0 50px;
}
.pet_flow_titlebox_img {
    margin: 0 30px 50px;
}
.pet_flow_titlebox_aten {
    margin: 0 0 30px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    color: #740A00;
}
.pet_text_g {
    color: #A98804;
}

.pet_price_m {
    margin: 50px 0 100px;
}
.pet_price_b_m {
    margin: 0 0 100px;
}
.pet_price_inner {
    width: 40%;
    margin: 0 auto;
}
.pet_price_box {
    display: flex;
    flex-direction: column;
    position: relative;
    background: #fff;
    box-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}
.pet_price_title {
    padding: 25px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    color: #fff;
    background: #A98804;
    text-align: center;
}
.pet_price_text {
    padding: 20px 0 50px;
    /* font-size: 45px; */
    font-size: clamp(1.875rem, 1.473rem + 2.143vw, 2.813rem);
    font-weight: 700;
    color: #740A00;
    text-align: center;
}
.pet_price_text span {
    /* font-size: 32px; */
    font-size: clamp(1.5rem, 1.286rem + 1.143vw, 2rem);
    font-weight: 400;
}
.pet_price_hope {
    margin: 0 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    text-align: center;
}
.pet_price_title_b {
    width: 60%;
    margin: 0 auto ;
    padding: 25px 10px 20px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    border-bottom: 2px solid #A98804;
    text-align: center;
}
.pet_price_yrar {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translate(-50%,-50%);
}
.pet_price_sub {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
    margin: 10px 0 0;
}

.pet_apply_img {
    width: 58%;
}
.pet_apply_inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 42%;
}
.pet_apply_content {
    padding: 0 0 70px 50px;
    background: #F2F0E8;
}
.pet_apply_text {
    margin: 0 0 20px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.5;
}
.pet_apply_tel {
    position: relative;
    padding: 0 0 0 50px;
}
.pet_apply_tel a {
    color: #333;
}
.pet_apply_tel::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 31px;
    height: 25px;
    background: url("../images/tel.webp") no-repeat center center / cover;
    transform: translate(0, -50%);
}

.pet_ceremo_img {
    max-width: 680px;
    width: 100%;
    margin: 0 auto 40px;
}
.pet_ceremo_text {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    text-align: center;
}
.pet_qa_title {
    margin: 50px 0 10px;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    font-weight: 700;
    text-align: center;
}
.pet_qa_ceremo {
    margin: 20px 0 0;
}

/* kaido */
.kaido_top_text {
    margin: clamp(4.375rem, 1.429rem + 15.714vw, 11.25rem) 0 clamp(3.125rem, 1.786rem + 7.143vw, 6.25rem);
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    text-align: center;
}
.kaido_equipment_text {
    margin: 0 0 30px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    text-align: center;
}
.kaido_equipment_flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
    margin: 0 0 150px;
}
.kaido_equipment_box {
    width: 32%;
}
.kaido_equipment_box_img {
    margin: 0 0 30px;

}
.kaido_equipment_box_title {
    margin: 0 0 10px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    text-align: left;
}
.kaido_equipment_box_text {
    margin: 0 0 50px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    text-align: left;
    line-height: 1.8;
}

.kaido_table {
    width: 100%;
    border-collapse: collapse;
}
.kaido_table th,
.kaido_table td {
    padding: 20px 0 ;
    line-height: 1.5;
    border-bottom: 1px solid #707070;
}
.kaido_table th {
    width: 30%;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
}
.kaido_table td {
    width: 70%;
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
}


/* omamori */
.omamori_top_text {
    margin: 0 0 70px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
}
.omamori_flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
}
.omamori_flex_box {
    width: 23.5%;
    margin: 0 0 50px;
}
.omamori_flex_img {
    margin: 0 0 40px;
}
.omamori_flex_title {
    margin: 0 0 10px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    color: #740A00;
}
.omamori_flex_yen {
    margin: 0 0 5px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
}
.omamori_flex_text {
    margin: 0 0 20px;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
}

/* danshinto */
.danshinto_top_text {
    margin: clamp(4.375rem, 1.429rem + 15.714vw, 11.25rem) 0 clamp(2.5rem, 1.429rem + 5.714vw, 5rem);
    /* font-size: 24px; */
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
    line-height: 2;
    text-align: center;
}
.danshinto_inner {
    position: relative;
}
.danshinto_img_content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
}
.danshinto_img_text {
    margin: 0 0 50px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 2;
    color: #fff;
    text-align: center;
}


/* about */
.about_anchor_nav {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 0 80px;
}
.about_anchor_li {
    width: 19%;
}
.about_anchor_li a {
    position: relative;
    display: block;
    width: 100%;
    padding: 20px 40px 20px 30px;
    color: #fff;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.286vw + 0.821rem, 1rem);
    line-height: 1.5;
    background: #A98804;
}
.about_anchor_li a::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translate(0, -50%);
    display: inline-block;
    vertical-align: middle;
    line-height: 1.5;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.7em 0.35em 0 0.35em; /* 上 右 下 左 */
    border-color: #fff transparent transparent transparent; /* 下向き黒矢印 */
}
.about_img_s {
    margin: 0 0 50px;
}
.about_img_m {
    margin: 0 0 150px;
}
.about_flex {
    display: flex;
    justify-content: space-between;
}
.about_flex.flex_return {
    flex-direction: row-reverse;
    margin: 80px 0 0;
}
.about_flex_content {
    width: 46%;
}
.about_flex_title {
    margin: 0 0 50px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.857vw + 0.964rem, 1.5rem);
    font-weight: 700;
}
.about_flex_text {
    padding: 0 30px 0 0;
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
    line-height: 1.8;
}
.about_text_right .about_flex_text {
    padding: 0;
}
.about_flex_text_l {
    margin: 0 0 20px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.571vw + 0.893rem, 1.25rem);
    line-height: 2;
}
.about_center_text {
    margin: 30px 0 70px;
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
    line-height: 2;
    text-align: center;
}
.about_gold_text {
    padding: 50px 0 0;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.571vw + 0.893rem, 1.25rem);
    color: #A98804;
}
.about_hibun_flex {
    display: flex;
    justify-content: space-between;
    margin: 0 0 130px;
}
.about_hibun_title {
    margin: 0 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.857vw + 0.964rem, 1.5rem);
    font-weight: 700;
    text-align: center;
}
.about_hibun_flex_content {
    width: 45%;
}

.corner-border {
  position: relative;
  width: 80%;
  height: 100%;
  margin: 0 auto;
}

.corner-border::before,
.corner-border::after,
.corner-border .corner-bl,
.corner-border .corner-br {
  content: "";
  position: absolute;
  width: 50px;
  height: 85px;
  border: 1px solid #740A00;
}
.corner-border::before {
  top: 30px;
  left: 0;
  border-right: none;
  border-bottom: none;
}
.corner-border::after {
  top: 30px;
  right: 0;
  border-left: none;
  border-bottom: none;
}
.corner-border .corner-bl {
  bottom: 0;
  left: 0;
  border-right: none;
  border-top: none;
}
.corner-border .corner-br {
  bottom: 0;
  right: 0;
  border-left: none;
  border-top: none;
}

.about_bato_content {
    width: 57%;
    margin: 0 auto;
}
.about_bato_title {
    margin: 0 0 50px;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.143vw + 1.036rem, 1.75rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
.about_bato_text {
    padding: 0 0 50px;
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
    line-height: 2;
    text-align: center;
}
.about_hudasyo_title {
    margin: 0 0 50px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.857vw + 0.964rem, 1.5rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
.about_hudasyo_text {
    margin: 0 0 50px;
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
    line-height: 2;
    text-align: center;
}
.about_hudasyo_img {
    margin: 0 0 50px;
}
.about_hudasyo_flex_sub {
    margin: 0 0 30px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.286vw + 0.821rem, 1rem);
    color: #740A00;
}
.about_hudasyo_flex_title {
    margin: 0 0 10px;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.143vw + 1.036rem, 1.75rem);
    color: #740A00;
}
.about_hudasyo_flex_text {
    /* font-size: 16px; */
    font-size: clamp(0.75rem, 0.643rem + 0.571vw, 1rem);
    line-height: 2;
}

/* access */
.access_flex {
    display: flex;
    flex-wrap: wrap;
}
.access_content {
    width: 50%;
}
.access_content_top {
    margin: 0 0 80px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
}
.access_content_bottom {
    margin: 0 0 80px;
}
.access_content_block {
    padding: 0 0 0 30px;
}
.access_content_title {
    margin: 0 0 20px;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    font-weight: 700;
    color: #740A00;
}
.access_content_address {
    margin: 0 0 20px;
}
.access_content_tel {
    margin: 0 0 20px;
    line-height: 2;
}
.access_parking_text {
    width: 55%;
    margin: 0 auto 20px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
}
.access_content_flex {
    display: flex;
    justify-content: space-between;
}
.access_content_img {
    width: 47%;
}


/* event */
.event_top_text {
    margin: clamp(1.875rem, 0.804rem + 5.714vw, 4.375rem) 0;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.571vw + 0.893rem, 1.25rem);
    line-height: 2;
    text-align: center;
}
.event_season_contents {
    position: relative;
    width: 85%;
    margin: 0 auto 50px;
}
.event_season_btn_flex {
    display: flex;
    flex-direction: column;
    gap: 1%;
    position: absolute;
    left: 45%;
    top: 20%;
    width: 50%;
}
.event_season_btn a {
    display: flex;
    justify-content: center;
    flex-direction: column;
    position: relative;
    min-width: 356px;
    width: 100%;
    min-height: 73px;
    height: 100%;
    padding: 0 50px 0 0;
    /* font-size: 14px; */
    font-size: clamp(0.375rem, 0.107rem + 1.429vw, 1rem);
    color: #740A00;
    border-bottom: 1px solid #eee;
}
.event_season_btn a span {
    /* font-size: 20px; */
    font-size: clamp(0.625rem, 0.357rem + 1.429vw, 1.25rem);
    color: #333;
}
.event_season_btn a::after {
  content: "▼";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
    /* font-size: 12px; */
    font-size: clamp(0.625rem, 0.571rem + 0.286vw, 0.75rem);
  color: #740A00;
  pointer-events: none;
}

.event_time {
    margin: 70px 0;
}
.event_time_season {
    display: flex;
    text-align: center;
}
.event_time_season_box {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    margin: 0px 0px 50px 0;
    /* font-size: 32px; */
    font-size: clamp(1.5rem, 1.286rem + 1.143vw, 2rem);
    font-weight: 700;
    color: #fff;
}
.event_time_season_text {
    display: flex;
    align-items: center;
    font-size: clamp(1.25rem, 1.089rem + 0.857vw, 1.625rem);
    margin: 0px 0px 50px 30px;
}
.event_timeline {
  position: relative;
  margin: 0 0 50px;
}
.event_timeline:before {
  position: absolute;
  top: -80px;
  left: 33px;
  width: 14px;
  height: calc(100% + 150px);
  content: '';
  background: #f4f4f4;
  z-index: -10;
}
.event_timeline .timeline_item {
  margin: 0px 0px 0px 80px;
}
.event_timeline .timeline_item .time_date .time {
    position: relative;
    margin: 0 0 5px;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
    color: #740A00;
}
.event_timeline .timeline_item .time_date .time:before {
  position: absolute;
  top: 0;
  left: -53px;
  width: 26px;
  height: 26px;
  content: '';
  border-radius: 20px;
}
.event_timeline .timeline_item .time_date .flag {
  margin: 0 0 20px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
  font-weight: 700;
}
.event_timeline .timeline_item .desc {
  margin: 0 0 70px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
  line-height: 2;
}
.event_timeline .timeline_item .desc p {
  margin: 0 0 20px;
}

.event_season_in {
    display: block;
    width: 100%;
    height: clamp(12.5rem, 7.143rem + 28.571vw, 25rem);
}
.event_season_in.in_spring {
    background: url("../images/event/spring_bar.webp") no-repeat center center / cover;
}
.event_season_in.in_summer {
    background: url("../images/event/summer_bar.webp") no-repeat center center / cover;
}
.event_season_in.in_autumn {
    background: url("../images/event/autumn_bar.webp") no-repeat center center / cover;
}
.event_season_in.in_winter {
    background: url("../images/event/winter_bar.webp") no-repeat center center / cover;
}

.event_spring .event_time_season_box {
  background: #c71860;
}
.event_spring .event_time_season_text {
    color: #c71860;
}
.event_spring .event_timeline .timeline_item .time_date .time:before {
  background: #c71860;
}
.event_summer .event_time_season_box {
  background: #7bbb5e;
}
.event_summer .event_time_season_text {
    color: #7bbb5e;
}
.event_summer .event_timeline .timeline_item .time_date .time:before {
  background: #7bbb5e;
}
.event_autumn .event_time_season_box {
  background: #ec6842;
}
.event_autumn .event_time_season_text {
    color: #ec6842;
}
.event_autumn .event_timeline .timeline_item .time_date .time:before {
  background: #ec6842;
}
.event_winter .event_time_season_box {
  background: #8d97cb;
}
.event_winter .event_time_season_text {
    color: #8d97cb;
}
.event_winter .event_timeline .timeline_item .time_date .time:before {
  background: #8d97cb;
}

.timeline_link {
    margin: 0 0 20px;
}
.timeline_link a {
    position: relative;
    padding: 0 30px 8px 0;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    color: #333;
    border-bottom: 1px solid #740a00;
}
.timeline_link a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 0.35em 0.7em;
    border-right: 0;
    border-left-color: #740a00;
}

/* archive */
.archive_title {
    margin: 0 0 20px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.857vw + 0.964rem, 1.5rem);
    font-weight: 700;
    text-align: center;
}
.archive_btns {
    display: flex;
    justify-content: center;
    gap: 2%;
    margin: 0 0 120px;
}
.archive_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 120px;
    width: 100%;
    min-height: 50px;
    height: 100%;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    color: #fff;
    background: #740A00;
    border-radius: 30px;
}
.new-badge {
    margin: 0 20px 0 0;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    font-weight: 700;
    color: #FF0000;
}
.post-date {
    margin: 0 20px 0 0;
}
.post-category {
    display: inline-block;
    padding: 1px 20px;
    /* font-size: 12px; */
    font-size: clamp(0.625rem, 0.571rem + 0.286vw, 0.75rem);
    font-weight: 500;
    border: 1px solid #740A00;
    border-radius: 20px;
}
.post-category a {
    color: #740A00;
}

.pagination {
    display: flex;
    gap: 8px;
    justify-content: center; 
    margin-top: 20px;
}
.pagination .page-numbers {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #740A00;
    text-decoration: none;
    color: #740A00;
    font-weight: bold;
    transition: all 0.3s;
}
.pagination .page-numbers.current {
    background-color: #740A00;
    color: #fff;
    border-color: #740A00;
}
.pagination .page-numbers.dots {
    border: none;
}

.page_single .page_post_title {
    margin: 0 0 50px;
}
.post-detail-thumb {
    width: 100%;
    margin: 0 0 20px;
}
.post-detail-content {
    margin: 0 0 100px;
    line-height: 2;
}
.single_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    color: #fff;
    background: #740A00;
    max-width: 230px;
    width: 100%;
    min-height: 54px;
    height: 100%;
    margin: 0 auto;
}
.page_single h2 {
    font-family: 'hiragino_min_w6';
    margin: 0 0 15px;
    padding: 0 0 0 20px;
    /* font-size: 32px; */
    font-size: clamp(1.375rem, 1.107rem + 1.429vw, 2rem);
    font-weight: 700;
    color: #fff;
    background: #740A00;
}
.page_single h3 {
    font-family: 'hiragino_min_w6';
    margin: 0 0 15px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    border-bottom: 3px solid #A98804;
}
.page_single h4 {
    font-family: 'hiragino_min_w6';
    margin: 0 0 15px;
    padding: 0 0 0 20px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    border-left: 5px solid #740A00;
}
.page_single h5 {
    font-family: 'hiragino_min_w6';
    margin: 0 0 10px;
    /* font-size: 18px; */
    font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
    font-weight: 700;
    border-bottom: 3px dotted #740A00;
}
.page_single h6 {
    font-family: 'hiragino_min_w6';
    margin: 0 0 10px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    border-bottom: 1px solid #740A00;
}
.page_single h2.post-detail-title {
    /* font-size: 40px; */
    font-size: clamp(1.5rem, 1.071rem + 2.286vw, 2.5rem);
    font-weight: 700;
    margin: 0;
    padding: 0;
    color: #333;
    background: none;
}
.page_single .post_text {
    margin: 0 0 20px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.page_single p {
    margin: 0 0 20px;
}
.page_single .page_post_block p {
    margin: 0;
}
.post_toc {
    width: 70%;
    margin: 0 auto 50px;
    padding: 60px 50px 50px;
    border-top: 2px solid #333;
    border-bottom: 2px solid #333;
}
.post_toc a {
    color: #333
}
.post-detail-thumb img.post-thumb-img {
  width: 100%;
  height: auto !important;
  max-width: 100%;
  display: block;
  object-fit: contain; /* cover にしてもOK（トリミングあり） */
}
.toc_title {
    margin: 0 0 10px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    text-align: center;
}
.toc_h2 {
    margin: 0 0 10px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;

}
.toc_h3 {
    margin: 0 0 0 15px;
    padding: 0 0 10px 20px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    border-left: 1px solid #707070;
}
.toc_h2 span {
  display: inline-block;
  width: 25px;
  height: 25px;
  line-height: 25px;
  border-radius: 50%;
  background-color: #740A00;
  color: #EDEDED;
  text-align: center;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
  margin-right: 10px;
}
.post_dots_li {
    width: 85%;
    margin: 0 auto 50px;
    padding: 40px 20px;
    border-top: 3px solid #F2F0E8;
    border-bottom: 3px solid #F2F0E8;
}
.post_dots_li ul li {
    position: relative;
    padding: 20px;
    border-bottom: 1px dashed #F2F0E8;
}
.post_dots_li ul li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    background-color: #740A00;
    transform: translate(0, -50%);
}
.post_num_li ol {
    list-style: none;
    counter-reset: item;
    padding-left: 0;
    width: 85%;
    margin: 0 auto 50px;
    padding: 40px 30px 20px;
    background: #F2F0E8;
}
.post_num_li li {
    counter-increment: item;
    margin: 0 0 20px;
    position: relative;
    padding-left: 2em;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.post_num_li li::before {
    content: counter(item);
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 19px;
    line-height: 20px;
    color: #fff;
    border-radius: 50%;
    background-color: #740A00;
    text-align: center;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
    transform: translate(0, -50%);
}
.post_table {
    margin: 0 auto 50px;
    border-collapse: collapse;
}
.post_table th {
    min-width: 340px;
    padding: 15px 10px;
    background: #A98804;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    color: #fff;
    border: 1px solid #A98804;
}
.post_table th:first-child {
    border-right: 1px solid #fff;
}
.post_table td {
    padding: 10px 10px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    border: 1px solid #A98804;
}
.post_link {
    display: flex;
    align-items: center;
    margin: 0 0 20px;
    position: relative;
    /* font-size: 18px; */
    font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
    line-height: 25px;
}
.post_link a {
    margin: 0 0 0 10px;
    color: #333;
    border-bottom: 1px solid #A98804;
}
.post_link .post_arrow {
    content: "";
    display: inline-block;
    position: relative;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #A98804;
    cursor: pointer;
}
.post_link .post_arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 7px;
    height: 2px;
    background: #fff;
    border-radius: 1px;
    transform-origin: right center;
    transform: translate(-50%, -50%) rotate(45deg);
}
.post_link .post_arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 7px;
    height: 2px;
    background: #fff;
    border-radius: 1px;
    transform-origin: right center;
    transform: translate(-50%, -50%) rotate(-45deg);
}
.post_link .post_pdf {
    content: "";
    display: inline-block;
    position: relative;
    width: 23px;
    height: 23px;
    cursor: pointer;
    background: url("../images/pdf.webp") no-repeat center center / cover;
}
.post_top_text {
    width: 75%;
    margin: 0 auto 20px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.post_block {
    width: 75%;
    margin: 0 auto 30px;
    padding: 20px;
    border: 1px solid #A98804;
}
.post_block a {
    display: flex;
    justify-content:space-between;
    color: #333;
}
.post_block_content {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    width: 75%;
    padding: 0 0 0 20px;
}
.post_block_img {
    width: 25%;
}
.post_block_title {
    font-family: 'hiragino_min_w6';
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.post_block_text {
    font-family: 'hiragino_min_w6';
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    /* font-size: 20px; */
    font-size: clamp(0.875rem, 0.714rem + 0.857vw, 1.25rem);
    line-height: 2;
}
.post_img {
    width: 75%;
    margin: 0 auto 50px;
}

/* form *//* 共通レイアウト */
.contact_form {
  margin: 0 auto;
}
.contact_form_wrapper {
    margin: clamp(1.25rem, 0.179rem + 5.714vw, 3.75rem) 0 0;
}
.contact_form_inner {
  margin: 0 0 100px;
}
/* 横並び行 */
.form-row {
  display: flex;
  gap: 20px;
  margin: 0 0 30px;
}
.form-row.form-row_t {
  margin: 0 0 10px;
}
.form-ma {
  margin: 0 0 30px;
}

/* 左側ラベル */
.form_label {
  width: 30%;
  font-weight: bold;
  line-height: 1.5;
  font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
}
.form_label p {
  font-weight: bold;
  line-height: 1.5;
  font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
}

/* 右側入力欄 */
.form_field {
  display: block;
}
/* 横並びの親 */
.date-selects {
  display: flex; 
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
}
/* CF7が自動生成するspanを横並びに */
.date-selects span.wpcf7-form-control-wrap {
  display: inline-flex !important;
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
/* セレクトボックスの幅 */
.date-selects select {
    min-width: 100px;
}
.gengo .date-selects select {
  min-width: 170px;
}
/* 入力欄共通 */
.input_text,
.input_zip,
.input_textarea,
.input_select {
  width: 100%;
  margin: 0 0 10px;
  padding: 10px 15px;
  border: 1px solid #333;
  border-radius: 5px;
  font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
  box-sizing: border-box;
  transition: 0.3s;
}
/* フォーカス時 */
.input_text:focus,
.input_zip:focus,
.input_textarea:focus,
.input_select:focus {
  border-color: #a68a5b;
  box-shadow: 0 0 6px rgba(166, 138, 91, 0.4);
  outline: none;
}
.select-wrapper {
  position: relative;
  display: inline-block;
}

.input_zip{
  width: 60%; 
}

.contact_form .yaku_asterisk {
    margin: 0 0 0;
}

.contact_form .hoi_table {
    margin: 0 0 0;
}

.input_select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 10px 40px 10px 12px;
  border-radius: 5px;
  border: 1px solid #333;
  font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
  cursor: pointer;
}

.select-wrapper::after {
  content: "▼";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: #333;
  pointer-events: none;
}



/* テキストエリア */
.textarea-row {
  flex-direction: column;
}
.textarea-row .form_label {
  width: 100%;
  margin-bottom: 10px;
}
.textarea-row .form_field.fullwidth {
  width: 100%;
}
.input_textarea {
  width: 100%;
  min-height: 180px;
  margin: 0 0 50px;
  resize: vertical;
}
  .name-wrapper {
    display: flex;
    align-items: center;
    gap: 8px; /* 項目間の間隔 */
    flex-wrap: wrap; /* 画面が狭いときに折り返す */
  }
  .name-wrapper span {
    white-space: nowrap; /* ラベルの改行防止 */
  }
  .name-wrapper .input_text {
    width: 200px; /* 必要に応じて幅調整 */
  }
/* ラジオボタンを横並びに */
.form_field .wpcf7-list-item {
  display: inline-block;
  margin: 0;
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    padding: 0 10px 0 0;
}

.form_field .label_font_s .wpcf7-list-item {
    padding: 0;
    font-size: clamp(1rem, 0.786rem + 1.143vw, 1.5rem);
}
.form_field .wpcf7-list-item label {
  cursor: pointer;
}
/* 必須バッジ */
.required {
  color: #fff;
  margin: 0 10px;
  padding: 5px;
  font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
  background-color: #A9291D;
}
/* ボタン配置 */
.form-buttons {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
/* 送信ボタン */
.btn_submit {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 250px;
  min-height: 70px;
  padding: 10px 30px;
  font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
  color: #fff;
  cursor: pointer;
  background: #A98804;
  border: 1px solid #A98804;
  border-radius: 50px;
  transition: all .3s;
}
.btn_submit:hover {
  background-color: #876f04;
}

/* 説明文 */
.form_text {
  margin: 0 0 50px;
    padding: 0 ;
  font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
  line-height: 2;
  text-align: center;
}
.form_text_s {
  margin: 0 0 50px;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
  line-height: 2;
}
.form_note {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
  margin: 0 0 3px;
} 
.form_attention {
    width: 70%;
    margin: 0 auto 50px;
    padding: 50px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    border: 2px solid #740A00;
}
.form_attention_title {
    margin: 0 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    text-align: center;
}
.form_link a {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    color: #333;
    border-bottom: 1px solid #A98804;
}
.form_vertical_title {
    margin: 0 0 20px;
    /* font-size: 36px; */
    font-size: clamp(1.625rem, 1.357rem + 1.429vw, 2.25rem);
    font-weight: 700;
    color: #A98804;
    text-align: center;
}
.form_vertical {
  writing-mode: vertical-lr;
  text-orientation: upright;
    /* font-size: 24px; */
    font-size: clamp(0.875rem, 0.607rem + 1.429vw, 1.5rem);
  font-weight: 700;
  line-height: 2;
  margin: 20px auto 80px;
}
.form_period {
    margin: 0 0 50px;
    padding: 20px 0 0;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    text-align: center;
}
.form_btn {
    margin: 0 auto 150px;
}

.form_red {
    width: 70%;
    margin: 0 auto 70px;
    padding: 40px 80px;
    background: #740A00;
    color: #fff;
    text-align: center;
}
.form_red.mizu_form {
    background: #A98804;
}
.form_red_title {
    margin: 0 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
}
.form_red_white {
    margin: 0 0 30px;
    padding: 30px 0;
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
    font-weight: 700;
    line-height: 2;
    background: #fff;
    color: #740A00;
}
.mizu_form .form_red_white{
    color: #A98804;
}
.form_red_middle {
    margin: 0 0 30px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    line-height: 2;
}
.form_red_text {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.7083rem + 0.2222vw, 0.875rem);
    line-height: 2;
}
.form_c_title {
    margin: 0 0 30px;
    padding: 10px 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    background: #F2F0E8;
}
.form_c_text {
    margin: 0 0 30px;
    padding: 0 10%;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 1.5;
}

.checkbox_label {
  display: block;
  margin: 0;
    padding: 0 10%;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
  font-weight: normal;
  line-height: 2;
}
.checkbox_label.no_p {
    padding: 0;
}

input[type="checkbox"] {
  position: relative;
  top: -1px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  accent-color: #333;
  border-radius: 10px;
  vertical-align: middle;
}

/* kuyo */
.kuyo_list_flex {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.kuyo_list_content {
    padding: 80px 50px;
}
.kuyo_list_text {
    margin: 0 0 15px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    line-height: 1.5;
    text-align: center;
}
.kuyo_w_box {
    width: 65%;
    min-height: 400px;
    margin: 0 0 150px;
    padding: 80px 170px 80px 50px;
    background: #fff;
}
.kuyo_right .kuyo_w_box {
    padding: 80px 50px 80px 180px;
}
.kuyo_mi_li_flex {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.kuyo_mi_li_100 {
    width: 100%;
}
.kuyo_w_box_inner {
    display: flex;
    position: relative;
}
.kuyo_w_img {
    position: absolute;
    top: -50px;
    left: 50%;
    width: 50vw;
}
.kuyo_right .kuyo_w_img {
    transform: translate(-50vw, 0);
}
.kuyo_w_box_inner.kuyo_right {
    flex-direction: row-reverse;
}
.kuyo_w_step {
    margin: 0 0 10px;
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
    font-weight: 700;
    color: #a98804;
}
.kuyo_w_title {
    margin: 0 0 30px;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
    color: #740A00;
}
.kuyo_w_text {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
    text-align: center;
}
.kuyo_bar_title {
    margin: 0 0 50px;
    padding: 30px 0;
    /* font-size: 28px; */
    font-size: clamp(1.25rem, 1.036rem + 1.143vw, 1.75rem);
    font-weight: 700;
    color: #fff;
    background: #a98804;
    text-align: center;
}
.kuyo_bar_title span {
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
}
.kuyo_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 50px;
}
.kuyo_flex_left {
    width: 35%;
}
.kuyo_flex_right {
    width: 60%;
}
.kuyo_flex_right_title {
    margin: 0 0 20px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
    color: #A98804;
}
.kuyo_flex_right_text {
    margin: 0 0 30px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 2;
}
.kuyo_flex_right_text_list {
    margin: 0 0 30px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    line-height: 1.5;
}
.kuyo_flex_right_yen {
    margin: 0 0 30px;
    /* font-size: 20px; */
    font-size: clamp(1rem, 0.893rem + 0.571vw, 1.25rem);
    font-weight: 700;
}
.kuyo_flex_right_yen.m_none {
    margin: 0;
}
.kuyo_flex_right_yen .kuyo_yen {
    color: #A98804;
}
.kuyo_flex_right_yen .kuyo_hosoku {
    /* font-size: 16px; */
    font-size: clamp(0.875rem, 0.821rem + 0.286vw, 1rem);
}
.kuyo_list {
    display: flex;
    align-items: center;
    padding: 30px 0 30px 30px;
    border-bottom: 1px solid #eee;
}
.kuyo_list:last-of-type {
    margin: 0 0 100px;
    border-bottom: none;
}
.kuyo_list_title {
    width: 45%;
    /* font-size: 24px; */
    font-size: clamp(1.125rem, 0.964rem + 0.857vw, 1.5rem);
    font-weight: 700;
}
.kuyo_list_btn {
    margin: 0 25px 0 0;
    padding: 5px 25px;
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    border: 1px solid #A98804;
    border-radius: 20px;
}
.kuyo_list_price {
    /* font-size: 18px; */
    font-size: clamp(0.875rem, 0.768rem + 0.571vw, 1.125rem);
    font-weight: 700;
}
.kuyo_list_price span {
    /* font-size: 14px; */
    font-size: clamp(0.75rem, 0.696rem + 0.286vw, 0.875rem);
}



/* スマホ対応 */
@media screen and (max-width: 768px) {
  .form-row {
    flex-direction: column;
  }
  .form_label, .form_field {
    width: 100%;
  }
}









/* レスポンシブ対応 */

@media screen and (max-width: 1200px) {
    .nav_menu {
        padding: 130px 0 0;
    }
    .header_menu_bottom {
        left: 10%;
        width: 90%;
    }
    .header_menu.menu_1 {
        left: 10%;
    }
    .header_menu.menu_2 {
        left: 30%;
    }
    .header_menu.menu_3 {
        left: 55%;
    }
    .mv_content_left {
        width: 40%;
        padding: 0 0 0 10px;
    }
    .mv_content_right {
        width: 60%;
    }
    .pet_feature_bg {
        width: 100%;
    }
    .pet_feature_inner {
        width: 100%;
    }
    .pet_feature_box {
        width: 31vw;
    }
}

@media screen and (max-width: 1000px) {
    .contents_flex.flex_sp_block_10 {
        display: block;
    }
    .mv_contents {
        flex-direction: column;
        align-items: center;
    }
    .mv_content_left {
        align-items: center;
        width: 100%;
        margin: 0 0 30px;
        padding: 0;
    }
    .mv_content_right {
        width: 100%;
    }
    .index .mv_wrapper {
        margin: 0 auto 50px;
    }
    .nav_menu {
        padding: 100px 0 0;
    }
    .nav_menu_inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .header_menu {
        position: initial;
    }
    .header_menu.menu_3 {
        width: 70%;
        margin: 0 auto 50px;
    }
    .header_menu_bottom {
        position: initial;
        width: 70%;
        margin: 0 auto;
        padding: 0;
    }
    .header_menu_bottom_ul {
        flex-direction: column;
        justify-content: flex-start;
        gap: 0;
    }
    .top_form {
        margin: 0 auto 30px;
    }
    .footer_text {
        margin: 0 auto 150px;
    }
    .page_w_contents.page_contents_gokigan {
        padding: 50px 50px;
    }
    .page_r_contents.page_contents_guid {
        width: 80%;
        margin: 50px auto;
    }
    .page_post_inner {
        padding: 50px;
    }
    .page_contact_box {
        width: 80%;
        margin: 0 auto;
    }
    .page_w_contents.page_contents_block_matsuri {
        padding: 50px 10px 40px;
    }
    .pet_flow_box_select {
        gap: 30px;
        margin: 0;
    }
    .pet_apply_img {
        width: 100%;
    }
    .pet_apply_inner {
        width: 100%;
    }
    .omamori_top_text {
        margin: 0 0 50px;
    }
    .omamori_flex_box {
        width: 32%;
        margin: 0 0 40px;
    }
    .omamori_flex_img {
        margin: 0 0 30px;
    }
    .event_season_btn a {
        min-width: 100%;
        min-height: 100%;
        padding: 5px 20px 0 5px;
    }
    .about_anchor_li a {
        padding: 20px 30px 20px 20px;
    }
    .about_anchor_li a::before {
        right: 15px;
    }
    .post_table th {
        min-width: auto;
    }
    .btn_submit {
        min-width: 200px;
        min-height: 50px;
    }
    .kuyo_list_inner {
        width: 95%;
        margin: 0 auto;
    }
    
    .kuyo_w_box_inner {
        display: block;
    }
    .kuyo_w_img {
        position: absolute;
        top: auto;
        bottom: 0;
        left: 50%;
        width: 90%;
        transform: translate(-50%, 85%);
    }
    .kuyo_right .kuyo_w_img {
        transform: translate(-50%, 85%);
    }
    .kuyo_w_box {
        width: 100%;
        min-height: auto;
        margin: 0 0 50vw;
        padding: 50px 20px 80px ;
    }
    .kuyo_right .kuyo_w_box {
        padding: 50px 20px 80px ;
    }
}

@media screen and (max-width: 768px) {
    .contents_flex.flex_sp_block_7 {
        display: block;
    }
    .header_nav {
        display: none;
    }
    .nav_menu {
        padding: 80px 0 0;
    }
    .header_menu.menu_3 {
        width: 80%;
        margin: 0 auto 50px;
    }
    .header_menu {
        padding: 0 15px 20px;
    }
    .header_menu_bottom {
        padding: 0 15px 20px;
        width: 80%;
    }
    .news_block {
        width: 49%;
    }
    .matsuri_flex {
        flex-direction: column;
        align-items: center;
    }
    .matsuri_blocks {
        display: block;
    }
    .matsuri_flex .matsuri_list {
        padding: 0 0 0 40px;
    }
    .page_w_contents.page_contents_block_matsuri {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 0 30px;
    }
    .page_w_contents.page_contents_block_matsuri:last-of-type {
        margin: 0;
    }
    .page_w_contents.page_contents_gokigan {
        padding: 30px 10px;
    }
    .page_r_contents.page_contents_guid {
        width: 90%;
        margin: 20px auto;
    }
    .page_post {
        margin: 0 0 30px;
    }
    .page_post_inner {
        padding: 30px;
    }
    .page_post_img {
        width: 30%;
    }
    .page_post_content {
        width: 68%;
    }
    .page_contact_box {
        width: 90%;
    }
    .matsuri_top_img {
        width: 80%;
    }
    .eitai_joshinbyo_flex {
        display: block;
    }
    .eitai_joshinbyo_img {
        width: 70%;
        margin: 0 auto 20px;
    }
    .eitai_joshinbyo_content {
        width: 100%;
        align-items: center;
    }
    .eitai_joshinbyo_title {
        margin: 0 0 30px;
    }
    .eitai_price_bottom_inner {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .page_price_content {
        padding: 20px 50px 30px;
    }
    .page_price_flex {
        flex-direction: column;
        align-items: center;
    }
    .page_price_flex .page_price_content {
        width: 100%;
        padding: 20px 0;
    }
    .page_contact_flex {
        flex-direction: column;
    }
    .page_price_line {
        width: 80%;
        height: 1px;
    }
    .page_contact_tel {
        padding: 0 0 30px;
    }
    .page_contact_access {
        margin: 0 0 20px;
    }
    .page_price_box.harf_box {
        width: 100%;
    }
    .mizuko_relieved {
        display: block;
        margin: 50px 0;
    }
    .mizuko_price_inner {
        width: 90%;
        margin: 0 auto;
    }
    .mizuko_relieved_img1 {
        width: 100%;
    }
    .mizuko_relieved_right {
        width: 100%;
    }
    .mizuko_relieved_title {
        margin: 20px 0 20px;
        text-align: center;
    }
    .mizuko_relieved_img2 {
        width: 100%;
    }
    .mizuko_list {
        margin: 10px auto 20px;
    }
    .pet_feature_bg {
        padding: 20px 0;
    }
    .pet_feature_box {
        width: 100%;
    }
    .pet_feature_box {
        margin: 0 0 20px;
    }
    .pet_feature_box_img {
        margin: 0 auto 20px;
    }
    .pet_feature_box_title {
        text-align: center;
    }
    .pet_flow_box {
        margin: 30px 0;
        padding: 30px 20px;
    }
    .pet_flow_box_img {
        width: 100%;
    }
    .pet_flow_box_select {
        display: block;
    }
    .pet_flow_box_selectbox {
        position: relative;
        margin: 50px 0 0;
        padding: 30px 20px 10px;
    }
    .pet_flow_box_text {
    padding: 0 40px 0 0;
    }
    .pet_flow_box_left {
        margin: 0 20px 0 0 ;
    }
    .pet_flow_titlebox_slim {
        width: 100%;
    }
    .pet_flow_titlebox_list {
        margin: 0 0 30px;
    }
    .pet_flow_titlebox_img {
        margin: 0 30px 50px;
    }
    .pet_price_inner {
        width: 70%;
        margin: 0 auto 30px;
    }
    .pet_apply_content {
        padding: 0 50px 50px;
    }
    .pet_apply_text {
        margin: 0 0 15px;
    }
    .kaido_equipment_text {
        margin: 0 0 20px;
    }
    .kaido_equipment_flex {
        margin: 0 0 50px;
    }
    .kaido_equipment_box {
        width: 49%;
    }
    .kaido_equipment_box_img {
        margin: 0 0 20px;

    }
    .omamori_flex {
        gap: 2%;
    }
    .omamori_flex_box {
        width: 49%;
        margin: 0 0 30px;
    }
    .omamori_flex_img {
        margin: 0 0 20px;
    }
    .omamori_top_text {
        margin: 0 0 30px;
    }
    .danshinto_img_content {
        left: 40%;
        width: 60%;
    }
    .danshinto_img_text {
        margin: 0 0 20px;
    }
    .about_img_m {
        margin: 0 0 50px;
    }
    .about_flex {
        flex-direction: column;
        align-items: center;
    }
    .about_flex.flex_return {
        flex-direction: column;
    }
    .about_flex_content {
        width: 100%;
        margin: 10px 0;
        padding: 0 20px;
    }
    .about_flex_title {
        margin: 0 0 30px;
    }
    .about_flex_text {
        padding: 0;
    }
    .about_center_text {
        margin: 20px 0 30px;
    }
    .about_gold_text {
        padding: 30px 0 0;
    }
    .about_hibun_flex {
        display: block;
        margin: 0 0 50px;
    }
    .about_hibun_title {
        margin: 0 0 20px;
    }
    .about_flex.flex_return {
        margin: 0;
    }
    .about_hibun_flex_content {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        margin: 10px 0;
    }
    .corner-border {
        width: 90%;
    }
    .corner-border::before {
    top: 0;
    }
    .corner-border::after {
    top: 0;
    }
    .about_bato_title {
        margin: 0 0 30px;
    }
    .corner-border {
        padding: 20px 0 ;
    }
    .about_bato_content {
        width: 80%;
    }
    .about_anchor_nav {
        justify-content: flex-start;
        margin: 0 0 50px;
    }
    .about_anchor_li {
        width: 33%;
        border: 1px solid #fff;
    }
    .about_hudasyo_img {
        margin: 0 0 20px;
    }
    .page_contact_flex_text {
        padding: 0;
    }
    .page_contact_flex_block {
        width: 100%;
    }
    .access_box.page_contact_flex_block {
        margin: 0 0 30px;
    }
    .access_flex {
        display: block;
    }
    .access_content {
        width: 100%;
    }
    .access_content_top {
        margin: 0 0 50px;
    }
    .access_content_bottom {
        margin: 0 0 50px;
    }
    .access_content_address {
        margin: 0 0 20px;
    }
    .access_parking_text {
        width: 80%;
    }
    .access_content_img {
        width: 49%;
    }
    .event_season_contents {
        width: 100%;
    }
    .event_time {
        margin: 50px 0;
    }
    .event_timeline:before {
        left: 10px;
    }
    .event_timeline .timeline_item .time_date .time:before {
        left: -36px;
    }
    .event_timeline .timeline_item {
        margin: 0px 0px 0px 40px;
    }
    .archive_btns {
        gap: 0.5%;
        margin: 0 0 50px;
    }
    .archive_btn a {
        min-width: 85px;
        min-height: 40px;
    }
    .page_post_title {
        margin: 0 0 5px;
    }
    .page_single .page_post_title {
        margin: 0 0 30px;
    }
    .post-detail-content {
        margin: 0 0 50px;
    }
    .post_toc {
        width: 80%;
        padding: 30px 20px 30px;
    }
    .post_dots_li {
        width: 90%;
        margin: 0 auto 30px;
        padding: 30px 10px;
    }
    .post_dots_li ul li {
        padding: 20px 10px;
    }
    .post_num_li ol {
        width: 90%;
        margin: 0 auto 30px;
        padding: 30px 20px 20px;
    }
    .post_top_text {
        width: 85%;
    }
    .post_block {
        width: 85%;
        padding: 15px;
    }
    .post_block_content {
        width: 65%;
        padding: 0 0 0 10px;
    }
    .post_block_img {
        width: 35%;
    }
    .post_img {
        width: 85%;
        margin: 0 auto 30px;
    }
    .post_table {
        margin: 0 auto 30px;
    }
    .contact_form_inner {
    margin: 0 0 50px;
    }
    .form-row {
    gap: 10px;
    margin: 0 0 20px;
    }
    .form-row.form-row_t {
    margin: 0;
    }
    .form-ma {
    margin: 0 0 20px;
    }
    .input_textarea {
    margin: 0 0 30px;
    }
    .form-buttons {
    margin-top: 30px;
    }
    .form_text {
    margin: 0 0 30px;
    }
    .form_text_s {
    margin: 0 0 30px;
    }
    .form_attention {
        width: 90%;
        margin: 0 auto 30px;
        padding: 30px 20px;
    }
    .form_attention_title {
        margin: 0 0 20px;
    }
    .form_link {
        margin: 0 0 20px;
    }
    .form_period {
        margin: 0 0 30px;
    }
    .form_btn {
        margin: 0 auto 100px;
    }
    .form_red {
        width: 90%;
        margin: 0 auto 50px;
        padding: 20px 40px;
    }
    .form_red_title {
        margin: 0 0 20px;
    }
    .form_red_white {
        margin: 0 0 20px;
        padding: 20px 0;
    }
    .form_red_middle {
        margin: 0 0 20px;
    }
    .form_c_title {
        margin: 0 0 20px;
    }
    .form_c_text {
        margin: 0 0 20px;
        padding: 0 5%;
    }
    .sp_w_m {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
    .sp_w_s {
        width: 70%;
        margin-right: auto;
        margin-left: auto;
    }
    .sp_w_ss {
        width: 50%;
        margin-right: auto;
        margin-left: auto;
    }
    .kuyo_list_content {
        padding: 50px 5px;
    }
    .kuyo_w_img {
        transform: translate(-50%, 80%);
    }
    .kuyo_right .kuyo_w_img {
        transform: translate(-50%, 80%);
    }
    .kuyo_flex {
        flex-direction: column;
        align-items: center;
    }
    .kuyo_flex_left {
        width: 60%;
        margin: 0 auto 20px;
    }
    .kuyo_bar_title {
        margin: 0 0 30px;
        padding: 20px 0;
    }
    .kuyo_list {
        flex-wrap: wrap;
        justify-content: center;
        padding: 20px 0;
    }
    .kuyo_list_title {
        width: 100%;
        margin: 0 0 20px;
        text-align: center;
    }
    .kuyo_list:last-of-type {
        margin: 0 0 50px;
    }
}

@media screen and (max-width: 480px) {
    .index .mv_wrapper {
        margin: 0 auto 30px;
    }
    .header_menu_li {
        margin: 0 0 15px;
    }
    .header_menu_li.menu_li_m {
        margin: 0 0 10px;
    }
    .header_menu_li_title {
        margin: 0 0 10px;
    }
    .nav_menu_inner {
        display: block;
    }
    .header_menu.menu_3 {
        width: auto;
        margin: 0 auto;
    }
    .header_menu_bottom {
        width: auto;
    }
    .contents_link {
        width: 100%;
    }
    .news_block,
    .news_block.content_3 {
        width: 70%;
        margin: 0 auto 20px;
    }
    .news_img {
        margin: 0 0 5px;
    }
    .news_title {
        margin: 0 0 5px;
    }
    .page_post_inner {
        padding: 10px;
    }
    .page_archive .page_post_block {
        padding: 20px 0;
    }
    .page_contact_box {
        width: 95%;
    }
    .top_line {
        max-width: 200px;
    }
    .footer_logo {
        width: 80%;
    }
    .footer_text {
        margin: 0 auto 80px;
    }
    .footer_gmap iframe {
        height: 300px;
    }
    .mv_bg {
        margin: 0 0 10px;
    }
    .page_r_contents.page_contents_guid {
        width: 100%;
        margin: 0 auto;
    }
    .page_post_title {
        margin: 0 0 5px;
    }
    .page_post_img {
        width: 35%;
    }
    .page_post_content {
        width: 62%;
    }
    .page_post_text {
        line-height: 1.5;
    }
    .yaku_block {
        width: 100%;
    }
    .kihuda_img {
        margin: 0 0 10px;
    }
    .kihuda_title {
        margin: 0 0 10px;
    }
    .kihuda_block {
        width: 49%;
        margin: 0 0 20px;
    }
    .eitai_joshinbyo_img {
        width: 80%;
    }
    .page_price_inner {
        width: 100%;
    }
    .mizuko_post_wrapper {
        padding: 15px;
    }
    .mizuko_price_inner {
        width: 95%;
    }
    .pet_flow_box_title {
        margin: 10px 0 20px;
    }
    .pet_flow_box_selectbox {
        padding: 30px 10px 10px;
    }
    .pet_flow_box_left {
        margin: 0 10px 0 0 ;
    }
    .pet_flow_box {
        padding: 20px 10px;
    }
    .pet_flow_box_selecttitle {
        padding: 10px;
    }
    .pet_flow_box_num {
        padding: 10px 10px 13px 10px;
    }
    .pet_flow_titlebox {
        margin: 80px 0 50px;
        padding: 50px 10px 20px;
    }
    .pet_flow_titlebox_title {
        width: 90%;
        padding: 15px;
    }
    .pet_flow_titlebox_list {
        margin: 0 0 20px;
    }
    .pet_flow_titlebox_img {
        margin: 0 10px 30px;
    }
    .pet_price_inner {
        width: 85%;
    }
    .pet_price_m {
        margin: 30px 0 50px;
    }
    .pet_price_b_m {
        margin: 0 0 50px;
    }
    .pet_apply_content {
        padding: 0 20px 30px;
    }
    .pet_qa_title {
        margin: 30px 0 10px;
    }
    .kaido_equipment_flex {
        margin: 0 0 30px;
    }
    .event_season_btn a {
        padding: 2px 20px 2px 0;
    }
    .about_anchor_li {
        width: 50%;
    }
    .about_flex_content {
        padding: 0;
    }
    .corner-border {
        width: 100%;
    }
    .about_bato_content {
        width: 90%;
    }
    .page_contact_flex.w_80 {
        width: 95%;
    }
    .page_price_flex .page_price_content {
        padding: 20px 0;
    }
    .danshinto_img_content {
        display: block;
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
    }
    .danshinto_img_text {
            margin: 20px 0 20px;
        color: #333;
    }
    .access_parking_text {
        width: 90%;
    }
    .access_content_flex {
        display: block;
    }
    .access_content_img {
        width: 100%;
        margin: 0 0 10px;
    }
    .event_timeline .timeline_item .time_date .time {
        margin: 0 0 10px;
        padding: 3px 0 0;
    }
    .archive_btns {
        flex-wrap: wrap;
        margin: 0 0 30px;
    }
    .archive_btn {
        margin: 0px 5px 5px;
    }
    .new-badge {
        margin: 0 10px 0 0;
    }
    .post-date {
        margin: 0;
    }
    .page_post_title_link {
        display: block;
    }
    .post-detail-content {
        margin: 0 0 30px;
    }
    .post_toc {
        width: 95%;
        margin: 0 auto 20px;
        padding: 30px 10px 30px;
    }
    .post_dots_li {
        width: 95%;
        margin: 0 auto 30px;
        padding: 20px 10px;
    }
    .post_num_li ol {
        width: 95%;
        margin: 0 auto 30px;
        padding: 30px 10px 10px;
    }
    .post_top_text {
        width: 90%;
        margin: 0 auto 15px;
    }
    .post_block {
        width: 100%;
        padding: 10px;
        border: 1px solid #A98804;
    }
    .post_block_text {
        line-height: 1.5;
    }
    .post_block_title {
        line-height: 1.2;
    }
    .post_img {
        width: 90%;
        margin: 0 auto 30px;
    }
    .form_attention {
        width: 90%;
        margin: 0 auto 30px;
        padding: 30px 20px;
    }
    .form_period {
        margin: 0 0 20px;
    }
    .form_btn {
        margin: 0 auto 50px;
    }
    .form_red {
        width: 95%;
        margin: 0 auto 30px;
        padding: 20px;
    }
    .date-selects select {
    min-width: auto;
    }
    .gengo .date-selects select {
    min-width: 100px;
    }
    .form_c_text {
        padding: 0 3%;
    }
    .form_vertical {
    line-height: 1.5;
    margin: 20px auto 50px;
    }
    .checkbox_label {
        padding: 0;
    }
    .kuyo_list_inner {
        width: 100%;
    }
    .sp_w_m {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }
    .sp_w_s {
        width: 70%;
        margin-right: auto;
        margin-left: auto;
    }
    .sp_w_ss {
        width: 50%;
        margin-right: auto;
        margin-left: auto;
    }
    .kuyo_w_img {
        transform: translate(-50%, 70%);
    }
    .kuyo_right .kuyo_w_img {
        transform: translate(-50%, 70%);
    }
    .kuyo_list_btn {
        margin: 0 auto 10px;
        padding: 5px 25px;
    }
    .kuyo_flex_right {
        width: 100%;
    }
    .kuyo_flex_right_text {
            text-align: center;
    }
    .kuyo_list_price {
        width: 100%;
        text-align: center;
    }
    .kaido_table th {
        display: block;
        width: 100%;
        background: #F2F0E8;
        border: none;
    }
    .kaido_table td {
        display: block;
        width: 100%;
        text-align: center;
        border-bottom: none;
    }
}

