@charset "UTF-8";
@import url("../css/reset.css");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap");
/*-------------------------------------------/
    ページ共通要素
/-------------------------------------------*/
/* 表示切替 ----------------------------- */
@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .tab {
    display: none !important;
  }
  .pc_none {
    display: none !important;
  }
}
@media screen and (max-width: 1300px) {
  .pc2 {
    display: none !important;
  }
}
@media screen and (max-width: 1023px) {
  .pc_only {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .pc2 {
    display: none !important;
  }
  .tab {
    display: none !important;
  }
}
/* カラー */
:root {
  --white: #fff;
  --white-bg: #fff;
  --white-line: #fff;
  --white-txt: #fff;
  --black: #000;
  --black-line: #000;
  --black-txt: #000;
  --darkmode-bg-color: #8f94a2;
  --red-color: #ff5247;
  --dark-bg-color: #3c3f46;
  --table-th-bg: #8f94a2;
  --table-td-bg: #fff;
  --table-line: #ccc;
  --color01: #00b77d;
  --color01-bg: #00b77d;
  --color01-txt: #00b77d;
  --color01-line: #00b77d;
  --color01-hover: #00b77d;
  --color02: #daeae6;
  --color02-bg: #daeae6;
  --color02-line: #daeae6;
  --color02-hover: #daeae6;
  --color03: #7d818d;
  --color03-bg: #7d818d;
  --color03-txt: #7d818d;
  --color03-line: #7d818d;
  --color04: #fffdc5;
  --color04-bg: #fffdc5;
  --color05: #f0908a;
  --color05-bg: #f0908a;
  --color05-txt: #f0908a;
  --color05-line: #f0908a;
  --color06: #87c9a5;
  --color06-bg: #87c9a5;
  --color06-hover: #87c9a5;
  --color07: #222;
  --color07-txt: #222;
  --color08: #999999;
  --color08-txt: #999999;
  --color09: #999999;
  --color09-txt: #999999;
  --color10: #333;
  --color10-txt: #333;
}

.bgcolor-black {
  --white-bg: #7d818d;
  --black: #121212;
  --black-txt: #fff;
  --black-line: #fff;
  --darkmode-bg-color: #3c3f46;
  --table-th-bg: #3c3f46;
  --table-td-bg: #aaa;
  --table-line: #fff;
  --color01-txt: #fff;
  --color01-line: #fff;
  --color01-bg: #7d818d;
  --color02-bg: #999;
  --color02-hover: #7d818d;
  --color03-txt: #fff;
  --color04-bg: #fff;
  --color07-txt: #fff;
  --color08-txt: #fff;
  --color09-txt: #fff;
  --color10-txt: #fff;
}

.sup {
  vertical-align: text-top;
  font-size: 0.6em;
}

.red {
  color: #ff5247;
}

/*=====================================================

		メイン設定

======================================================*/
html {
  scroll-padding-top: 120px;
  -webkit-overflow-scrolling: touch;
  font-size: 62.5%;
}
html.fontsize-small {
  font-size: 54.6875%;
}
html.fontsize-medium {
  font-size: 62.5%;
}
html.fontsize-large {
  font-size: 70.3125%;
}
@media screen and (max-width: 1023px) {
  html {
    scroll-padding-top: 80px;
  }
}

body {
  position: relative;
  font-family: "BIZ UDPGothic", suns-serif;
  font-weight: 400;
  font-style: normal;
  font-optical-sizing: auto;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  max-width: 100%;
  background: var(--white-bg);
  color: var(--black-txt);
  animation: fade 1s ease forwards;
}

.wrapper {
  position: relative;
  overflow: clip;
}

/*=================================================

		共通設定

==================================================*/
img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: auto;
}

img,
object,
embed {
  max-width: 100%;
  height: auto;
  *width: inherit;
  vertical-align: middle;
}

a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
  cursor: pointer;
}

a:hover {
  color: inherit;
}

a img {
  transition: all 0.3s ease;
  display: block;
}

/*=================================================

		tel リンク

==================================================*/
@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
a.nolink {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/*=================================================

		ヘッダー

==================================================*/
.site-header {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100px;
  padding: 0 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  background: var(--white);
}
@media screen and (max-width: 767px) {
  .site-header {
    justify-content: center;
    height: 84px;
  }
}

.site-header .logo {
  width: min(100%, 412px);
}
.site-header .logo a {
  display: inline-block;
  aspect-ratio: 412/55;
  background: url("../images/logo.svg") no-repeat;
  background-size: contain;
}
.site-header .logo a span {
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  .site-header .logo a {
    width: 330px;
    aspect-ratio: 330/44;
    background: url("../images/logo_sp.svg") no-repeat;
    background-size: contain;
  }
}

.ToolBox {
  position: relative;
  top: 0;
  left: 0;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  display: flex;
  padding: 12px 0;
  justify-content: center;
  align-items: center;
  gap: 20px;
  align-self: stretch;
  color: var(--black);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-shrink: 0;
}
.ToolBox .ToolMenu {
  display: none;
}
.ToolBox .controller-box-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.ToolBox .controller-box-wrap .controller-content-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller-ttl {
  display: inline-block;
  margin-right: 10px;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button {
  position: relative;
  background: var(--white);
  color: #000;
  min-width: 33px;
  height: 30px;
  padding: 3px;
  border-radius: 4px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  cursor: pointer;
  letter-spacing: normal;
  border: 1px solid var(--darkmode-bg-color);
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box.bgcolor-controller .controller__button.button-white {
  background: var(--white);
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box.bgcolor-controller .controller__button.button-black {
  background: var(--black);
  color: var(--white);
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-small {
  font-size: 14px;
  line-height: 1.2857142857;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-medium {
  font-size: 16px;
  line-height: 1.125;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-large {
  font-size: 18px;
  line-height: 1;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button:hover {
  border: 2px solid var(--color01);
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button.is-active {
  background: var(--color01) !important;
  border: 3px solid var(--color01) !important;
  color: var(--white) !important;
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button.is-active::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color01);
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
}
.ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button.is-active::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--white);
  border-radius: 5px;
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 4px 8px 2px;
  background: var(--white);
  border-radius: 5px;
  border: 1px solid var(--darkmode-bg-color);
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input {
  width: 170px;
  font-size: 16px;
  border: none;
  background: transparent;
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::-moz-placeholder {
  color: #999;
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::placeholder {
  color: #999;
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input:focus {
  border: none;
  outline: none;
}
.ToolBox .controller-box-wrap .controller-content-box .searchform-box .btn-search {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  padding: 0;
  width: 20px;
  cursor: pointer;
}
.ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box {
  display: none;
}
.ToolBox .controller-box-wrap #menuItem_03_content {
  display: none;
}
@media screen and (max-width: 1023px) {
  .ToolBox {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    height: 100vh;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 0;
    font-size: 20px;
    gap: 0;
    background: var(--color01);
  }
  .ToolBox .ToolMenu {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 1;
    width: 100%;
    display: flex;
    justify-content: center;
    color: var(--white);
    background: var(--color01);
    height: 74px;
    font-size: 14px;
  }
  .ToolBox .ToolMenu .menuItem {
    position: relative;
    width: 33.3333333333%;
    padding: 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    border-top: 1px solid var(--white);
  }
  .ToolBox .ToolMenu .menuItem .icon {
    width: 20px;
    height: 20px;
    display: inline-block;
  }
  .ToolBox .ToolMenu .menuItem.menuItem_01 .icon {
    background: url("../images/common/icon_setting.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem.menuItem_02 .icon {
    background: url("../images/common/icon_search_white.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem.menuItem_03 .icon {
    background: url("../images/common/icon_menu.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem.is-active::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 100%;
    transform: translateX(-50%);
    width: 30px;
    height: 20px;
    background: url("../images/common/icon-active-mark.svg") no-repeat;
    background-size: 100% calc(100% + 2px);
  }
  .ToolBox .ToolMenu .menuItem.is-active.menuItem_01 .icon {
    background: url("../images/common/icon_close.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem.is-active.menuItem_02 .icon {
    background: url("../images/common/icon_close.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem.is-active.menuItem_03 .icon {
    background: url("../images/common/icon_close.svg") no-repeat;
    background-size: contain;
  }
  .ToolBox .ToolMenu .menuItem:not(:last-child) {
    border-right: 1px solid var(--white);
  }
  .ToolBox .controller-box-wrap {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 32px;
    padding: 0 20px 100px;
    background: var(--white);
    display: none;
  }
  .ToolBox .controller-box-wrap .controller-content-box {
    display: none;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 32px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box .controller-ttl {
    display: inline-block;
    margin-right: 10px;
    min-width: 5.2em;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box .controller__button {
    position: relative;
    background: var(--white);
    color: var(--black);
    min-width: 45px;
    height: 45px;
    padding: 6px;
    border-radius: 5px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    cursor: pointer;
    letter-spacing: normal;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.bgcolor-controller .controller__button {
    font-size: 15px;
    padding: 6px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.bgcolor-controller .controller__button.button-white {
    background: var(--white);
    border: 1px solid var(--white);
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.bgcolor-controller .controller__button.button-black {
    background: var(--black);
    color: var(--white);
    border: 1px solid var(--white);
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button {
    font-size: 15px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-small {
    font-size: 14px;
    line-height: 1.2857142857;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-medium {
    font-size: 16px;
    line-height: 1.125;
  }
  .ToolBox .controller-box-wrap .controller-content-box .controller-box.fontsize-controller .controller__button.button-large {
    font-size: 18px;
    line-height: 1;
  }
  .ToolBox .controller-box-wrap .controller-content-box .searchform-box {
    width: min(100%, 374px);
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    background: var(--white);
    border-radius: 5px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input {
    width: min(100% - 30px, 310px);
    font-size: 16px;
    border: none;
  }
  .ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::-moz-placeholder {
    color: #999;
  }
  .ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::placeholder {
    color: #999;
  }
  .ToolBox .controller-box-wrap .controller-content-box .searchform-box .btn-search {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: transparent;
    border: none;
    padding: 0;
    width: 20px;
    cursor: pointer;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box {
    display: block;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 8px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item {
    width: calc((100% - 16px) / 3);
    display: flex;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item a {
    width: 100%;
    height: 100%;
    padding: 13px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    background: var(--white-bg);
    color: var(--black-txt);
    border-radius: 10px;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item a span {
    display: inline-block;
    text-align: center;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item a span.icon {
    width: min(100%, 70px);
    flex-shrink: 0;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item a span.txt {
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item.menu-item-m {
    width: calc((100% - 8px) / 2);
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item.menu-item-m a {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item.menu-item-m a span.txt {
    text-align: left;
  }
  .ToolBox .controller-box-wrap .controller-content-box.is-show {
    display: flex;
    justify-content: center;
    height: 100%;
  }
  .ToolBox .controller-box-wrap #menuItem_03_content.is-show {
    display: flex;
  }
  .ToolBox .controller-box-wrap:has(.is-show) {
    position: fixed;
    display: flex;
  }
  .ToolBox .controller-box-wrap:has(#menuItem_03_content.is-show) {
    background: var(--color01);
  }
}

.main-navigation {
  position: relative;
  z-index: 1;
  width: 100%;
  background: var(--color01-bg);
  padding: 40px;
}
.main-navigation .gnav {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  gap: 1px;
  justify-content: center;
  background: var(--color02-bg);
  border-radius: 20px;
  overflow: hidden;
}
.main-navigation .gnav .gnav-item {
  width: calc((100% - 4px) / 5);
}
.main-navigation .gnav .gnav-item a {
  width: 100%;
  height: 100%;
  padding: 16px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--white-bg);
  color: var(--black-txt);
}
.main-navigation .gnav .gnav-item a span {
  display: inline-block;
  text-align: center;
}
.main-navigation .gnav .gnav-item a span.icon {
  width: min(100%, 70px);
}
.main-navigation .gnav .gnav-item a span.txt {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.main-navigation .gnav .gnav-item a:hover {
  background: var(--color02-hover);
}
@media screen and (max-width: 1023px) {
  .main-navigation {
    width: 100%;
    background: var(--color01-bg);
    padding: 20px;
  }
  .main-navigation .gnav {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    background: transparent;
    border-radius: 0;
    overflow: unset;
  }
  .main-navigation .gnav .gnav-item {
    width: calc((100% - 16px) / 3);
  }
  .main-navigation .gnav .gnav-item a {
    padding: 13px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    border-radius: 10px;
  }
  .main-navigation .gnav .gnav-item a span {
    display: inline-block;
    text-align: center;
  }
  .main-navigation .gnav .gnav-item a span.icon {
    width: min(100%, 70px);
    flex-shrink: 0;
  }
  .main-navigation .gnav .gnav-item a span.txt {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .main-navigation .gnav .gnav-item a:hover {
    background: var(--color02-hover);
  }
  .main-navigation .gnav .gnav-item.gnav-item-m {
    width: calc((100% - 8px) / 2);
  }
  .main-navigation .gnav .gnav-item.gnav-item-m a {
    flex-direction: row;
    padding: 4px 12px;
  }
  .main-navigation .gnav .gnav-item.gnav-item-m a span.txt {
    text-align: left;
  }
}

.lower .nav-wrap {
  position: sticky;
  width: 100%;
  z-index: 9999;
  top: 84px;
}
.lower .main-navigation {
  position: relative;
  z-index: 1;
  width: 100%;
  background: var(--color01-bg);
  padding: 40px;
}
.lower .main-navigation .gnav {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  gap: 1px;
  justify-content: center;
  background: var(--color02-bg);
  border-radius: 20px;
  overflow: hidden;
}
.lower .main-navigation .gnav .gnav-item {
  width: calc((100% - 4px) / 5);
}
.lower .main-navigation .gnav .gnav-item a {
  width: 100%;
  height: 100%;
  padding: 16px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--white-bg);
  color: var(--black-txt);
}
.lower .main-navigation .gnav .gnav-item a span {
  display: inline-block;
  text-align: center;
}
.lower .main-navigation .gnav .gnav-item a span.icon {
  width: min(100%, 70px);
}
.lower .main-navigation .gnav .gnav-item a span.txt {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.lower .main-navigation .gnav .gnav-item a:hover {
  background: var(--color02-hover);
}
@media screen and (max-width: 1023px) {
  .lower .main-navigation {
    width: 100%;
    background: var(--color01-bg);
    padding: 40px 20px;
  }
  .lower .main-navigation .gnav {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    background: transparent;
    border-radius: 0;
    overflow: unset;
  }
  .lower .main-navigation .gnav .gnav-item {
    width: calc((100% - 16px) / 3);
  }
  .lower .main-navigation .gnav .gnav-item a {
    padding: 13px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    border-radius: 10px;
  }
  .lower .main-navigation .gnav .gnav-item a span {
    display: inline-block;
    text-align: center;
  }
  .lower .main-navigation .gnav .gnav-item a span.icon {
    width: min(100%, 70px);
    flex-shrink: 0;
  }
  .lower .main-navigation .gnav .gnav-item a span.txt {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .lower .main-navigation .gnav .gnav-item a:hover {
    background: var(--color02-hover);
  }
  .lower .main-navigation .gnav .gnav-item.gnav-item-m {
    width: calc((100% - 8px) / 2);
  }
  .lower .main-navigation .gnav .gnav-item.gnav-item-m a {
    flex-direction: row;
    padding: 4px 12px;
  }
  .lower .main-navigation .gnav .gnav-item.gnav-item-m a span.txt {
    text-align: left;
  }
}

.bgcolor-black .site-header {
  background: var(--black);
}
.bgcolor-black .site-header .logo a {
  background: url("../images/logo-white.svg") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bgcolor-black .site-header .logo a {
    width: 330px;
    aspect-ratio: 330/44;
    background: url("../images/logo-white_sp.svg") no-repeat;
    background-size: contain;
  }
}
.bgcolor-black .ToolBox .controller-box-wrap {
  background: var(--black);
}
.bgcolor-black .ToolBox .controller-box-wrap .controller-content-box .controller-box .controller-ttl {
  color: var(--white);
}
.bgcolor-black .ToolBox .controller-box-wrap .controller-content-box .searchform-box {
  background: var(--darkmode-bg-color);
}
.bgcolor-black .ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::-moz-placeholder {
  color: var(--white);
}
.bgcolor-black .ToolBox .controller-box-wrap .controller-content-box .searchform-box .search_input::placeholder {
  color: var(--white);
}
.bgcolor-black .ToolBox .controller-box-wrap .controller-content-box .dropdownmenu-box .dropdownmenu .menu-item a {
  background: var(--black);
  color: var(--black-txt);
}
.bgcolor-black .ToolBox .controller-box-wrap:has(#menuItem_03_content.is-show) {
  background: #777;
}
.bgcolor-black .main-navigation {
  background: #aaa;
}
.bgcolor-black .main-navigation .gnav {
  background: #777;
}
.bgcolor-black .main-navigation .gnav .gnav-item a {
  background: var(--black);
  color: var(--black-txt);
}
.bgcolor-black .main-navigation .gnav .gnav-item a:hover:hover {
  background: var(--color02-hover);
}

.lower .site-header {
  height: 84px;
  border-bottom: 1px solid var(--color06);
}
.lower .main-navigation {
  position: relative;
  z-index: 1;
  width: 100%;
  background: var(--color01-bg);
  padding: 20px;
}
.lower .main-navigation .gnav {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  gap: 1px;
  justify-content: center;
  background: var(--color02-bg);
  border-radius: 20px;
  overflow: hidden;
}
.lower .main-navigation .gnav .gnav-item {
  width: calc((100% - 4px) / 5);
}
.lower .main-navigation .gnav .gnav-item a {
  width: 100%;
  height: 100%;
  padding: 16px 8px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--white-bg);
  color: var(--black-txt);
}
.lower .main-navigation .gnav .gnav-item a span {
  display: inline-block;
  text-align: center;
}
.lower .main-navigation .gnav .gnav-item a span.icon {
  width: min(100%, 70px);
}
.lower .main-navigation .gnav .gnav-item a span.txt {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: left;
  flex-shrink: 0;
}
.lower .main-navigation .gnav .gnav-item a span.txt br.sp {
  display: block !important;
}
.lower .main-navigation .gnav .gnav-item a:hover {
  background: var(--color02-hover);
}
@media screen and (max-width: 1023px) {
  .lower .main-navigation {
    display: none;
  }
}
.bgcolor-black .lower .site-header {
  border-bottom: 1px solid var(--color06);
}
.bgcolor-black .lower .main-navigation {
  background: #aaa;
}
.bgcolor-black .lower .main-navigation .gnav {
  background: #777;
}
.bgcolor-black .lower .main-navigation .gnav .gnav-item a {
  background: var(--black);
  color: var(--white);
}
.bgcolor-black .lower .main-navigation .gnav .gnav-item a:hover {
  background: var(--color02-hover);
}

@media screen and (min-width: 1024px) {
  body.home.scroll .site-header,
  body.lower.scroll .site-header {
    height: 84px;
    border-bottom: 1px solid var(--color06);
  }
  body.home.scroll .nav-wrap,
  body.lower.scroll .nav-wrap {
    position: fixed;
    z-index: 9999;
    width: 100%;
    top: 84px;
    border-bottom: 1px solid var(--color06);
  }
  body.home.scroll .main-navigation,
  body.lower.scroll .main-navigation {
    position: relative;
    z-index: 1;
    width: 100%;
    background: transparent;
    padding: 0;
    background: var(--color01);
  }
  body.home.scroll .main-navigation .gnav,
  body.lower.scroll .main-navigation .gnav {
    width: min(100%, 1200px);
    margin: 0 auto;
    display: flex;
    gap: 1px;
    justify-content: center;
    background: var(--white);
    border-radius: 0;
    overflow: hidden;
  }
  body.home.scroll .main-navigation .gnav .gnav-item,
  body.lower.scroll .main-navigation .gnav .gnav-item {
    width: calc((100% - 4px) / 5);
  }
  body.home.scroll .main-navigation .gnav .gnav-item a,
  body.lower.scroll .main-navigation .gnav .gnav-item a {
    width: 100%;
    height: 100%;
    padding: 16px 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--color01);
    color: var(--white);
  }
  body.home.scroll .main-navigation .gnav .gnav-item a span,
  body.lower.scroll .main-navigation .gnav .gnav-item a span {
    display: inline-block;
    text-align: center;
  }
  body.home.scroll .main-navigation .gnav .gnav-item a span.icon,
  body.lower.scroll .main-navigation .gnav .gnav-item a span.icon {
    display: none;
  }
  body.home.scroll .main-navigation .gnav .gnav-item a span.txt,
  body.lower.scroll .main-navigation .gnav .gnav-item a span.txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  body.home.scroll .main-navigation .gnav .gnav-item a span.txt br.sp,
  body.lower.scroll .main-navigation .gnav .gnav-item a span.txt br.sp {
    display: none !important;
  }
  body.home.scroll .main-navigation .gnav .gnav-item a:hover,
  body.lower.scroll .main-navigation .gnav .gnav-item a:hover {
    color: var(--black);
    background: var(--color02);
  }
  body.home.scroll .main-content {
    padding-top: 180px;
  }
  body.lower.scroll .main-content {
    padding-top: 100px;
  }
  .bgcolor-black body.home.scroll .main-navigation,
  .bgcolor-black body.lower.scroll .main-navigation {
    background: var(--black);
  }
  .bgcolor-black body.home.scroll .main-navigation .gnav,
  .bgcolor-black body.lower.scroll .main-navigation .gnav {
    background: var(--color06);
  }
  .bgcolor-black body.home.scroll .main-navigation .gnav .gnav-item a,
  .bgcolor-black body.lower.scroll .main-navigation .gnav .gnav-item a {
    background: var(--black);
    color: var(--white);
  }
  .bgcolor-black body.home.scroll .main-navigation .gnav .gnav-item a:hover,
  .bgcolor-black body.lower.scroll .main-navigation .gnav .gnav-item a:hover {
    color: var(--black);
    background: var(--color02);
  }
}
/*=================================================

		フッター

==================================================*/
.site-footer {
  position: relative;
  z-index: 1;
  padding: 80px 40px;
  background: var(--color01-bg);
  color: var(--white);
  margin-top: 190px;
}
.site-footer::before {
  content: "";
  width: 742px;
  aspect-ratio: 742/192;
  position: absolute;
  z-index: 1;
  bottom: calc(100% - 40px);
  left: 50%;
  transform: translateX(-50%);
  background: url("../images/common/illust_01.png") no-repeat;
  background-size: contain;
}
.site-footer .footer__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}
.site-footer .footer__inner .text-box {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.site-footer .footer__inner .text-box .logo {
  width: min(100%, 354px);
}
.site-footer .footer__inner .text-box .info-txt p.tel {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1em;
}
.site-footer .footer__inner .text-box .info-txt p.tel a {
  display: inline-block;
}
.site-footer .footer__inner .text-box p.link-mail a {
  color: #fffbb6;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.site-footer .footer__inner .footer-navigation ul.sub-link {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 10px;
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li {
  width: -moz-fit-content;
  width: fit-content;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li a {
  display: inline-block;
  color: var(--white-txt);
  padding: 0.8rem 2rem;
  border-radius: 1rem;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link::after {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: url("../images/common/icon-blank_white.svg") no-repeat;
  background-size: contain;
  flex-shrink: 0;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link:hover::after {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: url("../images/common/icon-blank.svg") no-repeat;
  background-size: contain;
  flex-shrink: 0;
}
.site-footer .footer__inner .footer-navigation ul.sub-link li a:hover {
  background: var(--color02);
  color: var(--color01);
}
.site-footer .footer__inner .copyright {
  width: 100%;
  text-align: right;
  font-size: 1.3rem;
}
@media screen and (max-width: 1023px) {
  .site-footer {
    margin-top: 100px;
  }
  .site-footer::before {
    content: "";
    width: min(90.3381642512%, 376px);
    aspect-ratio: 742/192;
    position: absolute;
    z-index: 1;
    bottom: calc(100% - 20px);
    left: 50%;
    transform: translateX(-50%);
    background: url("../images/common/illust_01.png") no-repeat;
    background-size: contain;
  }
  .site-footer .footer__inner .copyright {
    width: 100%;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .site-footer {
    padding: 40px 20px 100px;
  }
  .site-footer .footer__inner {
    gap: 24px;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 10px;
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li {
    width: -moz-fit-content;
    width: fit-content;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li a {
    display: inline-block;
    color: var(--white-txt);
    padding: 0.8rem 0;
    border-radius: 1rem;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link::after {
    content: "";
    width: 1.2em;
    height: 1.2em;
    background: url("../images/common/icon-blank_white.svg") no-repeat;
    background-size: contain;
    flex-shrink: 0;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li a.external-link:hover::after {
    background: url("../images/common/icon-blank_white.svg") no-repeat;
    background-size: contain;
  }
  .site-footer .footer__inner .footer-navigation ul.sub-link li a:hover {
    background: inherit;
    color: inherit;
  }
  .site-footer .footer__inner .copyright {
    width: 100%;
    text-align: left;
    font-size: 1.3rem;
  }
}

.bgcolor-black .site-footer {
  background: var(--black);
  color: var(--white);
}

/* ページトップへ */
#pagetop {
  display: none;
  position: fixed;
  z-index: 9999;
  top: auto;
  bottom: 25px;
  right: 25px;
}
#pagetop a {
  display: block;
  width: 50px;
  height: 50px;
  background: url("../images/common/btn-top.svg") center center no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 1023px) {
  #pagetop {
    bottom: 84px;
    right: 10px;
  }
}

/*=================================================

		共通

==================================================*/
.content-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 4rem;
  font-weight: 700;
}
.content-title span {
  display: inline-block;
}
.content-title span.icon {
  width: 7rem;
}
.content-title span.txt {
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 1023px) {
  .content-title {
    font-size: 2.8rem;
  }
}

.content-title-center {
  width: 100%;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--black-txt);
}
.content-title-center span {
  font-size: 2.4rem;
  display: block;
}
.content-title-center.green {
  color: var(--color01-txt);
}
@media screen and (max-width: 1023px) {
  .content-title-center {
    font-size: 2.4rem;
  }
}

.content-title-line {
  width: 100%;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  color: var(--color01-txt);
}
.content-title-line::before, .content-title-line::after {
  content: "";
  display: inline-block;
  width: 0.7em;
  height: 1px;
  flex-grow: 1;
  background: var(--color01-line);
}
@media screen and (max-width: 1023px) {
  .content-title-line {
    font-size: 2.8rem;
  }
}

@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi .content-title-line {
    font-size: 2.4rem;
  }
}

.content-midashi {
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
.content-midashi span.caption {
  width: 100%;
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
}
.content-midashi span.num {
  font-size: 1.8rem;
  display: flex;
  width: 3.6rem;
  height: 3.6rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  color: var(--white-txt);
  background: var(--darkmode-bg-color);
}
@media screen and (max-width: 1023px) {
  .content-midashi {
    font-size: 2.4rem;
  }
}

.content-midashi-center {
  font-size: 3.2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
}
.content-midashi-center span.icon {
  width: 2.4rem;
  flex-shrink: 0;
}
@media screen and (max-width: 1023px) {
  .content-midashi-center {
    font-size: 2.4rem;
  }
}

.section-title {
  width: 100%;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  line-height: 1.3;
  font-weight: 700;
  color: var(--white);
  padding: 16px;
  background: var(--dark-bg-color);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .section-title {
    width: 100%;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 1.3;
    font-weight: 700;
    color: var(--white);
    padding: 8px;
    background: var(--dark-bg-color);
    text-align: center;
  }
}

/*=================================================

		トップ

==================================================*/
.home .mv {
  position: relative;
  width: 100%;
}
.home .mv .mv-image {
  width: 100%;
}
.home .mv .mv-image img {
  width: 100%;
}
.home .mv .catch-copy {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
.home .mv .catch-copy span {
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  display: flex;
  padding: 0.4rem 2.4rem;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  color: var(--color01);
  background: rgba(255, 255, 255, 0.95);
}
@media screen and (max-width: 767px) {
  .home .mv .mv-image {
    width: 100vw;
    height: auto;
    display: flex;
    overflow: hidden;
  }
  .home .mv .mv-image img {
    width: 120vw;
    max-width: 120vw;
  }
  .home .mv .mv-image img:first-child {
    animation: loop 50s -25s linear infinite;
  }
  .home .mv .mv-image img:last-child {
    animation: loop2 50s linear infinite;
  }
  .home .mv .catch-copy {
    position: relative;
    top: unset;
    left: unset;
    transform: unset;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 1.6rem;
  }
  .home .mv .catch-copy span {
    display: inline-block;
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.05em;
    display: flex;
    padding: 0;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    color: var(--color01-txt);
    background: transparent;
  }
}
.home #section-01 {
  padding: 100px 0 80px;
}
.home #section-01 .content__inner {
  width: 100%;
  margin: 0 auto;
}
.home #section-01 .pickup-slider {
  position: relative;
  width: 100%;
}
.home #section-01 .pickup-slider .swiper-controll-button {
  width: 155px;
  height: 42px;
  position: absolute;
  right: 42px;
  bottom: calc(100% + 25px);
}
.home #section-01 .pickup-slider .swiper-controll-button .swiper_pause {
  width: 100%;
  height: 100%;
  cursor: pointer;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url("../images/control-pause_off.svg") no-repeat;
  background-size: 100%;
}
.home #section-01 .pickup-slider .swiper-controll-button .swiper_pause:hover {
  background: url("../images/control-pause_on.svg") no-repeat;
  background-size: 100%;
}
.home #section-01 .pickup-slider .swiper-controll-button .swiper_pause.paused {
  background: url("../images/control-play_off.svg") no-repeat;
  background-size: 100%;
}
.home #section-01 .pickup-slider .swiper-controll-button .swiper_pause.paused:hover {
  background: url("../images/control-play_on.svg") no-repeat;
  background-size: 100%;
}
.home #section-01 .pickup-slider .swiper {
  width: 100%;
  padding: 0 20%;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item {
  width: 100%;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box {
  display: block;
  width: 100%;
  border: 3px solid var(--black-line);
  background-color: var(--white-bg);
  border-radius: 20px;
  overflow: clip;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box .bnr-image {
  width: 100%;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box .bnr-image img {
  width: 100%;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box .bnt-ttl {
  width: 100%;
  padding: 16px;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.home #section-01 .pickup-slider .swiper .pickup-slider-item:hover .item-box {
  border: 3px solid var(--color01-line);
  background: var(--color02-hover);
}
.home #section-01 .text-box {
  margin-top: 32px;
  padding: 0 4rem;
}
.home #section-01 .text-box p {
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--color01-txt);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .home #section-01 {
    padding: 90px 0 30px;
  }
  .home #section-01 .pickup-slider .swiper-controll-button {
    right: 20px;
  }
  .home #section-01 .text-box {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .home #section-01 .pickup-slider .swiper {
    width: 100%;
    padding: 0 15%;
  }
  .home #section-01 .pickup-slider .swiper .pickup-slider-item {
    width: 100%;
  }
  .home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box .bnt-ttl {
    font-size: 1.6rem;
  }
  .home #section-01 .text-box {
    margin-top: 16px;
    padding: 0 20px;
  }
  .home #section-01 .text-box p {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--color01-txt);
    text-align: left;
  }
}
.home #section-02 .content__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.home #section-02 .information-wrap {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
}
.home #section-02 .information-wrap .information_content {
  width: 50%;
}
.home #section-02 .information-wrap .information_content .content-title-center {
  margin-bottom: 32px;
}
.home #section-02 .information-wrap .information_content.content_01 {
  background: var(--color04-bg);
  padding: 80px 80px 80px 120px;
}
.home #section-02 .information-wrap .information_content.content_01 .content_01__inner {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.home #section-02 .information-wrap .information_content.content_02 {
  background: var(--color02-bg);
  padding: 80px 120px 250px 80px;
}
.home #section-02 .information-wrap .information_content.content_02 .content_02__inner {
  width: 100%;
}
.home #section-02 .information-wrap .information_content .use-facilities-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: flex-start;
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item {
  width: calc((100% - 25px) / 2);
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 28px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: stretch;
  gap: 16px;
  background: var(--white-bg);
  border-radius: 20px;
  border: 4px solid var(--white);
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span {
  display: inline-block;
  text-align: center;
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.icon {
  width: min(100%, 73px);
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.txt {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.color-red {
  color: var(--red-color);
}
.home #section-02 .information-wrap .information_content .use-facilities-list .list-item a:hover {
  border: 4px solid var(--color01-line);
}
.home #section-02 .information-wrap .information_content .news-content-wrap {
  border-radius: 20px;
  background: var(--white-bg);
  padding: 20px 0;
  display: flex;
  flex-grow: 1;
  border: 3px solid var(--white);
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul {
  width: 100%;
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li a {
  width: 100%;
  display: block;
  padding: 8px 40px;
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li a:hover {
  background: var(--color02-hover);
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span {
  display: block;
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_date {
  font-size: 1.6rem;
  color: var(--color08-txt);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5em;
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_date .new-icon {
  font-size: 0.8em;
  display: inline-block;
  padding: 0.1em 0.5em;
  color: white;
  background: var(--color01);
  border-radius: 2rem;
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_title {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--color10-txt);
}
.home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_title .pdf-icon {
  content: "";
  width: 2.8rem;
  height: 2.7rem;
  background: url("../images/common/icon_pdf.svg") no-repeat;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: bottom;
  margin-left: 1rem;
}
.home #section-02 .information-wrap .information_content .btn-box {
  position: relative;
  text-align: right;
  top: -25px;
  padding-right: 2rem;
}
.home #section-02 .information-wrap .information_content .btn-box a.news-list {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  color: var(--white);
  background: var(--color01-bg);
  padding: 0.5em 1.6em;
  gap: 0.5em;
  border-radius: 20px;
}
.home #section-02 .information-wrap .information_content .btn-box a.news-list::after {
  content: "";
  width: 0.625em;
  height: 0.8125em;
  background: var(--white);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.home #section-02 .information-wrap .information_content .btn-box a.news-list:hover {
  background: var(--color06-hover);
}
.home #section-02 .information-wrap::after {
  content: "";
  position: absolute;
  right: 9.2361111111%;
  bottom: -70px;
  width: min(18.0555555556%, 260px);
  aspect-ratio: 260/273;
  background: url("../images/common/illust_02.png") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 1300px) {
  .home #section-02 .information-wrap {
    width: 100%;
    display: flex;
    justify-content: center;
  }
  .home #section-02 .information-wrap .information_content {
    width: 50%;
  }
  .home #section-02 .information-wrap .information_content.content_01 {
    padding: 80px 40px;
  }
  .home #section-02 .information-wrap .information_content.content_02 {
    padding: 80px 40px;
  }
}
@media screen and (max-width: 1023px) {
  .home #section-02 .information-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .home #section-02 .information-wrap .information_content {
    width: 100%;
    padding: 80px 40px;
  }
  .home #section-02 .information-wrap .information_content .content-title-center {
    margin-bottom: 20px;
  }
  .home #section-02 .information-wrap .information_content.content_01 {
    padding: 80px 40px;
  }
  .home #section-02 .information-wrap .information_content.content_01 .content_01__inner {
    width: 100%;
  }
  .home #section-02 .information-wrap .information_content.content_02 {
    padding: 80px 40px 200px;
  }
  .home #section-02 .information-wrap .information_content.content_02 .content_02__inner {
    width: 100%;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list {
    gap: 25px;
    margin: 0 auto;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item {
    width: calc((100% - 50px) / 3);
  }
  .home #section-02 .information-wrap::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -40px;
    transform: translateX(-50%);
    width: min(46.3768115942%, 192px);
    aspect-ratio: 192/201;
    background: url("../images/common/illust_02.png") no-repeat;
    background-size: contain;
  }
}
@media screen and (max-width: 767px) {
  .home #section-02 .information-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .home #section-02 .information-wrap .information_content {
    width: 100%;
  }
  .home #section-02 .information-wrap .information_content.content_01 {
    padding: 30px 20px;
  }
  .home #section-02 .information-wrap .information_content.content_01 .content_01__inner {
    width: 100%;
  }
  .home #section-02 .information-wrap .information_content.content_02 {
    padding: 30px 20px 200px;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list {
    gap: 16px;
    margin: 0 auto;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item {
    width: calc((100% - 16px) / 2);
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a {
    padding: 16px;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span {
    display: inline-block;
    text-align: center;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.icon {
    width: min(100%, 50px);
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.txt {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a span.color-red {
    color: var(--red-color);
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap {
    border-radius: 20px;
    background: var(--white-bg);
    padding: 20px 0;
    display: flex;
    flex-grow: 1;
    border: 3px solid var(--white);
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul {
    width: 100%;
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li a {
    width: 100%;
    display: block;
    padding: 8px 20px;
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li a:hover {
    background: var(--color02-hover);
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span {
    display: block;
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_date {
    font-size: 1.6rem;
    color: var(--color10-txt);
  }
  .home #section-02 .information-wrap .information_content .news-content-wrap .news_content ul li span.post_title {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--color10-txt);
  }
  .home #section-02 .information-wrap .information_content .btn-box {
    position: relative;
    text-align: right;
    top: -10px;
  }
  .home #section-02 .information-wrap .information_content .btn-box a.news-list {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1.6rem;
    color: var(--white);
    background: var(--color01-bg);
    padding: 0.5em 1.6em;
    gap: 0.5em;
    border-radius: 20px;
  }
  .home #section-02 .information-wrap .information_content .btn-box a.news-list::after {
    content: "";
    width: 0.625em;
    height: 0.8125em;
    background: var(--white);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }
  .home #section-02 .information-wrap .information_content .btn-box a.news-list:hover {
    background: var(--color06-hover);
  }
}
.home #section-03 {
  padding: 80px 40px;
}
.home #section-03 .content__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .home #section-03 {
    padding: 40px 20px;
  }
}
.home #section-04 {
  padding: 80px 40px;
  background: var(--color02-bg);
}
.home #section-04 .content__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .home #section-04 {
    padding: 40px 20px;
  }
}
.home #section-05 {
  padding: 80px 40px 240px;
}
.home #section-05 .content__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .home #section-05 {
    padding: 40px 20px 100px;
  }
}
.home .info-list {
  width: min(100%, 1200px);
  margin: 32px auto 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 32px;
}
.home .info-list .list-item {
  display: flex;
  width: calc((100% - 64px) / 3);
}
.home .info-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 13px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 20px;
  border: 3px solid var(--color01-line);
  background: var(--color01-bg);
  color: var(--white);
}
.home .info-list .list-item a .icon {
  width: 80px;
  flex-shrink: 0;
}
.home .info-list .list-item a .ttl {
  font-size: 2.4rem;
  font-weight: 700;
}
.home .info-list .list-item a:hover {
  background: var(--color06-hover);
}
@media screen and (max-width: 1300px) {
  .home .info-list {
    width: min(100%, 1200px);
    margin: 16px auto 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 16px;
  }
  .home .info-list .list-item {
    width: calc((100% - 32px) / 2);
  }
  .home .info-list .list-item a {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
  .home .info-list .list-item a .txt-box span {
    width: 100%;
  }
  .home .info-list .list-item a .txt-box span.ttl {
    text-align: left;
  }
  .home .info-list .list-item.wide-size {
    width: calc((100% - 32px) / 2);
  }
}
@media screen and (max-width: 1023px) {
  .home .info-list {
    width: 100%;
    margin: 16px auto 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
  }
  .home .info-list .list-item a {
    padding: 20px;
  }
  .home .info-list .list-item.wide-size {
    width: 100%;
  }
  .home .info-list .list-item.wide-size a {
    padding: 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .info-list .list-item {
    width: 100%;
  }
  .home .info-list .list-item a {
    padding: 16px;
  }
  .home .info-list .list-item a .txt-box span.ttl {
    font-size: 2rem;
  }
  .home .info-list .list-item a .txt-box span.txt {
    font-size: 1.5rem;
  }
}
.home #section-06 {
  padding: 80px 40px 200px;
  background: var(--color02-bg);
}
.home #section-06 .content__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.home #section-06 .linkbnr-list {
  width: min(100%, 1200px);
  margin: 32px auto 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 24px;
}
.home #section-06 .linkbnr-list li {
  display: flex;
  width: calc((100% - 48px) / 3);
}
.home #section-06 .linkbnr-list li a {
  width: 100%;
}
.home #section-06 .linkbnr-list li a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .home #section-06 {
    padding: 40px 20px 100px;
  }
  .home #section-06 .linkbnr-list {
    width: min(100%, 1200px);
    margin: 16px auto 0;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
  }
  .home #section-06 .linkbnr-list li {
    width: min(100%, 383px);
  }
  .home #section-06 .linkbnr-list li a {
    width: 100%;
  }
  .home #section-06 .linkbnr-list li a:hover {
    opacity: 0.7;
  }
}
.home .site-footer {
  margin-top: 0;
}

.bgcolor-black .home #section-01 .pickup-slider .swiper .pickup-slider-item .item-box {
  border: 3px solid var(--black);
  background-color: var(--black);
}
.bgcolor-black .home #section-01 .pickup-slider .swiper .pickup-slider-item:hover .item-box {
  border: 3px solid var(--color01);
  background: var(--black);
}
.bgcolor-black .home #section-02 .information-wrap .information_content.content_01 {
  background: var(--black);
}
.bgcolor-black .home #section-02 .information-wrap .information_content.content_02 {
  background: #999;
}
.bgcolor-black .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a {
  background: var(--black);
  border: 4px solid var(--black);
}
.bgcolor-black .home #section-02 .information-wrap .information_content .use-facilities-list .list-item a:hover {
  border: 4px solid var(--color01);
}
.bgcolor-black .home #section-02 .information-wrap .information_content .btn-box a.news-list {
  color: var(--white);
  background: #3c3f46;
}
.bgcolor-black .home #section-02 .information-wrap .information_content .btn-box a.news-list::after {
  background: var(--white);
}
.bgcolor-black .home #section-02 .information-wrap .information_content .btn-box a.news-list:hover {
  background: var(--color06-hover);
}
.bgcolor-black .home .info-list .list-item a {
  border: 3px solid var(--black);
  background: var(--black);
  color: var(--white);
}
.bgcolor-black .home .info-list .list-item a:hover {
  border: 3px solid var(--color01);
}

/*=================================================

		下層共通

==================================================*/
.soon {
  padding: 40px;
}

.lower p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.lower p.small {
  font-size: 1.6rem;
}
.lower p.indent {
  padding-left: 1em;
  text-indent: -1em;
}
.lower #lead {
  padding: 40px;
}
.lower #lead .lead-box {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.lower #lead .lead-box p {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .lower #lead {
    padding: 20px;
  }
  .lower #lead .lead-box {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .lower #lead .lead-box p {
    text-align: left;
  }
}
.lower .content-link {
  padding: 40px;
  background: var(--color02-bg);
}
.lower .content-link .use-link-list {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: flex-start;
  align-items: flex-start;
}
.lower .content-link .use-link-list .list-item {
  width: min((100% - 25px) / 2, 383px);
  flex-grow: 1;
}
.lower .content-link .use-link-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 25px 13px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  background: var(--white-bg);
  border-radius: 20px;
  border: 3px solid var(--white-line);
}
.lower .content-link .use-link-list .list-item a span {
  display: inline-block;
}
.lower .content-link .use-link-list .list-item a span.icon {
  width: min(100%, 73px);
}
.lower .content-link .use-link-list .list-item a span.txt {
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.lower .content-link .use-link-list .list-item a:hover {
  border: 3px solid var(--color01-line);
}
.lower .content-link .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.lower .content-link .box-wrap .top-text-box p {
  text-align: center;
}
.lower .content-link .box-wrap .btn-box {
  width: 100%;
}
.lower .content-link .info-list {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 32px;
}
.lower .content-link .info-list .list-item {
  display: flex;
  width: min(100%, 45rem);
}
.lower .content-link .info-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 13px 13px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 20px;
  border: 3px solid var(--color01-line);
  background: var(--color01-bg);
  color: var(--white);
}
.lower .content-link .info-list .list-item a .icon {
  width: 80px;
  flex-shrink: 0;
}
.lower .content-link .info-list .list-item a .ttl {
  font-size: 2.4rem;
  font-weight: 700;
}
.lower .content-link .info-list .list-item a:hover {
  background: var(--color06-hover);
}
@media screen and (max-width: 1023px) {
  .lower .content-link {
    padding: 30px 20px;
  }
  .lower .content-link .box-wrap .top-text-box p {
    text-align: left;
  }
  .lower .content-link .info-list {
    gap: 10px;
  }
  .lower .content-link .info-list .list-item a .ttl {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .lower .content-link .use-link-list {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    align-items: stretch;
  }
  .lower .content-link .use-link-list .list-item {
    width: min((100% - 10px) / 2, 38.3rem);
    flex-grow: unset;
  }
  .lower .content-link .use-link-list .list-item a {
    width: 100%;
    height: 100%;
    padding: 28px 8px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 16px;
    background: var(--white-bg);
    border-radius: 20px;
    border: 3px solid var(--white-line);
  }
  .lower .content-link .use-link-list .list-item a span {
    display: inline-block;
  }
  .lower .content-link .use-link-list .list-item a span.icon {
    width: min(100%, 73px);
  }
  .lower .content-link .use-link-list .list-item a span.txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .lower .content-link .use-link-list .list-item a:hover {
    outline: 3px solid var(--color01-line);
  }
}
.lower .contact-link {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 20px 40px;
  align-self: stretch;
}
.lower .contact-link .link-item {
  min-width: 37.4rem;
  display: flex;
  padding: 30px 10px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1 0 0;
  align-self: stretch;
  border-radius: 20px;
  background: var(--color02-bg);
}
.lower .contact-link .link-item p {
  text-align: center;
}
.lower .contact-link .link-item .btn-tel {
  display: flex;
  align-items: center;
}
.lower .contact-link .link-item .btn-tel::before {
  content: "";
  width: 70px;
  height: 70px;
  background: url("../images/common/icon-sp.svg") no-repeat;
  background-size: 100% 100%;
}
.lower .contact-link .link-item .btn-tel .num {
  font-size: 2.8rem;
  font-weight: 700;
  color: var(--color01-txt);
}
.lower .contact-link .link-item .btn-nomal {
  font-size: 1.6rem;
  min-width: 26.2rem;
  gap: 0.8rem;
}
@media screen and (max-width: 1023px) {
  .lower .contact-link {
    gap: 10px;
    flex-direction: column;
  }
  .lower .contact-link .link-item {
    width: min(100%, 52rem);
    margin: 0 auto;
  }
}
.lower .footer-menu {
  padding: 40px;
  background: var(--color01-bg);
}
.lower .footer-menu .footer-menu-list {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: flex-start;
}
.lower .footer-menu .footer-menu-list .list-item {
  width: min((100% - 50px) / 3, 383px);
}
.lower .footer-menu .footer-menu-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 25px 13px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  background: var(--white-bg);
  border-radius: 20px;
  border: 3px solid var(--white-line);
}
.lower .footer-menu .footer-menu-list .list-item a span {
  display: inline-block;
}
.lower .footer-menu .footer-menu-list .list-item a span.icon {
  width: min(100%, 73px);
}
.lower .footer-menu .footer-menu-list .list-item a span.txt {
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  flex-shrink: 0;
}
.lower .footer-menu .footer-menu-list .list-item a:hover {
  border: 3px solid var(--color01-line);
}
.lower .footer-menu .footer-menu-list .list-item.list-item-m {
  width: min((100% - 25px) / 2, 383px);
  flex-grow: 1;
}
.lower .footer-menu .footer-menu-list .list-item.list-item-m span.icon {
  width: 70px;
}
@media screen and (max-width: 1023px) {
  .lower .footer-menu {
    padding: 20px;
  }
  .lower .footer-menu .footer-menu-list {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
  }
  .lower .footer-menu .footer-menu-list .list-item {
    width: calc((100% - 16px) / 3);
  }
  .lower .footer-menu .footer-menu-list .list-item a {
    width: 100%;
    height: 100%;
    padding: 10px 5px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.8rem;
    background: var(--white-bg);
    border-radius: 10px;
    border: 3px solid var(--white-line);
  }
  .lower .footer-menu .footer-menu-list .list-item a span {
    display: inline-block;
  }
  .lower .footer-menu .footer-menu-list .list-item a span.icon {
    width: min(100%, 50px);
  }
  .lower .footer-menu .footer-menu-list .list-item a span.txt {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-align: center;
  }
  .lower .footer-menu .footer-menu-list .list-item a:hover {
    border: 3px solid var(--color01-line);
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m {
    width: calc((100% - 8px) / 2);
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m a {
    width: 100%;
    height: 100%;
    padding: 10px 5px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 0.8rem;
    background: var(--white-bg);
    border-radius: 10px;
    border: 3px solid var(--white-line);
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m a span {
    display: inline-block;
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m a span.icon {
    width: min(100%, 70px);
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m a span.txt {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-align: left;
    flex-shrink: 0;
  }
  .lower .footer-menu .footer-menu-list .list-item.list-item-m a:hover {
    border: 3px solid var(--color01-line);
  }
}
@media screen and (max-width: 767px) {
  .lower .footer-menu {
    padding: 30px 20px;
  }
  .lower .footer-menu .use-link-list {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    align-items: stretch;
  }
  .lower .footer-menu .use-link-list .list-item {
    width: min((100% - 10px) / 2, 38.3rem);
    flex-grow: unset;
  }
  .lower .footer-menu .use-link-list .list-item a {
    width: 100%;
    height: 100%;
    padding: 28px 8px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 16px;
    background: var(--white-bg);
    border-radius: 20px;
    border: 3px solid var(--white-line);
  }
  .lower .footer-menu .use-link-list .list-item a span {
    display: inline-block;
  }
  .lower .footer-menu .use-link-list .list-item a span.icon {
    width: min(100%, 73px);
  }
  .lower .footer-menu .use-link-list .list-item a span.txt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .lower .footer-menu .use-link-list .list-item a:hover {
    border: 3px solid var(--color01-line);
  }
}
.lower .btn-nomal {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  min-width: 30rem;
  color: var(--color01-txt);
  background: var(--white-bg);
  border: 3px solid var(--color01-line);
  padding: 1.2rem 2rem 1.2rem 3rem;
  gap: 1.6rem;
  border-radius: 40px;
}
.lower .btn-nomal span {
  display: inline-block;
}
.lower .btn-nomal span.icon {
  width: 3em;
}
.lower .btn-nomal::after {
  content: "";
  width: 0.625em;
  height: 0.8125em;
  background: var(--color06-bg);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.lower .btn-nomal:hover {
  color: var(--white-txt);
  background: var(--black);
  border: 3px solid var(--black);
}
.lower .btn-nomal:hover::after {
  content: "";
  width: 0.625em;
  height: 0.8125em;
  background: var(--white-bg);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.lower .btn-external {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  min-width: 30rem;
  color: var(--color01-txt);
  background: var(--white-bg);
  border: 3px solid var(--color01-line);
  padding: 1.2rem 2rem 1.2rem 3rem;
  gap: 1.6rem;
  border-radius: 40px;
}
.lower .btn-external span {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
}
.lower .btn-external span::after {
  content: "";
  display: inline-block;
  width: 1.6666666667em;
  height: 1.6666666667em;
  background: url("../images/common/icon-blank.svg") no-repeat;
  background-size: 100% 100%;
}
.lower .btn-external:hover {
  color: var(--white);
  border: 3px solid var(--black);
  background: var(--black);
}
.lower .btn-external:hover span::after {
  content: "";
  display: inline-block;
  width: 1.6666666667em;
  height: 1.6666666667em;
  background: url("../images/common/icon-blank_white.svg") no-repeat;
  background-size: 100% 100%;
}
.lower .btn-pdf-dl {
  color: #ff5247;
  font-size: 1.8rem;
  font-weight: 700;
  display: inline-block;
  max-width: 100%;
  min-width: 29.4rem;
  min-height: 8.8rem;
  padding: 0.5rem 2.4rem 0.5rem 1.6rem;
  border: 3px solid #ff5247;
  background: var(--white);
  border-radius: 2rem;
}
.lower .btn-pdf-dl span {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.6rem;
  white-space: nowrap;
  text-align: left;
}
.lower .btn-pdf-dl span::before {
  content: "";
  width: 7.2rem;
  height: 7.2rem;
  background: url("../images/common/icon_pdf.svg") no-repeat;
  background-size: 100% 100%;
}
.lower .btn-pdf-dl:hover {
  color: var(--white);
  background: #ff5247;
}
.lower .btn-pdf-dl:hover span {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.lower .btn-pdf-dl:hover span::before {
  content: "";
  width: 7.2rem;
  height: 7.2rem;
  background: url("../images/common/icon_pdf_white.svg") no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 1023px) {
  .lower .btn-pdf-dl {
    width: min(100%, 33.4rem);
  }
}
.lower .btn-word-dl {
  color: #1d409d;
  font-size: 1.8rem;
  font-weight: 700;
  display: inline-block;
  max-width: 100%;
  min-width: 29.4rem;
  min-height: 8.8rem;
  padding: 0.5rem 1.6rem;
  border: 3px solid #1d409d;
  background: var(--white);
  border-radius: 2rem;
}
.lower .btn-word-dl span {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.6rem;
  white-space: nowrap;
  text-align: left;
}
.lower .btn-word-dl span::before {
  content: "";
  width: 7.2rem;
  height: 7.2rem;
  background: url("../images/common/icon_word.svg") no-repeat;
  background-size: 100% 100%;
}
.lower .btn-word-dl:hover {
  color: var(--white);
  background: #1d409d;
}
.lower .btn-word-dl:hover span {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.lower .btn-word-dl:hover span::before {
  content: "";
  width: 7.2rem;
  height: 7.2rem;
  background: url("../images/common/icon_word_white.svg") no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 1023px) {
  .lower .btn-word-dl {
    width: min(100%, 33.4rem);
  }
}
.lower .txt-link {
  color: var(--color01);
  text-decoration: underline;
}
.lower .txt-link.pdf::after {
  content: "";
  width: 1.5555555556em;
  aspect-ratio: 28/27;
  background: url("../images/common/icon_pdf.svg") no-repeat;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.2777777778em;
}
.lower .txt-link.word::after {
  content: "";
  width: 1.5555555556em;
  aspect-ratio: 28/27;
  background: url("../images/common/icon_word.svg") no-repeat;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.2777777778em;
}
.lower .caption-list {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}
.lower .caption-list li {
  position: relative;
  padding-left: 1.25em;
}
.lower .caption-list li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.lower .dot-list {
  font-size: 1.8rem;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.lower .dot-list > li {
  position: relative;
  padding-left: 1.25em;
}
.lower .dot-list > li::before {
  position: absolute;
  top: 0.5em;
  left: 0;
  content: "";
  width: 0.6666666667em;
  height: 0.6666666667em;
  background: var(--darkmode-bg-color);
  border-radius: 50%;
}
.lower .dot-list ol {
  margin-left: 1.75em;
}
.lower .dot-list ol li {
  list-style: decimal;
  line-height: 1.8;
}
.lower .ol-list {
  margin-left: 1.75em;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.lower .ol-list .dot-list {
  line-height: 1.5;
  margin-top: 10px;
}
.lower .bold {
  font-weight: 700;
}

.bgcolor-black .lower .content-link {
  background: #999;
}
.bgcolor-black .lower .content-link .use-link-list .list-item a {
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .lower .content-link .use-link-list .list-item a:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .lower .content-link .info-list .list-item a {
  border: 3px solid var(--black);
  background: var(--black);
  color: var(--white);
}
.bgcolor-black .lower .content-link .info-list .list-item a:hover {
  background: var(--black);
  border: 3px solid var(--color01);
}
.bgcolor-black .lower .contact-link .link-item {
  background: var(--dark-bg-color);
}
.bgcolor-black .lower .footer-menu {
  background: #999;
}
.bgcolor-black .lower .footer-menu .footer-menu-list .list-item a {
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .lower .footer-menu .footer-menu-list .list-item a:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .lower .btn-nomal {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .lower .btn-nomal::after {
  background: var(--white);
}
.bgcolor-black .lower .btn-nomal:hover {
  color: var(--white);
  background: var(--color01);
  border: 3px solid var(--color01);
}
.bgcolor-black .lower .btn-nomal:hover::after {
  background: var(--white);
}
.bgcolor-black .lower .btn-external {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .lower .btn-external span::after {
  background: url("../images/common/icon-blank_white.svg") no-repeat;
  background-size: 100% 100%;
}
.bgcolor-black .lower .btn-external:hover {
  color: var(--white-txt);
  background: var(--color01);
  border: 3px solid var(--color01);
}
.bgcolor-black .lower .btn-external:hover span::after {
  background: url("../images/common/icon-blank_white.svg") no-repeat;
  background-size: 100% 100%;
}
.bgcolor-black .lower .dot-list > li::before {
  background: var(--white);
}

.breadcrumb {
  width: min(100%, 1280px);
  margin: 0 auto;
  padding: 16px 40px;
}
.breadcrumb ul {
  font-size: 1.5rem;
  line-height: 1.5;
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.6666666667em;
}
.breadcrumb ul li {
  position: relative;
  color: var(--color09-txt);
}
.breadcrumb ul li a {
  display: inline-block;
  color: var(--color09-txt);
}
.breadcrumb ul li a:hover {
  color: var(--color01-txt);
  text-decoration: underline;
}
.breadcrumb ul li span {
  display: inline-block;
  padding: 0.15em 0.5em;
}
.breadcrumb ul li.current {
  color: var(--white);
  background: var(--color03-bg);
  border-radius: 5px;
}
.breadcrumb ul li:not(:last-child) {
  display: inline-flex;
  align-items: center;
}
.breadcrumb ul li:not(:last-child)::after {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  content: "";
  width: 0.6em;
  height: 0.6em;
  border-right: 2px solid var(--color03-line);
  border-bottom: 2px solid var(--color03-line);
  transform: rotate(-45deg) translateY(-0.1em);
  margin-left: 0.6666666667em;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

.bgcolor-black .breadcrumb ul li {
  color: var(--white);
}
.bgcolor-black .breadcrumb ul li a {
  color: var(--white);
}
.bgcolor-black .breadcrumb ul li a:hover {
  color: var(--white);
  text-decoration: underline;
}
.bgcolor-black .breadcrumb ul li.current {
  color: var(--dark-bg-color);
  background: #ccc;
}
.bgcolor-black .breadcrumb ul li:not(:last-child)::after {
  border-right: 2px solid var(--table-line);
  border-bottom: 2px solid var(--table-line);
}

/* ページネーション */
.pagenation {
  width: 100%;
  padding: 20px;
}
.pagenation ul {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  list-style: none;
  gap: 10px;
}
.pagenation ul li a {
  font-size: 2rem;
  line-height: 1.2;
  color: var(--color01-txt);
  background: var(--white);
  border: 1px solid var(--color01-line);
  min-width: 2em;
  height: 2em;
  text-align: center;
  letter-spacing: normal;
  line-height: 2;
  display: block;
  color: var(--black);
}
.pagenation ul li a.active {
  color: var(--white);
  background: var(--color01-bg);
  border: 1px solid var(--color01-line);
}
.pagenation ul li a.to-list {
  width: auto;
  padding: 0 10px;
}
.pagenation ul li a:hover {
  color: var(--white);
  background: var(--color01-hover);
  border: 1px solid var(--color01-line);
}

/*=================================================
		保健関係の皆様
==================================================*/
.hoken #section-01 {
  padding: 40px 40px 80px;
}
.hoken #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 30px 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.hoken #section-01 .box-wrap .btn-box {
  width: 100%;
  text-align: center;
}
.hoken #section-01 .box-wrap .btn-box a {
  width: min(100%, 52.2rem);
}
@media screen and (max-width: 767px) {
  .hoken #section-01 {
    padding: 20px 20px 40px;
  }
}
.hoken .bg-content {
  background: var(--color02-bg);
}
.hoken .bg-content .content__inner {
  padding: 80px 40px;
}
.hoken .bg-content .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.hoken .bg-content .box-wrap .inbox {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.hoken .bg-content .box-wrap .materials-list {
  width: 100%;
  display: flex;
  align-content: flex-start;
  gap: 40px;
  align-self: stretch;
  flex-wrap: wrap;
}
.hoken .bg-content .box-wrap .materials-list .item-box {
  width: min((100% - 80px) / 3, 373px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: var(--white-bg);
  border-radius: 20px;
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 28px 25px;
  border-radius: 20px 20px 0 0;
  border: 3px solid var(--white-line);
  border-bottom: none;
  transition: 0.3s all;
  flex-grow: 1;
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail .ttl {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  min-height: 4.5em;
  display: flex;
  align-items: center;
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table {
  width: 100%;
  border: 1px solid var(--table-line);
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr th {
  color: var(--white);
  background: var(--table-th-bg);
  padding: 8px 20px;
  width: 100%;
  display: block;
  text-align: left;
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr th:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr td {
  color: var(--black);
  padding: 8px 20px;
  background: var(--table-td-bg);
  width: 100%;
  display: block;
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr td:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr:not(:last-child) th,
.hoken .bg-content .box-wrap .materials-list .item-box .item-detail table tr:not(:last-child) td {
  border-bottom: 1px solid var(--table-line);
}
.hoken .bg-content .box-wrap .materials-list .item-box .btn-detail {
  display: flex;
  padding: 10px 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  color: var(--white-txt);
  background: var(--color01-bg);
  border-radius: 0 0 20px 20px;
}
.hoken .bg-content .box-wrap .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01-line);
  border-bottom: none;
}
@media screen and (max-width: 1023px) {
  .hoken .bg-content .content__inner {
    padding: 30px 20px;
  }
  .hoken .bg-content .box-wrap {
    gap: 40px;
  }
  .hoken .bg-content .box-wrap .inbox {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .hoken .bg-content .box-wrap .materials-list {
    gap: 20px;
  }
  .hoken .bg-content .box-wrap .materials-list .item-box {
    width: 100%;
  }
  .hoken .bg-content .box-wrap .materials-list .item-box .item-detail .ttl {
    min-height: 2em;
  }
}
.hoken #section-04 .content__inner {
  padding: 80px 40px;
}
.hoken #section-04 .img-system {
  position: relative;
  width: min(100%, 1200px);
  margin: 0 auto;
  text-align: center;
}
.hoken #section-04 .img-system .btn-zoom {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 54px;
  aspect-ratio: 54/54;
  background: url("../images/common/icon-scoop.svg") no-repeat;
  background-size: 100% 100%;
  cursor: pointer;
}
@media screen and (max-width: 1023px) {
  .hoken #section-04 .content__inner {
    padding: 30px 20px;
  }
}

.bgcolor-black .hoken .bg-content {
  background: #999;
}
.bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box {
  background: var(--white-bg);
}
.bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box .item-detail {
  border: 3px solid #3c3f46;
  border-bottom: none;
}
.bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box .btn-detail {
  color: var(--white-txt);
  background: #3c3f46;
  border: 3px solid #3c3f46;
  border-top: none;
  transition: 0.3s all;
}
.bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01);
  border-bottom: none;
}
.bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box:hover .btn-detail {
  border: 3px solid var(--color01);
  border-top: none;
}
@media screen and (max-width: 1023px) {
  .bgcolor-black .hoken .bg-content .content__inner {
    padding: 30px 20px;
  }
  .bgcolor-black .hoken .bg-content .box-wrap {
    gap: 40px;
  }
  .bgcolor-black .hoken .bg-content .box-wrap .inbox {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .bgcolor-black .hoken .bg-content .box-wrap .materials-list {
    gap: 20px;
  }
  .bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box {
    width: 100%;
  }
  .bgcolor-black .hoken .bg-content .box-wrap .materials-list .item-box .item-detail .ttl {
    min-height: 2em;
  }
}

.hoken-detail .content-detail {
  padding: 40px 40px 80px;
}
.hoken-detail .detail-box {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
.hoken-detail .detail-box .table-box {
  width: 100%;
}
.hoken-detail .detail-box .table-box table {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
  font-feature-settings: "palt" on;
}
.hoken-detail .detail-box .table-box table tr th {
  width: 20rem;
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  vertical-align: middle;
  text-align: left;
  border-bottom: 1px solid var(--table-line);
}
.hoken-detail .detail-box .table-box table tr td {
  width: calc(100% - 20rem);
  padding: 18px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
  text-align: left;
}
.hoken-detail .detail-box .table-box table tr td a {
  color: var(--color01);
  text-decoration: underline;
}
.hoken-detail .detail-box .table-box table tr td .inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.hoken-detail .detail-box .table-box table tr:last-child th,
.hoken-detail .detail-box .table-box table tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 1023px) {
  .hoken-detail .content-detail {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .hoken-detail .detail-box {
    width: 100%;
  }
  .hoken-detail .detail-box .table-box {
    width: 100%;
  }
  .hoken-detail .detail-box .table-box table {
    width: 100%;
  }
  .hoken-detail .detail-box .table-box table tr th {
    width: 100%;
    display: block;
  }
  .hoken-detail .detail-box .table-box table tr td {
    width: 100%;
    display: block;
  }
  .hoken-detail .detail-box .table-box table tr:last-child th {
    border-bottom: 1px solid var(--table-line);
  }
  .hoken-detail .detail-box .table-box table tr:last-child td {
    border-bottom: none;
  }
}

/*=================================================
		保健関係の皆様
==================================================*/
.shiryo #section-01 {
  padding: 40px 40px 80px;
}
.shiryo #section-01 .text-box {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.shiryo #section-01 .text-box .inner {
  padding: 20px 0;
}
.shiryo #section-01 .text-box .inner ul.dot-list {
  align-items: center;
}
.shiryo #section-01 .text-box .btn-box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  text-align: center;
}
.shiryo #section-01 .text-box .btn-box a {
  width: min(100%, 42.2rem);
}
@media screen and (max-width: 1023px) {
  .shiryo #section-01 {
    padding: 20px 20px 40px;
  }
  .shiryo #section-01 .text-box {
    width: min(100%, 1200px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    align-self: stretch;
  }
  .shiryo #section-01 .text-box .inner {
    padding: 0;
  }
  .shiryo #section-01 .text-box .inner ul.dot-list {
    align-items: flex-start;
  }
}
.shiryo #section-02 .content__inner {
  padding: 80px 40px;
}
.shiryo #section-02 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.shiryo #section-02 .box-wrap .inbox {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.shiryo #section-02 .box-wrap .table-box {
  width: 100%;
}
.shiryo #section-02 .box-wrap .table-box table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.shiryo #section-02 .box-wrap .table-box table tr th {
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  text-align: left;
  vertical-align: middle;
}
.shiryo #section-02 .box-wrap .table-box table tr th:not(:last-child) {
  border-right: 1px solid #ccc;
}
.shiryo #section-02 .box-wrap .table-box table tr td {
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
}
.shiryo #section-02 .box-wrap .table-box table tr td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.shiryo #section-02 .box-wrap .table-box table tr .w200 {
  width: 20rem;
}
.shiryo #section-02 .box-wrap .table-box table tr:not(:last-child) th,
.shiryo #section-02 .box-wrap .table-box table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 1023px) {
  .shiryo #section-02 .content__inner {
    padding: 30px 20px;
  }
  .shiryo #section-02 .box-wrap {
    gap: 60px;
  }
}
@media screen and (max-width: 767px) {
  .shiryo #section-02 .box-wrap .table-box table {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em;
    width: 100%;
  }
  .shiryo #section-02 .box-wrap .table-box table tr th {
    color: var(--white);
    padding: 8px 20px;
    text-align: left;
    vertical-align: middle;
  }
  .shiryo #section-02 .box-wrap .table-box table tr th:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .shiryo #section-02 .box-wrap .table-box table tr td {
    padding: 8px 20px;
  }
  .shiryo #section-02 .box-wrap .table-box table tr td:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .shiryo #section-02 .box-wrap .table-box table tr .w200 {
    width: 20rem;
  }
  .shiryo #section-02 .box-wrap .table-box table tr:not(:last-child) th,
  .shiryo #section-02 .box-wrap .table-box table tr:not(:last-child) td {
    border-bottom: 1px solid var(--table-line);
  }
  .shiryo #section-02 .box-wrap .table-box table.sp-col tr th,
  .shiryo #section-02 .box-wrap .table-box table.sp-col tr td {
    width: 100%;
    display: block;
  }
  .shiryo #section-02 .box-wrap .table-box.scroll-box table {
    width: -moz-max-content;
    width: max-content;
    white-space: nowrap;
  }
  .shiryo #section-02 .box-wrap .table-box.scroll-box table tr .w200 {
    width: -moz-fit-content;
    width: fit-content;
  }
}

/*=================================================
		健康関連教材貸出のご案内
==================================================*/
.kyouzai .table-box {
  width: 100%;
}
.kyouzai .table-box table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.kyouzai .table-box table tr th {
  width: 13rem;
  color: var(--white);
  padding: 8px 10px;
  background: var(--table-th-bg);
  text-align: left;
  vertical-align: middle;
}
.kyouzai .table-box table tr th:not(:last-child) {
  border-right: 1px solid #ccc;
}
.kyouzai .table-box table tr td {
  width: calc(100% - 13rem);
  padding: 8px 10px;
  color: var(--black);
  background: var(--table-td-bg);
}
.kyouzai .table-box table tr td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.kyouzai .table-box table tr:not(:last-child) th,
.kyouzai .table-box table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .kyouzai .table-box table {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em;
    width: 100%;
  }
  .kyouzai .table-box table tr th {
    width: 100%;
    display: block;
    color: var(--white);
    padding: 8px 20px;
    text-align: left;
  }
  .kyouzai .table-box table tr th:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .kyouzai .table-box table tr td {
    width: 100%;
    display: block;
    padding: 8px 20px;
  }
  .kyouzai .table-box table tr td:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .kyouzai .table-box table tr:not(:last-child) th,
  .kyouzai .table-box table tr:not(:last-child) td {
    border-bottom: 1px solid var(--table-line);
  }
}
.kyouzai #section-01 {
  padding: 80px 40px;
  background: var(--color02-bg);
}
.kyouzai #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.kyouzai #section-01 .materials-list {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.kyouzai #section-01 .materials-list .item-box {
  width: min((100% - 140px) / 8, 13.3rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: stretch;
}
.kyouzai #section-01 .materials-list .item-box .item-detail {
  display: flex;
  padding: 10px 0;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  border-radius: 20px 20px 0 0;
  border: 3px solid var(--white-line);
  border-bottom: none;
  background: var(--white-bg);
  transition: 0.3s all;
}
.kyouzai #section-01 .materials-list .item-box .item-detail .ttl {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  min-height: 3em;
  display: inline-flex;
  align-items: center;
}
.kyouzai #section-01 .materials-list .item-box .item-detail .icon {
  width: 70px;
}
.kyouzai #section-01 .materials-list .item-box .btn-detail {
  display: flex;
  padding: 10px 0;
  justify-content: center;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  border-radius: 0 0 20px 20px;
  background: var(--color01);
  color: var(--white);
}
.kyouzai #section-01 .materials-list .item-box .btn-detail .icon-pdf {
  display: inline-block;
  width: 2.8rem;
}
.kyouzai #section-01 .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01-line);
  border-bottom: none;
}
.kyouzai #section-01 .text-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  align-self: stretch;
}
.kyouzai #section-01 .text-box p {
  text-align: center;
}
@media screen and (max-width: 1300px) {
  .kyouzai #section-01 .materials-list {
    flex-wrap: wrap;
  }
  .kyouzai #section-01 .materials-list .item-box {
    width: calc((100% - 60px) / 4);
  }
}
@media screen and (max-width: 1023px) {
  .kyouzai #section-01 {
    padding: 30px 20px;
  }
  .kyouzai #section-01 .text-box p {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .kyouzai #section-01 .materials-list {
    flex-wrap: wrap;
  }
  .kyouzai #section-01 .materials-list .item-box {
    width: calc((100% - 20px) / 2);
  }
}
.kyouzai #section-02 {
  padding: 40px;
}
.kyouzai #section-02 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
@media screen and (max-width: 1023px) {
  .kyouzai #section-02 {
    padding: 30px 20px;
  }
}
.kyouzai #section-03 {
  padding: 80px 40px;
}
.kyouzai #section-03 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
@media screen and (max-width: 1023px) {
  .kyouzai #section-03 {
    padding: 30px 20px;
  }
  .kyouzai #section-03 .box-wrap {
    gap: 40px;
  }
}
.kyouzai .anchor-nav .anchor-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item {
  position: relative;
  width: calc((100% - 64px) / 3);
  display: flex;
  padding: 20px 10px 32px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--color01-bg);
  border: 3px solid var(--color01-txt);
  border-radius: 20px;
  color: var(--white-txt);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item span {
  display: inline-block;
  font-weight: 700;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item span.step {
  color: var(--color04);
  font-size: 1.8rem;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item span.icon {
  width: 70px;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item span.txt {
  font-size: 2.4rem;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  content: "";
  width: 22px;
  height: 15px;
  background: var(--color04-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--white-bg);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item:hover span.step {
  color: var(--color01-txt);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item:hover span.icon svg {
  fill: var(--color01-bg);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.kyouzai .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
@media screen and (max-width: 1023px) {
  .kyouzai .anchor-nav .anchor-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
  .kyouzai .anchor-nav .anchor-list .anchor-list-item {
    position: relative;
    width: calc((100% - 20px) / 3);
    display: flex;
    padding: 10px 4px 24px 4px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
    background: var(--color01-txt);
    border: 3px solid var(--color01-txt);
    border-radius: 20px;
    color: var(--white-txt);
  }
  .kyouzai .anchor-nav .anchor-list .anchor-list-item span {
    display: inline-block;
    font-weight: 700;
  }
  .kyouzai .anchor-nav .anchor-list .anchor-list-item span.step {
    font-size: 1.4rem;
  }
  .kyouzai .anchor-nav .anchor-list .anchor-list-item span.txt {
    font-size: 1.8rem;
    line-height: 1.3;
    min-height: 2.3em;
    display: inline-flex;
    align-items: center;
    text-align: center;
  }
  .kyouzai .anchor-nav .anchor-list .anchor-list-item::after {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    content: "";
    width: 14px;
    height: 10px;
    background: var(--color04-bg);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
.kyouzai .flow-step-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.kyouzai .flow-step-wrap .step-content {
  position: relative;
  width: 100%;
}
.kyouzai .flow-step-wrap .step-content.arrow::after {
  position: absolute;
  left: calc(50% - 20px);
  top: calc(100% + 28px);
  content: "";
  width: 40px;
  height: 28px;
  background: var(--darkmode-bg-color);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.kyouzai .flow-step-wrap .step-content .step-title {
  position: relative;
  width: 100%;
  border-radius: 10px 10px 0 0;
  background: var(--darkmode-bg-color);
  padding: 12px 24px 12px 134px;
}
.kyouzai .flow-step-wrap .step-content .step-title h2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 4px 20px;
  font-weight: 700;
}
.kyouzai .flow-step-wrap .step-content .step-title span {
  display: inline-block;
}
.kyouzai .flow-step-wrap .step-content .step-title span.step-number {
  color: var(--color04);
  font-size: 2.4rem;
}
.kyouzai .flow-step-wrap .step-content .step-title span.step-number > span {
  font-size: 3.2rem;
}
.kyouzai .flow-step-wrap .step-content .step-title span.ttl {
  color: var(--white-txt);
  font-size: 3.2rem;
}
.kyouzai .flow-step-wrap .step-content .step-title .icon {
  position: absolute;
  left: 2.4rem;
  top: -17px;
  width: 100px;
  aspect-ratio: 1/1;
  border: 4px solid var(--darkmode-bg-color);
  background: var(--white-bg);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.kyouzai .flow-step-wrap .step-content .step-title .icon svg {
  width: 100%;
  fill: var(--darkmode-bg-color);
}
.kyouzai .flow-step-wrap .step-content .step-detail {
  width: 100%;
  padding: 40px;
  border-radius: 0 0 10px 10px;
  border: 3px solid var(--darkmode-bg-color);
  background: var(--white-bg);
  border-top: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.kyouzai .flow-step-wrap .step-content .step-detail p {
  font-size: 1.8rem;
  line-height: 1.5;
}
.kyouzai .flow-step-wrap .step-content .step-detail p.title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.kyouzai .flow-step-wrap .step-content .step-detail .inbox {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px 0;
}
.kyouzai .flow-step-wrap .step-content .step-detail .inbox.pt0 {
  padding-top: 0;
}
.kyouzai .flow-step-wrap .step-content .step-detail .btn-box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.kyouzai .flow-step-wrap .step-content .contact-box {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  align-self: stretch;
}
.kyouzai .flow-step-wrap .step-content .contact-box .tel-box {
  display: flex;
  padding: 16px 20px;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--color01);
  width: min(100%, 540px);
}
.kyouzai .flow-step-wrap .step-content .contact-box .tel-box .icon {
  width: 70px;
}
.kyouzai .flow-step-wrap .step-content .contact-box .tel-box .text-box p {
  font-weight: 700;
}
.kyouzai .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
  font-size: 2.8rem;
  color: var(--color01-txt);
}
.kyouzai .flow-step-wrap .step-content .contact-box .btn-box a {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  width: min(100%, 540px);
  height: 100%;
  gap: 0.8rem;
  padding: 2rem;
}
.kyouzai .flow-step-wrap .step-content .contact-box .btn-box a .icon {
  width: 5.4rem;
}
.kyouzai .flow-step-wrap .step-content.cancel .step-title {
  background: var(--color05-bg);
  padding: 12px 24px;
}
.kyouzai .flow-step-wrap .step-content.cancel .step-detail {
  border-color: var(--color05-bg);
}
@media screen and (max-width: 1023px) {
  .kyouzai .flow-step-wrap {
    gap: 20px;
  }
  .kyouzai .flow-step-wrap .step-content .step-title {
    position: relative;
    width: 100%;
    border-radius: 10px 10px 0 0;
    background: var(--darkmode-bg-color);
    padding: 12px 12px 12px 90px;
    font-weight: 700;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span {
    display: inline-block;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span.step-number {
    color: var(--color04);
    font-size: 2.4rem;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span.step-number > span {
    font-size: 3.2rem;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span.ttl {
    color: var(--white-txt);
    font-size: 2.8rem;
  }
  .kyouzai .flow-step-wrap .step-content .step-title .icon {
    position: absolute;
    left: 10px;
    top: calc(50% - 35px);
    width: 70px;
    aspect-ratio: 1/1;
    border: 4px solid var(--darkmode-bg-color);
    background: var(--white-bg);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .kyouzai .flow-step-wrap .step-content .step-title .icon svg {
    width: 100%;
    height: auto;
    fill: var(--darkmode-bg-color);
  }
  .kyouzai .flow-step-wrap .step-content .step-detail {
    padding: 20px 17px;
  }
  .kyouzai .flow-step-wrap .step-content .step-detail .inbox {
    padding: 10px 0;
  }
  .kyouzai .flow-step-wrap .step-content .contact-box {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .kyouzai .flow-step-wrap .step-content .contact-box .tel-box {
    width: min(100%, 520px);
    display: flex;
    padding: 10px 0;
    align-items: center;
    gap: 0;
    flex: 1 0 0;
    border: 1px solid var(--color01);
  }
  .kyouzai .flow-step-wrap .step-content .contact-box .tel-box .icon {
    width: 70px;
  }
  .kyouzai .flow-step-wrap .step-content .contact-box .tel-box .text-box p {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .kyouzai .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
    font-size: 2.4rem;
    color: var(--color01-txt);
  }
  .kyouzai .flow-step-wrap .step-content .contact-box .btn-box {
    width: min(100%, 520px);
    text-align: center;
  }
  .kyouzai .flow-step-wrap .step-content.cancel .step-title {
    background: var(--color05-bg);
    padding: 12px 12px 12px 20px;
  }
  .kyouzai .flow-step-wrap .step-content.cancel .step-detail {
    border-color: var(--color05-bg);
  }
  .kyouzai .flow-step-wrap .step-content.arrow::after {
    position: absolute;
    left: calc(50% - 10px);
    top: calc(100% + 5px);
    content: "";
    width: 20px;
    height: 10px;
    background: var(--darkmode-bg-color);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
@media screen and (max-width: 767px) {
  .kyouzai .flow-step-wrap .step-content .step-title span.step-number {
    font-size: 2rem;
    width: 100%;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span.step-number > span {
    font-size: 2.4rem;
  }
  .kyouzai .flow-step-wrap .step-content .step-title span.ttl {
    font-size: 2.4rem;
  }
  .kyouzai .flow-step-wrap .step-content .step-detail .btn-box {
    justify-content: center;
  }
}

.kyouzai-detail-content .table-box {
  width: 100%;
}
.kyouzai-detail-content .table-box table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.kyouzai-detail-content .table-box table tr th {
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  text-align: left;
  vertical-align: middle;
}
.kyouzai-detail-content .table-box table tr th:not(:last-child) {
  border-right: 1px solid #ccc;
}
.kyouzai-detail-content .table-box table tr td {
  width: calc(100% - 13rem);
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
}
.kyouzai-detail-content .table-box table tr td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.kyouzai-detail-content .table-box table tr td.num {
  text-align: center;
}
.kyouzai-detail-content .table-box table tr .w100 {
  width: 10rem;
}
.kyouzai-detail-content .table-box table tr:not(:last-child) th,
.kyouzai-detail-content .table-box table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .kyouzai-detail-content .table-box table {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em;
    width: 100%;
  }
  .kyouzai-detail-content .table-box table tr th {
    color: var(--white);
    padding: 8px 20px;
    text-align: left;
    vertical-align: middle;
  }
  .kyouzai-detail-content .table-box table tr th:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .kyouzai-detail-content .table-box table tr td {
    padding: 8px 20px;
  }
  .kyouzai-detail-content .table-box table tr td:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .kyouzai-detail-content .table-box table tr:not(:last-child) th,
  .kyouzai-detail-content .table-box table tr:not(:last-child) td {
    border-bottom: 1px solid var(--table-line);
  }
}

.bgcolor-black .kyouzai #section-01 .materials-list .item-box .item-detail {
  background: var(--black);
  border: 3px solid var(--dark-bg-color);
  border-bottom: none;
}
.bgcolor-black .kyouzai #section-01 .materials-list .item-box .btn-detail {
  background: var(--dark-bg-color);
  border: 3px solid var(--dark-bg-color);
  border-top: none;
  transition: 0.3s all;
}
.bgcolor-black .kyouzai #section-01 .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01);
  border-bottom: none;
}
.bgcolor-black .kyouzai #section-01 .materials-list .item-box:hover .btn-detail {
  border: 3px solid var(--color01);
  border-top: none;
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item {
  background: var(--black);
  border: 3px solid var(--white);
  color: var(--white-txt);
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item span.step {
  color: var(--color04);
  font-size: 1.8rem;
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item span.icon {
  width: 70px;
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item::after {
  background: var(--color04-bg);
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.bgcolor-black .kyouzai .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
.bgcolor-black .kyouzai .flow-step-wrap .step-content .contact-box .tel-box {
  border: 1px solid var(--black);
  background: var(--black);
}
.bgcolor-black .kyouzai .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
  font-size: 2.8rem;
  color: var(--color01-txt);
}
.bgcolor-black .kyouzai .flow-step-wrap .step-content .contact-box .tel-box:hover {
  border: 1px solid var(--color01);
}
.bgcolor-black .kyouzai .flow-step-wrap .step-content .contact-box .btn-box .btn-nomal {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .kyouzai .flow-step-wrap .step-content .contact-box .btn-box .btn-nomal:hover {
  border: 3px solid var(--color01);
}

/*パネル等のテーブル一覧表タイプ*/
.kyouzai-detail-content-01 {
  padding: 40px;
}
.kyouzai-detail-content-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.kyouzai-detail-content-01 .box-wrap .inbox {
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
@media screen and (max-width: 1023px) {
  .kyouzai-detail-content-01 {
    padding: 30px 20px;
  }
  .kyouzai-detail-content-01 .box-wrap .inbox {
    padding: 20px 0;
  }
}

/*たばこ関連等のサムネイル一覧タイプ*/
.kyouzai-detail-content-02 {
  padding: 40px;
  background: var(--color02-bg);
}
.kyouzai-detail-content-02 .box-wrap {
  padding: 32px 0;
  width: min(100%, 1200px);
  margin: 0 auto;
}
.kyouzai-detail-content-02 .materials-list {
  display: flex;
  align-content: flex-start;
  gap: 32px;
  flex-wrap: wrap;
}
.kyouzai-detail-content-02 .materials-list .item-box {
  width: min((100% - 96px) / 4);
  padding: 16px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
  border-radius: 20px;
  border: 3px solid var(--white-bg);
  background: var(--white-bg);
  transition: 0.3s all;
}
.kyouzai-detail-content-02 .materials-list .item-box:hover {
  border: 3px solid var(--color01);
}
.kyouzai-detail-content-02 .materials-list .item-box .img-box img {
  width: 100%;
}
.kyouzai-detail-content-02 .materials-list .item-box .text-box p {
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .kyouzai-detail-content-02 {
    padding: 30px 20px;
  }
  .kyouzai-detail-content-02 .box-wrap {
    padding: 0;
  }
  .kyouzai-detail-content-02 .materials-list {
    gap: 20px;
  }
  .kyouzai-detail-content-02 .materials-list .item-box {
    width: min((100% - 40px) / 3);
  }
}
@media screen and (max-width: 767px) {
  .kyouzai-detail-content-02 .materials-list {
    gap: 20px;
  }
  .kyouzai-detail-content-02 .materials-list .item-box {
    width: min((100% - 20px) / 2);
    padding: 13px 5px;
  }
}

.bgcolor-black .kyouzai-detail-content-02 {
  background: var(--color02-bg);
}
.bgcolor-black .kyouzai-detail-content-02 .materials-list .item-box {
  border: 3px solid var(--black);
  background: var(--black);
}
.bgcolor-black .kyouzai-detail-content-02 .materials-list .item-box:hover {
  border: 3px solid var(--color01);
}

/*教材詳細*/
.kyouzai-item-detail {
  padding: 80px 40px;
}
.kyouzai-item-detail .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.kyouzai-item-detail .box-wrap .item-image {
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .kyouzai-item-detail {
    padding: 30px 20px;
  }
}

/*=================================================
		施設を予約する
==================================================*/
.shisetsu-detail .facility-detail-wrap {
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.shisetsu-detail .facility-detail-wrap h3 {
  color: var(--black-txt);
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.shisetsu-detail .facility-detail-wrap h3 span.caption {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
}
.shisetsu-detail .facility-detail-wrap .detail__inner {
  width: min(100%, 1200px);
}
.shisetsu-detail .facility-detail-wrap .main-image {
  padding: 40px 0 80px;
}
.shisetsu-detail .facility-detail-wrap .main-image .img-box {
  width: 100%;
  aspect-ratio: 1200/450;
}
.shisetsu-detail .facility-detail-wrap .main-image .img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.shisetsu-detail .facility-detail-wrap .col2-box {
  display: flex;
  gap: 80px;
  justify-content: center;
}
.shisetsu-detail .facility-detail-wrap .col2-box .floor-map {
  position: relative;
  width: min(39.1666666667%, 470px);
  align-content: center;
  text-align: center;
}
.shisetsu-detail .facility-detail-wrap .col2-box .floor-map .btn-zoom {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 54px;
  aspect-ratio: 54/54;
  background: url("../images/common/icon-scoop.svg") no-repeat;
  background-size: 100% 100%;
  cursor: pointer;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  flex: 1 0 0;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box {
  width: 100%;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
  font-feature-settings: "palt" on;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr th {
  width: 12rem;
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  vertical-align: middle;
  border-bottom: 1px solid var(--table-line);
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr td {
  width: calc(100% - 12rem);
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr td .inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr:last-child th,
.shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr:last-child td {
  border-bottom: none;
}
.shisetsu-detail .facility-detail-wrap .price-box {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 40px 0;
}
.shisetsu-detail .facility-detail-wrap .table-box {
  width: 100%;
}
.shisetsu-detail .facility-detail-wrap .table-box table {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-feature-settings: "palt" on;
  width: 100%;
  border: 1px solid var(--black);
}
.shisetsu-detail .facility-detail-wrap .table-box table tr th {
  padding: 8px 20px;
  color: var(--white);
  background: var(--table-th-bg);
}
.shisetsu-detail .facility-detail-wrap .table-box table tr th:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.shisetsu-detail .facility-detail-wrap .table-box table tr td {
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
}
.shisetsu-detail .facility-detail-wrap .table-box table tr td:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.shisetsu-detail .facility-detail-wrap .table-box table tr:last-child th,
.shisetsu-detail .facility-detail-wrap .table-box table tr:last-child td {
  border-bottom: none;
}
.shisetsu-detail .facility-detail-wrap .table-box table tr.bg th,
.shisetsu-detail .facility-detail-wrap .table-box table tr.bg td {
  background: #ffdddb;
}
.shisetsu-detail .facility-detail-wrap .table-box table.price-list01 {
  table-layout: fixed;
}
.shisetsu-detail .facility-detail-wrap .table-box table.price-list01 tr td {
  text-align: center;
}
.shisetsu-detail .facility-detail-wrap .table-box table.price-list02 tr td:not(:first-child) {
  text-align: center;
}
.shisetsu-detail .facility-detail-wrap .table-box table.price-list02 tr td .inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 1023px) {
  .shisetsu-detail .facility-detail-wrap {
    padding-left: 0;
    padding-right: 0;
  }
  .shisetsu-detail .facility-detail-wrap h3 {
    font-size: 2.4rem;
  }
  .shisetsu-detail .facility-detail-wrap .detail__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .shisetsu-detail .facility-detail-wrap .main-image {
    padding: 0;
    margin-bottom: 30px;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box {
    display: flex;
    flex-direction: column;
    gap: 30px;
    justify-content: flex-start;
    align-items: center;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .floor-map {
    position: relative;
    width: min(100%, 470px);
    align-content: center;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .floor-map .btn-zoom {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 54px;
    aspect-ratio: 54/54;
    background: url("../images/common/icon-scoop.svg") no-repeat;
    background-size: 100% 100%;
    cursor: pointer;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    flex: 1 0 0;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box {
    width: 100%;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table {
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
    width: 100%;
    border: 1px solid var(--black);
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr th {
    width: 12rem;
    color: var(--white);
    padding: 8px 12px;
    background: var(--table-th-bg);
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr td {
    width: calc(100% - 12rem);
    padding: 8px 12px;
    color: var(--black);
    background: var(--table-td-bg);
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr td .inner {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr:last-child th,
  .shisetsu-detail .facility-detail-wrap .col2-box .text-info .table-box table tr:last-child td {
    border-bottom: none;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box {
    overflow-x: auto;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table {
    min-width: 100%;
    width: -moz-max-content;
    width: max-content;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr th,
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr td {
    padding: 8px 12px;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr th.w160,
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr td.w160 {
    width: 16rem;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr th.w200,
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr td.w200 {
    width: 20rem;
  }
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr th.w250,
  .shisetsu-detail .facility-detail-wrap .table-box.scroll-box table tr td.w250 {
    width: 25rem;
  }
}
@media screen and (max-width: 767px) {
  .shisetsu-detail .facility-detail-wrap .main-image .img-box {
    width: 100%;
    aspect-ratio: unset;
  }
  .shisetsu-detail .facility-detail-wrap .main-image .img-box img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.shisetsu .btn-box,
.shisetsu-detail .btn-box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.shisetsu .btn-box.center,
.shisetsu-detail .btn-box.center {
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .shisetsu .btn-box,
  .shisetsu-detail .btn-box {
    justify-content: center;
  }
  .shisetsu .btn-box.sp100 .btn-nomal,
  .shisetsu-detail .btn-box.sp100 .btn-nomal {
    width: min(100%, 33.4rem);
  }
}
.shisetsu .facility-content .facility-wrap,
.shisetsu-detail .facility-content .facility-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding-top: 40px;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 80px;
}
.shisetsu .facility-content .facility-wrap .facility-list,
.shisetsu-detail .facility-content .facility-wrap .facility-list {
  position: relative;
  z-index: 0;
  width: min(100%, 1200px);
  padding: 32px;
  background: var(--color02-bg);
  border-radius: 30px;
  display: flex;
  gap: 32px;
}
.shisetsu .facility-content .facility-wrap .facility-list::before,
.shisetsu-detail .facility-content .facility-wrap .facility-list::before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 54px;
  height: 38px;
  background: var(--color02-bg);
  clip-path: polygon(50% 0, 50% 0, 100% 100%, 0 100%);
}
.shisetsu .facility-content .facility-wrap .facility-list .facility-item,
.shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item {
  display: flex;
  padding: 16px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: calc((100% - 96px) / 4);
  border-radius: 20px;
  border: 3px solid var(--white-line);
  background: var(--white-bg);
}
.shisetsu .facility-content .facility-wrap .facility-list .facility-item p,
.shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item p {
  text-align: center;
  color: var(--color07-txt);
}
.shisetsu .facility-content .facility-wrap .facility-list .facility-item p.ttl,
.shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item p.ttl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.shisetsu .facility-content .facility-wrap .facility-list .facility-item:hover,
.shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item:hover {
  border: 3px solid var(--color01-line);
}
.shisetsu .facility-content .facility-overview,
.shisetsu-detail .facility-content .facility-overview {
  padding: 80px 40px;
}
.shisetsu .facility-content .facility-overview .table-box,
.shisetsu-detail .facility-content .facility-overview .table-box {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.shisetsu .facility-content .facility-overview .table-box table,
.shisetsu-detail .facility-content .facility-overview .table-box table {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.shisetsu .facility-content .facility-overview .table-box table tr th,
.shisetsu-detail .facility-content .facility-overview .table-box table tr th {
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
}
.shisetsu .facility-content .facility-overview .table-box table tr th:not(:last-child),
.shisetsu-detail .facility-content .facility-overview .table-box table tr th:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.shisetsu .facility-content .facility-overview .table-box table tr th.nowrap,
.shisetsu-detail .facility-content .facility-overview .table-box table tr th.nowrap {
  min-width: 16rem;
  white-space: nowrap;
}
.shisetsu .facility-content .facility-overview .table-box table tr td,
.shisetsu-detail .facility-content .facility-overview .table-box table tr td {
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
}
.shisetsu .facility-content .facility-overview .table-box table tr td:not(:last-child),
.shisetsu-detail .facility-content .facility-overview .table-box table tr td:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.shisetsu .facility-content .facility-overview .table-box table tr:last-child th,
.shisetsu .facility-content .facility-overview .table-box table tr:last-child td,
.shisetsu-detail .facility-content .facility-overview .table-box table tr:last-child th,
.shisetsu-detail .facility-content .facility-overview .table-box table tr:last-child td {
  border-bottom: none;
}
.shisetsu .facility-content .infomation-box,
.shisetsu-detail .facility-content .infomation-box {
  padding: 80px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.shisetsu .facility-content .infomation-box .inner,
.shisetsu-detail .facility-content .infomation-box .inner {
  width: min(100%, 1200px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.shisetsu .facility-content .infomation-box .inner h3,
.shisetsu-detail .facility-content .infomation-box .inner h3 {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: var(--black-txt);
}
.shisetsu .facility-content .infomation-box .inner p.txt,
.shisetsu-detail .facility-content .infomation-box .inner p.txt {
  font-size: 1.8rem;
}
@media screen and (max-width: 1023px) {
  .shisetsu .facility-content .facility-wrap,
  .shisetsu-detail .facility-content .facility-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 30px;
  }
  .shisetsu .facility-content .facility-wrap .facility-list,
  .shisetsu-detail .facility-content .facility-wrap .facility-list {
    position: relative;
    z-index: 0;
    width: min(100%, 530px);
    padding: 20px;
    background: var(--color02-bg);
    border-radius: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .shisetsu .facility-content .facility-wrap .facility-list::before,
  .shisetsu-detail .facility-content .facility-wrap .facility-list::before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    width: 54px;
    height: 38px;
    background: var(--color02-bg);
    clip-path: polygon(50% 0, 50% 0, 100% 100%, 0 100%);
  }
  .shisetsu .facility-content .facility-wrap .facility-list .facility-item,
  .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item {
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: calc((100% - 10px) / 2);
    border-radius: 10px;
    border: 3px solid var(--white-line);
    background: var(--white-bg);
  }
  .shisetsu .facility-content .facility-wrap .facility-list .facility-item p,
  .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item p {
    text-align: center;
    color: var(--color07-txt);
  }
  .shisetsu .facility-content .facility-wrap .facility-list .facility-item p.ttl,
  .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item p.ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .shisetsu .facility-content .facility-overview,
  .shisetsu-detail .facility-content .facility-overview {
    padding: 30px 20px;
  }
  .shisetsu .facility-content .facility-overview .table-box.scroll-box,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box {
    overflow-x: auto;
  }
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table {
    min-width: 100%;
    width: -moz-max-content;
    width: max-content;
  }
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr th.w160,
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr td.w160,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr th.w160,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr td.w160 {
    width: 16rem;
  }
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr th.w200,
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr td.w200,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr th.w200,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr td.w200 {
    width: 20rem;
  }
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr th.w250,
  .shisetsu .facility-content .facility-overview .table-box.scroll-box table tr td.w250,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr th.w250,
  .shisetsu-detail .facility-content .facility-overview .table-box.scroll-box table tr td.w250 {
    width: 25rem;
  }
  .shisetsu .facility-content .infomation-box,
  .shisetsu-detail .facility-content .infomation-box {
    padding: 30px 20px;
  }
  .shisetsu .facility-content .infomation-box .inner,
  .shisetsu-detail .facility-content .infomation-box .inner {
    width: min(100%, 1200px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .shisetsu .facility-content .infomation-box .inner h3,
  .shisetsu-detail .facility-content .infomation-box .inner h3 {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
    color: var(--black-txt);
  }
}
.shisetsu .application-content,
.shisetsu-detail .application-content {
  width: 100%;
  padding: 40px;
  color: var(--white-txt);
  background: var(--color01-bg);
}
.shisetsu .application-content .content__inner,
.shisetsu-detail .application-content .content__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.shisetsu .application-content h3,
.shisetsu-detail .application-content h3 {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.05em;
}
.shisetsu .application-content .btn-box,
.shisetsu-detail .application-content .btn-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 20px;
}
.shisetsu .application-content .btn-box .btn-nomal:hover,
.shisetsu-detail .application-content .btn-box .btn-nomal:hover {
  background: var(--black);
  border: 3px solid var(--black);
}
@media screen and (max-width: 1023px) {
  .shisetsu .application-content h3,
  .shisetsu-detail .application-content h3 {
    font-size: 2.4rem;
  }
}

.bgcolor-black .shisetsu .facility-content .facility-wrap .facility-list,
.bgcolor-black .shisetsu-detail .facility-content .facility-wrap .facility-list {
  background: var(--color02-bg);
}
.bgcolor-black .shisetsu .facility-content .facility-wrap .facility-list::before,
.bgcolor-black .shisetsu-detail .facility-content .facility-wrap .facility-list::before {
  background: var(--color02-bg);
}
.bgcolor-black .shisetsu .facility-content .facility-wrap .facility-list .facility-item,
.bgcolor-black .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item {
  border: 3px solid var(--black);
  background: var(--black);
}
.bgcolor-black .shisetsu .facility-content .facility-wrap .facility-list .facility-item p,
.bgcolor-black .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item p {
  color: var(--white);
}
.bgcolor-black .shisetsu .facility-content .facility-wrap .facility-list .facility-item:hover,
.bgcolor-black .shisetsu-detail .facility-content .facility-wrap .facility-list .facility-item:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .shisetsu .application-content,
.bgcolor-black .shisetsu-detail .application-content {
  color: var(--white-txt);
  background: var(--black);
}
.bgcolor-black .shisetsu .application-content .btn-nomal,
.bgcolor-black .shisetsu-detail .application-content .btn-nomal {
  background: black;
  border-color: var(--white);
}
.bgcolor-black .shisetsu .application-content .btn-nomal::after,
.bgcolor-black .shisetsu-detail .application-content .btn-nomal::after {
  background: var(--white);
}
.bgcolor-black .shisetsu .application-content .btn-nomal:hover,
.bgcolor-black .shisetsu-detail .application-content .btn-nomal:hover {
  background: var(--color01);
  border-color: var(--color01);
}

/* ご利用までの流れ */
.flow .flow-content {
  padding: 40px 40px 80px;
}
@media screen and (max-width: 1023px) {
  .flow .flow-content {
    padding: 20px 20px 40px;
  }
}
.flow .anchor-nav {
  width: min(100%, 1200px);
  margin: 0 auto 80px;
}
.flow .anchor-nav .anchor-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.flow .anchor-nav .anchor-list .anchor-list-item {
  position: relative;
  width: calc((100% - 160px) / 6);
  display: flex;
  padding: 20px 10px 32px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--color01-bg);
  border: 3px solid var(--color01-txt);
  border-radius: 20px;
  color: var(--white-txt);
}
.flow .anchor-nav .anchor-list .anchor-list-item span {
  display: inline-block;
  font-weight: 700;
}
.flow .anchor-nav .anchor-list .anchor-list-item span.step {
  color: var(--color04);
  font-size: 1.8rem;
}
.flow .anchor-nav .anchor-list .anchor-list-item span.icon {
  width: 70px;
}
.flow .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.flow .anchor-nav .anchor-list .anchor-list-item span.txt {
  font-size: 2.4rem;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.flow .anchor-nav .anchor-list .anchor-list-item::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  content: "";
  width: 22px;
  height: 15px;
  background: var(--color04-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.flow .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--white-bg);
}
.flow .anchor-nav .anchor-list .anchor-list-item:hover span.step {
  color: var(--color01-txt);
}
.flow .anchor-nav .anchor-list .anchor-list-item:hover span.icon svg {
  fill: var(--color01-bg);
}
.flow .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.flow .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
@media screen and (max-width: 1023px) {
  .flow .anchor-nav {
    margin: 0 auto 40px;
  }
  .flow .anchor-nav .anchor-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
  .flow .anchor-nav .anchor-list .anchor-list-item {
    position: relative;
    width: calc((100% - 20px) / 3);
    display: flex;
    padding: 10px 4px 24px 4px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
    background: var(--color01-txt);
    border: 3px solid var(--color01-txt);
    border-radius: 20px;
    color: var(--white-txt);
  }
  .flow .anchor-nav .anchor-list .anchor-list-item span {
    display: inline-block;
    font-weight: 700;
  }
  .flow .anchor-nav .anchor-list .anchor-list-item span.step {
    font-size: 1.4rem;
  }
  .flow .anchor-nav .anchor-list .anchor-list-item span.txt {
    font-size: 1.8rem;
    line-height: 1.3;
    min-height: 2.3em;
    display: inline-flex;
    align-items: center;
    text-align: center;
  }
  .flow .anchor-nav .anchor-list .anchor-list-item::after {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    content: "";
    width: 14px;
    height: 10px;
    background: var(--color04-bg);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
.flow .flow-step-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.flow .flow-step-wrap .step-content {
  position: relative;
  width: 100%;
}
.flow .flow-step-wrap .step-content.arrow::after {
  position: absolute;
  left: calc(50% - 20px);
  top: calc(100% + 28px);
  content: "";
  width: 40px;
  height: 28px;
  background: var(--darkmode-bg-color);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.flow .flow-step-wrap .step-content .step-title {
  position: relative;
  width: 100%;
  border-radius: 10px 10px 0 0;
  background: var(--darkmode-bg-color);
  padding: 12px 24px 12px 134px;
}
.flow .flow-step-wrap .step-content .step-title h2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 4px 20px;
  font-weight: 700;
}
.flow .flow-step-wrap .step-content .step-title span {
  display: inline-block;
}
.flow .flow-step-wrap .step-content .step-title span.step-number {
  color: var(--color04);
  font-size: 2.4rem;
}
.flow .flow-step-wrap .step-content .step-title span.step-number > span {
  font-size: 3.2rem;
}
.flow .flow-step-wrap .step-content .step-title span.ttl {
  color: var(--white-txt);
  font-size: 3.2rem;
}
.flow .flow-step-wrap .step-content .step-title .icon {
  position: absolute;
  left: 2.4rem;
  top: -17px;
  width: 100px;
  aspect-ratio: 1/1;
  border: 4px solid var(--darkmode-bg-color);
  background: var(--white-bg);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.flow .flow-step-wrap .step-content .step-title .icon svg {
  width: 100%;
  fill: var(--darkmode-bg-color);
}
.flow .flow-step-wrap .step-content .step-detail {
  width: 100%;
  padding: 40px;
  border-radius: 0 0 10px 10px;
  border: 3px solid var(--darkmode-bg-color);
  background: var(--white-bg);
  border-top: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.flow .flow-step-wrap .step-content .step-detail p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.flow .flow-step-wrap .step-content .step-detail p.title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.flow .flow-step-wrap .step-content .step-detail .inbox {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px 0;
}
.flow .flow-step-wrap .step-content .step-detail .inbox.pt0 {
  padding-top: 0;
}
.flow .flow-step-wrap .step-content .contact-box {
  display: flex;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.flow .flow-step-wrap .step-content .contact-box .tel-box {
  display: flex;
  padding: 16px 20px;
  align-items: center;
  gap: 10px;
  flex: 1 0 0;
  border: 1px solid var(--color01);
}
.flow .flow-step-wrap .step-content .contact-box .tel-box .icon {
  width: 70px;
}
.flow .flow-step-wrap .step-content .contact-box .tel-box .text-box p {
  font-weight: 700;
}
.flow .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
  font-size: 2.8rem;
  color: var(--color01-txt);
}
.flow .flow-step-wrap .step-content .contact-box .btn-box {
  flex: 1 0 0;
}
.flow .flow-step-wrap .step-content .contact-box .btn-box a {
  width: min(100%, 520px);
}
.flow .flow-step-wrap .step-content.cancel .step-title {
  background: var(--color05-bg);
  padding: 12px 24px;
}
.flow .flow-step-wrap .step-content.cancel .step-detail {
  border-color: var(--color05-bg);
}
@media screen and (max-width: 1023px) {
  .flow .flow-step-wrap {
    gap: 20px;
  }
  .flow .flow-step-wrap .step-content .step-title {
    position: relative;
    width: 100%;
    border-radius: 10px 10px 0 0;
    background: var(--darkmode-bg-color);
    padding: 12px 12px 12px 90px;
    font-weight: 700;
  }
  .flow .flow-step-wrap .step-content .step-title span {
    display: inline-block;
  }
  .flow .flow-step-wrap .step-content .step-title span.step-number {
    color: var(--color04);
    font-size: 2.4rem;
  }
  .flow .flow-step-wrap .step-content .step-title span.step-number > span {
    font-size: 3.2rem;
  }
  .flow .flow-step-wrap .step-content .step-title span.ttl {
    color: var(--white-txt);
    font-size: 2.8rem;
  }
  .flow .flow-step-wrap .step-content .step-title .icon {
    position: absolute;
    left: 10px;
    top: calc(50% - 35px);
    width: 70px;
    aspect-ratio: 1/1;
    border: 4px solid var(--darkmode-bg-color);
    background: var(--white-bg);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .flow .flow-step-wrap .step-content .step-title .icon svg {
    width: 100%;
    height: auto;
    fill: var(--darkmode-bg-color);
  }
  .flow .flow-step-wrap .step-content .step-detail {
    padding: 20px 17px;
  }
  .flow .flow-step-wrap .step-content .step-detail .inbox {
    padding: 10px 0;
  }
  .flow .flow-step-wrap .step-content .contact-box {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .flow .flow-step-wrap .step-content .contact-box .tel-box {
    width: min(100%, 520px);
    display: flex;
    padding: 10px 0;
    align-items: center;
    gap: 0;
    flex: 1 0 0;
    border: 1px solid var(--color01);
  }
  .flow .flow-step-wrap .step-content .contact-box .tel-box .icon {
    width: 70px;
  }
  .flow .flow-step-wrap .step-content .contact-box .tel-box .text-box p {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .flow .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
    font-size: 2.4rem;
    color: var(--color01-txt);
  }
  .flow .flow-step-wrap .step-content .contact-box .btn-box {
    width: min(100%, 520px);
    text-align: center;
  }
  .flow .flow-step-wrap .step-content.cancel .step-title {
    background: var(--color05-bg);
    padding: 12px 12px 12px 20px;
  }
  .flow .flow-step-wrap .step-content.cancel .step-detail {
    border-color: var(--color05-bg);
  }
  .flow .flow-step-wrap .step-content.arrow::after {
    position: absolute;
    left: calc(50% - 10px);
    top: calc(100% + 5px);
    content: "";
    width: 20px;
    height: 10px;
    background: var(--darkmode-bg-color);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
@media screen and (max-width: 767px) {
  .flow .flow-step-wrap .step-content .step-title span.step-number {
    width: 100%;
    font-size: 2rem;
  }
  .flow .flow-step-wrap .step-content .step-title span.step-number > span {
    font-size: 2.4rem;
  }
  .flow .flow-step-wrap .step-content .step-title span.ttl {
    font-size: 2.4rem;
  }
}
.flow .precautions-content {
  padding: 80px 40px;
}
.flow .precautions-content p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.flow .precautions-content .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.flow .precautions-content .box-wrap .inbox {
  width: 100%;
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.flow .precautions-content .bnr-parking {
  width: min(100%, 38.3rem);
  display: flex;
  padding: 5px 10px;
  align-items: center;
  justify-content: center;
  gap: 16px;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  border-radius: 10px;
  border: 3px solid var(--color01-line);
  background: var(--white-bg);
}
.flow .precautions-content .bnr-parking span {
  display: inline-block;
}
.flow .precautions-content .bnr-parking span.icon {
  width: 7.3rem;
}
.flow .precautions-content .bnr-parking span.txt01 {
  color: var(--red-color);
}
@media screen and (max-width: 1023px) {
  .flow .precautions-content {
    padding: 30px 20px;
  }
  .flow .precautions-content .box-wrap {
    margin: 20px auto 0;
  }
  .flow .precautions-content .box-wrap .inbox {
    padding: 20px 0;
    gap: 10px;
  }
}
.flow .faq-content {
  background: var(--color02-bg);
  padding: 80px 40px;
  margin-bottom: 80px;
}
.flow .faq-content .faq-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.flow .faq-content .faq-wrap .faq-list {
  width: 100%;
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.flow .faq-content .faq-wrap .faq-list .faq-item {
  background: var(--white-bg);
  border-radius: 10px;
  padding: 17px 37px;
  display: flex;
  flex-direction: column;
  border: 3px solid var(--white-line);
  transition: 0.3s all;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt {
  display: flex;
  justify-content: flex-start;
  align-items: first center;
  gap: 10px;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt::before {
  font-size: 4.8rem;
  content: "Q";
  font-weight: 400;
  color: var(--color01-txt);
  flex-shrink: 0;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .btn-icon {
  content: "";
  width: 50px;
  height: 50px;
  background: var(--white);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .btn-icon::after {
  content: "";
  width: 20px;
  height: 15px;
  background: var(--color01);
  clip-path: polygon(0% 10%, 100% 10%, 50% 90%, 50% 90%);
  transition: 0.3s all;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-title.is-active .btn-icon::after {
  transform: scaleY(-1);
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-txt {
  display: none;
  padding-top: 20px;
}
.flow .faq-content .faq-wrap .faq-list .faq-item .faq-txt p {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
.flow .faq-content .faq-wrap .faq-list .faq-item:hover {
  border: 3px solid var(--color01-line);
}
@media screen and (max-width: 1023px) {
  .flow .faq-content {
    padding: 30px 20px;
  }
  .flow .faq-content .faq-wrap .faq-list {
    width: 100%;
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item {
    background: var(--white-bg);
    border-radius: 10px;
    padding: 17px 17px;
    display: flex;
    flex-direction: column;
    border: 3px solid var(--white-line);
    transition: 0.3s all;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt {
    display: flex;
    justify-content: flex-start;
    align-items: first center;
    gap: 10px;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt::before {
    font-size: 4rem;
    content: "Q";
    font-weight: 400;
    color: var(--color01-txt);
    flex-shrink: 0;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .btn-icon {
    content: "";
    width: 50px;
    height: 50px;
    background: var(--white);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .btn-icon::after {
    content: "";
    width: 20px;
    height: 15px;
    background: var(--color01);
    clip-path: polygon(0% 10%, 100% 10%, 50% 90%, 50% 90%);
    transition: 0.3s all;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title.is-active .btn-icon::after {
    transform: scaleY(-1);
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-txt {
    display: none;
    padding-top: 20px;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-txt p {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item:hover {
    border: 3px solid var(--color01-line);
  }
}
@media screen and (max-width: 767px) {
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  .flow .faq-content .faq-wrap .faq-list .faq-item .faq-title .q-txt::before {
    font-size: 3.2rem;
    content: "Q";
    font-weight: 400;
    color: var(--color01-txt);
    flex-shrink: 0;
  }
}

.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item {
  background: var(--black);
  border: 3px solid var(--white);
  color: var(--white-txt);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item span.step {
  color: var(--color04);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item::after {
  background: var(--color04-bg);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--black);
  border: 3px solid var(--color01);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item:hover span.step {
  color: var(--color01-txt);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item:hover span.icon svg {
  fill: var(--white);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.bgcolor-black .flow .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--white);
}
.bgcolor-black .flow .flow-step-wrap .step-content.arrow::after {
  background: var(--darkmode-bg-color);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-title {
  background: var(--darkmode-bg-color);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-title span.step-number {
  color: var(--color04);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-title span.ttl {
  color: var(--white-txt);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-title .icon {
  border: 4px solid var(--darkmode-bg-color);
  background: var(--white-bg);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-title .icon svg {
  width: 100%;
  fill: var(--darkmode-bg-color);
}
.bgcolor-black .flow .flow-step-wrap .step-content .step-detail {
  border: 3px solid var(--darkmode-bg-color);
  background: var(--white-bg);
}
.bgcolor-black .flow .flow-step-wrap .step-content .contact-box .tel-box {
  border: 1px solid var(--color01);
  background: var(--black);
}
.bgcolor-black .flow .flow-step-wrap .step-content.cancel .step-title {
  background: var(--color05-bg);
}
.bgcolor-black .flow .flow-step-wrap .step-content.cancel .step-detail {
  border-color: var(--color05-bg);
}
@media screen and (max-width: 1023px) {
  .bgcolor-black .flow .flow-step-wrap .step-content .step-title {
    background: var(--darkmode-bg-color);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .step-title span.step-number {
    color: var(--color04);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .step-title span.ttl {
    color: var(--white-txt);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .step-title .icon {
    border: 4px solid var(--darkmode-bg-color);
    background: var(--white-bg);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .step-title .icon svg {
    fill: var(--darkmode-bg-color);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .contact-box .tel-box {
    border: 1px solid var(--color01);
    background: var(--black);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content .contact-box .tel-box .text-box p.tel-num {
    color: var(--color01-txt);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content.cancel .step-title {
    background: var(--color05-bg);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content.cancel .step-detail {
    border-color: var(--color05-bg);
  }
  .bgcolor-black .flow .flow-step-wrap .step-content.arrow::after {
    background: var(--darkmode-bg-color);
  }
}
.bgcolor-black .flow .precautions-content .bnr-parking {
  border: 3px solid var(--color01-line);
  background: var(--black);
}
.bgcolor-black .flow .precautions-content .bnr-parking span.txt01 {
  color: var(--red-color);
}

/* ご利用案内 */
.info .anchor-nav {
  width: min(100%, 1200px);
  margin: 0 auto 80px;
}
.info .anchor-nav .anchor-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.info .anchor-nav .anchor-list .anchor-list-item {
  position: relative;
  width: calc((100% - 32px) / 2);
  display: flex;
  padding: 10px 10px 24px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--color01-bg);
  border: 3px solid var(--color01-txt);
  border-radius: 20px;
  color: var(--white-txt);
}
.info .anchor-nav .anchor-list .anchor-list-item span {
  display: inline-block;
  font-weight: 700;
}
.info .anchor-nav .anchor-list .anchor-list-item span.txt {
  font-size: 2.4rem;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.info .anchor-nav .anchor-list .anchor-list-item::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  content: "";
  width: 20px;
  height: 15px;
  background: var(--color04-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.info .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--white-bg);
}
.info .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.info .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
@media screen and (max-width: 1023px) {
  .info .anchor-nav {
    margin: 0 auto 40px;
  }
  .info .anchor-nav .anchor-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
    padding: 0 20px;
  }
  .info .anchor-nav .anchor-list .anchor-list-item {
    position: relative;
    width: calc((100% - 20px) / 2);
    display: flex;
    padding: 5px 4px 13px 4px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
    background: var(--color01-txt);
    border: 3px solid var(--color01-txt);
    border-radius: 20px;
    color: var(--white-txt);
  }
  .info .anchor-nav .anchor-list .anchor-list-item span {
    display: inline-block;
    font-weight: 700;
  }
  .info .anchor-nav .anchor-list .anchor-list-item span.step {
    font-size: 1.4rem;
  }
  .info .anchor-nav .anchor-list .anchor-list-item span.txt {
    font-size: 1.8rem;
    line-height: 1.3;
    min-height: 2.3em;
    display: inline-flex;
    align-items: center;
    text-align: center;
  }
  .info .anchor-nav .anchor-list .anchor-list-item::after {
    position: absolute;
    left: 50%;
    bottom: 7px;
    transform: translateX(-50%);
    content: "";
    width: 14px;
    height: 10px;
    background: var(--color04-bg);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
.info .fee-content .content__inner {
  padding: 40px;
}
.info .fee-content .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.info .fee-content .box-wrap .top-text-box p {
  text-align: center;
}
.info .fee-content .box-wrap .inbox {
  width: 100%;
  display: flex;
  padding: 40px 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.info .fee-content .box-wrap .inbox.contact {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.info .fee-content .box-wrap .inbox.contact .address-box {
  width: min(100%, 52.6rem);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--white-txt);
  background-color: var(--color01-bg);
  text-align: center;
}
.info .fee-content .box-wrap .inbox.contact .address-box .ttl {
  font-size: 2.4rem;
  font-weight: 700;
}
.info .fee-content .box-wrap .inbox.contact .address-box .tel {
  font-size: 1.8rem;
}
.info .fee-content .table-box {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.info .fee-content .table-box table {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.info .fee-content .table-box table tr .w150 {
  width: 15rem;
}
.info .fee-content .table-box table tr .num {
  text-align: center;
}
.info .fee-content .table-box table tr th {
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  vertical-align: middle;
}
.info .fee-content .table-box table tr th:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.info .fee-content .table-box table tr th.nowrap {
  min-width: 16rem;
  white-space: nowrap;
}
.info .fee-content .table-box table tr td {
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
}
.info .fee-content .table-box table tr td:not(:last-child) {
  border-right: 1px solid var(--table-line);
}
.info .fee-content .table-box table tr td:not(:first-child) {
  text-align: center;
}
.info .fee-content .table-box table tr td.txt {
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}
.info .fee-content .table-box table tr:last-child th,
.info .fee-content .table-box table tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 1023px) {
  .info .fee-content .content__inner {
    padding: 30px 20px;
  }
  .info .fee-content .box-wrap .top-text-box p {
    text-align: left;
  }
  .info .fee-content .box-wrap .inbox.contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  .info .fee-content .box-wrap .inbox.contact .address-box {
    width: min(100%, 29.3rem);
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--white-txt);
    background-color: var(--color01-txt);
  }
  .info .fee-content .box-wrap .inbox.contact .address-box .ttl {
    font-size: 2rem;
  }
  .info .fee-content .box-wrap .inbox.contact .address-box .tel {
    font-size: 1.8rem;
  }
  .info .fee-content .table-box table tr .w150 {
    width: 10rem;
  }
  .info .fee-content .table-box table tr th,
  .info .fee-content .table-box table tr td {
    padding: 8px 12px;
  }
  .info .fee-content .table-box.scroll-box {
    overflow-x: auto;
  }
  .info .fee-content .table-box.scroll-box table {
    min-width: 100%;
    width: -moz-max-content;
    width: max-content;
  }
}
.info .application-documents-content {
  width: 100%;
  background: var(--color02-bg);
}
.info .application-documents-content .content__inner {
  padding: 40px;
}
.info .application-documents-content .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.info .application-documents-content .box-wrap .top-text-box p {
  text-align: center;
}
.info .application-documents-content .box-wrap .inbox {
  width: 100%;
  display: flex;
  padding: 40px 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.info .application-documents-content .box-wrap .documents-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 40px;
  align-self: stretch;
}
.info .application-documents-content .box-wrap .documents-list .list-item {
  width: min((100% - 80px) / 3, 37.4rem);
  display: flex;
  padding: 28px 17px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  align-self: stretch;
  border-radius: 20px;
  border: 3px solid var(--white-line);
  background: var(--white-bg);
}
.info .application-documents-content .box-wrap .documents-list .list-item .ttl {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  min-height: 3em;
}
.info .application-documents-content .box-wrap .documents-list .list-item .btn-box {
  justify-content: center;
}
.info .application-documents-content .box-wrap .documents-list .list-item .btn-box .btn-pdf-dl,
.info .application-documents-content .box-wrap .documents-list .list-item .btn-box .btn-word-dl {
  min-width: unset;
  width: min(100%, 29.4rem);
}
@media screen and (max-width: 1023px) {
  .info .application-documents-content .content__inner {
    padding: 30px 20px;
  }
  .info .application-documents-content .box-wrap {
    width: min(100%, 1200px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .info .application-documents-content .box-wrap .top-text-box p {
    text-align: left;
  }
  .info .application-documents-content .box-wrap .inbox {
    width: 100%;
    display: flex;
    padding: 40px 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .info .application-documents-content .box-wrap .documents-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 10px;
    align-self: stretch;
  }
  .info .application-documents-content .box-wrap .documents-list .list-item {
    width: 100%;
    display: flex;
    padding: 20px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    align-self: stretch;
    border-radius: 20px;
    border: 3px solid var(--white-line);
    background: var(--white-bg);
  }
  .info .application-documents-content .box-wrap .documents-list .list-item .ttl {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    min-height: unset;
  }
  .info .application-documents-content .box-wrap .documents-list .list-item .btn-box {
    justify-content: center;
  }
  .info .application-documents-content .box-wrap .documents-list .list-item .btn-box a {
    max-width: 100%;
  }
}
.info #contact-us .content__inner {
  padding: 40px;
}
.info #contact-us .contact-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.info #contact-us .contact-box .content-title-center {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
}
.info #contact-us .contact-box .content-title-center::after {
  content: "";
  width: 40px;
  height: 28px;
  background: var(--color02-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.info #contact-us .contact-box .address-box {
  width: min(100%, 58.2rem);
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--white-txt);
  background-color: var(--color01-bg);
  text-align: center;
}
.info #contact-us .contact-box .address-box .ttl {
  font-size: 2.4rem;
  font-weight: 700;
}
.info #contact-us .contact-box .address-box .tel {
  font-size: 1.8rem;
}
.info #contact-us .contact-box .address-box .mail a {
  text-decoration: underline;
}
@media screen and (max-width: 1023px) {
  .info #contact-us .content__inner {
    padding: 30px 20px;
  }
}

.bgcolor-black .info .anchor-nav .anchor-list .anchor-list-item {
  background: var(--black);
  border: 3px solid var(--white);
  color: var(--white-txt);
}
.bgcolor-black .info .anchor-nav .anchor-list .anchor-list-item::after {
  background: var(--color04);
}
.bgcolor-black .info .anchor-nav .anchor-list .anchor-list-item:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .info .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.bgcolor-black .info .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--white);
}
.bgcolor-black .info .fee-content .box-wrap .inbox.contact .address-box {
  color: var(--white);
  background-color: var(--black);
}
.bgcolor-black .info .application-documents-content .box-wrap .documents-list .list-item {
  border: 3px solid var(--black);
  background: var(--black);
}
.bgcolor-black .info #contact-us .contact-box .content-title-center::after {
  background: var(--color02);
}
.bgcolor-black .info #contact-us .contact-box .address-box {
  color: var(--white);
  background-color: var(--black);
  text-align: center;
}

/*=================================================
		健康づくり情報
==================================================*/
.kenkoujoho #section-01 {
  padding: 40px;
}
.kenkoujoho #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.kenkoujoho #section-01 .box-wrap p {
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .kenkoujoho #section-01 {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .kenkoujoho #section-01 .box-wrap p {
    text-align: left;
  }
}
.kenkoujoho #section-02 {
  padding: 40px;
  background: var(--color02-bg);
}
.kenkoujoho #section-02 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  align-self: stretch;
}
.kenkoujoho #section-02 .box-wrap p {
  text-align: center;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap {
  display: flex;
  width: min(100%, 960px);
  margin: 0 auto;
  padding: 20px 0;
  flex-direction: column;
  align-items: flex-start;
  border-radius: 20px;
  background: var(--white-bg);
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list {
  width: 100%;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item {
  width: 100%;
  padding: 8px 40px;
  display: flex;
  align-items: first baseline;
  gap: 12px;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span {
  display: inline-block;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.date {
  width: 7.5em;
  font-size: 1.6rem;
  line-height: 1;
  color: var(--color09-txt);
  flex-shrink: 0;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.ttl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--color10-txt);
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.ttl::after {
  content: "";
  width: 2.8rem;
  height: 2.7rem;
  background: url("../images/common/icon_pdf.svg") no-repeat;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: bottom;
  margin-left: 1rem;
}
.kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item:hover {
  background: var(--color04);
}
@media screen and (max-width: 1023px) {
  .kenkoujoho #section-02 {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .kenkoujoho #section-02 .box-wrap p {
    text-align: left;
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap {
    display: flex;
    width: min(100%, 960px);
    margin: 0 auto;
    padding: 20px 0;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 20px;
    background: var(--white-bg);
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list {
    width: 100%;
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item {
    width: 100%;
    padding: 8px 40px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1.2rem;
    align-self: stretch;
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span {
    display: inline-block;
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.date {
    width: 100%;
    font-size: 1.6rem;
    color: var(--color09-txt);
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.ttl {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    color: var(--color10-txt);
  }
  .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item:hover {
    background: var(--color04);
  }
}

.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap {
  background: var(--black);
}
.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.date {
  color: var(--color09-txt);
}
.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item span.ttl {
  color: var(--color10-txt);
}
.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item:hover {
  background: var(--color02);
}
.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item:hover span.date {
  color: var(--color09);
}
.bgcolor-black .kenkoujoho #section-02 .box-wrap .display-list-wrap .display-list .list-item:hover span.ttl {
  color: var(--color10);
}

#pickup {
  padding: 80px 40px;
}
#pickup .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  align-content: flex-start;
  gap: 40px;
  flex-wrap: wrap;
}
@media screen and (max-width: 1023px) {
  #pickup {
    padding: 30px 20px;
  }
  #pickup .box-wrap {
    gap: 20px;
  }
}
#pickup .pickup-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
}
#pickup .pickup-list .pickup-item {
  width: min((100% - 40px) / 2, 37.8rem);
}
#pickup .pickup-list .pickup-item .item-box {
  display: block;
  width: 100%;
  border: 3px solid var(--black-line);
  background-color: var(--white-bg);
  border-radius: 20px;
  overflow: clip;
}
#pickup .pickup-list .pickup-item .item-box .bnr-image {
  width: 100%;
}
#pickup .pickup-list .pickup-item .item-box .bnr-image img {
  width: 100%;
}
#pickup .pickup-list .pickup-item .item-box .bnt-ttl {
  width: 100%;
  padding: 16px;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
#pickup .pickup-list .pickup-item:hover .item-box {
  border: 3px solid var(--color01-line);
  background: var(--color02-hover);
}
@media screen and (max-width: 1023px) {
  #pickup .pickup-list {
    gap: 20px;
  }
  #pickup .pickup-list .pickup-item {
    width: min(100%, 37.8rem);
  }
}
@media screen and (max-width: 767px) {
  #pickup .pickup-list {
    flex-wrap: wrap;
  }
}
#pickup .info-list {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 40px;
}
#pickup .info-list .list-item {
  display: flex;
  width: min((100% - 40px) / 2, 37.8rem);
}
#pickup .info-list .list-item a {
  width: 100%;
  height: 100%;
  padding: 13px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 20px;
  border: 3px solid var(--color01-line);
  background: var(--color01-bg);
  color: var(--white);
}
#pickup .info-list .list-item a .icon {
  width: 80px;
  flex-shrink: 0;
}
#pickup .info-list .list-item a .ttl {
  font-size: 2.4rem;
  font-weight: 700;
}
#pickup .info-list .list-item a:hover {
  background: var(--color06-hover);
}
@media screen and (max-width: 1023px) {
  #pickup .info-list {
    width: 100%;
    gap: 20px;
  }
  #pickup .info-list .list-item a {
    padding: 20px;
  }
}
@media screen and (max-width: 767px) {
  #pickup .info-list .list-item {
    width: 100%;
  }
  #pickup .info-list .list-item a {
    padding: 16px;
  }
  #pickup .info-list .list-item a .txt-box span.ttl {
    font-size: 2rem;
  }
  #pickup .info-list .list-item a .txt-box span.txt {
    font-size: 1.5rem;
  }
}

.bgcolor-black #pickup .pickup-list .pickup-item .item-box {
  border: 3px solid var(--black);
  background-color: var(--black);
}
.bgcolor-black #pickup .pickup-list .pickup-item:hover .item-box {
  border: 3px solid var(--color01);
  background: var(--black);
}
.bgcolor-black #pickup .info-list .list-item a {
  border: 3px solid var(--black);
  background: var(--black);
  color: var(--white);
}
.bgcolor-black #pickup .info-list .list-item a:hover {
  border: 3px solid var(--color01);
}

/*=================================================
		GENKI☆マガジン
==================================================*/
.mail_mag #section-01 {
  padding: 40px;
}
.mail_mag #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.mail_mag #section-01 .box-wrap .inbox {
  width: 100%;
}
.mail_mag #section-01 .box-wrap p {
  text-align: center;
}
.mail_mag #section-01 .list-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.mail_mag #section-01 .list-wrap .list-item {
  position: relative;
  width: calc((100% - 64px) / 3);
  display: flex;
  padding: 20px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--white-bg);
  border: 3px solid var(--color01);
  border-radius: 20px;
  color: var(--color01-txt);
}
.mail_mag #section-01 .list-wrap .list-item > div {
  display: inline-block;
}
.mail_mag #section-01 .list-wrap .list-item > div.icon {
  width: 70px;
}
.mail_mag #section-01 .list-wrap .list-item > div.icon img {
  width: 100%;
}
.mail_mag #section-01 .list-wrap .list-item > div.ttl {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.mail_mag #section-01 .mail-form-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.mail_mag #section-01 .mail-form-box .form-parts {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 40px 20px 20px;
}
.mail_mag #section-01 .mail-form-box .form-parts input[type=text] {
  font-family: "BIZ UDPGothic", suns-serif;
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--table-line);
  padding: 0.5em 1em;
  font-size: 1.8rem;
  width: min(100%, 30em);
}
.mail_mag #section-01 .mail-form-box .form-parts .btn-regist {
  font-size: 1.8rem;
  line-height: 1.8;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 0.25em 1em;
  font-style: normal;
  font-weight: 600;
  color: var(--white-txt);
  background: var(--color01-bg);
  border-radius: 10px;
  border: none;
  cursor: pointer;
  transition: 0.3s all;
}
.mail_mag #section-01 .mail-form-box .form-parts .btn-regist:hover {
  background: var(--black);
}
@media screen and (max-width: 1023px) {
  .mail_mag #section-01 {
    padding: 30px 20px;
  }
  .mail_mag #section-01 .list-wrap {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
  .mail_mag #section-01 .list-wrap .list-item {
    position: relative;
    width: calc((100% - 20px) / 3);
    display: flex;
    padding: 20px 10px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
  }
}
@media screen and (max-width: 767px) {
  .mail_mag #section-01 .box-wrap p {
    text-align: left;
  }
  .mail_mag #section-01 .list-wrap {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
  .mail_mag #section-01 .list-wrap .list-item {
    position: relative;
    width: 100%;
    display: flex;
    padding: 20px 10px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
  }
}
.mail_mag #section-02 {
  padding: 40px;
}
.mail_mag #section-02 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.mail_mag #section-02 .box-wrap .inbox {
  padding: 40px 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.mail_mag #section-02 .box-wrap .btn-box {
  padding: 40px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
.mail_mag #section-02 .box-wrap p {
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .mail_mag #section-02 {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .mail_mag #section-02 .box-wrap .inbox {
    padding: 20px 0;
  }
  .mail_mag #section-02 .box-wrap p {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .mail_mag .content-title-line {
    font-size: 2.4rem;
    text-align: center;
  }
}

.bgcolor-black .mail_mag #section-01 .list-wrap .list-item {
  background: var(--black);
  border: 3px solid var(--black);
  color: var(--white);
}
.bgcolor-black .mail_mag #section-01 .mail-form-box .form-parts .btn-regist {
  color: var(--white-txt);
  background: var(--black);
}
.bgcolor-black .mail_mag #section-01 .mail-form-box .form-parts .btn-regist:hover {
  background: var(--color01);
}

.backnumber #section-01 .box-wrap {
  padding: 40px 20px;
}
.backnumber #section-01 .backunmber-list-wrap {
  width: min(100%, 1200px);
  padding: 0 0 40px;
  margin: 0 auto;
}
.backnumber #section-01 .backunmber-list-wrap ul {
  width: min(100%, 30em);
  display: block;
  margin: 0 auto;
}
.backnumber #section-01 .backunmber-list-wrap ul li {
  width: 100%;
  position: relative;
  border-bottom: 1px solid var(--color02-line);
  transition: 0.3s ease all;
}
.backnumber #section-01 .backunmber-list-wrap ul li a {
  padding: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 20px;
  padding-right: 30px;
}
.backnumber #section-01 .backunmber-list-wrap ul li a span.post_date {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.3;
  width: 8em;
  flex-shrink: 0;
}
.backnumber #section-01 .backunmber-list-wrap ul li a span.post_title {
  font-feature-settings: "palt" on;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: justify;
}
.backnumber #section-01 .backunmber-list-wrap ul li a::after {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  text-align: center;
  content: ">";
  flex-shrink: 0;
  margin-left: auto;
}
.backnumber #section-01 .backunmber-list-wrap ul li:hover {
  background: var(--color02-hover);
}

.mail_mag-detail .mail-detail-content {
  padding: 40px;
}
.mail_mag-detail .mail-detail-content .detail-box {
  width: min(100%, 85rem);
  margin: 0 auto;
}
.mail_mag-detail .mail-detail-content .mail-detail pre {
  letter-spacing: normal;
  white-space: pre-wrap;
  unicode-bidi: isolate;
  word-break: break-all;
}
.mail_mag-detail .mail-detail-content .btn-area {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 40px;
}
.mail_mag-detail .mail-detail-content .btn-area .btn-list {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 0.5em 2em;
  font-style: normal;
  font-weight: 600;
  color: var(--white-txt);
  background: var(--color01);
  border-radius: 2.2727272727em;
  border: 3px solid var(--color01);
}
.mail_mag-detail .mail-detail-content .btn-area .btn-list:hover {
  background: var(--black);
  border: 3px solid var(--black);
}
@media screen and (max-width: 1023px) {
  .mail_mag-detail .mail-detail-content {
    padding: 30px 20px;
  }
}

.bgcolor-black .mail_mag-detail .mail-detail-content .btn-area .btn-list {
  color: var(--white-txt);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .mail_mag-detail .mail-detail-content .btn-area .btn-list:hover {
  background: var(--color01);
  border: 3px solid var(--color01);
}

/*=================================================
		健康指導・相談
==================================================*/
.soudan #section-01 .box-wrap {
  padding: 80px 40px;
  background: var(--color02-bg);
}
.soudan #section-01 .materials-list {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  align-content: flex-start;
  gap: 40px;
  align-self: stretch;
  flex-wrap: wrap;
}
.soudan #section-01 .materials-list .item-box {
  width: calc((100% - 40px) / 2);
  padding: 28px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  border-radius: 20px;
  background: var(--white-bg);
}
.soudan #section-01 .materials-list .item-box .title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1023px) {
  .soudan #section-01 .box-wrap {
    padding: 30px 20px;
  }
  .soudan #section-01 .materials-list {
    gap: 20px;
    align-self: stretch;
    flex-wrap: wrap;
  }
  .soudan #section-01 .materials-list .item-box {
    width: 100%;
    padding: 28px 20px;
  }
  .soudan #section-01 .materials-list .item-box .title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}
.soudan #section-02 {
  padding: 80px 40px;
}
.soudan #section-02 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .soudan #section-02 {
    padding: 30px 20px;
  }
}

/*=================================================
		健康増進関係施設
==================================================*/
.kenkou-shisetsu #section-01 .map-area {
  width: min(100%, 1200px);
  margin: 0 auto 16px;
}
.kenkou-shisetsu #section-01 .map-area svg {
  width: 100%;
  height: auto;
}
.kenkou-shisetsu #section-01 .map-area svg a {
  cursor: pointer;
}
.kenkou-shisetsu #section-01 .map-area svg a path,
.kenkou-shisetsu #section-01 .map-area svg a rect {
  transition: fill 0.3s linear;
}
.kenkou-shisetsu #section-01 .map-area svg a:hover path,
.kenkou-shisetsu #section-01 .map-area svg a:hover rect {
  fill: var(--color06);
}
.kenkou-shisetsu #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  align-self: stretch;
}
.kenkou-shisetsu #section-01 .box-01 {
  width: 100%;
  padding: 40px;
  border-radius: 20px;
  background: var(--color02-bg);
  border: 3px solid var(--color01-line);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.kenkou-shisetsu #section-01 .btn-box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px;
  padding: 40px 0;
}
@media screen and (max-width: 1023px) {
  .kenkou-shisetsu #section-01 .box-wrap {
    padding: 0 20px;
  }
  .kenkou-shisetsu #section-01 .box-01 {
    padding: 20px;
  }
  .kenkou-shisetsu #section-01 .btn-box {
    gap: 16px;
    padding: 20px 0;
  }
}

.bgcolor-black .kenkou-shisetsu #section-01 .box-01 {
  background: var(--dark-bg-color);
  border: 3px solid var(--color01-line);
}

/*=================================================
		体験・講座
==================================================*/
.taiken-kouza .table-box {
  width: 100%;
}
.taiken-kouza .table-box table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.taiken-kouza .table-box table tr th {
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  text-align: left;
  vertical-align: middle;
}
.taiken-kouza .table-box table tr th:not(:last-child) {
  border-right: 1px solid #ccc;
}
.taiken-kouza .table-box table tr th.t-center {
  text-align: center;
}
.taiken-kouza .table-box table tr td {
  padding: 8px 20px;
  color: var(--black);
  background: var(--table-td-bg);
}
.taiken-kouza .table-box table tr td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.taiken-kouza .table-box table tr .w150 {
  width: 15rem;
}
.taiken-kouza .table-box table tr .w210 {
  width: 21rem;
}
.taiken-kouza .table-box table tr:not(:last-child) th,
.taiken-kouza .table-box table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .taiken-kouza .table-box table {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em;
    width: 100%;
  }
  .taiken-kouza .table-box table tr th {
    color: var(--white);
    padding: 8px 20px;
    text-align: left;
    vertical-align: middle;
  }
  .taiken-kouza .table-box table tr th:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .taiken-kouza .table-box table tr th.t-center {
    text-align: center;
  }
  .taiken-kouza .table-box table tr td {
    padding: 8px 20px;
  }
  .taiken-kouza .table-box table tr td:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .taiken-kouza .table-box table tr .w150 {
    width: 15rem;
  }
  .taiken-kouza .table-box table tr .w210 {
    width: 21rem;
  }
  .taiken-kouza .table-box table tr:not(:last-child) th,
  .taiken-kouza .table-box table tr:not(:last-child) td {
    border-bottom: 1px solid var(--table-line);
  }
  .taiken-kouza .table-box table.sp-col tr th,
  .taiken-kouza .table-box table.sp-col tr td {
    width: 100%;
    display: block;
  }
  .taiken-kouza .table-box table.layout-fixed {
    table-layout: fixed;
  }
  .taiken-kouza .table-box.scroll-box table {
    min-width: 100%;
    width: -moz-max-content;
    width: max-content;
    white-space: nowrap;
  }
  .taiken-kouza .table-box.scroll-box table tr .w150,
  .taiken-kouza .table-box.scroll-box table tr .w210 {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.taiken-kouza #fitness-check .box-wrap-01 {
  padding: 40px;
  background: var(--color02-bg);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.taiken-kouza #fitness-check .box-wrap-01 .inbox-01 {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.taiken-kouza #fitness-check .box-wrap-01 .inbox-01 p {
  text-align: center;
}
.taiken-kouza #fitness-check .box-wrap-01 .inbox-02 {
  position: relative;
  width: min(100%, 960px);
  margin: 0 auto;
  border-radius: 20px;
  background: var(--white-bg);
  display: flex;
  padding: 30px 40px;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  font-weight: 700;
}
.taiken-kouza #fitness-check .box-wrap-01 .inbox-02::after {
  content: "";
  position: absolute;
  width: 167px;
  aspect-ratio: 167/180;
  top: -20px;
  right: 30px;
  background: url("../images/common/illust_04.png") no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza #fitness-check .box-wrap-01 {
    padding: 30px 20px;
    gap: 20px;
  }
  .taiken-kouza #fitness-check .box-wrap-01 .inbox-01 p {
    text-align: left;
  }
  .taiken-kouza #fitness-check .box-wrap-01 .inbox-02 {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .taiken-kouza #fitness-check .box-wrap-01 {
    padding: 30px 20px 100px;
  }
  .taiken-kouza #fitness-check .box-wrap-01 .inbox-02::after {
    content: "";
    position: absolute;
    width: 111px;
    aspect-ratio: 167/180;
    top: calc(100% + 20px);
    right: auto;
    left: 20px;
    background: url("../images/common/illust_04.png") no-repeat;
    background-size: 100% 100%;
  }
}
.taiken-kouza #fitness-check .box-wrap-02 {
  padding: 0 40px;
}
.taiken-kouza #fitness-check .box-wrap-02 .inbox {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza #fitness-check .box-wrap-02 {
    padding: 0 20px;
  }
}
.taiken-kouza #fitness-check .box-wrap-03 {
  padding: 40px;
}
.taiken-kouza #fitness-check .box-wrap-03 .inner {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.taiken-kouza #fitness-check .box-wrap-03 .flow-box {
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  align-self: stretch;
}
.taiken-kouza #fitness-check .box-wrap-03 .flow-box .arrow {
  width: 40px;
  height: 36px;
  background: #c3c7d4;
  clip-path: polygon(0% 20%, 100% 20%, 50% 100%, 50% 100%);
  margin-left: 8.6rem;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza #fitness-check .box-wrap-03 {
    padding: 60px 20px 30px;
  }
}
@media screen and (max-width: 767px) {
  .taiken-kouza #fitness-check .box-wrap-03 .flow-box {
    padding: 20px 0 0;
  }
  .taiken-kouza #fitness-check .box-wrap-03 .flow-box .arrow {
    margin-left: calc(50% - 20px);
  }
}
.taiken-kouza #fitness-check .box-wrap-04 {
  padding: 0 40px 40px;
}
.taiken-kouza #fitness-check .box-wrap-04 .inbox {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
  padding: 40px 0;
}
.taiken-kouza #fitness-check .box-wrap-04 .inbox.attention {
  padding: 40px;
  border: 3px solid var(--black-line);
}
.taiken-kouza #fitness-check .box-wrap-04 .img-wrap {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.taiken-kouza #fitness-check .box-wrap-04 .img-wrap .img-box img {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza #fitness-check .box-wrap-04 {
    padding: 30px 20px;
  }
  .taiken-kouza #fitness-check .box-wrap-04 .inbox {
    padding: 20px 0;
  }
  .taiken-kouza #fitness-check .box-wrap-04 .inbox.attention {
    padding: 20px;
  }
  .taiken-kouza #fitness-check .box-wrap-04 .img-wrap {
    width: min(100%, 650px);
    margin: 0 auto;
    gap: 10px;
    flex-wrap: wrap;
  }
  .taiken-kouza #fitness-check .box-wrap-04 .img-wrap .img-box {
    width: calc((100% - 30px) / 4);
  }
}
@media screen and (max-width: 767px) {
  .taiken-kouza #fitness-check .box-wrap-04 .img-wrap .img-box {
    width: calc((100% - 20px) / 3);
  }
}
.taiken-kouza #health-promotion {
  background: var(--color02-bg);
}
.taiken-kouza #health-promotion .box-wrap {
  padding: 40px;
}
.taiken-kouza #health-promotion .box-wrap .top-text-box {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.taiken-kouza #health-promotion .box-wrap .top-text-box p {
  text-align: center;
}
.taiken-kouza #health-promotion .box-wrap .inbox {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 40px 0;
}
.taiken-kouza #health-promotion .materials-list {
  width: 100%;
  display: flex;
  align-content: flex-start;
  gap: 40px;
  align-self: stretch;
  flex-wrap: wrap;
}
.taiken-kouza #health-promotion .materials-list .item-box {
  width: min((100% - 40px) / 2, 58rem);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: var(--white-bg);
  border-radius: 20px;
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 28px 25px;
  border-radius: 20px 20px 0 0;
  border: 3px solid var(--white);
  border-bottom: none;
  transition: 0.3s all;
  flex-grow: 1;
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail .ttl {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr th {
  width: 100%;
  display: block;
  color: var(--white);
  padding: 8px 10px;
  background: var(--table-th-bg);
  text-align: left;
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr td {
  width: 100%;
  display: block;
  padding: 8px 10px;
  color: var(--black);
  background: var(--table-td-bg);
}
.taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
.taiken-kouza #health-promotion .materials-list .item-box .btn-detail {
  display: flex;
  padding: 10px 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  color: var(--white-txt);
  background: var(--color01-bg);
  border: 3px solid var(--color01-line);
  border-top: none;
  border-radius: 0 0 20px 20px;
}
.taiken-kouza #health-promotion .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01-line);
  border-bottom: none;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza #health-promotion .box-wrap {
    padding: 30px 20px;
  }
  .taiken-kouza #health-promotion .box-wrap .top-text-box p {
    text-align: left;
  }
  .taiken-kouza #health-promotion .box-wrap .inbox {
    padding: 20px 0;
  }
  .taiken-kouza #health-promotion .materials-list {
    gap: 20px;
  }
  .taiken-kouza #health-promotion .materials-list .item-box {
    width: 100%;
  }
  .taiken-kouza #health-promotion .materials-list .item-box .item-detail {
    padding: 28px 20px;
  }
}

.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .item-detail {
  border: 3px solid var(--dark-bg-color);
  border-bottom: none;
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .item-detail table {
  border: 1px solid var(--black);
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr th {
  color: var(--white);
  background: var(--table-th-bg);
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr td {
  color: var(--black);
  background: var(--table-td-bg);
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .item-detail table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box .btn-detail {
  color: var(--white-txt);
  background: var(--dark-bg-color);
  border: 3px solid var(--dark-bg-color);
  border-top: none;
  transition: 0.3s all;
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box:hover .item-detail {
  border: 3px solid var(--color01);
  border-bottom: none;
}
.bgcolor-black .taiken-kouza #health-promotion .materials-list .item-box:hover .btn-detail {
  border: 3px solid var(--color01);
  border-top: none;
}

.taiken-kouza-detail .content-detail {
  padding: 40px 40px 80px;
}
.taiken-kouza-detail .detail-box {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
.taiken-kouza-detail .detail-box .inbox {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.taiken-kouza-detail .detail-box .table-box {
  width: 100%;
}
.taiken-kouza-detail .detail-box .table-box table {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
  font-feature-settings: "palt" on;
}
.taiken-kouza-detail .detail-box .table-box table tr th {
  width: 20rem;
  color: var(--white);
  padding: 8px 20px;
  background: var(--table-th-bg);
  vertical-align: middle;
  text-align: left;
  border-bottom: 1px solid var(--table-line);
}
.taiken-kouza-detail .detail-box .table-box table tr td {
  width: calc(100% - 20rem);
  padding: 18px 20px;
  color: var(--black);
  background: var(--table-td-bg);
  border-bottom: 1px solid var(--table-line);
  vertical-align: middle;
  text-align: left;
}
.taiken-kouza-detail .detail-box .table-box table tr td a {
  color: var(--color01);
  text-decoration: underline;
}
.taiken-kouza-detail .detail-box .table-box table tr td .inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.taiken-kouza-detail .detail-box .table-box table tr:last-child th,
.taiken-kouza-detail .detail-box .table-box table tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 1023px) {
  .taiken-kouza-detail .content-detail {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .taiken-kouza-detail .detail-box {
    width: 100%;
  }
  .taiken-kouza-detail .detail-box .table-box {
    width: 100%;
  }
  .taiken-kouza-detail .detail-box .table-box table {
    width: 100%;
  }
  .taiken-kouza-detail .detail-box .table-box table tr th {
    width: 100%;
    display: block;
  }
  .taiken-kouza-detail .detail-box .table-box table tr td {
    width: 100%;
    display: block;
  }
  .taiken-kouza-detail .detail-box .table-box table tr:last-child th {
    border-bottom: 1px solid var(--table-line);
  }
  .taiken-kouza-detail .detail-box .table-box table tr:last-child td {
    border-bottom: none;
  }
}

/*=================================================
		けんこう散歩道
==================================================*/
.kenkou-sanpomichi #section-01 {
  padding: 0 40px;
}
.kenkou-sanpomichi #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  align-self: stretch;
}
.kenkou-sanpomichi #section-01 .map-area {
  width: min(100%, 1200px);
  margin: 0 auto 16px;
}
.kenkou-sanpomichi #section-01 .map-area svg {
  width: 100%;
  height: auto;
}
.kenkou-sanpomichi #section-01 .map-area svg a {
  cursor: pointer;
}
.kenkou-sanpomichi #section-01 .map-area svg a path,
.kenkou-sanpomichi #section-01 .map-area svg a rect {
  transition: fill 0.3s linear;
}
.kenkou-sanpomichi #section-01 .map-area svg a:hover path,
.kenkou-sanpomichi #section-01 .map-area svg a:hover rect {
  fill: var(--color06);
}
.kenkou-sanpomichi #section-01 .anchor-nav {
  width: 100%;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 32px;
  font-size: 2.4rem;
  font-weight: 700;
  padding: 40px 0;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item {
  position: relative;
  width: calc((100% - 64px) / 3);
  display: flex;
  padding: 10px 10px 24px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--color01-bg);
  border: 3px solid var(--color01-txt);
  border-radius: 20px;
  color: var(--white-txt);
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item.seibu {
  background: var(--color01);
  border: 3px solid var(--color01);
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item.tube {
  background: #76c5af;
  border: 3px solid #76c5af;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item.tobu {
  background: #bed346;
  border: 3px solid #bed346;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item span {
  display: inline-block;
  font-weight: 700;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item span.txt {
  font-size: 2.4rem;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  content: "";
  width: 20px;
  height: 15px;
  background: var(--color04-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item:hover {
  border: 3px solid #fff;
}
@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi #section-01 .anchor-nav .anchor-list {
    font-size: 1.8rem;
    gap: 10px;
  }
  .kenkou-sanpomichi #section-01 .anchor-nav .anchor-list .anchor-list-item {
    width: calc((100% - 20px) / 3);
    padding: 20px 10px 32px 10px;
  }
}
@media screen and (max-width: 767px) {
  .kenkou-sanpomichi #section-01 {
    padding: 0;
  }
  .kenkou-sanpomichi #section-01 .anchor-nav {
    padding: 40px 20px;
  }
}
.kenkou-sanpomichi #section-03 {
  padding: 80px 40px;
}
.kenkou-sanpomichi #section-03 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
.kenkou-sanpomichi #section-03 .top-text-box {
  display: flex;
  padding-bottom: 40px;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  align-self: stretch;
}
.kenkou-sanpomichi #section-03 .top-text-box p {
  text-align: center;
}
.kenkou-sanpomichi #section-03 .movement-list {
  display: flex;
  align-content: flex-start;
  gap: 40px;
  flex-wrap: wrap;
}
.kenkou-sanpomichi #section-03 .movement-list .list-item {
  display: flex;
  width: min((100% - 40px) / 2, 580px);
  padding: 40px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  background: var(--color02-bg);
}
.kenkou-sanpomichi #section-03 .movement-list .list-item .img-box {
  width: 100%;
}
.kenkou-sanpomichi #section-03 .movement-list .list-item .img-box img {
  width: 100%;
}
.kenkou-sanpomichi #section-03 .movement-list .list-item .text-box {
  display: flex;
  padding: 0 10px;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  align-self: stretch;
}
.kenkou-sanpomichi #section-03 .movement-list .list-item .text-box p {
  text-align: center;
}
.kenkou-sanpomichi #section-03 .movement-list .list-item .text-box p.title {
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi #section-03 {
    padding: 30px 20px;
  }
  .kenkou-sanpomichi #section-03 .top-text-box p {
    text-align: left;
  }
  .kenkou-sanpomichi #section-03 .movement-list {
    display: flex;
    align-content: flex-start;
    gap: 10px;
    flex-wrap: wrap;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item {
    display: flex;
    width: min((100% - 10px) / 2, 580px);
    padding: 20px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    background: var(--color02-bg);
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .img-box {
    width: 100%;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .img-box img {
    width: 100%;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .text-box {
    display: flex;
    padding: 0;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    align-self: stretch;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .text-box p {
    text-align: center;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .text-box p.title {
    font-size: 2.4rem;
    font-weight: 700;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item .text-box p.txt {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .kenkou-sanpomichi #section-03 .movement-list {
    width: min(100%, 580px);
    margin: 0 auto;
  }
  .kenkou-sanpomichi #section-03 .movement-list .list-item {
    display: flex;
    width: min(100%, 580px);
  }
}
.kenkou-sanpomichi #section-04 {
  padding: 40px;
}
.kenkou-sanpomichi #section-04 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
}
.kenkou-sanpomichi #section-04 .bnr-kenkou-app {
  padding: 40px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
  align-self: stretch;
  border-radius: 20px;
  border: 3px solid var(--color01);
  background: var(--color02-bg);
}
.kenkou-sanpomichi #section-04 .bnr-kenkou-app .btn-box {
  display: inline-flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi #section-04 {
    padding: 30px 20px;
  }
  .kenkou-sanpomichi #section-04 .bnr-kenkou-app {
    padding: 40px 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
    align-self: stretch;
    border-radius: 20px;
    border: 3px solid var(--color01);
    background: var(--color02-bg);
  }
  .kenkou-sanpomichi #section-04 .bnr-kenkou-app .btn-box {
    display: inline-flex;
    flex-direction: column;
    gap: 10px;
  }
}

.bgcolor-black .kenkou-sanpomichi #section-04 .bnr-kenkou-app {
  border: 3px solid var(--white);
  background: var(--dark-bg-color);
}
.bgcolor-black .kenkou-sanpomichi #section-04 .bnr-kenkou-app .btn-box {
  display: inline-flex;
  flex-direction: column;
  gap: 10px;
}

.kenkou-sanpomichi-detail #section-01 {
  padding: 0 40px 80px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_01 {
  display: flex;
  align-items: center;
  gap: 24px;
  border-radius: 40px;
  border: 2px solid var(--color05-line);
  background: var(--white);
  overflow: hidden;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_01 .title {
  font-size: 2rem;
  color: var(--white);
  font-weight: 700;
  line-height: 1.3;
  display: flex;
  padding: 20px 24px 20px 40px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: var(--color05-bg);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_01 .txt {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color05-txt);
  padding-right: 40px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_02 {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 40px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_02 .img-box {
  width: 442px;
  padding: 10px;
  background: var(--white);
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 8px 8px 20px 0px rgba(0, 0, 0, 0.1);
  flex-shrink: 0;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_02 .img-box img {
  width: 100%;
  vertical-align: middle;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_02 .txt-box p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 {
  width: 100%;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: 20px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item {
  display: flex;
  width: min((100% - 40px) / 3);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item dl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  border: 2px solid var(--color03-line);
  background: var(--white-bg);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item dl dt {
  display: flex;
  width: 130px;
  padding: 8px 18px;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  color: var(--white);
  background: var(--color03-bg);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item dl dd {
  display: flex;
  flex-grow: 1;
  padding: 8px 18px;
  justify-content: flex-start;
  align-items: center;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_04 {
  width: 100%;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_04 .map-box {
  position: relative;
  display: flex;
  height: 600px;
  padding: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  align-self: stretch;
  border: 10px solid #d9dbe0;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_04 .map-box img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: middle;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_04 .map-box .btn-zoom {
  position: absolute;
  right: 30px;
  bottom: 29px;
  width: 54px;
  aspect-ratio: 54/54;
  background: url("../images/common/icon-scoop.svg") no-repeat;
  background-size: 100% 100%;
  cursor: pointer;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 {
  width: 100%;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 16px;
  align-self: stretch;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item {
  width: 100%;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a {
  display: flex;
  padding: 13px 21px;
  justify-content: flex-start;
  align-items: center;
  align-self: stretch;
  border-radius: 10px;
  border: 3px solid var(--color01-line);
  background: var(--color01-bg);
  gap: 20px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span {
  display: inline-flex;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.num {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: normal;
  width: 1.6666666667em;
  height: 1.6666666667em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--white);
  color: var(--color01-txt);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.txt {
  font-size: 2rem;
  letter-spacing: 0.05em;
  color: var(--white-txt);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.arrow {
  width: 20px;
  height: 16px;
  background: var(--white);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  flex-shrink: 0;
  margin-left: auto;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a:hover {
  background: var(--color06-hover);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title {
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  width: 6.25em;
  height: 6.25em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3333333333em;
  background: var(--color05-bg);
  border-radius: 50%;
  margin: 0 auto;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span {
  display: inline-block;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.icon {
  width: 2.0833333333em;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.txt {
  color: var(--white);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.illust {
  width: 113px;
  position: absolute;
  right: -133px;
  top: 50%;
  transform: translateY(-50%);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap {
  width: 100%;
  padding-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  border-top: 1px solid var(--color03-line);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap:not(:first-child) {
  margin-top: 90px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title {
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  gap: 16px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span {
  display: inline-flex;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span.num {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: normal;
  width: 2.0833333333em;
  height: 2.0833333333em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--color03-bg);
  color: var(--white);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span.txt {
  font-size: 3.2rem;
  font-weight: 700;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 40px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box {
  position: relative;
  width: calc((100% - 40px) / 2);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box .pic-box {
  position: relative;
  width: 100%;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box .txt p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box:nth-child(4n+1) .pic-box::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 95px;
  height: 95px;
  background: url("../images/common/icon-foot_02.svg") no-repeat;
  background-size: 100% 100%;
  top: 50%;
  transform: translateY(-50%);
  right: -45px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box:nth-child(4n+3) .pic-box::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 95px;
  height: 95px;
  background: url("../images/common/icon-foot_02.svg") no-repeat;
  background-size: 100% 100%;
  top: -45px;
  right: 0;
  transform: rotate(95deg);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  gap: 20px;
  padding: 44px;
  border: 5px solid #d9dbe0;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .postscript-title {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  color: var(--white);
  display: flex;
  padding: 16px 24px;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
  border-radius: 10px;
  border: 3px solid var(--color03);
  background: var(--color03);
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .txt p {
  font-size: 1.8rem;
  line-height: 1.8;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .pic-box {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 40px;
}
.kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .pic-box .pic {
  width: calc((100% - 40px) / 2);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi-detail #section-01 {
    padding: 0 20px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_02 {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 40px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_02 .img-box {
    width: min(100%, 442px);
    padding: 10px;
    background: var(--white);
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 8px 8px 20px 0px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_02 .img-box img {
    width: 100%;
    vertical-align: middle;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 20px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item {
    display: flex;
    width: min((100% - 20px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .kenkou-sanpomichi-detail #section-01 .detail-content {
    width: 100%;
    gap: 30px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_01 {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    border-radius: 10px;
    border: 2px solid var(--color05);
    background: var(--white);
    overflow: hidden;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_01 .title {
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    color: var(--white);
    display: flex;
    padding: 10px 20px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background: var(--color05);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_01 .txt {
    width: 100%;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    color: var(--color05);
    padding: 6px 10px 10px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 8px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item {
    display: flex;
    width: 100%;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_03 .detail-info-list .list-item dl {
    font-size: 1.6rem;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item {
    width: 100%;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a {
    gap: 16px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span {
    display: inline-flex;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.num {
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: normal;
    width: 1.6666666667em;
    height: 1.6666666667em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--white);
    color: var(--color01);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.txt {
    font-size: 1.8rem;
    color: var(--white);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a span.arrow {
    width: 20px;
    height: 16px;
    background: var(--white);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    flex-shrink: 0;
    margin-left: auto;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_05 .root-list .list-item a:hover {
    background: var(--color06-hover);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title {
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    width: 6.25em;
    height: 6.25em;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.25em;
    background: var(--color05);
    border-radius: 50%;
    margin: 0 auto;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span {
    display: inline-block;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.icon {
    width: 1.875em;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.txt {
    color: var(--white);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .title span.illust {
    width: 91px;
    position: absolute;
    right: -121px;
    top: 10px;
    transform: unset;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail {
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap {
    width: 100%;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
    border-top: 1px solid var(--color03-line);
    margin-top: 40px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap:not(:first-child) {
    margin-top: 40px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    align-self: center;
    gap: 0;
    margin-top: -2.5rem;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span {
    display: inline-flex;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span.num {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    letter-spacing: normal;
    width: 2.0833333333em;
    height: 2.0833333333em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--color03-bg);
    color: var(--white);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-title span.txt {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 40px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box {
    width: min(100%, 580px);
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box .pic-box {
    width: 100%;
    text-align: center;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box .txt {
    width: 100%;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box .txt p {
    font-size: 1.8rem;
    line-height: 1.8;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box:nth-child(4n+1) .pic-box::after {
    display: none;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .root-detail .root-detail-wrap .root-detail-content .detail-box:nth-child(4n+3) .pic-box::after {
    display: none;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    gap: 20px;
    padding: 15px;
    border: 5px solid #d9dbe0;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .postscript-title {
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--white);
    display: flex;
    padding: 8px 24px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-radius: 10px;
    border: 3px solid var(--color03-line);
    background: var(--color03-bg);
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .txt p {
    font-size: 1.8rem;
    line-height: 1.8;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .pic-box {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 40px;
  }
  .kenkou-sanpomichi-detail #section-01 .detail-content .content_06 .postscript .pic-box .pic {
    width: calc((100% - 40px) / 2);
    text-align: center;
  }
}

.kenkou-sanpomichi #section-02 .content-list-wrap,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap {
  width: 100%;
  padding: 80px 40px;
  background: var(--color02-bg);
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list {
  font-size: 1.8rem;
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 32px;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item {
  display: flex;
  width: calc((100% - 96px) / 4);
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  padding: 13px;
  background: var(--white-bg);
  border-radius: 20px;
  border: 3px solid var(--white);
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-thumb,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-thumb {
  width: 100%;
  aspect-ratio: 244/140;
  border-radius: 10px 10px 0 0;
  overflow: clip;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt {
  width: 100%;
  min-height: 126px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  padding: 0 6px;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--color07-txt);
  text-align: center;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl .new-icon,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl .new-icon {
  font-size: 0.8em;
  display: inline-block;
  padding: 0.1em 0.5em;
  color: white;
  background: var(--color01);
  border-radius: 2rem;
  vertical-align: middle;
  margin-left: 0.5em;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 10px;
  margin-top: auto;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p {
  font-size: 1.5rem;
  color: var(--color03-txt);
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area::before,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area::before {
  content: "";
  display: inline-block;
  width: 1em;
  aspect-ratio: 74/73;
  background: url("../images/common/icon-access.svg") no-repeat;
  background-size: contain;
  flex-shrink: 0;
}
.kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a:hover,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a:hover {
  border: 3px solid var(--color01-line);
}
.kenkou-sanpomichi #section-02 .content-list-wrap .inbox,
.kenkou-sanpomichi-detail #section-02 .content-list-wrap .inbox {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .kenkou-sanpomichi #section-02 .content-list-wrap,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap {
    width: 100%;
    padding: 40px;
    background: var(--color02-bg);
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list {
    gap: 16px;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item {
    display: flex;
    width: calc((100% - 32px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .kenkou-sanpomichi #section-02 .content-list-wrap,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap {
    width: 100%;
    padding: 20px;
    background: var(--color02-bg);
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list {
    font-size: 1.6rem;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 16px;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item {
    display: flex;
    width: calc((100% - 16px) / 2);
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a {
    width: 100%;
    min-height: 226px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    padding: 10px;
    background: var(--white);
    border-radius: 20px;
    border: 3px solid var(--white);
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-thumb,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-thumb {
    width: 100%;
    aspect-ratio: 244/140;
    border-radius: 10px 10px 0 0;
    overflow: clip;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt {
    width: 100%;
    min-height: unset;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    padding: 0;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl {
    font-size: 1.6rem;
    font-weight: 700;
    color: #222;
    text-align: center;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 10px;
    margin-top: auto;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p {
    font-size: 1.5rem;
    color: #7d818d;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    gap: 5px;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area::before,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt .info p.area::before {
    content: "";
    display: inline-block;
    width: 1em;
    aspect-ratio: 74/73;
    background: url("../images/common/icon-access.svg") no-repeat;
    background-size: contain;
    flex-shrink: 0;
  }
  .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a:hover,
  .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a:hover {
    border: 3px solid var(--color01-line);
  }
}

.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap {
  background: var(--color02-bg);
}
.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a {
  background: var(--black);
  border-radius: 20px;
  border: 3px solid var(--black);
}
.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .item-txt p.ttl {
  color: var(--white);
}
.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a .info p,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a .info p {
  color: var(--white);
}
.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap .content-list .list-item a:hover,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap .content-list .list-item a:hover {
  border: 3px solid var(--color01);
}
.bgcolor-black .kenkou-sanpomichi #section-02 .content-list-wrap .inbox,
.bgcolor-black .kenkou-sanpomichi-detail #section-02 .content-list-wrap .inbox {
  width: min(100%, 1200px);
  margin: 32px auto 0;
}

/*=================================================
		交通アクセス・駐車場
==================================================*/
.access .table-box {
  width: 100%;
}
.access .table-box table {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 100%;
  border: 1px solid var(--black);
}
.access .table-box table tr th {
  width: 13rem;
  color: var(--white);
  padding: 8px 10px;
  background: var(--table-th-bg);
  text-align: left;
  vertical-align: middle;
}
.access .table-box table tr th:not(:last-child) {
  border-right: 1px solid #ccc;
}
.access .table-box table tr td {
  width: calc(100% - 13rem);
  padding: 8px 10px;
  color: var(--black);
  background: var(--table-td-bg);
}
.access .table-box table tr td:not(:last-child) {
  border-right: 1px solid #ccc;
}
.access .table-box table tr:not(:last-child) th,
.access .table-box table tr:not(:last-child) td {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .access .table-box table {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0.05em;
    width: 100%;
  }
  .access .table-box table tr th {
    width: 100%;
    display: block;
    color: var(--white);
    padding: 8px 20px;
    text-align: left;
  }
  .access .table-box table tr th:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .access .table-box table tr td {
    width: 100%;
    display: block;
    padding: 8px 20px;
  }
  .access .table-box table tr td:not(:last-child) {
    border-right: 1px solid var(--table-line);
  }
  .access .table-box table tr:not(:last-child) th,
  .access .table-box table tr:not(:last-child) td {
    border-bottom: 1px solid var(--table-line);
  }
}
.access #section-01 {
  padding: 80px 40px;
}
.access #section-01 .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 40px;
  align-self: stretch;
}
.access #section-01 .google-map {
  width: 100%;
  height: 540px;
  position: relative;
  overflow: hidden;
}
.access #section-01 .google-map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1023px) {
  .access #section-01 {
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  .access #section-01 .google-map {
    height: 316px;
  }
}
.access #section-02 .box-wrap {
  padding: 0 40px;
}
.access #section-02 .box-wrap .inbox {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding: 40px 0;
}
.access #section-02 .anchor-nav {
  width: 100%;
}
.access #section-02 .anchor-nav .anchor-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  align-self: stretch;
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item {
  position: relative;
  width: calc((100% - 96px) / 4);
  display: flex;
  padding: 20px 10px 32px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
  background: var(--color01-bg);
  border: 3px solid var(--color01-txt);
  border-radius: 20px;
  color: var(--white-txt);
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item span {
  display: inline-block;
  font-weight: 700;
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item span.icon {
  width: 70px;
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item span.txt {
  font-size: 2.4rem;
  line-height: 1.3;
  min-height: 2.3em;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  content: "";
  width: 22px;
  height: 15px;
  background: var(--color04-bg);
  clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--white-bg);
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover span.icon svg {
  fill: var(--color01-bg);
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
@media screen and (max-width: 1023px) {
  .access #section-02 .anchor-nav .anchor-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
  .access #section-02 .anchor-nav .anchor-list .anchor-list-item {
    position: relative;
    width: calc((100% - 20px) / 2);
    display: flex;
    padding: 10px 4px 24px 4px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    align-self: stretch;
    background: var(--color01-txt);
    border: 3px solid var(--color01-txt);
    border-radius: 20px;
    color: var(--white-txt);
  }
  .access #section-02 .anchor-nav .anchor-list .anchor-list-item span {
    display: inline-block;
    font-weight: 700;
  }
  .access #section-02 .anchor-nav .anchor-list .anchor-list-item span.step {
    font-size: 1.4rem;
  }
  .access #section-02 .anchor-nav .anchor-list .anchor-list-item span.txt {
    font-size: 1.8rem;
    line-height: 1.3;
    min-height: 2.3em;
    display: inline-flex;
    align-items: center;
    text-align: center;
  }
  .access #section-02 .anchor-nav .anchor-list .anchor-list-item::after {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    content: "";
    width: 14px;
    height: 10px;
    background: var(--color04-bg);
    clip-path: polygon(0 0, 100% 0, 50% 100%, 50% 100%);
  }
}
.access #section-02 .bnr-content {
  width: 100%;
  padding: 40px;
  display: flex;
  align-items: center;
  gap: 30px;
  align-self: stretch;
  border-radius: 20px;
  border: 3px solid var(--color01);
  background: var(--color02);
}
.access #section-02 .bnr-content .img-box {
  width: 400px;
}
.access #section-02 .bnr-content .text-box {
  color: var(--black);
  flex-grow: 1;
}
.access #section-02 .bnr-content:hover {
  opacity: 0.7;
}
@media screen and (max-width: 1023px) {
  .access #section-02 .box-wrap {
    padding: 0 20px;
  }
  .access #section-02 .box-wrap .inbox {
    padding: 30px 0;
  }
}
@media screen and (max-width: 767px) {
  .access #section-02 .bnr-content {
    width: 100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 20px;
    border: 3px solid var(--color01);
    background: var(--color02);
  }
  .access #section-02 .bnr-content .img-box {
    width: min(100%, 400px);
  }
  .access #section-02 .bnr-content .text-box {
    flex-grow: 1;
  }
}
.access .access-content .box-wrap {
  padding: 40px;
}
.access .access-content .box-wrap .inbox {
  width: min(100%, 1200px);
  padding: 40px 0;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  align-self: stretch;
}
.access .access-content .box-wrap .root-txt {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: first baseline;
  gap: 0 20px;
}
.access .access-content .box-wrap .img-root {
  width: 100%;
  text-align: center;
}
.access .access-content .box-wrap .img-map {
  width: 100%;
  text-align: center;
}
.access .access-content .box-wrap .btn-box a.btn-pdf-dl {
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1023px) {
  .access .access-content .box-wrap {
    padding: 0 20px;
  }
  .access .access-content .box-wrap .inbox {
    padding: 30px 0;
  }
  .access .access-content .box-wrap .btn-box {
    width: 100%;
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .access .access-content .box-wrap .btn-box a.btn-pdf-dl {
    width: min(100%, 37.4rem);
  }
}

.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item {
  background: var(--black);
  border: 3px solid var(--white);
  color: var(--white-txt);
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item span.icon svg {
  width: 100%;
  fill: #fff;
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item::after {
  background: var(--color04-bg);
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover {
  background: var(--black);
  border: 3px solid var(--color01);
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover span.icon svg {
  fill: var(--white);
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover span.txt {
  color: var(--color01-txt);
}
.bgcolor-black .access #section-02 .anchor-nav .anchor-list .anchor-list-item:hover::after {
  background: var(--color06-bg);
}
.bgcolor-black .access #section-02 .bnr-content {
  border: 3px solid var(--white);
  background: var(--dark-bg-color);
}
.bgcolor-black .access #section-02 .bnr-content .text-box {
  color: var(--white);
}

/*-------------------------------------------------
  お問合せ
-------------------------------------------------*/
.contact #contact-form {
  padding: 40px;
  /* ステップ */
}
.contact #contact-form .box-wrap {
  width: min(100%, 1000px);
  margin: 0 auto;
}
.contact #contact-form form {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 1023px) {
  .contact #contact-form {
    padding: 30px 20px;
  }
}
.contact #contact-form .progressbar {
  width: 100%;
  position: relative;
}
.contact #contact-form .progressbar ul {
  position: relative;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  font-size: 1em;
}
.contact #contact-form .progressbar ul li {
  position: relative;
  list-style-type: none;
  text-align: center;
  width: 25%;
  color: var(--color03);
  font-size: 1em;
  font-weight: bold;
}
.contact #contact-form .progressbar ul li span {
  color: #cccccc;
  font-weight: normal;
  display: inline-block;
  margin-right: 0.25em;
}
.contact #contact-form .progressbar ul li::after {
  display: block;
  width: 1em;
  height: 1em;
  margin: 0.5em auto;
  content: "";
  text-align: center;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #cccccc;
  z-index: 2;
  position: relative;
}
.contact #contact-form .progressbar ul li.active {
  color: #666;
}
.contact #contact-form .progressbar ul li.active span {
  font-weight: 700;
  color: #666;
}
.contact #contact-form .progressbar ul li.active::after {
  border: 1px solid #666;
  background: #666;
}
.contact #contact-form .progressbar::before {
  position: absolute;
  z-index: 0;
  bottom: 0.875em;
  left: 0;
  width: 100%;
  height: 3px;
  content: "";
  background-color: rgba(0, 0, 0, 0.1);
}
.contact #contact-form .form_box {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
  /* レイアウト　デザイン */
  /* フォームパーツ */
  /* Radio */
  /* Checkbox */
}
.contact #contact-form .form_box .form_box_in {
  padding: 40px;
  border: 1px solid var(--color01-line);
}
.contact #contact-form .form_box .form_box_in h3 {
  font-size: 2.4rem;
  font-weight: 700;
}
.contact #contact-form .form_box .form_box_in h4 {
  font-size: 2rem;
  font-weight: 700;
}
.contact #contact-form .form_box .form_box_in h5 {
  font-size: 1.8rem;
  font-weight: normal;
}
.contact #contact-form .form_box .form_box_in p {
  font-size: 1.8rem;
}
.contact #contact-form .form_box .form_box_in .form-parts {
  width: min(100%, 850px);
  margin: 2.5em auto 2.5em 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.contact #contact-form .form_box .form_box_in .form-parts .inner {
  width: 100%;
  padding-left: 40px;
  margin: 10px 0;
}
.contact #contact-form .form_box .form_box_in .form-parts .fieldTitle {
  width: 100%;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 4px 0;
}
.contact #contact-form .form_box .form_box_in .form-parts .fieldTitle span.caution {
  display: inline-block;
}
.contact #contact-form .form_box .form_box_in .form-parts .input-field {
  width: 100%;
  font-size: 1.8rem;
  line-height: 1.5;
}
.contact #contact-form .form_box .form_box_in .form-parts .input-field span.txt {
  display: inline-block;
  padding: 0.5em 0;
}
.contact #contact-form .form_box .form_box_in .form-parts:last-of-type {
  margin-bottom: 0;
}
.contact #contact-form .form_box .form_box_in.privacy h3 {
  margin-bottom: 0.5em;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts {
  width: 100%;
  border-radius: 0.625em;
  border: 1px solid var(--table-line);
  padding: 0;
  overflow: clip;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .scroll-box {
  height: 25em;
  overflow-y: scroll;
  background: var(--white-bg);
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box {
  color: var(--color10-txt);
  padding: 40px;
  text-align: justify;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box h5:not(:first-child) {
  margin-top: 20px;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box ul {
  font-size: 1.8rem;
  padding-left: 2em;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box ul li {
  list-style: disc;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box a {
  text-decoration: underline;
}
.contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box .inbox {
  margin-top: 20px;
}
.contact #contact-form .form_box .thanks-message {
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.contact #contact-form .form_box .form_box_bottom .agree_check {
  font-size: 2rem;
  margin: 2em auto 0;
}
.contact #contact-form .form_box .form_box_bottom .agree_check label {
  display: flex;
  justify-content: flex-starts;
  align-items: center;
  cursor: pointer;
}
.contact #contact-form .form_box .form_box_bottom .agree_check label span {
  display: inline-block;
  margin-left: 0.5em;
}
.contact #contact-form .form_box .form_box_bottom .inbox {
  margin-top: 20px;
  padding-left: 50px;
}
.contact #contact-form .form_box .btn-area {
  display: flex;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 2rem;
}
.contact #contact-form .form_box .btn-area .btn-back {
  position: absolute;
  font-size: 2rem;
  right: 130%;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  text-align: center;
  gap: 0.5em;
  background: transparent;
  border: none;
  cursor: pointer;
}
.contact #contact-form .form_box .btn-area .btn-back > span {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  gap: 0.5em;
}
.contact #contact-form .form_box .btn-area .btn-back > span::before {
  font-size: 0.8em;
  content: "＜";
  font-weight: 900;
  color: var(--red);
  transition: 0.3s ease all;
}
.contact #contact-form .form_box .btn-area .btn-back:hover > span::before {
  transform: translateX(-0.2em);
  transition: 0.3s all;
}
.contact #contact-form .form_box .btn-area .btn-submit,
.contact #contact-form .form_box .btn-area .btn-toppage {
  font-size: 2.2rem;
  line-height: 1.5;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 0.5em 2em;
  font-style: normal;
  font-weight: 600;
  color: var(--white-txt);
  background: var(--color01-bg);
  border-radius: 2.2727272727em;
  border: 3px solid var(--color01-line);
  cursor: pointer;
}
.contact #contact-form .form_box .btn-area .btn-submit span,
.contact #contact-form .form_box .btn-area .btn-toppage span {
  text-align: center;
}
.contact #contact-form .form_box .btn-area .btn-submit:hover,
.contact #contact-form .form_box .btn-area .btn-toppage:hover {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.contact #contact-form .form_box input,
.contact #contact-form .form_box select,
.contact #contact-form .form_box textarea {
  font-family: "BIZ UDPGothic", suns-serif;
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--table-line);
  padding: 0.5em 1em;
  font-size: 1.8rem;
}
.contact #contact-form .form_box input[type=date] {
  width: min(100%, 23.375em);
}
.contact #contact-form .form_box input[type=text] {
  width: min(100%, 37.8125em);
}
.contact #contact-form .form_box input[type=email] {
  width: min(100%, 37.8125em);
}
.contact #contact-form .form_box input[type=text]:focus,
.contact #contact-form .form_box input[type=email]:focus,
.contact #contact-form .form_box input[type=date]:focus {
  outline: solid 1px var(--black-line);
}
.contact #contact-form .form_box input::-moz-placeholder, .contact #contact-form .form_box select::-moz-placeholder, .contact #contact-form .form_box textarea::-moz-placeholder {
  font-family: "BIZ UDPGothic", suns-serif;
  font-weight: 400;
  color: #999999;
}
.contact #contact-form .form_box input::placeholder,
.contact #contact-form .form_box select::placeholder,
.contact #contact-form .form_box textarea::placeholder {
  font-family: "BIZ UDPGothic", suns-serif;
  font-weight: 400;
  color: #999999;
}
.contact #contact-form .form_box select {
  position: relative;
  width: 37.8125em;
  background: url("../images/icon-arrow_down.svg") right 0.75em center no-repeat, #fff;
  background-size: 0.75em auto, cover;
  cursor: pointer;
  padding-right: 1.5em;
  text-align: center;
  color: #000;
}
.contact #contact-form .form_box .year select {
  width: 8em;
}
.contact #contact-form .form_box .month select,
.contact #contact-form .form_box .day select {
  width: 6em;
}
.contact #contact-form .form_box select:invalid {
  color: #999999;
}
.contact #contact-form .form_box select:focus {
  outline: solid 1px var(--black-line);
}
.contact #contact-form .form_box select option {
  background-color: #fff;
  color: #000;
}
.contact #contact-form .form_box textarea {
  line-height: 1.7;
  width: 100%;
  height: 9.0625em;
}
.contact #contact-form .form_box textarea:focus {
  outline: solid 1px var(--black-line);
}
.contact #contact-form .form_box span.mandatory {
  display: inline-block;
  padding: 0.4em 0.5em;
  color: #fff;
  line-height: 1;
  font-size: min(0.8333333333vw, 12px);
  font-weight: 700;
  margin-left: 1em;
  vertical-align: 0.25em;
  background: var(--color05-bg);
}
.contact #contact-form .form_box span.any {
  display: inline-block;
  padding: 0.4em 0.5em;
  background: transparent;
  line-height: 1;
  font-size: min(0.8333333333vw, 12px);
  font-weight: 700;
  margin-left: 1em;
  vertical-align: 0.25em;
}
.contact #contact-form .form_box .radio_group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.contact #contact-form .form_box .radio_group label:hover {
  cursor: pointer;
  color: var(--black-line);
}
.contact #contact-form .form_box .check_group label {
  display: block;
  margin: 0.5em 0;
}
.contact #contact-form .form_box .txt_group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em 0.75em;
}
.contact #contact-form .form_box .txt_group span {
  display: inline-block;
}
.contact #contact-form .form_box input[type=checkbox],
.contact #contact-form .form_box input[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  position: relative;
  right: 0;
  bottom: 0.15em;
  left: 0;
  height: 1em;
  width: 1em;
  transition: all 0.15s ease-out 0s;
  color: #fff;
  background: var(--white);
  cursor: pointer;
  display: inline-block;
  border: 1px solid var(--dark-bg-color);
  border-radius: 10%;
  padding: 0;
}
.contact #contact-form .form_box input[type=radio] {
  border-radius: 50%;
}
.contact #contact-form .form_box input[type=radio]:before {
  content: "";
  display: block;
  width: 0.375em;
  height: 0.375em;
  background: var(--white);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: all ease-out 250ms;
  position: absolute;
  top: 50%;
  left: 50%;
}
.contact #contact-form .form_box input[type=radio]:hover {
  border: 1px solid var(--dark-bg-color);
}
.contact #contact-form .form_box input[type=radio]:checked {
  border: 1px solid var(--dark-bg-color);
}
.contact #contact-form .form_box input[type=radio]:checked:before {
  position: absolute;
  content: "";
  width: 0.5em;
  height: 0.5em;
  background: var(--dark-bg-color);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}
.contact #contact-form .form_box input[type=checkbox]:before,
.contact #contact-form .form_box input[type=checkbox]:after {
  position: absolute;
  content: "";
  transition: all 0.2s ease-in-out;
}
.contact #contact-form .form_box input[type=checkbox]:before {
  left: 0.375em;
  top: -0.25em;
  width: 0;
  height: 0.125em;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}
.contact #contact-form .form_box input[type=checkbox] {
  height: 1.5em;
  width: 1.5em;
  background: var(--white);
  margin-right: 0.5em;
  bottom: 0;
}
.contact #contact-form .form_box input[type=checkbox].agree {
  bottom: 0;
  border: 1px solid var(--dark-bg-color);
}
.contact #contact-form .form_box input[type=checkbox].agree:checked:before {
  left: 0.375em;
  width: 0.75em;
  height: 1.25em;
}
.contact #contact-form .form_box input[type=checkbox]:hover {
  background: var(--white);
  border: 1px solid var(--dark-bg-color);
}
.contact #contact-form .form_box input[type=checkbox]:checked {
  background: var(--white);
  border: 1px solid var(--dark-bg-color);
}
.contact #contact-form .form_box input[type=checkbox]:checked:before {
  left: 0.375em;
  top: -0.25em;
  width: 0.75em;
  height: 1.25em;
  border: 0.1875em solid var(--dark-bg-color);
  border-width: 0 0.1875em 0.1875em 0;
  transform: rotate(45deg);
  background: transparent;
}
@media screen and (max-width: 767px) {
  .contact #contact-form .form_box {
    /* フォームパーツ */
  }
  .contact #contact-form .form_box .form_box_in {
    width: 100%;
    padding: 30px 20px;
  }
  .contact #contact-form .form_box .form_box_in h3 {
    font-size: 2.4rem;
    font-weight: 700;
  }
  .contact #contact-form .form_box .form_box_in h4 {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .contact #contact-form .form_box .form_box_in h5 {
    font-size: 1.6rem;
    font-weight: normal;
  }
  .contact #contact-form .form_box .form_box_in p {
    font-size: 1.6rem;
  }
  .contact #contact-form .form_box .form_box_in .form-parts {
    width: 100%;
    margin: 10px auto;
    flex-direction: column;
  }
  .contact #contact-form .form_box .form_box_in .form-parts .inner {
    padding-left: 10px;
  }
  .contact #contact-form .form_box .form_box_in .form-parts .fieldTitle {
    width: 100%;
    text-align: left;
    font-size: 1.6rem;
    margin-right: 0;
  }
  .contact #contact-form .form_box .form_box_in .form-parts .input-field {
    width: 100%;
    font-size: 1.6rem;
  }
  .contact #contact-form .form_box .form_box_in.privacy h3 {
    font-size: 2rem;
    margin-bottom: 20px;
  }
  .contact #contact-form .form_box .form_box_in.privacy .form-parts {
    width: 100%;
    border-radius: 10px;
    overflow: clip;
  }
  .contact #contact-form .form_box .form_box_in.privacy .form-parts .scroll-box {
    height: 25em;
    overflow-y: scroll;
  }
  .contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box {
    padding: 30px 20px;
  }
  .contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box h4 {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .contact #contact-form .form_box .form_box_in.privacy .form-parts .privacy-box h5 {
    font-size: 1.6rem;
    font-weight: normal;
  }
  .contact #contact-form .form_box .form_box_bottom .agree_check {
    font-size: 1.8rem;
  }
  .contact #contact-form .form_box .btn-area {
    font-size: 2rem;
    display: flex;
    margin: 0 auto;
    align-items: center;
    justify-content: space-around;
    position: relative;
  }
  .contact #contact-form .form_box .btn-area .btn-back {
    right: 110%;
    font-size: 2rem;
  }
  .contact #contact-form .form_box .btn-area .btn-submit {
    font-size: 2rem;
    line-height: normal;
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    font-style: normal;
    font-weight: 600;
    border-radius: 1.6666666667em;
    padding: 0;
  }
  .contact #contact-form .form_box .btn-area .btn-submit span {
    text-align: center;
    padding: 0.75em 1.875em;
  }
  .contact #contact-form .form_box input[type=text] {
    width: 100%;
  }
  .contact #contact-form .form_box input[type=email] {
    width: 100%;
  }
  .contact #contact-form .form_box select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    font-size: 2.8rem;
    padding-right: 1em;
    padding-left: 0.2em;
    background: url("../images/icon-arrow_down.svg") right 0.25em center no-repeat, #fff;
    background-size: 0.625em auto, cover;
    cursor: pointer;
  }
  .contact #contact-form .form_box select:invalid {
    color: #999999;
  }
  .contact #contact-form .form_box select#pref {
    width: 100%;
  }
  .contact #contact-form .form_box .year select {
    width: 5.5em;
  }
  .contact #contact-form .form_box .month select,
  .contact #contact-form .form_box .day select {
    width: 4em;
  }
  .contact #contact-form .form_box textarea {
    line-height: 1.75;
    width: 100%;
    height: 12.375em;
  }
  .contact #contact-form .form_box span.mandatory {
    font-size: min(2.8985507246vw, 12px);
  }
  .contact #contact-form .form_box span.any {
    font-size: min(2.8985507246vw, 12px);
  }
}

.bgcolor-black .contact #contact-form .progressbar ul li {
  color: #3c3f46;
}
.bgcolor-black .contact #contact-form .progressbar ul li span {
  color: #3c3f46;
}
.bgcolor-black .contact #contact-form .progressbar ul li::after {
  background-color: #3c3f46;
  border: 1px solid #3c3f46;
}
.bgcolor-black .contact #contact-form .progressbar ul li.active {
  color: #fff;
}
.bgcolor-black .contact #contact-form .progressbar ul li.active span {
  font-weight: 700;
  color: #fff;
}
.bgcolor-black .contact #contact-form .progressbar ul li.active::after {
  border: 1px solid #fff;
  background: #fff;
}
.bgcolor-black .contact #contact-form .progressbar::before {
  position: absolute;
  z-index: 0;
  bottom: 0.875em;
  left: 0;
  width: 100%;
  height: 3px;
  content: "";
  background-color: #3c3f46;
}
.bgcolor-black .contact #contact-form .form_box .btn-area .btn-submit {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .contact #contact-form .form_box .btn-area .btn-submit:hover {
  background: var(--color01);
  border: 3px solid var(--color01);
}

/*-------------------------------------------------
  お知らせ
-------------------------------------------------*/
.news .news-content {
  padding: 40px;
}
.news .news-content .news-list-wrap {
  width: min(100%, 1200px);
  padding: 0 0 40px;
  margin: 0 auto;
}
.news .news-content .news-list-wrap ul {
  width: 100%;
  display: block;
}
.news .news-content .news-list-wrap ul li {
  width: 100%;
  position: relative;
  border-bottom: 1px solid var(--color02-line);
  transition: 0.3s ease all;
}
.news .news-content .news-list-wrap ul li a {
  padding: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
}
.news .news-content .news-list-wrap ul li a span.post_date {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.3;
  width: 8em;
  flex-shrink: 0;
}
.news .news-content .news-list-wrap ul li a span.post_title {
  font-feature-settings: "palt" on;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: justify;
  flex-grow: 1;
}
.news .news-content .news-list-wrap ul li a::after {
  width: 30px;
  text-align: center;
  content: ">";
  flex-shrink: 0;
}
.news .news-content .news-list-wrap ul li:hover {
  background: var(--color02-hover);
}
@media screen and (max-width: 1023px) {
  .news .news-content {
    padding: 30px 20px;
  }
  .news .news-content .news-list-wrap ul li a {
    flex-wrap: wrap;
    padding: 20px 10px;
    gap: 4px 20px;
  }
  .news .news-content .news-list-wrap ul li a span.post_date {
    width: 100%;
  }
  .news .news-content .news-list-wrap ul li a span.post_title {
    width: calc(100% - 50px);
  }
}

.news-detail .news-detail-content {
  padding: 40px;
}
.news-detail .news-detail-content .detail-box {
  width: min(100%, 1000px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.news-detail .news-detail-content .detail-box .post-meta {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.news-detail .news-detail-content .detail-box .post-meta .post-date {
  font-size: 1.8rem;
}
.news-detail .news-detail-content .detail-box .post-meta .post-title {
  font-size: 2.8rem;
  font-weight: 700;
}
.news-detail .news-detail-content .detail-box .post-detail {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.news-detail .news-detail-content .detail-box .post-detail .inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.news-detail .news-detail-content .detail-box .post-detail a {
  color: var(--color01);
  text-decoration: underline;
}
.news-detail .news-detail-content .detail-box .post-detail ul {
  font-size: 1.8rem;
  margin-left: 1.25em;
}
.news-detail .news-detail-content .detail-box .post-detail ul li {
  list-style: disc;
}
.news-detail .news-detail-content .detail-box .btn-area {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  font-size: 2rem;
  line-height: 1.5;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-back {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  text-align: center;
  gap: 0.5em;
  background: transparent;
  border: none;
  cursor: pointer;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-back > span {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  gap: 0.5em;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-back > span::before {
  font-size: 0.8em;
  content: "＜";
  font-weight: 700;
  transition: 0.3s ease all;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-back:hover > span::before {
  transform: translateX(-0.2em);
  transition: 0.3s all;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-list {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 0.5em 2em;
  font-style: normal;
  font-weight: 600;
  color: var(--white-txt);
  background: var(--color01);
  border-radius: 2.2727272727em;
  border: 3px solid var(--color01);
}
.news-detail .news-detail-content .detail-box .btn-area .btn-list:hover {
  background: var(--black);
  border: 3px solid var(--black);
}
.news-detail .news-detail-content .detail-box .btn-area .btn-next {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  text-align: center;
  gap: 0.5em;
  background: transparent;
  border: none;
  cursor: pointer;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-next > span {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  gap: 0.5em;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-next > span::after {
  font-size: 0.8em;
  content: "＞";
  font-weight: 700;
  transition: 0.3s ease all;
}
.news-detail .news-detail-content .detail-box .btn-area .btn-next:hover > span::after {
  transform: translateX(0.2em);
  transition: 0.3s all;
}
@media screen and (max-width: 1023px) {
  .news-detail .news-detail-content {
    padding: 30px 20px;
  }
  .news-detail .news-detail-content .post-meta {
    gap: 30px;
  }
  .news-detail .news-detail-content .post-meta .post-title {
    font-size: 2rem;
    font-weight: 700;
  }
  .news-detail .news-detail-content .detail-box {
    font-size: 1.8rem;
    width: min(100%, 1000px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .news-detail .news-detail-content .detail-box .post-meta {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .news-detail .news-detail-content .detail-box .post-meta .post-title {
    font-size: 2.4rem;
    font-weight: 700;
  }
  .news-detail .news-detail-content .detail-box .post-detail {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .news-detail .news-detail-content .detail-box .btn-area {
    font-size: 1.8rem;
  }
}

.bgcolor-black .news-detail .news-detail-content .detail-box .btn-area .btn-list {
  color: var(--white);
  background: var(--black);
  border: 3px solid var(--black);
}
.bgcolor-black .news-detail .news-detail-content .detail-box .btn-area .btn-list:hover {
  background: var(--color01);
  border: 3px solid var(--color01);
}

/*-------------------------------------------------
  ホームページの利用について / デフォルトページ
-------------------------------------------------*/
.page-content {
  padding: 80px 40px;
}
.page-content .box-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.page-content .inbox {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (max-width: 1023px) {
  .page-content {
    padding: 30px 20px;
  }
}

/*-------------------------------------------------
  サイト内検索　結果表示ページ
-------------------------------------------------*/
.search-result-content {
  padding: 80px 40px;
}
.search-result-content .search-result-wrap {
  width: min(100%, 1200px);
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .search-result-content {
    padding: 30px 20px;
  }
}

/*-------------------------------------------------
  アニメーション
-------------------------------------------------*/
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}/*# sourceMappingURL=style.css.map */