@charset "UTF-8";
/*=======================================
設定
=======================================*/
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPMincho:wght@400;700&family=Cinzel:wght@400..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@24,400,0,0");
:root {
    /*Wrapper*/
    --ctr_width: 100%;
    --ctr_max: 1200px;
    /*color*/
    /*サイトカラー*/
    --maincolor: 63, 90, 99;
    --subcolor01: 231, 185, 139;
    --subcolor02: 95, 91, 91;
    /*テキストカラー*/
    --bace_tx_color: 95, 91, 91;
    --light_tx_color: 255, 255, 255;
    --dark_tx_color: 23, 12, 9;
    --error_color: 200, 21, 7;
    /*基本色*/
    --white: 255, 255, 255;
    --black: 23, 12, 9;
    --gray: 102, 102, 102;
    /*背景色*/
    --bg_white: 255, 255, 255;
    --bg_color01: 230, 225, 222;
    --bg_color02: 112, 107, 107;
    /*その他*/
    --marker: 255, 255, 102;
    --base-radius: 8px;
    /*プラザcolor=====*/
    /*（注）仮の色　各プラザの色決定次第変更*/
    /*協会*/
    --org: 63, 98, 99;
    /*新宿健診プラザ*/
    --sinjuku: 192, 117, 117;
    /*伊勢崎健診プラザ*/
    --isesaki: 99, 137, 121;
    /*とちぎ健診プラザ*/
    --tochigi: 94, 77, 119;
    /*山形健康管理センター*/
    --yamagata: 175, 147, 92;
    /*other*/
    --base_radius: 6px;
    --inner_radius: 6px;
    --btn_radius: 100px;

    /*header height(js)*/
    --header-h: 90px;
}
/*=======================================
font
=======================================*/
.material-symbols-sharp {
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
}
/*============ body*/
body {
    font-family: "BIZ UDPMincho", serif;
    font-weight: 400;
    color: rgba(var(--bace_tx_color), 1);
    overflow-x: hidden;
    background: url(../img/common_img/bgimg01.jpg);
}
html {
    overflow-x: hidden;
}
/*chrome画像対策*/
img {
    image-rendering: -webkit-optimize-contrast;
}
/*=======================================
header
=======================================*/
.header_wrap {
    position: fixed;
    block-size: clamp(66px, 6.589vw, 90px);
    z-index: 998;
    inset: 0 0 auto;
    transition-duration: 0.3s;
    transition-property: background block-size;
}
.header_wrap.fixed {
    background: rgba(var(--bg_white), 1);
}
@media (width >=1200px) {
    .header_wrap.fixed {
        block-size: calc(clamp(66px, 6.589vw, 90px) - 10px);
    }
}
.header_group {
    block-size: 100%;
    display: flex;
    align-items: center;
    padding-inline: clamp(20px, 4.39238653vw, 60px);
}
.mainlogo a img {
    inline-size: 160px;
    block-size: auto;
    transition: 0.3s;
}
.mainlogo a img:hover {
    opacity: 0.6;
}
@media (width >=768px) {
    .mainlogo a img {
        inline-size: clamp(211px, 163vw/12, 263px);
    }
}
.h_contact {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: calc(clamp(16px, 2vw, 24px) + 35px);
    margin-inline-end: calc(clamp(16px, 2vw, 24px) + 35px);
}
@media (width >=1200px) {
    .h_contact {
        -webkit-margin-end: 0;
        margin-inline-end: 0;
    }
}
.h_contact > a {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
    will-change: transform, opacity;
}
.h_contact > a .en_tx {
    display: none;
}
.h_contact > a [class^="material-symbols-"] {
    font-size: 2.8rem;
}
.h_contact > a:hover {
    opacity: 0.8;
    -webkit-transform: translateZ(0) !important;
    transform: translateZ(0) !important;
}
@media (width >=600px) {
    .h_contact > a {
        background: rgba(var(--subcolor02), 1);
        color: rgba(var(--light_tx_color), 1);
        block-size: 40px;
        inline-size: 140px;
    }
    .h_contact > a .en_tx {
        display: block;
        font-size: 1.8rem;
        line-height: 1;
    }
    .h_contact > a [class^="material-symbols-"] {
        display: none;
    }
}
/*=======================================
nav
=======================================*/
/*toggle ==*/
.toggle {
    position: fixed;
    inset-inline-end: clamp(20px, 4.39238653vw, 60px);
    top: clamp(20px, 2.342vw, 32px);
    z-index: 1000;
    transition: 0.2s;
}
.toggle button {
    border: none;
}
@media (width >=1200px) {
    .toggle {
        display: none;
    }
}
:root {
    --burger_color: rgba(63, 98, 99, 1);
    --burger_line: 1px;
    --burger_size: 35px;
    --burger_size_h: 26px;
    --duration: 0.3s;
}
.hamburger {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    inline-size: var(--burger_size);
    block-size: var(--burger_size_h);
    padding: 0;
    background-color: transparent;
    outline: none;
    cursor: pointer;
}
.hamburger::before {
    display: block;
    inline-size: var(--burger_size);
    block-size: var(--burger_line);
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    background-color: var(--burger_color);
    box-sizing: border-box;
    -webkit-animation: navToggleOuter_reverse var(--duration);
    animation: navToggleOuter_reverse var(--duration);
    content: "";
    transition-duration: var(--duration);
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}
.hamburger span {
    display: block;
    inline-size: calc(var(--burger_size) - 6px);
    block-size: var(--burger_line);
    background-color: var(--burger_color);
    box-sizing: border-box;
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    transition-duration: var(--duration);
    transition-property: opacity;
}
.hamburger::after {
    display: block;
    position: absolute;
    inset-inline-start: 0;
    inset-block-end: 0;
    inline-size: calc(var(--burger_size) - 12px);
    block-size: var(--burger_line);
    background-color: var(--burger_color);
    box-sizing: border-box;
    -webkit-animation: navToggleInner_reverse var(--duration);
    animation: navToggleInner_reverse var(--duration);
    content: "";
    transition-duration: var(--duration);
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}
.hamburger_open::before {
    inset-block-start: 50%;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
    background-color: rgba(var(--white), 1);
}
.hamburger_open::after {
    inline-size: 35px;
    inset-block-start: 50%;
    inset-inline-start: 1.5px;
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg) translateY(-50%);
    background-color: rgba(var(--white), 1);
}
.hamburger_open span {
    opacity: 0;
}
/*nav ==*/
#mainnav {
    position: fixed;
    block-size: 100vh;
    block-size: 100dvh;
    inline-size: 100vw;
    inset: 0;
    background: rgba(var(--bg_color02), 0.85);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    opacity: 0;
    z-index: -10;
    transition-duration: 0.2s;
    transition-timing-function: ease-out;
    transition-property: all;
}
#mainnav.navopen {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    z-index: 999;
}
@media (width >=1200px) {
    #mainnav {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
        position: fixed;
        block-size: calc(clamp(66px, 6.589vw, 90px) - 10px);
        /*inline-size: -webkit-fit-content;
        inline-size: -moz-fit-content;
        inline-size: fit-content;*/
        inline-size: 625px;
        background: revert;
        -webkit-backdrop-filter: blur(0);
        backdrop-filter: blur(0);
        z-index: 999;
        inset: 0 calc(clamp(20px, 4.39238653vw, 60px) + 140px + 32px) auto auto;
    }
}
@media (width >=1366px) {
    #mainnav {
        block-size: clamp(66px, 6.589vw, 90px);
        inline-size: fit-content;
    }
}
@media (width >=1200px) {
    #mainnav.fixed {
        block-size: calc(clamp(66px, 6.589vw, 90px) - 10px);
    }
    #mainnav.fixed .nav_group {
        block-size: calc(clamp(66px, 6.589vw, 90px) - 10px);
    }
}
@media (width >=1200px) and (width >=1200px) {
    #mainnav.fixed .nav_group > ul > li.toggle_nav .sub_nav {
        inset: calc(clamp(66px, 6.589vw, 90px) - 10px) 0 auto 0;
    }
}
/*nav*/
.mainnav_wrap {
    inline-size: 100%;
    block-size: 100vh;
    block-size: 100dvh;
    padding-block: 40px;
    overflow: auto;
}
@media (width >=1200px) {
    .mainnav_wrap {
        padding-block: 0;
        overflow: revert;
        inline-size: revert;
        block-size: revert;
    }
}
.nav_group {
    inline-size: 100%;
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-items: center;
    justify-content: center;
    padding-inline: 40px;
}
@media (width >=1200px) {
    .nav_group {
        flex-direction: row;
        gap: revert;
        inline-size: revert;
        padding: 0;
        block-size: clamp(66px, 6.589vw, 90px);
    }
}
@media (width >=1366px) {
    .nav_group {
        block-size: clamp(66px, 6.589vw, 90px);
    }
}
.nav_group > ul {
    inline-size: min(100%, 690px);
    display: flex;
    flex-direction: column;
    gap: 24px;
}
@media (width >=1200px) {
    .nav_group > ul {
        inline-size: -webkit-fit-content;
        inline-size: -moz-fit-content;
        inline-size: fit-content;
        flex-direction: row;
        position: relative;
        /*block-size: 100%;*/
        gap: 0 clamp(24px, 2.34vw, 15px);
        
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}
@media (width >=1366px) {
    .nav_group > ul {
        block-size: 100%;
        gap: clamp(24px, 2.34vw, 15px);
        
        justify-content: flex-end;
    }
}
.nav_group > ul > li {
    text-align: start;
}
.nav_group > ul > li a {
    text-decoration: none;
    color: rgba(var(--light_tx_color), 1);
}
.nav_group > ul > li > a {
    font-size: 2rem;
    display: block;
    padding-block: 0.2em;
    transition: 0.2s;
}
.nav_group > ul > li > a::after {
    content: "";
    display: inline-block;
    background: url(../img/common_img/arrow01.png) center center no-repeat;
    background-size: cover;
    inline-size: 24px;
    aspect-ratio: 26/10;
    -webkit-margin-start: 1em;
    margin-inline-start: 1em;
    vertical-align: middle;
    transition: 0.2s;
}
.nav_group > ul > li > a:hover {
    opacity: 0.8;
}
.nav_group > ul > li > a:hover::after {
    -webkit-margin-start: 1.2em;
    margin-inline-start: 1.2em;
}
@media (width >=1200px) {
    .nav_group > ul > li > a {
        display: flex;
        align-items: center;
        block-size: 100%;
        font-size: 1.6rem;
        /*padding-block: 0;*/
        white-space: nowrap;
        color: rgba(var(--bace_tx_color), 1);
        position: relative;
    }
    .nav_group > ul > li > a::before {
        content: "";
        inline-size: 1px;
        block-size: 2px;
        background: rgba(var(--subcolor01), 1);
        display: block;
        opacity: 0;
        position: absolute;
        inset: auto 0 0;
        transition-duration: 0.3s;
        transition-property: all;
    }
    .nav_group > ul > li > a::after {
        display: none;
    }
    .nav_group > ul > li > a:hover::before {
        opacity: 1;
        inline-size: 100%;
    }
}
@media (width >=1366px) {
    .nav_group > ul > li > a {
        block-size: 100%;
        padding-block: 0;
    }
    .nav_group > ul > li > a::before {
        inset: auto 0 16px;
    }
}
.nav_group > ul > li.toggle_nav > a {
    display: none;
}

@media (width >=1200px) {
    .nav_group > ul > li.toggle_nav > a {
        display: flex;
        align-items: center;
        block-size: 100%;
        font-size: 1.6rem;
        padding-block: 0;
        white-space: nowrap;
        color: rgba(var(--bace_tx_color), 1);
        position: relative;
    }
    .nav_group > ul > li.toggle_nav > a::before {
        content: "";
        inline-size: 1px;
        block-size: 2px;
        background: rgba(var(--subcolor01), 1);
        display: block;
        opacity: 0;
        position: absolute;
        inset: auto 0 16px;
        transition-duration: 0.3s;
        transition-property: all;
    }
    .nav_group > ul > li.toggle_nav > a::after {
        display: none;
    }
    .nav_group > ul > li.toggle_nav > a:hover::before {
        opacity: 1;
        inline-size: 100%;
    }
}
.nav_group > ul > li.toggle_nav .sub_nav {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 24px;
}
.nav_group > ul > li.toggle_nav .sub_nav > dt {
    inline-size: 100%;
}
.nav_group > ul > li.toggle_nav .sub_nav > dt a {
    font-size: 2rem;
    display: block;
    padding-block: 0.2em;
    transition: 0.2s;
    -webkit-border-after: 1px solid rgba(var(--bg_color01), 0.6);
    border-block-end: 1px solid rgba(var(--bg_color01), 0.6);
}
.nav_group > ul > li.toggle_nav .sub_nav > dt a::after {
    content: "";
    display: inline-block;
    background: url(../img/common_img/arrow01.png) center center no-repeat;
    background-size: cover;
    inline-size: 24px;
    aspect-ratio: 26/10;
    -webkit-margin-start: 1em;
    margin-inline-start: 1em;
    vertical-align: middle;
    transition: 0.2s;
}
.nav_group > ul > li.toggle_nav .sub_nav > dt a:hover {
    opacity: 0.8;
}
.nav_group > ul > li.toggle_nav .sub_nav > dt a:hover::after {
    -webkit-margin-start: 1.2em;
    margin-inline-start: 1.2em;
}
.nav_group > ul > li.toggle_nav .sub_nav > dd {
    font-size: 1.6rem;
}
.nav_group > ul > li.toggle_nav .sub_nav > dd a {
    transition: 0.2s;
}
.nav_group > ul > li.toggle_nav .sub_nav > dd a:hover {
    opacity: 0.6;
}
@media (width >=1200px) {
    .nav_group > ul > li.toggle_nav .sub_nav {
        opacity: 0;
        position: absolute;
        inline-size: calc(100% + clamp(20px, 4.39238653vw, 60px) + 140px + 32px);
        background: rgba(var(--bg_color02), 0.85);
        inset: clamp(66px, 6.589vw, 90px) 0 auto 0;
        border-radius: 0 0 0 var(--base_radius);
        padding: 24px 32px 32px;
        gap: 14px 48px;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
        pointer-events: none;
        transition-duration: 0.3s;
        transition-property: all;
        transition-timing-function: ease-out;
    }
    .nav_group > ul > li.toggle_nav .sub_nav > dt a {
        font-size: 1.8rem;
        padding-block: 0.2em 0.4em;
    }
    .nav_group > ul > li.toggle_nav .sub_nav.subNavOpen {
        pointer-events: revert;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}
.nav_group > ul > li.active > a {
    pointer-events: none;
}
.nav_group > ul > li.active > a::before {
    opacity: 1;
    inline-size: 100%;
}
.nav_group > ul > li.active.toggle_nav > a {
    pointer-events: revert;
}
.nav_group > ul > li.active.toggle_nav > a::before {
    opacity: 1;
    inline-size: 100%;
}

/*sidenav ============================*/
.side_nav {
    width: 100%;
    position: fixed;
    z-index: 996;
    /*inset: auto 0 0;*/
    inset: auto 0 0 auto;
}
@media (width >=768px) {
    .side_nav {
        width: auto;
        inset: 50% 0 auto auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}
.sidenav_btn {
    display: flex;
    justify-content: flex-end;
}
@media (width >=768px) {
    .sidenav_btn {
        flex-direction: column;
        gap: 18px;
    }
}
.sidenav_btn > li {
    inline-size: 50%;
}
.sidenav_btn > li a {
    color: rgba(var(--light_tx_color), 1);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
    padding: 16px 24px;
    font-size: clamp(1.6rem, 1.317715959vw, 1.8rem);
    line-height: 1;
    transition: 0.2s;
    text-decoration: none;
}
.sidenav_btn > li a:hover {
    opacity: 0.8;
}
@media (width >=768px) {
    .sidenav_btn > li a {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
        padding: 24px 24px;
    }
}
.sidenav_btn > li:nth-of-type(1) a {
    background: rgba(var(--maincolor), 1);
}
.sidenav_btn > li:nth-of-type(2) a {
    background: rgba(var(--subcolor01), 1);
}

/*=====================
パネルリンク */
/*01*/
.panel_link a {
  display: flex;
  align-items: center;
  padding: 16px;
  gap: 16px;
  background: rgba(var(--maincolor), 1);
  color: rgba(var(--light_tx_color), 1);
  text-decoration: none;
  position: relative;
}
.panel_link a [class^="material-"] {
  font-size: 3em;
}
.panel_link a::before {
  content: "";
  display: inline-block;
  position: absolute;
  inset: 0 auto auto 0;
  display: inline-block;
  inline-size: 0;
  block-size: 0;
  border-style: solid;
  border-width: clamp(24px, 2.64vw, 36px) clamp(24px, 2.64vw, 36px) 0 0;
  border-color: rgba(var(--subcolor01), 1) transparent transparent transparent;
}
@media (width >=768px) {
  .panel_link a {
    padding: 24px 5px;
    flex-direction: column;
    justify-content: center;
    align-items: revert;
  }
}
.panel_link a:hover {
  opacity: 0.8;
}
.panel_link .panel_note {
  text-align: start;
  -webkit-margin-before: 1em;
  margin-block-start: 1em;
  font-size: 1.4rem;
}
.panel_link_tx {
  display: flex;
  gap: 0 1em;
  align-items: flex-start;
  flex-direction: column;
}
.panel_link_tx .ja_tx {
  font-size: clamp(1.6rem, 20vw/12, 2rem);
}
.panel_link_tx .en_tx {
  opacity: 0.6;
}
@media (width >=768px) {
  .panel_link_tx {
    align-items: center;
  }
}
/*02*/
.panel_link02 a {
  display: flex;
  align-items: center;
  padding: 16px;
  gap: 16px;
  background: rgba(var(--bg_white), 1);
  border: 1px solid rgba(var(--subcolor01), 1);
  color: rgba(var(--maincolor), 1);
  text-decoration: none;
  position: relative;
}
.panel_link02 a [class^="material-"] {
  font-size: 3em;
}
.panel_link02 a::before {
  content: "";
  display: inline-block;
  position: absolute;
  inset: 0 auto auto 0;
  display: inline-block;
  inline-size: 0;
  block-size: 0;
  border-style: solid;
  border-width: clamp(24px, 2.64vw, 36px) clamp(24px, 2.64vw, 36px) 0 0;
  border-color: rgba(var(--subcolor01), 1) transparent transparent transparent;
}
@media (width >=768px) {
  .panel_link02 a {
    padding: 24px;
    flex-direction: column;
    justify-content: center;
    align-items: revert;
  }
}
.panel_link02 a:hover {
  background: rgba(var(--subcolor01), 1);
  color: rgba(var(--light_tx_color), 1);
}
.panel_link02 a:hover::before {
  border-color: rgba(var(--white), 1) transparent transparent transparent;
}
.panel_link02 .panel_note {
  text-align: start;
  -webkit-margin-before: 1em;
  margin-block-start: 1em;
  font-size: 1.4rem;
}
.panel_link_tx {
  display: flex;
  gap: 0 1em;
  align-items: flex-start;
  flex-direction: column;
}
.panel_link_tx .ja_tx {
  font-size: 2rem;
}
.panel_link_tx .en_tx {
  opacity: 0.6;
}
@media (width >=768px) {
  .panel_link_tx {
    align-items: center;
  }
}
@media (width >=768px) {
  .ly_card_3column .panel_link a,
  .ly_card_3column .panel_link02 a {
    padding: 40px 24px;
  }
  .ly_card_3column .panel_link a [class^="material-"],
  .ly_card_3column .panel_link02 a [class^="material-"] {
    font-size: 4em;
  }
}

/*===================
Pick up リスト
=========================*/
.pickup_list_group {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: clamp(33px, 56vw/12, 56px);
}
.pickup_list_group + * {
    -webkit-padding-before: clamp(40px, 5.8565153734vw, 80px);
    padding-block-start: clamp(40px, 5.8565153734vw, 80px);
}
@media (width >=768px) {
    .pickup_list_group {
        gap: 32px;
        flex-direction: row;
        justify-content: center;
        align-items: revert;
    }
}
.pickup_list {
    position: relative;
    z-index: 2;
    inline-size: min(100%, 276px);
    border: 1px solid rgba(var(--bg_color01), 1);
    background: rgba(var(--bg_white), 1);
    overflow: hidden;
}
.pickup_list a {
    text-decoration: none;
    display: block;
    padding: 0 16px 16px;
}
.pickup_list a:hover {
    opacity: 0.8;
}
.bg_icon {
    color: rgba(var(--bg_color01), 1);
    font-size: 8.2rem;
    position: absolute;
    z-index: -1;
    inset: auto auto 2px -5px;
}
.pickup_ph {
    margin-inline: -16px;
    -webkit-margin-after: 18px;
    margin-block-end: 18px;
}
.pickup_ph img {
    inline-size: 100%;
    block-size: auto;
}
.pickup_ti {
    color: rgba(var(--maincolor), 1);
    font-size: clamp(1.8rem, 1.756954612vw, 2.4rem);
    -webkit-margin-after: 14px;
    margin-block-end: 14px;
}
.pickup_tx {
    color: rgba(var(--bace_tx_color), 1);
    font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
}

/*=======================================
footer
=======================================*/
/*group / copyright====================*/
.footer_wrap {
    background: url(../img/common_img/bgimg_foot.jpg);
    color: rgba(var(--light_tx_color), 1);
    -webkit-padding-before: clamp(18px, 30vw/12, 30px);
    padding-block-start: clamp(18px, 30vw/12, 30px);
    -webkit-padding-after: 92px;
    padding-block-end: 92px;
    padding-inline: clamp(20px, 4.39238653vw, 60px);
}
.footer_wrap a {
    color: rgba(var(--light_tx_color), 1);
    text-decoration: none;
}
@media (width >=768px) {
    .footer_wrap {
        -webkit-padding-after: clamp(32px, 4.6852122987vw, 64px);
        padding-block-end: clamp(32px, 4.6852122987vw, 64px);
    }
}

.footer_info_list {
    text-align: left;
    & dt {
        font-size: clamp(1.6rem, 1.317715959vw, 1.8rem);
        line-height: 1.422;
        margin-bottom: clamp(14px, 24vw/13.66, 24px);
    }
    & dd {
        font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
    }
}

/*footer nav====================*/
.footer_nav {
    /*background: rgba(var(--bg_white), 1);*/
    border-top: 1px solid rgba(var(--bg_white), 1);
    text-align: start;
    padding-block: clamp(12px, 20vw/12, 20px) clamp(32px, 2.9282576867vw, 40px);
    padding-inline: clamp(20px, 4.39238653vw, 60px);
    margin-block-start: clamp(24px, 40vw/12, 40px);
}
.f_nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    @media (width >= 768px) {
        justify-content: center;
    }
}
.f_nav a {
    text-decoration: none;
    color: rgba(var(--light_tx_color), 1);
    font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
    white-space: nowrap;
    transition-duration: 0.2s;
    transition-property: all;
}
.f_nav a:hover {
    opacity: 0.8;
}
.f_nav li {
    min-inline-size: calc(50% - 9px);
}
@media (width >=768px) {
    .f_nav li {
        min-inline-size: revert;
    }
}

/*copyright*/
footer {
    inline-size: 100%;
    max-inline-size: 1200px;
    margin-inline: auto;
}
.copyright {
    font-size: clamp(1rem, 0.878vw, 1.2rem);
    font-family: "Cinzel", serif;
    font-weight: 500;
    color: rgba(var(--light_tx_color), 0.8);
}
@media (width >=1200px) {
    .copyright {
        text-align: end;
    }
}
/*=============================
text
=============================*/
.cts_p {
    text-align: start;
}
.cts_p.tx_cent {
    text-align: center;
}
.cts_p + .cts_p {
    -webkit-margin-before: 1em;
    margin-block-start: 1em;
}
.cts_p + [class^="title0"] {
    -webkit-margin-before: clamp(32px, 4.39238653vw, 60px);
    margin-block-start: clamp(32px, 4.39238653vw, 60px);
}
@media (width >=992px) {
    .cts_p.l_cent {
        text-align: center;
    }
}
/*TextRight*/
.tx_right {
    text-align: end;
}
/*TextLeft*/
.tx_left {
    text-align: start;
}
/*TextCenter*/
.tx_cent {
    text-align: center;
}
/*center/left*/
.l_cent {
    text-align: start;
}
@media (width >=992px) {
    .l_cent {
        text-align: center;
    }
}
/*left/center*/
.cent_l {
    text-align: center;
}
@media (width >=992px) {
    .cent_l {
        text-align: start;
    }
}
/*英字font*/
.en_tx {
    font-family: "Cinzel", serif;
    font-weight: 500;
}
/*bold*/
.tx_bold {
    font-weight: 700;
}
.tx_normal {
    font-weight: 400;
}
/*Textmaincolor*/
.tx_main {
    color: rgba(var(--maincolor), 1);
}
/*TextRed*/
.tx_red {
    color: rgba(var(--error_color), 1) !important;
}
/*TextGray*/
.tx_gray {
    color: rgba(var(--gray), 1);
}
/*s text*/
.s_tx {
    font-family: "Roboto", serif;
    font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
}
.s_em {
    font-size: 0.8em;
}
/*big text*/
.b_tx {
    font-size: clamp(1.6rem, 1.317715959vw, 1.8rem);
}
.b_em {
    font-size: 1.2em;
}
/*marker*/
.marker {
    background: linear-gradient(transparent 60%, rgba(var(--marker), 1) 60%);
}
/*=============================*/
/*== 幅 ==*/
/*=============================*/
.w100 {
    inline-size: 100%;
}
.max_40 {
    max-inline-size: 40px;
}
.max_60 {
    max-inline-size: 60px;
}
.max_80 {
    max-inline-size: 80px;
}
.max_160 {
    max-inline-size: 160px;
}
.max_240 {
    max-inline-size: 240px;
}
.max_360 {
    max-inline-size: 360px;
}
.max_400 {
    max-inline-size: 400px;
}
.max_560 {
    max-inline-size: 560px;
}
.min_40 {
    min-inline-size: 40px;
}
.min_60 {
    min-inline-size: 60px;
}
.min_80 {
    min-inline-size: 80px;
}
.min_160 {
    min-inline-size: 160px;
}
.min_240 {
    min-inline-size: 240px;
}
.min_360 {
    min-inline-size: 360px;
}
.min_400 {
    min-inline-size: 400px;
}
.min_560 {
    min-inline-size: 560px;
}
/*=============================*/
/*== Margin ==*/
/*=============================*/
/*MarginTop*/
.margin_t06 {
    -webkit-margin-before: 6px;
    margin-block-start: 6px;
}
.margin_t08 {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
}
.margin_t10 {
    -webkit-margin-before: 10px;
    margin-block-start: 10px;
}
.margin_t16 {
    -webkit-margin-before: 16px;
    margin-block-start: 16px;
}
.margin_t24 {
    -webkit-margin-before: 24px;
    margin-block-start: 24px;
}
.margin_t32 {
    -webkit-margin-before: 32px;
    margin-block-start: 32px;
}
.margin_t40 {
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
}
.margin_t56 {
    -webkit-margin-before: 56px;
    margin-block-start: 56px;
}
/*MarginBottom*/
.margin_b06 {
    -webkit-margin-after: 6px;
    margin-block-end: 6px;
}
.margin_b08 {
    -webkit-margin-after: 8px;
    margin-block-end: 8px;
}
.margin_b10 {
    -webkit-margin-after: 10px;
    margin-block-end: 10px;
}
.margin_b16 {
    -webkit-margin-after: 16px;
    margin-block-end: 16px;
}
.margin_b24 {
    -webkit-margin-after: 24px;
    margin-block-end: 24px;
}
.margin_b32 {
    -webkit-margin-after: 32px;
    margin-block-end: 32px;
}
.margin_b40 {
    -webkit-margin-after: 40px;
    margin-block-end: 40px;
}
.margin_b56 {
    -webkit-margin-after: 56px;
    margin-block-end: 56px;
}
/*MarginRight*/
.margin_r06 {
    -webkit-margin-end: 6px;
    margin-inline-end: 6px;
}
.margin_r08 {
    -webkit-margin-end: 8px;
    margin-inline-end: 8px;
}
.margin_r10 {
    -webkit-margin-end: 10px;
    margin-inline-end: 10px;
}
.margin_r16 {
    -webkit-margin-end: 16px;
    margin-inline-end: 16px;
}
.margin_r24 {
    -webkit-margin-end: 24px;
    margin-inline-end: 24px;
}
/*MarginLeft*/
.margin_l06 {
    -webkit-margin-start: 6px;
    margin-inline-start: 6px;
}
.margin_l10 {
    -webkit-margin-start: 10px;
    margin-inline-start: 10px;
}
.margin_l16 {
    -webkit-margin-start: 16px;
    margin-inline-start: 16px;
}
.margin_l24 {
    -webkit-margin-start: 24px;
    margin-inline-start: 24px;
}
/*------------------------------------
spacer
--------------------------------------*/
.spacer {
    margin-top: clamp(32px, 48vw/12, 48px);
}
.spacer_ss {
    margin-top: clamp(12px, 32vw/12, 16px);
}
.spacer_s {
    margin-top: clamp(24px, 32vw/12, 32px);
}
.spacer_l {
    margin-top: clamp(48px, 56vw/12, 56px);
}
/*==========================
layout
==========================*/
/*枠===========*/
.section_wrap {
    padding-inline: clamp(20px, 4.39238653vw, 60px);
    -webkit-padding-before: clamp(40px, 5.8565153734vw, 80px);
    padding-block-start: clamp(40px, 5.8565153734vw, 80px);
    -webkit-padding-after: clamp(40px, 5.8565153734vw, 80px);
    padding-block-end: clamp(40px, 5.8565153734vw, 80px);
}
.section_wrap.tb_nospace {
    -webkit-padding-before: 0;
    padding-block-start: 0;
    -webkit-padding-after: 0;
    padding-block-end: 0;
}
.section_wrap.b_nospace {
    -webkit-padding-after: 0;
    padding-block-end: 0;
}
.section_wrap.t_nospace {
    -webkit-padding-after: 0;
    padding-block-end: 0;
}
.section_inner {
    inline-size: 100%;
    max-inline-size: 1200px;
    margin-inline: auto auto;
}
.section_inner + .section_inner {
    -webkit-margin-before: clamp(40px, 5.8565153734vw, 80px);
    margin-block-start: clamp(40px, 5.8565153734vw, 80px);
}
.inner_max {
    padding-block: 0;
    padding-inline: calc(50% - 50vw);
    inline-size: 100vw;
}
/*card============*/
:root {
    --lay_gap: clamp(16px, 5.8565153734vw, 36px);
}
/*1 →　2*/
.ly_card_2column {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: var(--lay_gap);
}
.ly_card_2column > * {
    inline-size: 100%;
}
@media (width >=768px) {
    .ly_card_2column {
        flex-direction: row;
        gap: var(--lay_gap);
    }
    .ly_card_2column > * {
        inline-size: calc(100% / 2 - var(--lay_gap) * (2 - 1) / 2);
    }
}
/*1 →　3*/
.ly_card_3column {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: var(--lay_gap);
}
.ly_card_3column > * {
    inline-size: 100%;
}
@media (width >=768px) {
    .ly_card_3column {
        flex-direction: row;
    }
    .ly_card_3column > * {
        inline-size: calc(100% / 3 - var(--lay_gap) * (3 - 1) / 3);
    }
}
/*1 → 2 → 4*/
.ly_card_4column {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: var(--lay_gap);
}
.ly_card_4column > * {
    inline-size: 100%;
}
@media (width >=768px) {
    .ly_card_4column {
        flex-direction: row;
    }
    .ly_card_4column > * {
        inline-size: calc(100% / 2 - var(--lay_gap) * (2 - 1) / 2);
    }
}
@media (width >=992px) {
    .ly_card_4column > * {
        inline-size: calc(100% / 4 - var(--lay_gap) * (4 - 1) / 4);
    }
}
/*2*/
.ly_2column {
    display: flex;
    flex-wrap: wrap;
    gap: var(--lay_gap);
}
.ly_2column > * {
    inline-size: calc(100% / 2 - var(--lay_gap) * (2 - 1) / 2);
}
/*2→3*/
.ly_2_3column {
    display: flex;
    flex-wrap: wrap;
    gap: var(--lay_gap);
}
.ly_2_3column > * {
    inline-size: calc(100% / 2 - var(--lay_gap) * (2 - 1) / 2);
}
@media (width >=992px) {
    .ly_2_3column > * {
        inline-size: calc(100% / 3 - var(--lay_gap) * (3 - 1) / 3);
    }
}
/*golden ratio*/
.ly_gold {
    display: flex;
    flex-direction: column;
    gap: 24px 40px;
}
.ly_gold.s_top .ly_gold_s {
    order: -1;
}
.ly_gold.b_top .ly_gold_b {
    order: -1;
}
@media (width >=768px) {
    .ly_gold {
        flex-direction: row;
        justify-content: space-between;
    }
    .ly_gold.align_cent {
        align-items: center;
    }
    .ly_gold .ly_gold_s {
        inline-size: 50%;
        order: 0;
    }
    .ly_gold .ly_gold_b {
        inline-size: calc(50% - 40px);
        order: 0;
    }
    .ly_gold.s_top .ly_gold_s {
        order: 0;
    }
    .ly_gold.b_top .ly_gold_b {
        order: 0;
    }
}
@media (width >=992px) {
    .ly_gold .ly_gold_s {
        inline-size: 38%;
    }
    .ly_gold .ly_gold_b {
        inline-size: calc(62% - 40px);
    }
}
/*half*/
.ly_half {
    display: flex;
    flex-direction: column;
}
@media (width >=768px) {
    .ly_half {
        flex-direction: row;
    }
    .ly_half > * {
        inline-size: 50%;
    }
}
/*btn_layout*/
.ly_btn_box {
    display: flex;
    flex-direction: column;
    gap: 10px 16px;
}
@media (width >=768px) {
    .ly_btn_box {
        flex-direction: row;
        justify-content: center;
    }
    .ly_btn_box > li {
        min-inline-size: 240px;
    }
    .ly_btn_box.tx_left {
        justify-content: flex-start;
    }
    .ly_btn_box.tx_right {
        justify-content: flex-end;
    }
}
/*==========================
other
==========================*/
.bg_color01 {
    background: rgba(var(--bg_color01), 1);
}
.bg_color02 {
    background: rgba(var(--bg_color02), 1);
}
.bg_color03 {
    background: rgba(var(--bg_white), 0.4);
}
/*anchorlink============*/
/*<a id="name" class="anchor" ></a>===========*/
a.anchor {
    display: block;
    position: relative;
    top: -100px;
    visibility: hidden;
}
/*ClearFix============*/
.clearfix {
    zoom: 1;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
/*Float============*/
/*FloatLeft*/
.float_left {
    float: inline-start;
}
/*FloatRight*/
.float_right {
    float: inline-end;
}
/*ClearBoth*/
.clearboth {
    clear: both;
}
/*phbox============*/
:root {
    --float_space: 30px;
    --img_top: 16px;
}
.phbox_right,
.phbox_left {
    text-align: center;
    -webkit-margin-after: var(--img_top);
    margin-block-end: var(--img_top);
}
.phbox_right img,
.phbox_left img {
    max-inline-size: 100%;
    block-size: auto;
}
.phbox_right img + *:not(figcaption),
.phbox_left img + *:not(figcaption) {
    -webkit-margin-before: var(--img_top);
    margin-block-start: var(--img_top);
}
.phbox_right > a,
.phbox_left > a {
    display: block;
}
.phbox_right > a + *,
.phbox_left > a + * {
    -webkit-margin-before: var(--img_top);
    margin-block-start: var(--img_top);
}
@media (width >=768px) {
    .phbox_right {
        float: right;
        -webkit-margin-start: var(--float_space);
        margin-inline-start: var(--float_space);
        -webkit-margin-after: 0;
        margin-block-end: 0;
    }
    .phbox_left {
        float: left;
        -webkit-margin-end: var(--float_space);
        margin-inline-end: var(--float_space);
        -webkit-margin-after: 0;
        margin-block-end: 0;
    }
}
/* item ============*/
.nowrap {
    white-space: nowrap;
}
.ov_hidden {
    overflow: hidden;
}
.align_cent {
    align-items: center;
}
/*レスポンシブblock/none============*/
@media (width >=768px) {
    .pc_none {
        display: none;
    }
}
@media (width >=768px) {
    .md_none {
        display: none;
    }
}
.sp_none {
    display: none;
}
@media (width >=768px) {
    .sp_none {
        display: inline-block;
    }
}
/*tel(js set)============*/
.tel_link a {
    text-decoration: underline;
    color: inherit;
}
.tel_link a:hover {
    opacity: 0.8;
}
/*img_fluid============*/
.img_fluid {
    max-inline-size: 100%;
    block-size: auto;
}
/*==========================
parts
==========================*/
/*Pagetop============*/
#pagetop {
    display: none;
}
@media (width >=768px) {
    #pagetop {
        display: block;
        position: fixed;
        inset: auto 40px 40px auto;
        -webkit-transform: translateY(40px);
        transform: translateY(40px);
        opacity: 0;
        transition-duration: 0.5s;
        transition-property: all;
        z-index: 997;
    }
    #pagetop.active {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
/*pagetitle============*/
.pagetitle_wrap {
    -webkit-margin-before: clamp(66px, 6.589vw, 90px);
    margin-block-start: clamp(66px, 6.589vw, 90px);
}
@media (width >=768px) {
    .pagetitle_wrap {
        padding-inline: clamp(20px, 4.39238653vw, 60px);
    }
}
.page_title {
    background: rgba(var(--bg_white), 1) url(../img/common_img/pagetitle.jpg) center right no-repeat;
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    justify-content: flex-end;
    block-size: clamp(240px, 29.2825768668vw, 400px);
    padding-inline: clamp(20px, 2.9282576867vw, 40px);
    -webkit-padding-after: clamp(16px, 2.3426061493vw, 32px);
    padding-block-end: clamp(16px, 2.3426061493vw, 32px);
    text-shadow: 0px 0px 8px rgb(255, 255, 255), 0px 0px 8px rgb(255, 255, 255), 0px 0px 8px rgb(255, 255, 255), 0px 0px 3px rgb(255, 255, 255);
    text-align: start;
}
.page_title .en_tx {
    font-size: clamp(3.2rem, 4.39238653vw, 6rem);
    line-height: 1;
    color: rgba(var(--maincolor), 1);
}
.page_title .ja_tx {
    font-size: clamp(1.8rem, 1.756954612vw, 2.4rem);
}
/*pankuzu============*/
.pankuzu_wrap {
    padding-inline: clamp(20px, 4.39238653vw, 60px);
    -webkit-padding-before: 16px;
    padding-block-start: 16px;
}
.pankuzu {
    inline-size: -webkit-max-content;
    inline-size: max-content;
}
.pankuzu ol {
    display: flex;
    flex-wrap: wrap;
}
.pankuzu ol li {
    font-size: clamp(1rem, 0.81vw, 1.1rem);
    padding-block: 0;
    -webkit-padding-end: 8px;
    padding-inline-end: 8px;
}
.pankuzu ol li:not(:first-of-type) {
    -webkit-padding-start: 10px;
    padding-inline-start: 10px;
    background: url(../img/common_img/icon_pankuzu.gif) no-repeat 0 50%;
}
.pankuzu ol li em {
    font-style: normal;
}
.pankuzu ol li a:link,
.pankuzu ol li a:visited,
.pankuzu ol li a:hover,
.pankuzu ol li a:active {
    text-decoration: underline;
}
/*PageNavi============*/
:root {
    --pagenavi_bd_span: #ccc;
    --pagenavi_bd_a: #ccc;
    --pagenavi_tx_span: #666;
    --pagenavi_tx_a: #666;
    --pagenavi_span: #e4e4e4;
    --pagenavi_a: #e4e4e4;
    --pagenavi_pdd_b: 3px;
    --pagenavi_pdd_in: 10px;
}
.pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.pagenavi li span {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-block: var(--pagenavi_pdd_b);
    padding-inline: var(--pagenavi_pdd_in);
    color: var(--pagenavi_tx_span);
    border: 1px solid var(--pagenavi_bd_span);
    background: var(--pagenavi_span);
}
.pagenavi li a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    padding-block: var(--pagenavi_pdd_b);
    padding-inline: var(--pagenavi_pdd_in);
    color: var(--pagenavi_tx_a);
    border: 1px solid var(--pagenavi_bd_a);
    background: var(--pagenavi_a);
    transition: 0.2s;
}
.pagenavi li a:hover {
    opacity: 0.8;
}
/*Line============*/
hr.line_01 {
    block-size: 1px;
    clear: both;
    margin-block: 36px;
    margin-inline: 0;
    border: none;
    -webkit-border-before: 1px dotted #ccc;
    border-block-start: 1px dotted #ccc;
}
/*title============*/
.title01 {
    text-align: start;
    font-size: clamp(2rem, 2.3426061493vw, 3.2rem);
    color: rgba(var(--maincolor), 1);
    position: relative;
    -webkit-padding-after: 0.6em;
    padding-block-end: 0.6em;
    -webkit-margin-after: 1em;
    margin-block-end: 1em;
}
.title01::before {
    content: "";
    display: block;
    inline-size: 80px;
    block-size: 2px;
    background: rgba(var(--maincolor), 1);
    position: absolute;
    inset: auto auto 0 0;
}
.title02 {
    color: rgba(var(--light_tx_color), 1);
    text-align: start;
    font-size: clamp(1.6rem, 1.756954612vw, 2.4rem);
    background: rgba(var(--subcolor01), 1);
    padding: 0.5em 1em;
    line-height: 1.2;
    -webkit-margin-after: 1em;
    margin-block-end: 1em;
}
.title03 {
    font-size: clamp(2.4rem, 2.9282576867vw, 4rem);
    line-height: 1.2;
    -webkit-margin-after: 0.6em;
    margin-block-end: 0.6em;
    text-shadow: 0px 1px 4px rgb(255, 255, 255), 0px 1px 4px rgb(255, 255, 255), 0px 1px 8px rgb(255, 255, 255);
}
.title04 {
    font-size: clamp(1.6rem, 1.317715959vw, 1.8rem);
    text-align: start;
    -webkit-border-start: 4px solid rgba(var(--maincolor), 1);
    border-inline-start: 4px solid rgba(var(--maincolor), 1);
    -webkit-padding-start: 0.5em;
    padding-inline-start: 0.5em;
    font-weight: 700;
    color: rgba(var(--maincolor), 1);
    -webkit-margin-after: 0.6em;
    margin-block-end: 0.6em;
}
/*subti================*/
.subti01 {
    color: rgba(var(--maincolor), 1);
    font-weight: 700;
    white-space: nowrap;
    -webkit-margin-after: 1em;
    margin-block-end: 1em;
}
.subti01::before {
    content: "【";
    -webkit-margin-end: 0.8em;
    margin-inline-end: 0.8em;
    display: inline-block;
}
.subti01::after {
    content: "】";
    -webkit-margin-start: 0.8em;
    margin-inline-start: 0.8em;
    display: inline-block;
}
.subti02 {
    font-size: clamp(2rem, 2.196193265vw, 3rem);
    color: rgba(var(--maincolor), 1);
    -webkit-margin-after: 0.8em;
    margin-block-end: 0.8em;
}
.subti03 {
    color: rgba(var(--maincolor), 1);
    font-size: clamp(1.8rem, 1.61vw, 2.2rem);
    white-space: nowrap;
    line-height: 1.4;
    -webkit-margin-after: 0.6em;
    margin-block-end: 0.6em;
    [class^="material-"] {
        font-size: 1.4em;
        color: rgba(var(--subcolor01), 1);
        vertical-align: middle;
    }
}
/*en title================*/
.en_title {
    -webkit-margin-after: 2em;
    margin-block-end: 2em;
}
.en_title .en_tx {
    color: rgba(var(--subcolor01), 1);
    display: block;
    line-height: 0.9;
    font-size: clamp(5.6rem, 5.8565153734vw, 8rem);
}
.en_title .en_tx + .ja_tx {
    -webkit-margin-before: 0.25em;
    margin-block-start: 0.25em;
}
.en_title .ja_tx {
    color: rgba(var(--bace_tx_color), 1);
    display: block;
    line-height: 1.2;
    font-size: clamp(2rem, 2.196193265vw, 3rem);
}
/*table============*/
:root {
    --th_bg_color: #ececec;
    --tbl_bd_color: #666;
    --tbl_pd_b: 12px;
    --tbl_pd_in: 16px;
}
/*table01*/
.sheet_basic {
    inline-size: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tbl_bd_color);
    -webkit-border-after: none;
    border-block-end: none;
    background: rgba(var(--bg_white), 1);
}
.sheet_basic tr th,
.sheet_basic tr td {
    -webkit-border-after: 1px solid var(--tbl_bd_color);
    border-block-end: 1px solid var(--tbl_bd_color);
    padding-block: var(--tbl_pd_b);
    padding-inline: var(--tbl_pd_in);
    display: block;
}
.sheet_basic tr th {
    background: rgba(var(--subcolor01), 0.3);
    border-block-end: none;
}
.sheet_basic.tx_left tr th,
.sheet_basic.tx_left tr td {
    text-align: start;
}
@media (width >=768px) {
    .sheet_basic tr th,
    .sheet_basic tr td {
        display: table-cell;
    }
    .sheet_basic tr th {
        border-block-end: 1px solid var(--tbl_bd_color);
        border-inline-end: none;
    }
}
/*table01*/
.table_basic {
    inline-size: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tbl_bd_color);
    -webkit-border-after: none;
    border-block-end: none;
    background: rgba(var(--bg_white), 1);
}
.table_basic tr th,
.table_basic tr td {
    -webkit-border-after: 1px solid var(--tbl_bd_color);
    border-block-end: 1px solid var(--tbl_bd_color);
    padding-block: var(--tbl_pd_b);
    padding-inline: var(--tbl_pd_in);
}
.table_basic tr th {
    background: rgba(var(--subcolor01), 0.3);
}
.table_basic.tx_left tr th,
.table_basic.tx_left tr td {
    text-align: start;
}
@media (width >=768px) {
    .table_basic.bd_arrange {
        -webkit-border-end: none;
        border-inline-end: none;
    }
}
.table_basic.bd_arrange tr:last-of-type th,
.table_basic.bd_arrange tr:last-of-type td {
    -webkit-border-after: none;
    border-block-end: none;
}
@media (width >=768px) {
    .table_basic.bd_arrange tr:last-of-type th,
    .table_basic.bd_arrange tr:last-of-type td {
        -webkit-border-after: 1px solid var(--tbl_bd_color);
        border-block-end: 1px solid var(--tbl_bd_color);
    }
}
tr.nowrap > th,
tr.nowrap > td {
    white-space: nowrap;
}

/*------------------------------------
table_scroll
--------------------------------------*/
.table_scroll {
    width: 100%;
    overflow-x: auto;
    position: relative;
}
.scroll_hint {
    display: none;
    color: #fff;
    font-size: 1.6rem;
    position: absolute;
    top: 32px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: max-content;
    padding: 0.5em 1em;
    background: color-mix(in srgb, #000, transparent 30%);
    border-radius: var(--base-radius);
}
.scroll_hint_show {
    display: block;
}

/*list=============*/
/*pdf*/
.pdf_link > li {
    line-height: 1.4;
    position: relative;
    -webkit-padding-start: 1.4em;
    padding-inline-start: 1.4em;
    text-align: start;
}
.pdf_link > li + li {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
}
.pdf_link > li::before {
    font-family: "Material Symbols Sharp";
    content: "\e415";
    display: block;
    position: absolute;
    inset: 0 auto auto 0;
    color: rgba(var(--error_color), 1);
    font-size: 1.2em;
}
.pdf_list01 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: start;
  /*inline-size: min(100%, 1052px);*/
  /*margin-inline: auto;*/
}
@media (width >=992px) {
  .pdf_list01 {
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
@media (width >=992px) {
  .pdf_list01 > li {
    /*inline-size: calc(33.3333333333% - 10.6666666667px);*/
  }
}
.pdf_list01 > li a {
  /*margin-inline: auto;*/
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
  /*inline-size: min(100%, 340px);*/
  border: 1px solid rgba(var(--subcolor01), 0.55);
  background: rgba(var(--subcolor01), 0.08);
  /*color: color-mix(in srgb, rgb(var(--subcolor01)), var(--black) 50%);*/
  color: #d2924f;
  text-decoration: none;
  line-height: 1.25;
  padding: 18px;
  transition-duration: 0.2s;
}
.pdf_list01 > li a::before {
  content: "";
  display: block;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.6 24"><path fill="%233f5a63" d="M5 4H15V8H19V20H5V4ZM3.9985 2C3.44749 2 3 2.44405 3 2.9918V21.0082C3 21.5447 3.44476 22 3.9934 22H20.0066C20.5551 22 21 21.5489 21 20.9925L20.9997 7L16 2H3.9985ZM10.4999 7.5C10.4999 9.07749 10.0442 10.9373 9.27493 12.6534C8.50287 14.3757 7.46143 15.8502 6.37524 16.7191L7.55464 18.3321C10.4821 16.3804 13.7233 15.0421 16.8585 15.49L17.3162 13.5513C14.6435 12.6604 12.4999 9.98994 12.4999 7.5H10.4999ZM11.0999 13.4716C11.3673 12.8752 11.6042 12.2563 11.8037 11.6285C12.2753 12.3531 12.8553 13.0182 13.5101 13.5953C12.5283 13.7711 11.5665 14.0596 10.6352 14.4276C10.7999 14.1143 10.9551 13.7948 11.0999 13.4716Z" /></svg>');
  background-size: cover;
  inline-size: 24px;
  aspect-ratio: 22/24;
}
.pdf_list01 > li a:hover {
  background: rgba(var(--subcolor01), 0.55);
  color: rgba(var(--light_tx_color), 1);
}
.pdf_list01 > li a:hover::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.6 24"><path fill="%23fff" d="M5 4H15V8H19V20H5V4ZM3.9985 2C3.44749 2 3 2.44405 3 2.9918V21.0082C3 21.5447 3.44476 22 3.9934 22H20.0066C20.5551 22 21 21.5489 21 20.9925L20.9997 7L16 2H3.9985ZM10.4999 7.5C10.4999 9.07749 10.0442 10.9373 9.27493 12.6534C8.50287 14.3757 7.46143 15.8502 6.37524 16.7191L7.55464 18.3321C10.4821 16.3804 13.7233 15.0421 16.8585 15.49L17.3162 13.5513C14.6435 12.6604 12.4999 9.98994 12.4999 7.5H10.4999ZM11.0999 13.4716C11.3673 12.8752 11.6042 12.2563 11.8037 11.6285C12.2753 12.3531 12.8553 13.0182 13.5101 13.5953C12.5283 13.7711 11.5665 14.0596 10.6352 14.4276C10.7999 14.1143 10.9551 13.7948 11.0999 13.4716Z" /></svg>');
}
.pdf_list01 > li.excel a::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.6 24"><path fill="%233f5a63" d="M13.2 12L16 16H13.6L12 13.7143L10.4 16H8L10.8 12L8 8H10.4L12 10.2857L13.6 8H15V4H5V20H19V8H16L13.2 12ZM3 2.9918C3 2.44405 3.44749 2 3.9985 2H16L20.9997 7L21 20.9925C21 21.5489 20.5551 22 20.0066 22H3.9934C3.44476 22 3 21.5447 3 21.0082V2.9918Z" /></svg>');
}
.pdf_list01 > li.excel a:hover::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.6 24"><path fill="%23fff" d="M13.2 12L16 16H13.6L12 13.7143L10.4 16H8L10.8 12L8 8H10.4L12 10.2857L13.6 8H15V4H5V20H19V8H16L13.2 12ZM3 2.9918C3 2.44405 3.44749 2 3.9985 2H16L20.9997 7L21 20.9925C21 21.5489 20.5551 22 20.0066 22H3.9934C3.44476 22 3 21.5447 3 21.0082V2.9918Z" /></svg>');
}
.pdf_list01.max_size {
  inline-size: 100%;
}
@media (width >=992px) {
  .pdf_list01.max_size {
    justify-content: flex-start;
  }
  .pdf_list01.max_size > li a {
    inline-size: 100%;
  }
}
/*※*/
.note_list {
    text-align: start;
}
.note_list > li {
    line-height: 1.4;
    position: relative;
    -webkit-padding-start: 1.4em;
    padding-inline-start: 1.4em;
}
.note_list > li + li {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
}
.note_list > li::before {
    content: "※";
    position: absolute;
    inset: 0 auto auto 0;
}
.note_list.s_tx > li {
    font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
}
/*※に番号リスト*/
ol.note_list {
    counter-reset: number;
}
ol.note_list > li {
    list-style: none;
    -webkit-padding-start: 2.6em;
    padding-inline-start: 2.6em;
}
ol.note_list > li::before {
    counter-increment: number;
    content: "0" counter(number);
    position: absolute;
    inset: 0.4em auto auto 1.3em;
    font-size: 1.2rem;
}
ol.note_list > li::after {
    content: "※";
    position: absolute;
    inset: 0 auto auto 0;
}
ol.note_list > li:nth-child(n + 10)::before {
    content: counter(number);
}
/*番号リスト*/
.num_list {
    counter-reset: number;
    text-align: start;
}
.num_list > li {
    line-height: 1.4;
    position: relative;
    list-style: none;
    -webkit-padding-start: 1.8em;
    padding-inline-start: 1.8em;
}
.num_list > li + li {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
}
.num_list > li::before {
    counter-increment: number;
    content: "0" counter(number) ".";
    position: absolute;
    inset: 0 auto auto 0;
    font-family: "Cinzel", serif;
    font-weight: 500;
}
.num_list > li:nth-child(n + 10)::before {
    content: counter(number) ".";
}
/*番号リスト①②*/
.marunum_list {
    counter-reset: number;
    text-align: start;
}
.marunum_list > li {
    line-height: 1.4;
    position: relative;
    list-style: none;
    -webkit-padding-start: 1.8em;
    padding-inline-start: 1.8em;
}
.marunum_list > li + li {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
}
.marunum_list > li::before {
    content: "①";
    position: absolute;
    inset: 0 auto auto 0;
    font-family: "Cinzel", serif;
    font-weight: 500;
}
.marunum_list > li:nth-child(2)::before {
    content: "②";
}
/*input_list*/
.input_list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
}
.input_list > li {
    white-space: nowrap;
}
.input_list > li input[type="checkbox"],
.input_list > li input[type="radio"] {
    -webkit-margin-end: 0.2em;
    margin-inline-end: 0.2em;
}
.list_basic01 {
    text-align: start;
}
.list_basic01 > li {
    position: relative;
    -webkit-padding-start: 0.8em;
    padding-inline-start: 0.8em;
}
.list_basic01 > li::before {
    content: "";
    display: block;
    inline-size: 6px;
    block-size: 6px;
    background: rgba(var(--maincolor), 1);
    border-radius: 100px;
    position: absolute;
    inset: 0.6em 0 0 0;
}
.list_basic01 > li + li {
    -webkit-margin-before: 0.4em;
    margin-block-start: 0.4em;
}
.list_basic01.s_tx > li {
    font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
}
/*btn=============*/
.btn01 > * {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-inline: 24px 16px;
    padding-block: 16px;
    inline-size: -webkit-max-content;
    inline-size: max-content;
    min-inline-size: 240px;
    background: rgba(var(--maincolor), 1);
    color: rgba(var(--white), 1);
    text-decoration: none;
    cursor: pointer;
    font-size: clamp(1.4rem, 1.1713030747vw, 1.6rem);
    line-height: 1;
}
.btn01 > *::after {
    content: "";
    display: block;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25.21 9.66" width="25.219" height="9.688"><path fill="%23fff" d="M20.38,9.66l-.71-.71,3.62-3.62H0v-1h23.29l-3.62-3.62.71-.71,4.83,4.83s-4.83,4.83-4.83,4.83Z" /></svg>');
    background-size: cover;
    inline-size: 26px;
    aspect-ratio: 26/10;
    transition-duration: 0.2s;
}
.btn01 > *:hover::after {
    -webkit-transform: translateX(0.2em);
    transform: translateX(0.2em);
}
.btn01.tx_right > * {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
}
.btn01.tx_right a:visited {
    color: #fff;
}
.btn01.tx_left > * {
    -webkit-margin-end: auto;
    margin-inline-end: auto;
}
.btn01.l_cent > * {
    -webkit-margin-end: auto;
    margin-inline-end: auto;
}
@media (width >=768px) {
    .btn01.l_cent > * {
        margin-inline: auto;
    }
}
.btn01.cent_l > * {
    margin-inline: auto;
}
@media (width >=768px) {
    .btn01.cent_l > * {
        -webkit-margin-end: auto;
        margin-inline-end: auto;
    }
}
.btn01.cent_r > * {
    margin-inline: auto;
}
@media (width >=768px) {
    .btn01.cent_r > * {
        -webkit-margin-start: auto;
        margin-inline-start: auto;
    }
}
/*02*/
.btn02 > a:visited {
    color: rgba(var(--maincolor), 1);
}
.btn02 > * {
    display: flex;
    align-items: center;
    gap: 32px;
    inline-size: -webkit-max-content;
    inline-size: max-content;
    text-decoration: none;
    color: rgba(var(--maincolor), 1);
    line-height: 1;
    -webkit-border-after: 1px solid rgba(var(--maincolor), 1);
    border-block-end: 1px solid rgba(var(--maincolor), 1);
    padding-block: 0.5em;
    transition-duration: 0.2s;
}
.btn02 > *::after {
    content: "";
    display: block;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25.21 9.66"><path fill="%233f6263" d="M20.38,9.66l-.71-.71,3.62-3.62H0v-1h23.29l-3.62-3.62.71-.71,4.83,4.83s-4.83,4.83-4.83,4.83Z" /></svg>');
    background-size: cover;
    inline-size: 26px;
    aspect-ratio: 26/10;
    block-size: -webkit-max-content;
    block-size: max-content;
    transition-duration: 0.2s;
}
.btn02 > *:hover {
    opacity: 0.8;
}
.btn02 > *:hover::after {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
}
/*03*/
.btn03 > a:visited {
  color: rgba(var(--white), 1);
}
.btn03 > * {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding-inline: clamp(14px, 24vw/12, 24px);
  padding-block: clamp(9px, 16vw/12, 16px);
  inline-size: -webkit-max-content;
  inline-size: max-content;
  min-inline-size: 300px;
  background: rgba(var(--maincolor), 1);
  color: rgba(var(--white), 1);
  text-decoration: none;
  cursor: pointer;
  font-size: clamp(1.4rem, 1.1713030747vw, 1.6rem);
  line-height: 1;
}
.btn03 > *:hover {
  opacity: 0.8;
}
.btn03.color02 > * {
  background: rgba(var(--subcolor01), 1);
}
.btn03.tx_right > * {
  -webkit-margin-start: auto;
  margin-inline-start: auto;
}
.btn03.tx_left > * {
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
.btn03.l_cent > * {
  -webkit-margin-end: auto;
  margin-inline-end: auto;
}
@media (width >=768px) {
  .btn03.l_cent > * {
    margin-inline: auto;
  }
}
.btn03.cent_l > * {
  margin-inline: auto;
}
@media (width >=768px) {
  .btn03.cent_l > * {
    -webkit-margin-end: auto;
    margin-inline-end: auto;
  }
}
.btn03.cent_r > * {
  margin-inline: auto;
}
@media (width >=768px) {
  .btn03.cent_r > * {
    -webkit-margin-start: auto;
    margin-inline-start: auto;
  }
}
.material-symbols-outlined {
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}
/*anchorlink nav*/
/*anchorlink nav*/
.anchor_list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
}
.anchor_list li {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 5px;
    width: auto;
}
.anchor_list li a {
    display: flex;
    flex-direction: row;
    justify-content: center;
    background: rgba(var(--maincolor), 1);
    text-decoration: none;
    padding: 15px 30px;
    color: #fff;
    width: 100%;
}
.anchor_list li a:hover {
    cursor: pointer;
    opacity: 0.7;
}
@media (width <=768px) {
    .anchor_list li {
        width: 100%;
        margin: 5px 0;
    }
}

/*==========================
アコーディオン
==========================*/
.accordion_wrap .accordion_item .aco_head {
    cursor: pointer;
}
.accordion_wrap .accordion_item .aco_inner {
    overflow: hidden;
    block-size: 1px;
    opacity: 0;
    transition-duration: 0.5s;
    transition-property: block-size opacity padding;
}
.accordion_wrap .accordion_item.open .aco_head {
    cursor: pointer;
}
.accordion_wrap .accordion_item.open .aco_inner {
    block-size: auto;
    min-block-size: 1em;
    opacity: 1;
}
/*accordion style02*/
.aco_style02 {
    text-align: start;
}
.aco_style02 .accordion_item + .accordion_item {
    -webkit-margin-before: 24px;
    margin-block-start: 24px;
}
.aco_style02 .accordion_item.open .aco_style01_ti {
    -webkit-margin-after: 24px;
    margin-block-end: 24px;
}
.aco_style02 .accordion_item.open .aco_style01_ti::after {
    content: "\e15b";
}
.aco_style02_ti {
    background: rgba(var(--maincolor), 1);
    color: rgba(var(--light_tx_color), 1);
    font-size: clamp(1.8rem, 1.6105417277vw, 2.2rem);
    padding: 0.6em 1em;
    position: relative;
}
.aco_style02_ti::after {
    font-family: "Material Symbols Sharp";
    content: "\e145";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    block-size: 100%;
    inline-size: -webkit-max-content;
    inline-size: max-content;
    aspect-ratio: 1;
    background: rgba(var(--bg_color02), 1);
    color: rgba(var(--light_tx_color), 1);
    position: absolute;
    inset: 0 0 0 auto;
}
.aco_style02_ti:hover {
    opacity: 0.6;
}
/*===========================
ph_banner*/
.subsidy_wrap {
    background-color: rgba(var(--bg_white), 1);
    border: 1px solid rgba(var(--bg_color01), 1);
    inline-size: min(100%, 400px);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    gap: 16px 0;
}
@media (width >=768px) {
    .subsidy_wrap {
        inline-size: 100%;
        display: grid;
        grid-template-columns: min(30%, 300px) 1fr;
    }
}
.subsidy_wrap + .subsidy_wrap {
    -webkit-margin-before: 24px;
    margin-block-start: 24px;
}
.subsidy_ph {
    block-size: 180px;
}
.subsidy_ph img {
    inline-size: 100%;
    block-size: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
@media (width >=768px) {
    .subsidy_ph {
        block-size: revert;
    }
}
.subsidy_tx {
    text-align: start;
    padding-inline: clamp(16px, 2.3426061493vw, 32px);
    -webkit-padding-after: 24px;
    padding-block-end: 24px;
}
.subsidy_tx > * + * {
    -webkit-margin-before: 16px;
    margin-block-start: 16px;
}
.subsidy_tx .dl_list01 + .dl_list01 {
    -webkit-border-before: 1px dashed rgba(var(--subcolor01), 0.5);
    border-block-start: 1px dashed rgba(var(--subcolor01), 0.5);
    -webkit-padding-before: 16px;
    padding-block-start: 16px;
}
@media (width >=768px) {
    .subsidy_tx {
        padding-block: 32px;
    }
}

/*box*/
.box01 {
    background: rgba(var(--bg_white), 1);
    box-shadow: 0 0 2px rgba(var(--bg_color02), 1) inset;
    padding: 1.4em;
}

.anchor_point {
	margin-top: -66px;
	padding-top: 66px;
}
@media print, screen and (min-width:768px) {
    .anchor_point {
        margin-top: -78px;
        padding-top: 78px;
    }
}

.position{
	position: inherit;
    right: 0;
    top: 0;
	margin-top: 0;
}
@media print, screen and (min-width:760px) {
.position{
	position: inherit;
    right: 0;
    top: 0;
	margin-top: 10px;
}
}
@media print, screen and (min-width:1200px) {
.position{
	position: absolute;
    right: 0;
    top: 0;
	margin-top:0;
}
}

.relative{
	position: relative;
}

.label {
  display: inline-block;
  width: 30px; 
}	
@media print, screen and (min-width:1200px) {
.label {
  display: inline-block;
  width: 34px; 
}	
}