@charset "UTF-8";
/*
	Theme Name: RE:DIVER-CHILD
	Template: rediver
	Description:  re:Diverの子テーマです。
	Theme URI: http://tan-taka.com/diver/
	Author: Takato Takagi
 */
/* style */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Outfit:wght@100..900&display=swap");
@media screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
body {
  /* header */
  /* header common */
  /* gnav */
  /* gnav sp */
}
body .header_fixed {
  display: none;
}
body .header {
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 1000;
  width: 96%;
  margin: 30px 0 0 0;
  padding: 0;
}
body .hdl {
  display: block;
  width: 80%;
  margin: 0;
  padding: 0;
}
body .hdr {
  display: none !important;
}
body .hlogo {
  width: 180px;
  margin: 0;
  padding: 0;
}
body .hlogo img {
  max-width: 100%;
  height: auto;
}
body .hlogo img:hover {
  transform: translateY(-7px);
  transition-duration: 0.5s;
  opacity: 0.7;
}
body .hltit {
  margin: 0;
  padding: 14px 0 14px 5px;
  color: #000;
  font-size: 11px;
  font-weight: 400;
}
@media (min-width: 768px) {
  body .header {
    display: none;
    justify-content: center;
    align-items: center;
    top: 50px;
  }
  body .header_fixed {
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 10000;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    width: 96%;
    margin: 0;
    padding: 0;
    transition: top 0.5s;
    background: #fff;
  }
  body #js-header.is-show {
    position: fixed;
    top: 0;
  }
  body .hdl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    width: 50%;
    margin: 0;
    padding: 0;
  }
  body .hdr {
    display: flex !important;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    width: 50%;
    margin: 0;
    padding: 0;
  }
  body .hlogo {
    padding: 0 0 0 20px;
  }
  body .hltit {
    padding: 7px 0 7px 21px;
    font-size: 12px;
  }
  body .ct_fix {
    color: #000;
  }
}
body .hltit-c {
  margin: 0;
  padding: 14px 0 0 5px;
  color: #2c2c2c;
  font-size: 11px;
  font-weight: 400;
}
@media (min-width: 768px) {
  body .hltit-c {
    padding: 7px 0 7px 21px;
    font-size: 12px;
  }
}
body .gnav {
  display: none !important;
}
body .hsub_w {
  display: none !important;
}
@media (min-width: 767px) {
  body .gnav {
    display: inline !important;
    margin: 0;
    padding: 0;
  }
  body .gnav ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 18px;
    list-style: none;
    background: #7D6B48;
  }
  body .gnav ul li {
    padding: 0 12px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
  }
  body .gnav ul li a {
    color: #fff;
    text-decoration: none;
  }
  body .gnav ul li a:hover {
    opacity: 0.7;
  }
  body .hsub_w {
    display: inline !important;
  }
  body .hsub {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 999;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 0;
    padding: 17px 18px 48px 18px;
    list-style: none;
    background: #F1EDE1;
  }
  body .hsub li {
    margin: 0;
    padding: 0 12px;
    color: #7D6B48;
    font-size: 13px;
    font-weight: 400;
  }
  body .hsub li a {
    color: #7D6B48;
    text-decoration: none;
  }
  body .hsub li a:hover {
    opacity: 0.7;
  }
}
body .gnavsp {
  display: inline !important;
}
body .hd_nav_w {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  z-index: 9000;
  top: 0;
  right: 0;
  width: 50%;
  margin: 0;
  padding: 20px 10px 0 0;
}
body .nav-menu_w {
  width: 70px;
}
body .nav-menu {
  position: relative;
  z-index: 10000;
  width: 70px;
  height: 50px;
  border: none;
  background: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  cursor: pointer;
}
body .menu__bar {
  display: inline-block;
  width: 66%;
  height: 1px;
  background: #2c2c2c;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.5s;
}
body .menu__bar:first-child {
  top: 14px;
}
body .menu__bar:nth-child(2) {
  top: 24px;
}
body .menu__bar:last-child {
  top: 34px;
}
body .menu--open .menu__bar {
  top: 50%;
}
body .menu--open .menu__bar:first-child {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
body .menu--open .menu__bar:last-child {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
body .menu--open .menu__bar:nth-child(2) {
  display: none;
}
body .gnav-menu-w {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  z-index: 9999;
  width: 100%;
  height: 100vh;
  background: #7D6B48;
}
body .nav__list {
  margin: 0;
  padding: 100px 0 100px 40px;
  text-align: left;
  list-style: none;
}
body .navigation__link {
  display: block;
  padding: 20px 0;
  transition: 0.5s;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}
body .navigation__link a {
  color: #fff;
}
body .navigation__link a:hover {
  opacity: 0.7;
}
@media (min-width: 767px) {
  body .gnavsp {
    display: none !important;
  }
}
body #header.header-wrap {
  width: 100%;
  z-index: 991;
}
body #header.header-wrap.is-layout-block .header-inner {
  align-items: center;
  flex-direction: column;
  gap: 1.2em;
  padding: 1.5em 0;
}
body #header.header-wrap.is-layout-block .header-inner .site-logo {
  padding: 0;
}
body #header.header-wrap.is-layout-block .header-inner #nav > ul {
  gap: 1.5em;
}
body #header.header-wrap.is-layout-block .header-inner #nav > ul > li > a {
  padding: 0;
}
body #header {
  order: -5;
  top: var(--wp-admin--admin-bar--height, 0);
  transition: top 0.4s ease-in-out, box-shadow 0.2s;
  width: 100%;
  z-index: 10;
}
body #header:before {
  background-image: linear-gradient(var(--rd--c--fv-overlay, transparent), transparent);
  content: "";
  height: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transition: 0.2s;
  width: 100%;
  z-index: 1;
}
body #header.is-fixed {
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.06);
}
body #header.is-fixed .sub-logo {
  display: none;
}
body #header.is-fixed .sub-logo + * {
  display: block;
}
body #header.is-drawer-open {
  background: rgb(var(--rd--c--primary, 255 255 255));
  color: rgb(var(--rd--c--primary-on, 0 0 0));
  z-index: 994;
}
body #header.is-drawer-open .header-mini {
  z-index: 10;
}
body #header.is-drawer-open .header-nav.is-position-bottom {
  z-index: -1;
}
body #header .header-drawer {
  background-color: initial;
}
body :where(.header-inner) {
  background-color: rgb(var(--rd--c--primary-v, var(--rd--c--primary, 255 255 255))/var(--rd--header--opacity, 0.8));
  color: rgb(var(--rd--c--primary-v-on, var(--rd--c--primary-on, 0 0 0)));
  left: 0;
  min-height: 60px;
  top: 0;
  transition: inherit;
  transition: 0.15s;
  width: 100%;
  z-index: 20;
}
body :where(.header-inner) > * {
  align-items: center;
  display: flex;
}
body :where(.header-inner) > * + :not(.header-drawer-container,
.site-logo,
.header-drawer-wrapper) {
  margin-left: var(--wp--preset--spacing--20, clamp(1.1rem, 0.63vw + 0.63rem, 1.4rem));
}
body :where(.header-inner) .sub-logo + * {
  display: none;
}
body :where(.header-inner) #logo + * {
  margin-left: auto;
}
body :where(.header-inner) #diver-progress-bar {
  background: rgb(var(--rd--c--secondary)/0.5);
  height: 0;
}
body :where(.header-inner) #diver-progress-bar:before {
  background: rgb(var(--rd--c--secondary));
  border-radius: 0 5px 5px 0;
  transition: width 0.1s;
  width: var(--diver--progress-width, 0);
}
body .site-logo {
  font-size: medium;
  font-weight: 100;
  line-height: 1;
  margin: 0 auto 0 0;
  max-width: clamp(16.875rem, 13.359375rem + 6.25vw, 20.625rem);
}
body .site-logo a {
  color: currentColor;
  display: inline-block;
  text-decoration: none;
}
body .site-logo img,
body .site-logo svg {
  -o-object-fit: contain;
     object-fit: contain;
  width: auto;
}
body .site-logo .site-title {
  font-size: 1.5em;
  letter-spacing: 0.1em;
}
body .site-logo .custom-logo-link {
  font-weight: 700;
  padding-block: 0.8em;
}
body .header-mini {
  background: rgb(var(--rd--c--secondary-v, var(--rd--c--secondary)));
  border-bottom: 1px solid rgba(var(--rd--c--secondary-on)/0.1);
  color: rgb(var(--rd--c--secondary-v-on, var(--rd--c--secondary-on)));
  gap: 0.8em;
  position: relative;
  z-index: 21;
}
body .header-mini ul.menu > li.menu-item.menu-item-has-children > a:after {
  content: "\e313";
  font-family: Google Symbols;
  font-size: 1.2em;
  margin: -0.2em;
}
body .header-mini ul.menu .sub-menu {
  background: rgb(var(--rd--c--secondary-v, var(--rd--c--secondary)));
  color: rgb(var(--rd--c--secondary-v-on, var(--rd--c--secondary-on)));
}
body .header-mini form.searchform {
  background: rgba(var(--rd--c--secondary-on)/0.8);
  box-shadow: none;
  height: auto;
  margin-block: 4px;
  padding-inline: 8px;
}
body .header-mini form.searchform input[name=s] {
  padding: 6px 0;
}
body .header-mini form.searchform input.searchsubmit {
  padding: 4px;
  width: 24px;
}
body .header-mini form.searchform input.searchsubmit:before {
  line-height: 28px;
}
body .header-mini .global-button {
  border-radius: 0;
  box-shadow: none;
  color: currentColor;
  margin-right: 0;
  padding: 0.5em 1.1em 0.4em;
}
body .header-mini .global-button .material-icon {
  margin-right: 0.2em;
}
body .header-mini .global-button.is-style-fill {
  background-color: var(--rd-button--c--bg, rgb(var(--rd--c--accent)));
  filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.1));
}
body .header-mini .global-button.is-style-fill:after {
  background: inherit;
  border-radius: 0 0 7px 7px;
  content: "";
  height: 5px;
  left: 0;
  position: absolute;
  right: 0;
  top: calc(100% - 1px);
}
body #site-description {
  font-size: 12px;
  overflow: hidden;
  padding: 0.6em 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body #site-description + * {
  margin-left: auto;
}
body #header-nav {
  align-items: normal;
  flex: 1;
  justify-content: flex-end;
  margin-right: 0;
}
body #header-nav.is-position-center .header-nav {
  margin-inline: auto;
}
body #header-nav.is-position-center .header-nav .header-nav-item {
  flex: none;
}
body #header-nav.is-position-left {
  justify-content: flex-start;
  margin-inline: 0 auto;
}
body #header-nav.is-position-left .header-drawer {
  margin: 0;
}
body #header-nav.is-position-bottom {
  border-top: 1px solid rgb(var(--rd--c--primary-v-on, var(--rd--c--primary-on, 0 0 0))/0.2);
  gap: 0;
  justify-content: flex-start;
  margin: auto;
  margin-inline: calc(var(--rd--s--wide-padding, var(--rd--content--max-padding)) * -1);
  min-width: calc(100vw - 20px);
  order: 5;
  padding: 0;
  position: relative;
}
body #header-nav.is-position-bottom::-webkit-scrollbar {
  height: 2px;
}
body #header-nav.is-position-bottom::-webkit-scrollbar-track {
  background-color: rgb(var(--rd--c--secondary)/0.4);
}
body #header-nav.is-position-bottom::-webkit-scrollbar-thumb {
  background-color: rgb(var(--rd--c--accent)/0.8);
}
body #header-nav.is-position-bottom .menu-desc {
  display: none;
}
body #header-nav.is-position-bottom .header-nav {
  flex-wrap: nowrap;
  overflow: auto;
  padding: 0 0 0 calc(var(--rd--s--wide-padding, var(--rd--content--max-padding)) - 0.6em);
}
body #header-nav.is-position-bottom .header-nav-item .menu-item-handle {
  gap: 0.3em;
  padding: 0.8em 0.6em;
}
body #header-nav.is-position-bottom .header-nav-item .menu-title {
  font-size: max(0.9em, 1.1rem);
}
body #header-nav.is-position-bottom .header-nav .sub-menu {
  display: none;
}
body #header-nav.is-position-bottom + * {
  margin-left: auto;
}
body #header-nav:not(.is-position-bottom) .menu-item-handle.is-depth-0 {
  padding-inline: 0.5em;
}
body #header-nav:not(.is-position-bottom) .menu-item-handle.is-depth-0.has-sub-text {
  gap: 0.6em;
}
body #header-nav:not(.is-position-bottom) .menu-item-handle.is-depth-0.has-sub-text .material-icon {
  font-size: 3em;
}
body #header-nav .menu-title {
  font-weight: 700;
}
body #header-nav .menu-desc {
  display: block;
}
body #header-nav .menu-item-handle.is-depth-0:before {
  background: rgb(var(--rd--c--accent));
  border-radius: 10px 10px 0 0;
  bottom: 0;
  content: "";
  height: 3px;
  left: 50%;
  position: absolute;
  transition: width 0.15s;
  translate: -50% 0;
  width: 0;
}
body #header-nav .menu-item-handle.is-depth-0:hover {
  background: none;
}
body #header-nav .menu-item:hover > .menu-item-handle:before {
  width: 30%;
}
body #header-nav .header-drawer {
  margin-left: auto;
}
body .header-nav {
  flex-wrap: nowrap;
  height: 100%;
  list-style: none;
  margin: 0;
  scrollbar-gutter: auto;
}
body .header-nav::-webkit-scrollbar {
  display: none;
}
body .header-nav .menu-title {
  font-size: max(0.9em, 1.1rem);
}
body .header-nav-item {
  border: none;
  margin: 0;
  position: relative;
}
body .header-nav-item .menu-item-handle {
  color: currentColor;
  justify-content: flex-start;
  text-decoration: none;
}
body .header-nav-item .menu-item-handle.is-depth-0 {
  height: 100%;
  position: relative;
}
body .header-nav-item .menu-item-handle.is-depth-0:not(.has-icon) .menu-title {
  text-align: center;
}
body .header-nav-item:hover > .sub-menu {
  opacity: 1;
  overflow: visible;
  top: calc(100% + 0.5em);
  transition-delay: 0s;
  visibility: visible;
}
body :where(#header) .sub-menu {
  background-color: rgb(var(--rd--c--primary-v, var(--rd--c--primary, 255 255 255)));
  border-radius: var(--rd--s--radius, 5px);
  color: rgb(var(--rd--c--primary-v-on, var(--rd--c--primary-on, 0 0 0)));
  filter: drop-shadow(5px 5px 10px rgba(0, 0, 0, 0.1));
  left: 50%;
  margin: 0;
  max-height: none;
  opacity: 0;
  padding: 0.8em;
  position: absolute;
  text-align: left;
  top: 100%;
  transition: 0.25s;
  translate: -50% 0;
  visibility: hidden;
  width: -moz-max-content;
  width: max-content;
}
body :where(#header) .sub-menu .menu-title {
  font-size: 1.3rem;
  font-weight: 400;
}
body :where(#header) .sub-menu .menu-desc {
  display: none;
}
body :where(#header) .sub-menu svg {
  height: 1.1em;
  width: 1.1em;
}
body :where(#header) .sub-menu .menu-item {
  position: relative;
}
body :where(#header) .sub-menu .menu-item a:after,
body :where(#header) .sub-menu .menu-item a:before {
  content: none;
}
body :where(#header) .sub-menu .menu-item > .sub-menu {
  left: 100%;
  top: -1em;
  translate: none;
}
body :where(#header) .sub-menu .menu-item > .sub-menu:before {
  left: 0;
  rotate: 45deg;
  top: calc(1em + 16px);
}
body :where(#header) .sub-menu .menu-item:hover > .sub-menu {
  left: calc(100% + 0.5em);
}
body :where(#header) .sub-menu .menu-item-handle {
  padding: 0.6em;
  text-decoration: none;
}
body :where(#header) .sub-menu .menu-item-handle.is-depth-1:after {
  content: none;
}
body :where(#header) .sub-menu .menu-item-handle:hover {
  background: rgb(var(--rd--c--secondary)/0.08);
}
body :where(#header) .sub-menu:before {
  background: inherit;
  content: "";
  height: 12px;
  left: 50%;
  position: absolute;
  rotate: 45deg;
  top: 0;
  translate: -50% -50%;
  width: 12px;
}
body :where(#header) .floating-submenu {
  top: calc(100% + 0.5em);
  transition: opacity 0.2s, translate 0.3s;
  translate: -0.5em;
  visibility: visible;
  z-index: 994;
}

/* footer */
body .footer {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #918774;
}
body .footer_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 90%;
  margin: 0 auto;
  padding: 50px 0 0 0;
  list-style: none;
}
body .f-el {
  display: block;
  margin: 0;
  padding: 0;
}
body .f-logo {
  width: 130px;
  margin: 0;
  padding: 0;
}
body .f-logo img {
  max-width: 100%;
  height: auto;
}
body .f-logo img:hover {
  transform: translateY(-7px);
  transition-duration: 0.5s;
  opacity: 0.7;
}
body .f-nav {
  display: block;
  margin: 0;
  padding: 0;
}
body .f-nav-w {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
body .f-nav-w li {
  padding: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.8;
}
body .f-nav-w-li {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}
body .f-nav-w-li li {
  color: #fff;
  font-size: 13px;
  font-weight: 400;
}
body .f-nav-w-li li.sbc {
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
}
body .f-nav-w li a,
body .f-nav-w-li li a {
  color: #fff;
  text-decoration: none;
}
body .f-nav-w li a:hover,
body .f-nav-w-li li a:hover {
  opacity: 0.7;
}
body .f-s {
  display: block;
  margin: 0;
  padding: 0;
}
body .f-s-w {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
body .f-s-w li.w30 {
  width: 22px;
  margin: 0 auto;
  padding: 0 0 20px 0;
}
body .f-s-w li.w26 {
  width: 18px;
  margin: 0 auto;
  padding: 0 0 20px 0;
}
body .f-s-w li.w30 img,
body .f-s-w li.w26 img {
  max-width: 100%;
  height: auto;
}
body .f-s-w li.w30 img:hover,
body .f-s-w li.w26 img:hover {
  transform: translateY(-7px);
  transition-duration: 0.5s;
  opacity: 0.7;
}
body .f-t-r,
body .f-t-s {
  color: #fff;
  line-height: 1.8;
  font-size: 13px;
}
body .f-t-r a,
body .f-t-s a {
  color: #fff;
  text-decoration: none;
}
body .f-t-r a:hover,
body .f-t-s a:hover {
  opacity: 0.7;
}
body .f-w-m {
  font-weight: 400;
}
body .f-t-tm-l {
  margin: 30px 0 0 0;
}
body .f-t-tm-r {
  margin: 20px 0 0 0;
}
body .f-t-tm-m {
  margin: 10px 0 0 0;
}
body .f-t-tm-s {
  margin: 3px 0 0 0;
}
body .f-t-cp {
  display: flex;
  justify-content: flex-end;
  width: 90%;
  margin: 50px auto 0;
  padding: 0 0 15px 0;
}
@media (min-width: 767px) {
  body .footer_inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 90px 0 0 0;
  }
  body .f-logo {
    width: 160px;
  }
  body .f-nav-w {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
  }
  body .f-nav-w li {
    padding: 0 30px 0 0;
    font-size: 14px;
  }
  body .f-nav-w-li li {
    font-size: 14px;
  }
  body .f-nav-w-li li.sbc {
    font-size: 13px;
  }
  body .f-s-w li.w30 {
    width: 28px;
    padding: 0 0 24px 0;
  }
  body .f-s-w li.w26 {
    width: 24px;
    padding: 0 0 24px 0;
  }
  body .f-t-r,
  body .f-t-s {
    line-height: 1.6;
    font-size: 14px;
  }
  body .f-t-tm-l {
    margin: 50px 0 0 0;
  }
  body .f-t-tm-r {
    margin: 30px 0 0 0;
  }
  body .f-t-tm-m {
    margin: 20px 0 0 0;
  }
  body .f-t-tm-s {
    margin: 10px 0 0 0;
  }
  body .f-t-cp {
    width: 100%;
    max-width: 1200px;
    margin: 70px auto 0;
    padding: 0 0 30px 0;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0 auto;
  padding: 0;
  letter-spacing: 0;
}

body :where(ol, ul) li + li {
  margin-top: 0;
}/*# sourceMappingURL=style.css.map */