@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
/*==================================================================================================
	トップページ
==================================================================================================*/
.-top .campaignSlider {
  max-width: 580px;
  width: 96%;
  margin: 0 auto;
}
.-top .campaignSlider a img {
  transition: 0.2s;
}
.-top .campaignSlider a:hover img {
  opacity: 0.8;
}
.-top .mainView {
  padding-top: 2em;
}
.-top .mainView .campaignSlider .splide__pagination {
  display: flex !important;
}
.-top .secInfomation.centerMode .splide__arrows {
  display: none;
}
.-top .secInfomation.centerMode .splide__list {
  width: 100%;
}
.-top .secInfomation.centerMode .splide__slide {
  margin: 0 auto !important;
}
.-top .secInfomation .splide a img {
  transition: 0.2s;
}
.-top .secInfomation .splide a:hover img {
  opacity: 0.8;
}
.-top .secInfomation .bannerList {
  max-width: 900px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3em;
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 1em;
  place-content: center;
  place-items: center;
  grid-auto-flow: column;
}
.-top .secInfomation .bannerList a img {
  transition: 0.2s;
}
.-top .secInfomation .bannerList a:hover img {
  opacity: 0.8;
}
@media screen and (max-width: 560px) {
  .-top .secInfomation .bannerList {
    display: flex;
    flex-direction: column;
  }
}
.-top .secTab {
  padding-top: 3em;
}
.-top .secTab .banner {
  text-align: center;
  max-width: 360px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-top .secTab .banner a img {
  transition: 0.2s;
}
.-top .secTab .banner a:hover img {
  opacity: 0.8;
}
.-top .secTab .tabWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
  position: relative;
}
.-top .secTab .tabWrap:before {
  content: "";
  width: 100vw;
  height: 2px;
  background: #F3F3F3;
  position: absolute;
  left: 50%;
  top: 3.8em;
  transform: translateY(0) translateX(-50%);
  z-index: -1;
}
.-top .secTab .tabWrap .tabLabel {
  background: #F3F3F3;
  padding: 1em;
  order: -1;
  border-radius: 0.5em 0.5em 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 12em;
  cursor: pointer;
}
.-top .secTab .tabWrap .tabLabel img {
  margin-right: 0.2em;
}
@media screen and (max-width: 480px) {
  .-top .secTab .tabWrap {
    gap: 0.5em;
  }
  .-top .secTab .tabWrap:before {
    top: 3.35em;
  }
  .-top .secTab .tabWrap .tabLabel {
    font-size: 90%;
    min-width: 11em;
  }
}
.-top .secTab .tabWrap .tabContent {
  width: 100%;
  display: none;
}
.-top .secTab .tabWrap .tabSwitch:checked + .tabLabel {
  background: #FFF;
  border: #F3F3F3 2px solid;
  border-bottom: none;
}
.-top .secTab .tabWrap .tabSwitch:checked + .tabLabel + .tabContent {
  display: block;
}
.-top .secTab .tabWrap .tabSwitch {
  display: none;
}
.-top .secTab .tabContent {
  padding-top: 3em;
}
.-top .secTab .tabContent .tabMain {
  text-align: center;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 2em;
}
.-top .secTab .tabContent .tabMain.-mamber {
  flex-direction: row;
  align-items: center;
}
.-top .secTab .tabContent .tabMain.-mamber .whiteMenuList {
  order: -1;
}
.-top .secTab .tabContent .tabMain.-mamber .banner {
  width: calc(33% - 1.5em);
}
@media screen and (max-width: 767px) {
  .-top .secTab .tabContent .tabMain.-mamber .whiteMenuList {
    order: 0;
  }
  .-top .secTab .tabContent .tabMain.-mamber .banner {
    width: 100%;
  }
}
.-top .secTab .tabContent .copy {
  background: #00AF9C;
  padding: 1em;
  color: #FFF;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  border-radius: 0.5em;
  margin-top: 2em;
  position: relative;
  max-width: 42em;
  margin-left: auto;
  margin-right: auto;
}
.-top .secTab .tabContent .copy:before {
  content: "";
  width: 4em;
  height: 1.5em;
  background: url("../img/top/tab-point.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: -2em;
  margin-left: -2em;
}
.-top .secTab .tabContent .copy p {
  line-height: 1.4;
  font-weight: bold;
  font-size: 94%;
}
.-top .secTab .tabContent .copy p .num {
  font-size: 120%;
}
.-top .secTab .tabContent .stepList {
  max-width: 42em;
  margin-left: auto;
  margin-right: auto;
}
.-top .secTab .tabContent .stepList__item {
  margin-bottom: 2em;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  position: relative;
}
.-top .secTab .tabContent .stepList__item:after {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: url("../img/common/icon-fllow.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: calc(100% + 0.6em);
  margin-left: -0.6em;
}
.-top .secTab .tabContent .stepList__item:last-child {
  margin-bottom: 0;
}
.-top .secTab .tabContent .stepList__item:last-child::after {
  content: none;
}
.-top .secTab .tabContent .stepList__item .step {
  color: #00AF9C;
  font-size: 124%;
  font-size: clamp(2.2rem, 3vw, 3rem);
  font-weight: bold;
  margin-bottom: 1em;
  display: block;
  line-height: 1;
}
.-top .secTab .tabContent .stepList__item .textArea {
  border: #00AF9C 2px solid;
  background: #EBF9F7;
  border-radius: 0.5em;
  padding: 1.5em 1em 1em;
  position: relative;
}
.-top .secTab .tabContent .stepList__item .textArea > * {
  margin-bottom: 1em;
}
.-top .secTab .tabContent .stepList__item .textArea > *:last-child {
  margin-bottom: 0;
}
.-top .secTab .tabContent .stepList__item .textArea .ttl {
  font-size: clamp(1.6rem, 2.2vw, 2rem);
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateY(0) translateX(-50%);
  z-index: 1;
  font-weight: bold;
  white-space: nowrap;
}
.-top .secTab .tabContent .stepList__item .textArea .ttl:before {
  content: "";
  width: 110%;
  height: 50%;
  background: #EBF9F7;
  position: absolute;
  left: -5%;
  bottom: 2px;
  z-index: -1;
}
.-top .secTab .tabContent .stepList__item .textArea .ttl .red {
  background: #FB0032;
  color: #FFF;
  display: inline-block;
  border-radius: 0.2em;
  font-size: 80%;
  padding: 0 0.5em;
}
.-top .secTab .tabContent .stepList__item .textArea .btnArea {
  margin-top: 0;
}
.-top .secTab .tabContent .stepList__item .textArea .btnArea .basicBtn {
  max-width: 18em;
}
.-top .secTab .tabContent .stepList__item .textArea p {
  font-size: 80%;
}
.-top .secStore {
  position: relative;
}
.-top .secStore:before {
  content: "";
  width: 60%;
  max-width: 600px;
  height: 90%;
  position: absolute;
  right: 0;
  top: 0;
  background: #FFF9F0;
  z-index: -1;
}
.-top .secStore::after {
  content: "";
  width: 20vw;
  min-width: 7em;
  height: 20vw;
  min-height: 7em;
  background: url("../img/top/search-bg.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: -3vw;
  top: 3em;
  z-index: -1;
}
.-top .secStore .banner {
  text-align: center;
  max-width: 360px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-top .secStore .banner a img {
  transition: 0.2s;
}
.-top .secStore .banner a:hover img {
  opacity: 0.8;
}
.-top .secStore .buttonList {
  display: grid;
  gap: 1em;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  margin-bottom: 2em;
  max-width: 900px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-top .secStore .buttonList .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3em;
  background: #0050A4;
  text-decoration: none;
  color: #FFF;
  padding: 1em;
  text-align: center;
  border-radius: 5em;
  font-size: 106%;
  position: relative;
  line-height: 1.2;
  width: 100%;
  max-width: 30em;
  margin-left: auto;
  margin-right: auto;
}
.-top .secStore .buttonList .btn .icon {
  display: inline-block;
}
.-top .secStore .buttonList .btn .big {
  font-size: 125%;
  margin-right: 0.2em;
}
.-top .secStore .buttonList .btn:hover {
  background: #003771;
}
.-top .secStore .buttonList .btn.-spot {
  background: #00ACD5;
}
.-top .secStore .buttonList .btn.-spot:hover {
  background: #0083a2;
}
.-top .secStore .buttonList .btn.-area {
  background: #0085AD;
}
.-top .secStore .buttonList .btn.-area:hover {
  background: #005e7a;
}
@media screen and (max-width: 767px) {
  .-top .secStore .buttonList {
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .-top .secSProduct .inner {
    padding-left: 0;
    padding-right: 0;
  }
}
.-top .secSProduct .tabWrap .tabGroup {
  display: flex;
  gap: 0 0.5em;
}
.-top .secSProduct .tabWrap .tabGroup .tab {
  flex: 1 1;
  order: -1;
  padding: 1em 0.2em 1.6em 0.2em;
  border-radius: 0.5em 0.5em 0 0;
  background-color: #0050A4;
  color: #fff;
  text-align: center;
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  position: relative;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.2s;
}
.-top .secSProduct .tabWrap .tabGroup .tab:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.4em solid transparent;
  border-left: 0.4em solid transparent;
  border-top: 0.4em solid #FFF;
  border-bottom: 0;
  border-radius: 0.2em;
  position: absolute;
  left: 50%;
  bottom: 0.8em;
  transform: translateY(0) translateX(-50%);
}
.-top .secSProduct .tabWrap .tabGroup .tab:hover {
  background: #003771;
}
.-top .secSProduct .tabWrap .tabGroup .tab.is-active {
  background: #F0F5F5;
  color: #0050A4;
}
.-top .secSProduct .tabWrap .tabGroup .tab.is-active:before {
  border-top: 0.4em solid #0050A4;
}
@media screen and (max-width: 1160px) {
  .-top .secSProduct .tabWrap .tabGroup .tab {
    padding: 0.5em 1vw 1.6em 1vw;
  }
}
@media screen and (max-width: 767px) {
  .-top .secSProduct .tabWrap .tabGroup {
    overflow-x: auto;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  .-top .secSProduct .tabWrap .tabGroup .tab {
    flex: none;
    width: 7em;
    padding: 0.5em 1.5vw 1.2em 1.5vw;
  }
}
@media screen and (max-width: 480px) {
  .-top .secSProduct .tabWrap .tabGroup .tab {
    font-size: 90%;
    padding: 0.5em 1.5vw 1.2em 1.5vw;
  }
  .-top .secSProduct .tabWrap .tabGroup .tab:before {
    bottom: 0.3em;
  }
}
.-top .secSProduct .tabWrap .panelGroup .panel {
  visibility: hidden;
  overflow: hidden;
  height: 0;
}
.-top .secSProduct .tabWrap .panelGroup .panel.is-show {
  overflow: visible;
  visibility: visible;
  height: auto;
}
.-top .secSProduct .tabWrap .panelGroup .tabWrap__main {
  background: #F0F5F5;
  position: relative;
  padding: 3em 0;
}
.-top .secSProduct .tabWrap .panelGroup .tabWrap__main::before {
  content: "";
  width: 100vw;
  height: 100%;
  background: #F0F5F5;
  position: absolute;
  left: 50%;
  top: 0;
  z-index: -1;
  transform: translateY(0) translateX(-50%);
}
.-top .secSProduct .tabWrap .panelGroup .tabWrap__main .splide__pagination {
  display: flex !important;
}
@media screen and (max-width: 767px) {
  .-top .secSProduct .tabWrap .panelGroup .tabWrap__main {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
.-top .secSProduct .priductWrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
  padding: 1em;
  border-radius: 0.3em;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  background: #FFF;
  height: 100%;
  position: relative;
  padding-bottom: 10em;
}
@media screen and (max-width: 1080px) {
  .-top .secSProduct .priductWrap {
    padding-bottom: 14vw;
  }
}
@media screen and (max-width: 767px) {
  .-top .secSProduct .priductWrap {
    padding-bottom: 21vw;
  }
}
@media screen and (max-width: 480px) {
  .-top .secSProduct .priductWrap {
    padding-bottom: 42vw;
  }
}
.-top .secSProduct .priductWrap > * {
  margin-bottom: 1em;
}
.-top .secSProduct .priductWrap > *:last-child {
  margin-bottom: 0;
}
.-top .secSProduct .priductWrap .thumb {
  width: 100%;
  height: 20vw;
  max-height: 200px;
  padding: 1em 0;
}
.-top .secSProduct .priductWrap .thumb a:hover {
  opacity: 0.8;
}
.-top .secSProduct .priductWrap .thumb img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .-top .secSProduct .priductWrap .thumb {
    height: 30vw;
  }
}
@media screen and (max-width: 480px) {
  .-top .secSProduct .priductWrap .thumb {
    height: 60vw;
    max-height: 500px;
  }
}
.-top .secSProduct .priductWrap .textArea {
  text-align: center;
}
.-top .secSProduct .priductWrap .textArea .brand {
  font-size: 80%;
  line-height: 1.4;
}
.-top .secSProduct .priductWrap .textArea .ttl {
  color: #0050A4;
  font-size: 125%;
  line-height: 1.4;
}
.-top .secSProduct .priductWrap .textArea .type {
  font-size: 90%;
  line-height: 1.4;
}
.-top .secSProduct .priductWrap .btnList {
  position: absolute;
  left: 1em;
  bottom: 1em;
  width: calc(100% - 2em);
}
.-top .secSProduct .priductWrap .btnList > * {
  margin-bottom: 0.6em;
}
.-top .secSProduct .priductWrap .btnList > *:last-child {
  margin-bottom: 0;
}
.-top .secSProduct .priductWrap .btnList > * a {
  display: block;
  width: 100%;
}
.-top .secSProduct .priductWrap .btnList > * a img {
  width: 100%;
  transition: 0.2s;
}
.-top .secSProduct .priductWrap .btnList > * a:hover img {
  opacity: 0.8;
}
.-top .secSProduct .priductWrap .splide__pagination {
  display: flex !important;
}
.-top .secNew {
  position: relative;
}
.-top .secNew:before {
  content: "";
  width: 60%;
  max-width: 600px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #FFF5F7;
  z-index: -1;
}
.-top .secNew .movieWrap {
  max-width: 800px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-top .secNew .movieWrap .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.-top .secNew .movieWrap .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.-top .secNew .newProduct {
  margin-top: 2em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
}
.-top .secNew .newProduct__item {
  border-radius: 0.3em;
  border: #CCCCCC 2px solid;
  background: #FFF;
  text-decoration: none;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-top .secNew .newProduct__item a {
  padding: 1em;
  display: flex;
  align-items: center;
  position: relative;
  text-decoration: none;
  transition: 0.2s;
}
.-top .secNew .newProduct__item a .newIcon {
  background: #FB0032;
  color: #FFF;
  border-radius: 5em;
  width: 3em;
  height: 3em;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: -1em;
  top: -1em;
  font-size: 80%;
}
.-top .secNew .newProduct__item a:before {
  content: "";
  width: 0.6em;
  height: 1em;
  background: url("../img/common/icon-arrow-line.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 0.8em;
  top: 50%;
  margin-top: -0.5em;
}
.-top .secNew .newProduct__item a:hover {
  background: #F0F5F5;
}
.-top .secNew .newProduct__item .thumb {
  width: 20%;
  margin-right: 1em;
}
.-top .secNew .newProduct__item .textArea {
  flex: 1;
}
.-top .secNew .newProduct__item .textArea .brand {
  font-size: 80%;
}
.-top .secNew .newProduct__item .textArea p {
  font-size: 110%;
  color: #0050A4;
  font-weight: bold;
}
.-top .secSearch .sContainer > .ttl {
  font-size: 110%;
  color: #0050A4;
  text-align: center;
  margin-bottom: 1em;
}
.-top .secSearch .sContainer > .ttl span {
  font-size: 120%;
}
.-top .secSearch .sContainer .banner {
  text-align: center;
  max-width: 460px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2em;
}
.-top .secSearch .sContainer .makerSlider .splide-wrapper {
  max-width: 80%;
}
.-top .secSearch .sContainer .makerSlider .splide__slide {
  border-radius: 0.3em;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
  transition: 0.2s;
  min-height: 5em;
}
.-top .secSearch .sContainer .makerSlider .splide__slide:hover {
  opacity: 0.8;
}
.-top .secSearch .sContainer .makerSlider .splide__slide .slide {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 1em;
}
.-top .secSearch .sContainer .makerSlider .splide__arrow--next {
  width: 2em;
  height: 2em;
  right: -2.2em;
}
.-top .secSearch .sContainer .makerSlider .splide__arrow--prev {
  width: 2em;
  height: 2em;
  left: -2.2em;
}
.-top .secBanners .bannerList {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
.-top .secBanners .bannerList__item {
  width: 32%;
}
.-top .secBanners .bannerList__item.-tax {
  width: 100%;
  max-width: 800px;
  flex: auto;
  order: -1;
  margin-bottom: 1em;
}
.-top .secBanners .bannerList__item a img {
  transition: 0.2s;
}
.-top .secBanners .bannerList__item a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .-top .secBanners .bannerList {
    flex-direction: column;
    gap: 1.5em;
  }
  .-top .secBanners .bannerList__item {
    width: 100%;
    max-width: 360px;
  }
  .-top .secBanners .bannerList__item.-tax {
    order: 0;
    margin-bottom: 0;
    max-width: 100%;
  }
}
.-top .secBanners .bannerList .taxWrap {
  border: #FB0032 2px solid;
  background: #FFF;
  display: flex;
}
.-top .secBanners .bannerList .taxWrap .ttl {
  padding: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
}
.-top .secBanners .bannerList .taxWrap .ttl img {
  max-width: 360px;
  width: 100%;
}
.-top .secBanners .bannerList .taxWrap .linkList {
  display: flex;
  gap: 1px;
  flex-direction: column;
  width: 30%;
}
.-top .secBanners .bannerList .taxWrap .linkList__item a {
  background: #FB0032;
  color: #FFF;
  text-decoration: none;
  display: flex;
  align-items: center;
  padding: 1em 1.5em 1em 1em;
  position: relative;
  transition: 0.2s;
}
.-top .secBanners .bannerList .taxWrap .linkList__item a:hover {
  background: #c80028;
}
.-top .secBanners .bannerList .taxWrap .linkList__item a::before {
  content: "";
  width: 0.6em;
  height: 0.6em;
  background: url("../img/common/icon-arrow.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 0.5em;
  top: 50%;
  margin-top: -0.3em;
}
@media screen and (max-width: 767px) {
  .-top .secBanners .bannerList .taxWrap {
    flex-direction: column;
    border-bottom: none;
  }
  .-top .secBanners .bannerList .taxWrap .linkList {
    display: flex;
    gap: 1px;
    flex-direction: row;
    width: 100%;
  }
  .-top .secBanners .bannerList .taxWrap .linkList__item {
    flex: 1;
  }
  .-top .secBanners .bannerList .taxWrap .linkList__item a {
    font-size: 90%;
  }
}
.-top .secNews .newsList__item {
  border-bottom: #E3E3E3 1px solid;
}
.-top .secNews .newsList__item:first-child a {
  padding-top: 0;
}
.-top .secNews .newsList__item a {
  display: flex;
  padding: 1.5em 0.2em;
  text-decoration: none;
  gap: 1em;
  transition: 0.2s;
}
.-top .secNews .newsList__item a:hover {
  opacity: 0.8;
}
.-top .secNews .newsList__item time {
  color: #0050A4;
  font-family: "Montserrat", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  width: 6em;
}
.-top .secNews .newsList__item p {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .-top .secNews .newsList__item a {
    flex-direction: column;
    gap: 0.5em;
    padding: 1em 0.2em;
  }
}
.-top .secSns {
  padding-top: 0;
  position: relative;
}
.-top .secSns:before {
  content: "";
  width: 100%;
  height: 50%;
  background: #FFF9F0;
  position: absolute;
  left: 0;
  bottom: 2em;
  z-index: -1;
}

/*==================================================================================================
	来店予約
==================================================================================================*/
.-sub.-reservation {
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-sub.-reservation form h2 {
  font-size: clamp(1.8rem, 5vw, 180%);
  text-align: center;
  margin-bottom: 1em;
}
.-sub.-reservation form > p {
  text-align: center;
  margin-top: 1.5em;
}
.-sub.-reservation form > p span {
  color: #0050A4;
}
.-sub.-reservation form > p strong {
  color: #FB0032;
}
.-sub.-reservation .formSteps {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0 3.4rem;
  position: relative;
  margin-bottom: 3em;
}
.-sub.-reservation .formSteps::after {
  background: #ccc;
  width: 80%;
  height: 1px;
  position: absolute;
  top: 1.5em;
  left: 50%;
  transform: translateX(-50%);
}
.-sub.-reservation .formSteps li {
  position: relative;
}
.-sub.-reservation .formSteps li::before {
  content: "";
  display: block;
  width: 100%;
  height: 3.6em;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  z-index: 2;
}
.-sub.-reservation .formSteps li:not(:first-child)::after {
  content: "";
  position: absolute;
  top: 1.5em;
  right: 1.5em;
  width: 6em;
  height: 1px;
  background: #ccc;
  z-index: 1;
}
.-sub.-reservation .formSteps li:nth-child(1)::before {
  background-image: url(../img/reservation/num01.svg);
}
.-sub.-reservation .formSteps li:nth-child(2)::before {
  background-image: url(../img/reservation/num02.svg);
}
.-sub.-reservation .formSteps li:nth-child(3)::before {
  background-image: url(../img/reservation/num03.svg);
}
.-sub.-reservation .formSteps li:nth-child(4)::before {
  background-image: url(../img/reservation/num04.svg);
}
.-sub.-reservation .formSteps li:nth-child(5)::before {
  background-image: url(../img/reservation/num05.svg);
}
.-sub.-reservation .formSteps li.active:nth-child(1)::before {
  background-image: url(../img/reservation/num01-on.svg);
}
.-sub.-reservation .formSteps li.active:nth-child(2)::before {
  background-image: url(../img/reservation/num02-on.svg);
}
.-sub.-reservation .formSteps li.active:nth-child(3)::before {
  background-image: url(../img/reservation/num03-on.svg);
}
.-sub.-reservation .formSteps li.active:nth-child(4)::before {
  background-image: url(../img/reservation/num04-on.svg);
}
.-sub.-reservation .formSteps li.active:nth-child(5)::before {
  background-image: url(../img/reservation/num05-on.svg);
}
.-sub.-reservation .formSteps li p {
  width: 3em;
  margin: 0 auto;
  text-align: center;
  line-height: 1.3;
  color: #999;
}
.-sub.-reservation .formSteps li.active p {
  color: #0050A4;
}
.-sub.-reservation .inputArea {
  max-width: 600px;
  margin: 0 auto;
}
.-sub.-reservation .inputArea dt {
  font-size: 1.6rem;
  color: #0050A4;
  font-weight: bold;
}
.-sub.-reservation .inputArea dt:not(:first-of-type) {
  margin-top: 1.6em;
}
.-sub.-reservation .inputArea dt span {
  color: #FB0032;
  font-size: 1.2rem;
  margin-left: 0.5em;
}
.-sub.-reservation .inputArea dd {
  width: 100%;
  margin-top: 0.6em;
}
.-sub.-reservation .inputArea.confirm {
  background: #fff;
  padding: 1em;
  border-radius: 6px;
  margin-top: 2em;
}
.-sub.-reservation .inputArea.confirm p {
  font-size: 1.8rem;
}
.-sub.-reservation .btnArea__next input {
  background: url(../img/reservation/icon-arrow-right-white.svg) no-repeat center right 1em #0050A4;
  color: #fff;
  border-radius: 100px;
}
.-sub.-reservation .btnArea__back a {
  display: block;
  background: url(../img/reservation/icon-arrow-left-blue.svg) no-repeat center left 1em #fff;
  width: 400px;
  max-width: 100%;
  padding: 1.5em;
  margin: 1em auto auto auto;
  line-height: 1;
  border-radius: 0;
  border: none;
  color: #0050A4;
  border: 1px solid #0050A4;
  border-radius: 100px;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
}
.-sub.-reservation .telArea {
  text-align: center;
}
.-sub.-reservation .telArea h3 {
  font-size: clamp(1.8rem, 5vw, 180%);
}
.-sub.-reservation .telArea .shopName {
  font-size: clamp(1.4rem, 5vw, 140%);
  font-weight: bold;
}
.-sub.-reservation .telArea a {
  display: inline-block;
  margin-top: 0.2em;
  padding-left: 0.8em;
  font-size: clamp(3rem, 5vw, 300%);
  color: #0050A4;
  text-decoration: none;
  font-weight: bold;
  line-height: 1;
  position: relative;
}
.-sub.-reservation .telArea a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  background: url(../img/reservation/icon-tel.svg) no-repeat left center/contain;
  width: 1em;
  height: 0.8em;
  transform: translateY(-40%);
}
.-sub.-reservation .telArea .time {
  margin-top: 0.6em;
}
.-sub.-reservation .scrollCaution {
  width: 100%;
  height: 30vh;
  overflow-y: scroll;
  padding: 2rem;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 6px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
}
.-sub.-reservation .inputCheckList__item:not(:first-child) {
  margin-top: 1em;
}
.-sub.-reservation .inputCheckList label {
  display: block;
  width: 100%;
  background: #fff;
  padding: 2rem;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 6px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
  font-size: 1.6rem;
}
.-sub.-reservation .inputCheckList input[type=checkbox] {
  margin-right: 0.6em;
}
.-sub.-reservation input[type=text],
.-sub.-reservation input[type=date],
.-sub.-reservation input[type=tel],
.-sub.-reservation input[type=email],
.-sub.-reservation input[type=number],
.-sub.-reservation select {
  font-size: 1.6rem;
}

/*==================================================================================================
	店舗詳細
==================================================================================================*/
.-store .storeLabel {
  text-align: center;
  font-size: 190%;
  line-height: 1.4;
  margin-bottom: 0.2em;
}
.-store .tagList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.6em;
  margin-bottom: 2em;
}
.-store .tagList li {
  background: #9CACBB;
  color: #FFF;
  line-height: 1.2;
  padding: 0.3em 0.8em;
  border-radius: 0.1em;
  font-size: 93%;
}
.-store .storeSlider {
  max-width: 580px;
  width: 96%;
  margin: 0 auto;
}
.-store .storeSlider img {
  border-radius: 1.2em;
}
.-store .importantWrap {
  margin-bottom: 2em;
}
.-store .conversionList {
  display: flex;
  justify-content: center;
  gap: clamp(0.6em, 3vw, 1em);
  max-width: 600px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-store .conversionList__item {
  flex: 1;
}
.-store .conversionList__item a {
  padding: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  background: #0050A4;
  border-radius: 0.3em;
  color: #FFF;
  text-decoration: none;
  font-size: clamp(1.6rem, 4vw, 135%);
}
.-store .conversionList__item a.-coupon {
  background: #FB0032;
}
.-store .conversionList__item a.-reserve {
  background: #FF750D;
}
.-store .conversionList__item .icon {
  filter: invert(50%) sepia(0%) saturate(0%) hue-rotate(295deg) brightness(210%) contrast(103%);
}
.-store .conversionList__item span {
  line-height: 1;
}
@media screen and (max-width: 480px) {
  .-store .conversionList__item a {
    flex-direction: column;
  }
}
.-store .conversionList.-floating {
  position: fixed;
  left: 50%;
  bottom: -200px;
  transform: translateY(0) translateX(-50%);
  z-index: 100;
  background: #FFF;
  padding: 0.6em;
  max-width: 100%;
  transition: 0.5s;
  gap: 0.6em;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.15);
}
.-store .conversionList.-floating .conversionList__item {
  max-width: 300px;
}
.-store .conversionList.-floating .conversionList__item a {
  padding: 0.8em;
  font-size: clamp(1.5rem, 4vw, 125%);
}
@media screen and (max-width: 480px) {
  .-store .conversionList.-floating .conversionList__item a {
    flex-direction: row;
  }
  .-store .conversionList.-floating .conversionList__item a .icon {
    width: 1.4em;
    height: 1.4em;
  }
}
.-store .conversionList.-floating.fixed {
  bottom: -1px;
}
.-store .bannerRoot {
  margin-top: 1em;
  max-width: 600px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-store .bannerRoot a {
  padding: 2em 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  background: #3E9CE1;
  border-radius: 0.3em;
  color: #FFF;
  text-decoration: none;
  position: relative;
  font-size: clamp(1.6rem, 5.2vw, 160%);
}
.-store .bannerRoot a:before {
  content: "";
  width: 100%;
  height: 100%;
  background: url("../img/common/bg-stripe.svg") repeat;
  background-size: 17px;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.5;
}
.-store .bannerRoot a span {
  line-height: 1;
}
.-store .bannerRoot .icon {
  filter: invert(50%) sepia(0%) saturate(0%) hue-rotate(295deg) brightness(210%) contrast(103%);
}
.-store .secCampaign {
  padding: 0;
}
.-store .secCampaign .campaignSlider .splide-wrapper .splide__pagination {
  display: flex;
}
.-store .secEvent .eventList__item {
  border-bottom: #E3E3E3 1px solid;
}
.-store .secEvent .eventList__item:first-child a {
  padding-top: 0;
}
.-store .secEvent .eventList__item a {
  display: flex;
  align-items: center;
  gap: clamp(1em, 5vw, 2em);
  padding: 1.5em 0.2em;
  text-decoration: none;
  transition: 0.2s;
}
.-store .secEvent .eventList__item a:hover {
  opacity: 0.8;
}
.-store .secEvent .eventList__item .thumb {
  max-width: 200px;
  width: 36%;
  max-height: 200px;
  height: 32vw;
  overflow: hidden;
  border-radius: 1em;
}
.-store .secEvent .eventList__item .thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.-store .secEvent .eventList__item .textArea {
  flex: 1;
}
.-store .secEvent .eventList__item .textArea time {
  color: #0050A4;
  font-family: "Montserrat", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  width: 6em;
}
.-store .secEvent .eventList__item .textArea .ttl {
  font-size: 110%;
  margin-bottom: 0.5em;
}
.-store .secEvent .eventList__item .textArea p {
  flex: 1;
}
.-store .bannerList {
  max-width: 900px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  gap: 1em;
  place-content: center;
  place-items: center;
  grid-auto-flow: column;
}
.-store .bannerList__item {
  flex: 1;
}
.-store .bannerList a img {
  transition: 0.2s;
}
.-store .bannerList a:hover img {
  opacity: 0.8;
}
@media screen and (max-width: 560px) {
  .-store .bannerList {
    display: flex;
    flex-direction: column;
  }
}
.-store .tabWrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 1em;
  position: relative;
}
.-store .tabWrap:before {
  content: "";
  width: 100vw;
  height: 2px;
  background: #CCCCCC;
  position: absolute;
  left: 50%;
  top: 4.3em;
  transform: translateY(0) translateX(-50%);
  z-index: -1;
}
.-store .tabWrap .tabLabel {
  background: #0085AD;
  color: #FFF;
  border-bottom: #CCCCCC 2px solid;
  padding: 1em 1em 1.5em;
  order: -1;
  border-radius: 0.5em 0.5em 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 12em;
  cursor: pointer;
  position: relative;
}
.-store .tabWrap .tabLabel:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.4em solid transparent;
  border-left: 0.4em solid transparent;
  border-top: 0.4em solid #FFF;
  border-bottom: 0;
  border-radius: 0.2em;
  position: absolute;
  left: 50%;
  bottom: 0.8em;
  transform: translateY(0) translateX(-50%);
}
@media screen and (max-width: 480px) {
  .-store .tabWrap {
    gap: 0 0.5em;
  }
  .-store .tabWrap:before {
    top: 3.85em;
  }
  .-store .tabWrap .tabLabel {
    font-size: 90%;
    min-width: 11em;
  }
}
.-store .tabWrap .tabSwitch:checked + .tabLabel {
  background: #F0F5F5;
  border: #CCCCCC 2px solid;
  border-bottom: none;
  color: #0085AD;
}
.-store .tabWrap .tabSwitch:checked + .tabLabel:before {
  border-top: 0.4em solid #0085AD;
}
.-store .tabWrap .tabSwitch:checked + .tabLabel + .tabContent {
  display: block;
}
.-store .tabWrap .tabSwitch {
  display: none;
}
.-store .tabWrap .tabContent {
  width: 100%;
  display: none;
  background: #F0F5F5;
  padding: clamp(1em, 5vw, 3em) 0;
}
.-store .tabWrap .tabContent__inner {
  background: #FFF;
  padding: clamp(1em, 5vw, 3em);
  max-width: 1080px;
  width: 90vw;
}
.-store .tabWrap .storeOutline > li {
  border-bottom: #E3E3E3 1px solid;
  padding: 2em 1em;
  display: flex;
  gap: 0.6em;
}
.-store .tabWrap .storeOutline > li:first-child {
  padding-top: 1em;
}
.-store .tabWrap .storeOutline > li:last-child {
  border-bottom: none;
  padding-bottom: 1em;
}
.-store .tabWrap .storeOutline > li .ttl {
  width: 14em;
  font-weight: bold;
}
.-store .tabWrap .storeOutline > li .text {
  flex: 1;
}
.-store .tabWrap .storeOutline > li .text > * {
  margin-bottom: 1em;
}
.-store .tabWrap .storeOutline > li .text > *:last-child {
  margin-bottom: 0;
}
.-store .tabWrap .storeOutline > li .text a {
  color: #0085AD;
}
.-store .tabWrap .storeOutline > li .text .simpleList {
  font-size: 90%;
}
.-store .tabWrap .storeOutline > li.addressWrap {
  position: relative;
}
.-store .tabWrap .storeOutline > li.addressWrap .text {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}
.-store .tabWrap .storeOutline > li.addressWrap .text p {
  margin-bottom: 0;
}
.-store .tabWrap .storeOutline > li.addressWrap .map {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  padding: 0.6em;
  font-size: 85%;
  border: #0050A4 1px solid;
  border-radius: 0.2em;
  text-decoration: none;
  color: #0050A4;
}
.-store .tabWrap .storeOutline > li.addressWrap .map span {
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .-store .tabWrap .storeOutline > li {
    flex-direction: column;
    padding: 1.4em 0.2em;
  }
  .-store .tabWrap .storeOutline > li.addressWrap {
    position: relative;
  }
  .-store .tabWrap .storeOutline > li.addressWrap .text {
    flex-wrap: nowrap;
    gap: 1em;
  }
  .-store .tabWrap .storeOutline > li.addressWrap .text p {
    flex: 1;
  }
  .-store .tabWrap .storeOutline > li.addressWrap .map {
    flex-direction: column;
    margin-top: -3em;
    max-height: 5em;
  }
}
.-store .tabWrap .wpText {
  margin-bottom: 2em;
  /* clearfix */
}
.-store .tabWrap .wpText:after {
  content: "";
  display: block;
  clear: both;
}
.-store .tabWrap .wpText > *:first-child {
  margin-top: 0;
}
.-store .tabWrap .wpText .has-text-align-right {
  text-align: left;
}
.-store .tabWrap .wpText .has-text-align-center {
  text-align: center;
}
.-store .tabWrap .wpText .has-text-align-left {
  text-align: right;
}
.-store .tabWrap .wpText p {
  line-height: 2;
  margin: 1em 0;
  display: block;
  padding: 0 0.3em;
}
.-store .tabWrap .wpText p a {
  color: #0085AD;
  text-decoration: underline;
}
.-store .tabWrap .wpText p a:hover {
  text-decoration: none;
}
.-store .tabWrap .wpText strong {
  font-weight: bold;
}
.-store .tabWrap .wpText .aligncenter {
  display: block;
  margin: 0 auto;
}
.-store .tabWrap .wpText .alignright {
  float: right;
}
.-store .tabWrap .wpText .alignleft {
  float: left;
}
.-store .tabWrap .wpText img[class*=wp-image-],
.-store .tabWrap .wpText img[class*=attachment-] {
  height: auto;
  max-width: 100%;
}
.-store .tabWrap .wpText .clearfix {
  overflow: hidden;
  zoom: 1;
}
.-store .tabWrap .wpText .clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.-store .tabWrap .wpText h1, .-store .tabWrap .wpText h2, .-store .tabWrap .wpText h3, .-store .tabWrap .wpText h4, .-store .tabWrap .wpText h5 {
  font-size: 115%;
  margin-top: 2em;
  margin-bottom: 0.5em;
  font-weight: 500;
  color: #0085AD;
}
.-store .tabWrap .wpText ul {
  list-style: none;
  border-radius: 0.2em;
  margin: 3em 0;
}
.-store .tabWrap .wpText ul li {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.6em;
}
.-store .tabWrap .wpText ul li:last-child {
  margin-bottom: 0;
}
.-store .tabWrap .wpText ul li:before {
  content: "●";
  color: #CCCCCC;
  font-size: 60%;
  margin-right: 0.5em;
}
.-store .tabWrap .wpText ol {
  list-style: none;
  border-radius: 0.2em;
  margin: 3em 0;
  list-style: decimal;
}
.-store .tabWrap .wpText ol li {
  margin-bottom: 0.6em;
  margin-left: 1.5em;
}
.-store .tabWrap .wpText ol li:last-child {
  margin-bottom: 0;
}
.-store .secMap .googleMap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 50%;
}
.-store .secMap .googleMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .-store .secMap .googleMap {
    padding-top: 80%;
  }
}
.-store .secMap .btnArea .basicBtn {
  background: #3E9CE1;
}
.-store .secMap .btnArea .basicBtn:hover {
  background: #2083cc;
}
.-store .secMap .btnArea .basicBtn:after {
  content: none;
}
.-store .secMap .btnArea .basicBtn span {
  padding-left: 1.8em;
  position: relative;
}
.-store .secMap .btnArea .basicBtn span:before {
  content: "";
  width: 1.4em;
  height: 1.4em;
  background: url("../img/common/icon-compass.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.7em;
}
.-store .secFloor {
  padding-top: 0;
}
.-store .secFloor .banner {
  max-width: 360px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-store .secFloor .ophthalmologyList {
  margin-top: 2em;
  display: flex;
  gap: 1em;
}
.-store .secFloor .ophthalmologyList li {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .-store .secFloor .ophthalmologyList {
    gap: 4vw 4%;
    flex-wrap: wrap;
  }
  .-store .secFloor .ophthalmologyList li {
    width: 48%;
    flex: none;
  }
}

/*==================================================================================================
	地図から探す
==================================================================================================*/
.-search .flexLabelArea,
.-store_search .flexLabelArea {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1em;
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .-search .flexLabelArea,
.-store_search .flexLabelArea {
    flex-direction: column;
  }
}
.-search .flexLabelArea .topLabel,
.-store_search .flexLabelArea .topLabel {
  flex: 1;
  text-align: left;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 0;
}
.-search .flexLabelArea .btnArea,
.-store_search .flexLabelArea .btnArea {
  margin-top: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1em;
}
.-search .flexLabelArea .btnArea .basicBtn,
.-store_search .flexLabelArea .btnArea .basicBtn {
  max-width: 100%;
  width: auto;
}
@media screen and (max-width: 480px) {
  .-search .flexLabelArea .topLabel .main,
.-store_search .flexLabelArea .topLabel .main {
    font-size: clamp(2rem, 6.8vw, 280%);
  }
  .-search .flexLabelArea .btnArea,
.-store_search .flexLabelArea .btnArea {
    display: none;
  }
  .-search .flexLabelArea .btnArea .basicBtn,
.-store_search .flexLabelArea .btnArea .basicBtn {
    font-size: clamp(1.2rem, 3.5vw, 1.6rem);
  }
}
.-search .secMap,
.-store_search .secMap {
  background: #ccc;
  position: relative;
}
.-search .secMap .searchArea,
.-store_search .secMap .searchArea {
  position: absolute;
  top: 2em;
  left: 50%;
  transform: translateX(-50%);
  width: 92vw;
  background: #fff;
  border-radius: 300px;
}
.-search .secMap .searchArea form,
.-store_search .secMap .searchArea form {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
}
.-search .secMap .searchArea .left,
.-store_search .secMap .searchArea .left {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  overflow: hidden;
  border-top-left-radius: 300px;
  border-bottom-left-radius: 300px;
}
.-search .secMap .searchArea .left select,
.-store_search .secMap .searchArea .left select {
  width: 10em;
  height: auto;
  background: url("../img/map/icon-arrow-down-white.svg") no-repeat center right 1em/0.7em #0050A4;
  text-align: center;
  color: #fff;
}
.-search .secMap .searchArea .left input[type=text],
.-store_search .secMap .searchArea .left input[type=text] {
  width: 100%;
  height: auto;
  border: 0px;
}
.-search .secMap .searchArea input[type=submit],
.-store_search .secMap .searchArea input[type=submit] {
  width: 4.5em;
  height: auto;
  aspect-ratio: 1;
  margin: 0;
  text-indent: -9999px;
  background: url("../img/map/icon-search.svg") no-repeat center/1.5em #0050A4;
  border-radius: 300px;
}
.-search .secMap .searchBalloon,
.-store_search .secMap .searchBalloon {
  position: absolute;
  bottom: 2em;
  left: 50%;
  transform: translateX(-50%);
  width: 92vw;
  background: #fff;
  padding: clamp(1em, 5vw, 2em) 5vw;
  border-radius: 10px;
  box-shadow: 0px 0px 16px 0px rgba(204, 204, 204, 0.65);
}
@media screen and (min-width: 480px) {
  .-search .secMap .searchBalloon,
.-store_search .secMap .searchBalloon {
    padding-left: 2em;
    padding-right: 2em;
    max-width: 600px;
  }
}
.-search .secMap .searchBalloon .shopname a,
.-store_search .secMap .searchBalloon .shopname a {
  text-decoration: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.6em;
  position: relative;
  padding-right: 2em;
  font-size: clamp(1.6rem, 4.2vw, 140%);
  font-weight: bold;
}
.-search .secMap .searchBalloon .shopname a::after,
.-store_search .secMap .searchBalloon .shopname a::after {
  content: "";
  width: 0.5em;
  height: 1em;
  background: url("../img/common/icon-arrow-line.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 1em;
  top: 50%;
  margin-top: -0.5em;
  filter: invert(0%) sepia(7%) saturate(9%) hue-rotate(113deg) brightness(0%) contrast(100%);
  transition: 0.2s;
}
.-search .secMap .searchBalloon .near,
.-store_search .secMap .searchBalloon .near {
  color: #0050A4;
  font-size: 94%;
  font-weight: bold;
  padding-left: 1em;
  position: relative;
  margin-top: 0.4em;
  display: block;
}
.-search .secMap .searchBalloon .near::before,
.-store_search .secMap .searchBalloon .near::before {
  content: "";
  width: 0.8em;
  height: 1em;
  background: url("../img/common/icon-mappin.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
  filter: invert(57%) sepia(4%) saturate(6%) hue-rotate(353deg) brightness(94%) contrast(86%);
}
.-search .secMap .searchBalloon .btn,
.-store_search .secMap .searchBalloon .btn {
  display: flex;
  gap: 1em;
  margin-top: 1em;
}
.-search .secMap .searchBalloon .btn a,
.-store_search .secMap .searchBalloon .btn a {
  background: #0050a4;
  color: #fff;
  padding: 1em;
  text-align: center;
  text-decoration: none;
  border-radius: 5em;
  display: block;
  font-size: 100%;
  position: relative;
  line-height: 1.2;
  max-width: 12em;
  width: 100%;
}
.-search .secMap .searchBalloon .btn a::after,
.-store_search .secMap .searchBalloon .btn a::after {
  content: "";
  width: 0.8em;
  height: 0.8em;
  background: url(../img/common/icon-arrow-line_white.svg) no-repeat;
  position: absolute;
  right: 1em;
  top: 50%;
  margin-top: -0.4em;
}
.-search .secMap .searchBalloon .btn a.reserve,
.-store_search .secMap .searchBalloon .btn a.reserve {
  background: #ff750d;
}
.-search .secSearchChild .btnArea,
.-store_search .secSearchChild .btnArea {
  margin-top: 0;
  margin-bottom: 1em;
}
.-search .secSearchChild .grayBox,
.-store_search .secSearchChild .grayBox {
  background: #F5F5F5;
  padding: 0.6em;
  display: block;
  border-radius: 0.2em;
  font-size: 108%;
  line-height: 1.6;
}
.-search .keywordSearch a,
.-search .prefecturesSearch a,
.-store_search .keywordSearch a,
.-store_search .prefecturesSearch a {
  color: #000000;
  text-decoration: none;
}
.-search .keywordSearch .searchCont .searchLabel,
.-search .prefecturesSearch .searchCont .searchLabel,
.-store_search .keywordSearch .searchCont .searchLabel,
.-store_search .prefecturesSearch .searchCont .searchLabel {
  display: block;
  padding: 0.8em;
  color: #ffffff;
  font-size: 125%;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  border-top-left-radius: 0.6rem;
  border-top-right-radius: 0.6rem;
  background: #666666;
  cursor: pointer;
  position: relative;
}
.-search .keywordSearch .searchCont .searchLabel:before,
.-search .prefecturesSearch .searchCont .searchLabel:before,
.-store_search .keywordSearch .searchCont .searchLabel:before,
.-store_search .prefecturesSearch .searchCont .searchLabel:before {
  display: block;
  content: "";
  width: 0.7em;
  height: 0.4em;
  background: url("../img/search/arrow-top_white.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 1.2em;
  transform: translateY(-50%);
}
.-search .keywordSearch .searchCont .searchLabel.close:before,
.-search .prefecturesSearch .searchCont .searchLabel.close:before,
.-store_search .keywordSearch .searchCont .searchLabel.close:before,
.-store_search .prefecturesSearch .searchCont .searchLabel.close:before {
  background: url("../img/search/arrow-bottom_white.svg") no-repeat;
  background-size: contain;
}
.-search .keywordSearch .searchCont .searchBox,
.-search .prefecturesSearch .searchCont .searchBox,
.-store_search .keywordSearch .searchCont .searchBox,
.-store_search .prefecturesSearch .searchCont .searchBox {
  display: block;
  border-bottom-left-radius: 0.6rem;
  border-bottom-right-radius: 0.6rem;
  background: #f5f5f5;
}
.-search .keywordSearch .searchBox,
.-store_search .keywordSearch .searchBox {
  padding: 1.4em 1.6em 1.9em;
}
.-search .keywordSearch .searchBox .searchform,
.-store_search .keywordSearch .searchBox .searchform {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.-search .keywordSearch .searchBox .searchform .searchWord,
.-store_search .keywordSearch .searchBox .searchform .searchWord {
  width: 100%;
  max-width: 27em;
  margin-right: 1.4em;
}
.-search .keywordSearch .searchBox .searchform .searchWord .searchField,
.-store_search .keywordSearch .searchBox .searchform .searchWord .searchField {
  height: 4.6rem;
  padding: 0 0.6em;
  font-size: 1.6rem;
  border: none;
}
.-search .keywordSearch .searchBox .searchform .searchWord .searchField::-moz-placeholder, .-store_search .keywordSearch .searchBox .searchform .searchWord .searchField::-moz-placeholder {
  color: #aaaaaa;
  font-size: 108%;
  font-weight: 400;
  letter-spacing: 0;
}
.-search .keywordSearch .searchBox .searchform .searchWord .searchField::placeholder,
.-store_search .keywordSearch .searchBox .searchform .searchWord .searchField::placeholder {
  color: #aaaaaa;
  font-size: 108%;
  font-weight: 400;
  letter-spacing: 0;
}
.-search .keywordSearch .searchBox .searchform .searchBtn,
.-store_search .keywordSearch .searchBox .searchform .searchBtn {
  max-width: 10em;
  width: 100%;
}
.-search .keywordSearch .searchBox .searchform .searchBtn .sBtn,
.-store_search .keywordSearch .searchBox .searchform .searchBtn .sBtn {
  display: block;
  max-width: 10em;
  width: 100%;
  height: 4.6rem;
  margin: 0 auto;
  padding: 0;
  color: #ffffff;
  font-size: 108%;
  font-weight: 600;
  text-align: center;
  line-height: 1;
  border-radius: 3rem;
  border: none;
  outline: none;
  background: #3E9CE1;
}
@media screen and (max-width: 767px) {
  .-search .keywordSearch .searchBox .searchform,
.-store_search .keywordSearch .searchBox .searchform {
    display: block;
  }
  .-search .keywordSearch .searchBox .searchform .searchWord,
.-store_search .keywordSearch .searchBox .searchform .searchWord {
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 1.4em;
  }
  .-search .keywordSearch .searchBox .searchform .searchBtn,
.-store_search .keywordSearch .searchBox .searchform .searchBtn {
    max-width: 100%;
  }
  .-search .keywordSearch .searchBox .searchform .searchBtn .sBtn,
.-store_search .keywordSearch .searchBox .searchform .searchBtn .sBtn {
    display: block;
    max-width: 14em;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 1.2em;
    color: #ffffff;
    font-size: 108%;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    border-radius: 3rem;
    border: none;
    outline: none;
    background: #3E9CE1;
  }
}
.-search .prefecturesSearch,
.-store_search .prefecturesSearch {
  margin-top: 2.3em;
}
.-search .prefecturesSearch .searchBox,
.-store_search .prefecturesSearch .searchBox {
  padding: 1.9em 1.6em 3.1em;
}
.-search .prefecturesSearch .searchBox .searchWrap,
.-store_search .prefecturesSearch .searchBox .searchWrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.6em 2em;
}
.-search .prefecturesSearch .searchBox .searchWrap .area .areaLabel,
.-store_search .prefecturesSearch .searchBox .searchWrap .area .areaLabel {
  display: block;
  margin-bottom: 0.7em;
  color: #000000;
  font-size: 108%;
  font-weight: 600;
  text-align: center;
}
.-search .prefecturesSearch .searchBox .searchWrap .area .areaList,
.-store_search .prefecturesSearch .searchBox .searchWrap .area .areaList {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.8em 1.6em;
}
.-search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a,
.-store_search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a {
  display: block;
  padding: 1.2em 1.9em 1.2em 1.3em;
  font-size: 108%;
  white-space: nowrap;
  line-height: 1;
  background: #ffffff;
  position: relative;
  transition: 0.5s;
}
.-search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a:hover,
.-store_search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a:hover {
  opacity: 0.8;
}
.-search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a:before,
.-store_search .prefecturesSearch .searchBox .searchWrap .area .areaList__item a:before {
  display: block;
  content: "";
  width: 0.3em;
  height: 0.6em;
  background: url("../img/search/arrow-right_gray.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 1.3em;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .-search .prefecturesSearch .searchBox .searchWrap,
.-store_search .prefecturesSearch .searchBox .searchWrap {
    grid-template-columns: 1fr;
  }
}
.-search .secHit .noResult,
.-store_search .secHit .noResult {
  background: #f5f5f5;
  border: 1px solid #ccc;
  padding: 2em 1em;
  text-align: center;
}
.-search .secHit .noResult .buttonList,
.-store_search .secHit .noResult .buttonList {
  display: grid;
  gap: 1em;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  margin-top: 2em;
  max-width: 900px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-search .secHit .noResult .buttonList .btn,
.-store_search .secHit .noResult .buttonList .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3em;
  background: #0050A4;
  text-decoration: none;
  color: #FFF;
  padding: 1em;
  text-align: center;
  border-radius: 5em;
  font-size: 106%;
  position: relative;
  line-height: 1.2;
  width: 100%;
  max-width: 30em;
  margin-left: auto;
  margin-right: auto;
}
.-search .secHit .noResult .buttonList .btn .icon,
.-store_search .secHit .noResult .buttonList .btn .icon {
  display: inline-block;
}
.-search .secHit .noResult .buttonList .btn .big,
.-store_search .secHit .noResult .buttonList .btn .big {
  font-size: 125%;
  margin-right: 0.2em;
}
.-search .secHit .noResult .buttonList .btn:hover,
.-store_search .secHit .noResult .buttonList .btn:hover {
  background: #003771;
}
.-search .secHit .noResult .buttonList .btn.-spot,
.-store_search .secHit .noResult .buttonList .btn.-spot {
  background: #00ACD5;
}
.-search .secHit .noResult .buttonList .btn.-spot:hover,
.-store_search .secHit .noResult .buttonList .btn.-spot:hover {
  background: #0083a2;
}
.-search .secHit .noResult .buttonList .btn.-area,
.-store_search .secHit .noResult .buttonList .btn.-area {
  background: #0085AD;
}
.-search .secHit .noResult .buttonList .btn.-area:hover,
.-store_search .secHit .noResult .buttonList .btn.-area:hover {
  background: #005e7a;
}
@media screen and (max-width: 767px) {
  .-search .secHit .noResult .buttonList,
.-store_search .secHit .noResult .buttonList {
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 560px) {
  .-search .secHit .inner,
.-store_search .secHit .inner {
    padding: 0;
  }
  .-search .secHit .inner .hitCount,
.-store_search .secHit .inner .hitCount {
    padding: 0 5vw;
  }
  .-search .secHit .inner .storeList > li,
.-store_search .secHit .inner .storeList > li {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
.-search .secHit .hitCount,
.-store_search .secHit .hitCount {
  color: #0050A4;
  font-size: 108%;
  font-weight: bold;
  margin-bottom: 1em;
}
.-search .secHit .hitCount span,
.-store_search .secHit .hitCount span {
  font-size: 120%;
}
.-search .secHit .storeList > li,
.-store_search .secHit .storeList > li {
  border-top: #E3E3E3 1px solid;
  padding: clamp(1em, 5vw, 2em) 0;
}
.-search .secHit .storeList > li:last-child,
.-store_search .secHit .storeList > li:last-child {
  border-bottom: #E3E3E3 1px solid;
}
.-search .secHit .storeList > li > *,
.-store_search .secHit .storeList > li > * {
  margin-bottom: 0.5em;
}
.-search .secHit .storeList > li > *:last-child,
.-store_search .secHit .storeList > li > *:last-child {
  margin-bottom: 0;
}
.-search .secHit .storeList__ttl,
.-store_search .secHit .storeList__ttl {
  text-decoration: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.6em;
  position: relative;
  padding-right: 2em;
}
.-search .secHit .storeList__ttl::after,
.-store_search .secHit .storeList__ttl::after {
  content: "";
  width: 0.5em;
  height: 1em;
  background: url("../img/common/icon-arrow-line.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 1em;
  top: 50%;
  margin-top: -0.5em;
  filter: invert(0%) sepia(7%) saturate(9%) hue-rotate(113deg) brightness(0%) contrast(100%);
  transition: 0.2s;
}
.-search .secHit .storeList__ttl:hover .ttl,
.-store_search .secHit .storeList__ttl:hover .ttl {
  color: #0050A4;
}
.-search .secHit .storeList__ttl:hover::after,
.-store_search .secHit .storeList__ttl:hover::after {
  right: 0.6em;
}
.-search .secHit .storeList__ttl .ttl,
.-store_search .secHit .storeList__ttl .ttl {
  font-size: clamp(1.6rem, 4.2vw, 140%);
  transition: 0.2s;
  line-height: 1.6;
}
.-search .secHit .storeList__ttl span,
.-store_search .secHit .storeList__ttl span {
  background: #9cacbb;
  color: #fff;
  font-size: 77%;
  padding: 0.5em;
  line-height: 1;
  border-radius: 0.2em;
}
.-search .secHit .storeList .distance,
.-store_search .secHit .storeList .distance {
  color: #0050A4;
  font-size: 94%;
  font-weight: bold;
  padding-left: 1em;
  position: relative;
  margin-top: 0.4em;
  display: block;
}
.-search .secHit .storeList .distance::before,
.-store_search .secHit .storeList .distance::before {
  content: "";
  width: 0.8em;
  height: 1em;
  background: url("../img/common/icon-mappin.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
  filter: invert(57%) sepia(4%) saturate(6%) hue-rotate(353deg) brightness(94%) contrast(86%);
}
.-search .secHit .storeList .btnList,
.-store_search .secHit .storeList .btnList {
  display: flex;
  gap: 1em;
  margin-top: 1em;
}
.-search .secHit .storeList .btnList li,
.-store_search .secHit .storeList .btnList li {
  flex: 1;
  max-width: 12em;
}
.-search .secHit .storeList .btnList .btnArea,
.-store_search .secHit .storeList .btnList .btnArea {
  margin-top: 0;
}
.-search .secHit .storeList .btnList .btnArea .basicBtn,
.-store_search .secHit .storeList .btnList .btnArea .basicBtn {
  width: 100%;
}
.-search .secHit .storeList .btnList .btnArea .basicBtn:after,
.-store_search .secHit .storeList .btnList .btnArea .basicBtn:after {
  content: "";
  width: 0.8em;
  height: 0.8em;
  background: url("../img/common/icon-arrow-line_white.svg") no-repeat;
  position: absolute;
  right: 1em;
  top: 50%;
  margin-top: -0.4em;
}

/*==================================================================================================
	コンタクトの泉　column
==================================================================================================*/
.-column a {
  color: #000000;
  text-decoration: none;
  transition: 0.5s;
}
.-column a:hover {
  opacity: 0.8;
}
.-column .secColumn {
  padding-bottom: 8em;
}
.-column .cateTabList .-knowledge,
.-column .reccomendList .-knowledge,
.-column .columnList .-knowledge {
  background-color: #44b6b6;
}
.-column .cateTabList .-contact-lens,
.-column .reccomendList .-contact-lens,
.-column .columnList .-contact-lens {
  background-color: #3595d3;
}
.-column .cateTabList .-eye,
.-column .reccomendList .-eye,
.-column .columnList .-eye {
  background-color: #f5991a;
}
.-column .cateTabList .-life-fashion,
.-column .reccomendList .-life-fashion,
.-column .columnList .-life-fashion {
  background-color: #e85976;
}
.-column .reccomendList .cate,
.-column .columnList .cate {
  display: inline-block;
  padding: 0.5em 0.7em;
  border-radius: 0.3rem;
  color: #ffffff;
  font-size: 77%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}
.-column .-cateTab .cateTabList {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1em;
}
.-column .-cateTab .cateTabList__item {
  width: calc((100% - 4em) / 4);
  border-radius: 0.6rem;
  transition: 0.5s;
}
.-column .-cateTab .cateTabList__item.-blueGreen:hover {
  background-color: #3da3a3;
}
.-column .-cateTab .cateTabList__item.-blue:hover {
  background-color: #2b88c4;
}
.-column .-cateTab .cateTabList__item.-yellow:hover {
  background-color: #eb8d0a;
}
.-column .-cateTab .cateTabList__item.-pink:hover {
  background-color: #e54364;
}
.-column .-cateTab .cateTabList__item a {
  display: block;
  padding: 1.3em 2em 1.3em 0.9em;
  color: #ffffff;
  font-weight: 600;
  font-size: 90%;
  letter-spacing: 0;
  position: relative;
}
.-column .-cateTab .cateTabList__item a:hover {
  opacity: 1;
}
.-column .-cateTab .cateTabList__item a:after {
  display: block;
  width: 0.5rem;
  height: 1rem;
  content: "";
  background: url("../img/column/icon-arrow.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0.9em;
  transform: translateY(-50%);
}
@media screen and (max-width: 1080px) {
  .-column .-cateTab .cateTabList__item a {
    padding: 1.5em 2em 1.5em 0.9em;
    font-size: 78%;
  }
}
@media screen and (max-width: 860px) {
  .-column .-cateTab .cateTabList {
    gap: 1em 1.5em;
  }
  .-column .-cateTab .cateTabList__item {
    width: calc((100% - 1.5em) / 2);
  }
  .-column .-cateTab .cateTabList__item a {
    padding: 1.8em 2em 1.8em 0.9em;
    font-size: 77%;
  }
}
@media screen and (max-width: 560px) {
  .-column .-cateTab .cateTabList__item a:after {
    width: 0.3rem;
    height: 0.6rem;
    right: 0.9em;
  }
}
.-column .-reccomend .reccomendList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 2.8em 1.5em;
}
.-column .-reccomend .reccomendList__item .thumb {
  margin-bottom: 0.85em;
}
.-column .-reccomend .reccomendList__item .cate {
  margin-bottom: 1em;
}
.-column .-reccomend .reccomendList__item .ttlArea {
  margin-bottom: 1.1em;
}
.-column .-reccomend .reccomendList__item .ttlArea .reccomendTtl {
  display: block;
  padding-bottom: 1.1em;
  color: #000000;
  font-size: 108%;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0;
  position: relative;
}
.-column .-reccomend .reccomendList__item .ttlArea .reccomendTtl:before {
  display: block;
  content: "";
  width: 50%;
  height: 0.1rem;
  background: #000000;
  position: absolute;
  left: 0;
  bottom: 0;
}
.-column .-reccomend .reccomendList__item .detail {
  color: #000000;
  font-size: 90%;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0;
}
@media screen and (max-width: 560px) {
  .-column .-reccomend .reccomendList {
    grid-template-columns: 1fr 1fr;
  }
}
.-column .-recent .columnList__item {
  padding: 2em 0;
  position: relative;
}
.-column .-recent .columnList__item:nth-child(even):before {
  display: block;
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background-color: #f5f5f5;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.-column .-recent .columnList__item a {
  display: flex;
  align-items: center;
  gap: 2em;
}
.-column .-recent .columnList__item a .thumb {
  aspect-ratio: 1/1;
  max-width: 200px;
  width: 30%;
}
.-column .-recent .columnList__item a .thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.-column .-recent .columnList__item a .textArea {
  display: flex;
  flex-direction: column;
  gap: 1em;
  flex: 1;
}
.-column .-recent .columnList__item a .labelArea {
  grid-row: 1/2;
  grid-column: 2/3;
}
.-column .-recent .columnList__item a .labelArea .cate {
  margin-bottom: 0.5em;
}
.-column .-recent .columnList__item a .labelArea .columnTtl {
  font-size: 108%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 20px;
}
.-column .-recent .columnList__item a .detail {
  grid-row: 2/3;
  grid-column: 2/3;
  font-size: 90%;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0;
}
@media screen and (max-width: 560px) {
  .-column .-recent .columnList__item {
    padding: 1.6em 0;
  }
  .-column .-recent .columnList__item a {
    padding-bottom: 3.5em;
    position: relative;
  }
  .-column .-recent .columnList__item a .thumb {
    grid-row: 1/2;
    grid-column: 1/2;
  }
  .-column .-recent .columnList__item a .labelArea {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
    grid-row: 1/2;
    grid-column: 2/3;
  }
  .-column .-recent .columnList__item a .labelArea .cate {
    margin-bottom: 1em;
  }
  .-column .-recent .columnList__item a .detail {
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 400px) {
  .-column .-recent .columnList__item {
    padding: 1.6em 0;
  }
  .-column .-recent .columnList__item a {
    padding-bottom: 5em;
  }
}

/*==================================================================================================
	商品
==================================================================================================*/
.-product a {
  color: #000000;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .-product .topLabel + p {
    text-align: left;
    font-size: 95%;
    letter-spacing: 0;
  }
}
.-product .-productList + .sContainer {
  margin-top: 7.4em;
}
.-product .-productList .productList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 2.3em 1.5em;
  margin-bottom: 3.5em;
}
.-product .-productList .productList__item a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.-product .-productList .productList__item a:hover .thumb img {
  transform: scale(1.1);
}
.-product .-productList .productList__item .thumb {
  margin-bottom: 1em;
  padding: 0.65em;
  overflow: hidden;
  aspect-ratio: 1.25/1;
  background: #f2f5f5;
}
.-product .-productList .productList__item .thumb img {
  transform: scale(1);
  transition: 0.5s;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: darken;
}
.-product .-productList .productList__item .logo {
  height: 1.5rem;
  margin-bottom: 0.8em;
}
.-product .-productList .productList__item .logo img {
  display: block;
  width: auto;
  height: 1.5rem;
  max-width: 130px;
  -o-object-fit: contain;
     object-fit: contain;
}
.-product .-productList .productList__item .label {
  margin-bottom: 1.4em;
  flex-grow: 1;
  color: #000000;
  font-size: 108%;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 20px;
}
.-product .-productList .productList__item .lensCount {
  color: #3E9CE1;
  font-size: 93%;
  font-weight: 600;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .-product .-productList .productList__item .logo {
    height: 1.3rem;
  }
  .-product .-productList .productList__item .logo img {
    height: 1.3rem;
  }
}
@media screen and (max-width: 560px) {
  .-product .-productList .productList {
    grid-template-columns: 1fr 1fr;
  }
  .-product .-productList .productList__item a:hover .thumb img {
    transform: scale(1);
  }
  .-product .-productList .productList__item .thumb img {
    transition: none;
  }
  .-product .-productList .productList__item .logo {
    height: 1rem;
  }
  .-product .-productList .productList__item .logo img {
    height: 1rem;
  }
}
.-product .-productList .wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.-product .-productList .wp-pagenavi a {
  font-size: 109%;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  transition: 0.2s ease-in-out;
}
.-product .-productList .wp-pagenavi a:hover {
  color: #ffffff;
  background: #0050A4;
  border-color: #0050A4 !important;
}
.-product .-productList .wp-pagenavi a:last-child {
  margin: 0 0 1rem 0;
}
@media screen and (max-width: 767px) {
  .-product .-productList .wp-pagenavi a:last-child {
    margin: 0 0 0.9rem 0;
  }
}
@media screen and (max-width: 560px) {
  .-product .-productList .wp-pagenavi a:last-child {
    margin: 0 0 0.7rem 0;
  }
}
.-product .-productList .wp-pagenavi .page, .-product .-productList .wp-pagenavi .current,
.-product .-productList .wp-pagenavi .nextpostslink,
.-product .-productList .wp-pagenavi .previouspostslink,
.-product .-productList .wp-pagenavi .first, .-product .-productList .wp-pagenavi .last {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 4.8rem;
  height: 4.8rem;
  margin: 0 1.3rem 1rem 0;
  padding: 0.8rem;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  color: #000000;
  border: 1px solid #CCCCCC;
  border-radius: 0px;
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .-product .-productList .wp-pagenavi .page, .-product .-productList .wp-pagenavi .current,
.-product .-productList .wp-pagenavi .nextpostslink,
.-product .-productList .wp-pagenavi .previouspostslink,
.-product .-productList .wp-pagenavi .first, .-product .-productList .wp-pagenavi .last {
    width: 4.4rem;
    height: 4.4rem;
    margin: 0 1.2rem 0.9rem 0;
    padding: 0.6rem;
  }
}
@media screen and (max-width: 560px) {
  .-product .-productList .wp-pagenavi .page, .-product .-productList .wp-pagenavi .current,
.-product .-productList .wp-pagenavi .nextpostslink,
.-product .-productList .wp-pagenavi .previouspostslink,
.-product .-productList .wp-pagenavi .first, .-product .-productList .wp-pagenavi .last {
    width: 4rem;
    height: 4rem;
    margin: 0 1rem 0.7rem 0;
    padding: 0.5rem;
  }
}
.-product .-productList .wp-pagenavi .nextpostslink,
.-product .-productList .wp-pagenavi .previouspostslink,
.-product .-productList .wp-pagenavi .first, .-product .-productList .wp-pagenavi .last {
  color: #000000;
  background: #CCCCCC;
}
.-product .-productList .wp-pagenavi .nextpostslink,
.-product .-productList .wp-pagenavi .previouspostslink {
  color: transparent;
  font-size: 0;
  background: #CCCCCC;
  position: relative;
}
.-product .-productList .wp-pagenavi .nextpostslink:before,
.-product .-productList .wp-pagenavi .previouspostslink:before {
  display: block;
  content: "";
  width: 0.8rem;
  height: 1.2rem;
  background: url("../img/product/arrow-black.svg") no-repeat;
  background-size: contain;
  position: absolute;
}
.-product .-productList .wp-pagenavi .nextpostslink:hover:before,
.-product .-productList .wp-pagenavi .previouspostslink:hover:before {
  background: url("../img/product/arrow-white.svg") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .-product .-productList .wp-pagenavi .nextpostslink:before,
.-product .-productList .wp-pagenavi .previouspostslink:before {
    width: 0.6rem;
    height: 1rem;
  }
}
@media screen and (max-width: 560px) {
  .-product .-productList .wp-pagenavi .nextpostslink:before,
.-product .-productList .wp-pagenavi .previouspostslink:before {
    width: 0.4rem;
    height: 0.8rem;
  }
}
.-product .-productList .wp-pagenavi .previouspostslink:before {
  transform: scale(-1, 1);
}
.-product .-productList .wp-pagenavi .current {
  font-size: 109%;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  color: #ffffff;
  border: 1px solid #0050A4 !important;
  background: #0050A4;
}
.-product .-productList .wp-pagenavi .pages {
  display: none;
}
.-product .-productList .wp-pagenavi .extend {
  padding: 0;
  border: none;
}
.-product .productDetail .labelBox {
  margin-bottom: 2.2em;
}
.-product .productDetail .labelBox .logo {
  height: 3rem;
  margin-bottom: 1.8em;
  text-align: center;
}
.-product .productDetail .labelBox .logo img {
  display: inline-block;
  width: auto;
  height: 3rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.-product .productDetail .labelBox .detailLabel {
  color: #0050A4;
  font-size: 163%;
  font-weight: 600;
  line-height: 27px;
  text-align: center;
  letter-spacing: 0;
}
.-product .productDetail .labelBox .catch {
  margin-top: 1em;
  text-align: center;
}
.-product .productDetail .productImgBox .mainImg {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 50rem;
  aspect-ratio: 1.25/1;
  margin: 0 auto 1.8em auto;
  padding: 1.3em 0.9em;
  border: 1px solid #CCCCCC;
  background: #ffffff;
}
.-product .productDetail .productImgBox .mainImg img {
  display: block;
  width: auto;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.-product .productDetail .productImgBox .thumbWrap {
  width: 100vw;
  margin: 0 calc(50% - 50vw) 2.5em;
  padding: 1.3em 0em;
  background: #f5f5f5;
}
.-product .productDetail .productImgBox .thumbWrap .thumbList {
  display: flex;
  justify-content: center;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
}
.-product .productDetail .productImgBox .thumbWrap .thumbList__item {
  max-width: 11.5rem;
  margin-right: 1em;
  padding: 0.35em 0.3em;
  aspect-ratio: 1.25/1;
  border: 1px solid #CCCCCC;
  background: #ffffff;
  cursor: pointer;
  text-align: center;
  flex: 1;
}
.-product .productDetail .productImgBox .thumbWrap .thumbList__item:last-child {
  margin-right: 0;
}
.-product .productDetail .productImgBox .thumbWrap .thumbList__item img {
  display: block;
  width: auto;
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.-product .productDetail .detailWarp {
  max-width: 70rem;
  margin: 0 auto;
}
.-product .productDetail .approvalNumber {
  margin-bottom: 1.2em;
  color: #333333;
  font-size: 108%;
  font-weight: 400;
  line-height: 25px;
  letter-spacing: 0;
}
.-product .productDetail .lensCount {
  margin-bottom: 1em;
  color: #333333;
  font-size: 125%;
  font-weight: 600;
  line-height: 25px;
  letter-spacing: 0;
}
.-product .productDetail .detailList {
  display: flex;
  margin-bottom: 2.3em;
}
.-product .productDetail .detailList__item {
  max-width: 9rem;
  width: 100%;
  aspect-ratio: 1/1;
  margin-right: 1em;
}
.-product .productDetail .detailList__item:last-child {
  margin-right: 0;
}
.-product .productDetail .detailTxt {
  margin-bottom: 1.7em;
  color: #333333;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 25px;
}
.-product .productDetail .detailTxt iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.-product .productDetail .bannerList {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 2.5em;
}
.-product .productDetail .bannerList__item {
  max-width: 48rem;
  width: 100%;
  margin-bottom: 0.6em;
}
.-product .productDetail .bannerList__item:last-child {
  margin-bottom: 0;
}
.-product .productDetail .bannerList__item a {
  display: block;
  transition: 0.5s;
}
.-product .productDetail .bannerList__item a:hover {
  opacity: 0.8;
}
.-product .productDetail .rangeBox {
  margin-bottom: 1.8em;
  padding: 1.3em 1.4em 1.9em;
  color: #333333;
  background: #f5f5f5;
}
.-product .productDetail .rangeBox .rangeLabel {
  font-size: 119%;
  font-weight: 600;
  text-align: center;
}
.-product .productDetail .rangeBox .rangeTxt {
  text-indent: -0.2em;
}
.-product .productDetail .rangeBox .rangeTxt .wave {
  display: inline-block;
  margin: 0 0.2em;
  padding: 0.5em 0.44em;
  position: relative;
}
.-product .productDetail .rangeBox .rangeTxt .wave:before {
  display: inline-block;
  content: "";
  width: 0.88em;
  height: 0.26em;
  background: url("../img/product/detail/text-wave.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 65%;
  left: 0%;
  transform: translateY(-65%);
}
.-product .productDetail .infoBox {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
.-product .productDetail .infoBox th {
  width: 29%;
  padding: 1.3em;
  background: #F0F5F5;
  border: 1px solid #CCCCCC;
  box-sizing: border-box;
  vertical-align: top;
  font-weight: 600;
  letter-spacing: 0;
  text-align: left;
}
.-product .productDetail .infoBox td {
  padding: 1.3em;
  background: #ffffff;
  border: 1px solid #CCCCCC;
  box-sizing: border-box;
  vertical-align: middle;
  font-weight: 400;
  text-align: left;
  letter-spacing: 0;
  line-height: 25px;
}
.-product .productDetail .infoBox td a {
  text-decoration: underline;
}
.-product .productDetail .infoBox td a:hover {
  color: #3E9CE1;
  text-decoration: none;
}
.-product .productDetail .infoBox td .productInfoList__item {
  padding-left: 0.8em;
  position: relative;
}
.-product .productDetail .infoBox td .productInfoList__item:before {
  display: block;
  content: "・";
  width: 0.8em;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1200px) {
  .-product .productDetail .productImgBox .thumbWrap .thumbList {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}
@media screen and (max-width: 767px) {
  .-product .productDetail .productImgBox .thumbWrap .thumbList {
    padding-left: 5vw;
    padding-right: 5vw;
  }
  .-product .productDetail .detailTxt {
    margin-bottom: 2em;
    font-size: 108%;
  }
  .-product .productDetail .rangeBox {
    margin-bottom: 2em;
    padding: 1.5em 1.6em 2em;
  }
  .-product .productDetail .rangeBox .rangeLabel {
    font-size: 125%;
  }
  .-product .productDetail .rangeBox .rangeTxt {
    font-size: 108%;
  }
  .-product .productDetail .infoBox th, .-product .productDetail .infoBox td {
    display: block;
    width: 100%;
    padding: 1.3em 1em;
    border-bottom: none;
  }
  .-product .productDetail .infoBox td {
    font-size: 108%;
  }
  .-product .productDetail .infoBox tr:last-child td:last-child {
    border-bottom: 1px solid #CCCCCC;
  }
}
@media screen and (max-width: 560px) {
  .-product .productDetail .labelBox {
    margin-bottom: 2.2em;
  }
  .-product .productDetail .labelBox .logo {
    height: 2.1rem;
    margin-bottom: 1.4em;
    text-align: left;
  }
  .-product .productDetail .labelBox .logo img {
    height: 2.1rem;
  }
  .-product .productDetail .labelBox .detailLabel {
    font-size: 154%;
    text-align: left;
  }
  .-product .productDetail .labelBox .catch {
    text-align: left;
  }
  .-product .productDetail .lensCount {
    margin-bottom: 1.2em;
    font-size: 131%;
  }
  .-product .productDetail .productImgBox .mainImg {
    margin: 0 auto 1.3em auto;
  }
  .-product .productDetail .productImgBox .thumbWrap {
    margin-bottom: 1.3em;
    padding: 1em 0em;
  }
  .-product .productDetail .productImgBox .thumbWrap .thumbList__item {
    margin-right: 0.8em;
    padding: 0.35em 0.3em;
  }
  .-product .productDetail .lensCount {
    margin-bottom: 1.5em;
  }
  .-product .productDetail .detailTxt {
    margin-bottom: 2.7em;
    font-size: 116%;
  }
  .-product .productDetail .bannerList__item {
    margin-bottom: 0.7em;
  }
  .-product .productDetail .rangeBox {
    margin-bottom: 2.3em;
    padding: 1.8em 1.6em 2.3em;
  }
  .-product .productDetail .rangeBox .rangeLabel {
    font-size: 131%;
  }
  .-product .productDetail .rangeBox .rangeTxt {
    font-size: 116%;
  }
  .-product .productDetail .infoBox th {
    padding: 1.3em 0.65em;
    vertical-align: middle;
  }
  .-product .productDetail .infoBox td {
    padding: 1.3em 0.65em;
    font-size: 116%;
  }
}

/*==================================================================================================
	お知らせ
==================================================================================================*/
.-news .newsDetail .newsLabel {
  padding-bottom: 1em;
  border-bottom: 2px solid #000;
}
.-news .newsDetail .newsLabel .ttl {
  font-size: 190%;
  line-height: 1.4;
  margin-bottom: 0.2em;
}
.-news .newsDetail .newsLabel .detail {
  color: #0050a4;
}
.-news .newsDetail .wpText p,
.-news .newsDetail .wpText figure,
.-news .newsDetail .wpText h3,
.-news .newsDetail .wpText h4,
.-news .newsDetail .wpText ul,
.-news .newsDetail .wpText ol {
  margin-top: 2em;
}
.-news .newsDetail .wpText p {
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-news .newsDetail .wpText h2 {
  margin-top: 2em;
  font-size: 160%;
  color: #0050a4;
}
.-news .newsDetail .wpText h3 {
  background: #f5f5f5;
  padding: 0.6em;
  font-weight: bold;
  font-size: 120%;
  color: #0050a4;
  border-left: 3px solid #0050a4;
}
.-news .newsDetail .wpText ul {
  list-style: disc;
  padding-left: 1.35em;
}
.-news .newsDetail .wpText ul li:not(:first-child) {
  margin-top: 1em;
}
.-news .newsDetail .wpText ol {
  list-style: decimal;
  padding-left: 1.35em;
}
.-news .newsDetail .wpText ol li:not(:first-child) {
  margin-top: 1em;
}
.-news .newsDetail .wpLayouts .lt {
  text-align: left;
}
.-news .newsDetail .wpLayouts .ctr {
  text-align: center;
}
.-news .newsDetail .wpLayouts .rt {
  text-align: right;
}
.-news .newsDetail .wpLayouts > * {
  margin-top: 4rem;
}
.-news .newsDetail .wpLayouts h2 {
  margin-top: 2em;
  font-size: 160%;
  color: #0050a4;
}
.-news .newsDetail .wpLayouts h3 {
  background: #f5f5f5;
  padding: 0.6em;
  font-weight: bold;
  font-size: 120%;
  color: #0050a4;
  border-left: 3px solid #0050a4;
}
.-news .newsDetail .wpLayouts h4 {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 110%;
}
.-news .newsDetail .wpLayouts p:not(:first-of-type) {
  margin: 1em 0 0;
}
.-news .newsDetail .wpLayouts figure {
  margin: 0;
}
.-news .newsDetail .wpLayouts iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}
.-news .newsDetail .wpLayouts .img_only figure {
  text-align: center;
}
.-news .newsDetail .wpLayouts .img_col {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 2em 4%;
}
.-news .newsDetail .wpLayouts .img_col figure {
  width: 48%;
  margin: 0;
}
.-news .newsDetail .wpLayouts .img_txt,
.-news .newsDetail .wpLayouts .txt_img {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5em;
}
.-news .newsDetail .wpLayouts .img_txt figure,
.-news .newsDetail .wpLayouts .txt_img figure {
  width: 40%;
}
.-news .newsDetail .wpLayouts .img_txt .txt,
.-news .newsDetail .wpLayouts .txt_img .txt {
  width: 60%;
}
.-news .newsDetail .wpLayouts .btn-area {
  text-align: center;
}
.-news .newsDetail .wpLayouts .btn-area a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin: 0 auto;
  padding: 1em 2em;
  min-width: 400px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
  font-size: 2rem;
  border-radius: 100em;
}
.-news .newsDetail .wpLayouts .btn-area a::after {
  content: "\f30b";
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  line-height: 1;
}
.-news .newsDetail .wpLayouts hr {
  margin: 6rem auto;
}
.-news .secNews .newsList__item {
  border-bottom: #E3E3E3 1px solid;
}
.-news .secNews .newsList__item:first-child a {
  padding-top: 0;
}
.-news .secNews .newsList__item a {
  display: flex;
  padding: 1.5em 0.2em;
  text-decoration: none;
  gap: 1em;
  transition: 0.2s;
}
.-news .secNews .newsList__item a:hover {
  opacity: 0.8;
}
.-news .secNews .newsList__item time {
  color: #0050A4;
  font-family: "Montserrat", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  width: 6em;
}
.-news .secNews .newsList__item p {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .-news .secNews .newsList__item a {
    flex-direction: column;
    gap: 0.5em;
    padding: 1em 0.2em;
  }
}

/*==================================================================================================
	通常固定ページ用
==================================================================================================*/
.-pages .pageLabel {
  width: 94vw;
  padding: 1em 2vw 0.65em;
  margin: 0 auto;
  border-bottom: 3px solid #0050A4;
  font-size: 240%;
  text-align: center;
}
.-pages .pageLabel .en {
  display: block;
  line-height: 1;
  font-size: 42%;
  color: #0050A4;
}
.-pages .pageList {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2vw;
}
@media screen and (max-width: 480px) {
  .-pages .pageList {
    flex-direction: column;
  }
}
.-pages .pageList-item {
  width: calc(50% - 1vw);
  background: url(../img/common/icon-arrow-circle_white.svg) no-repeat right 1em center/2.6rem #0050A4;
  color: #fff;
  border-radius: 10px;
  padding: 2em 4em 2em 2em;
  text-decoration: none;
}
@media screen and (max-width: 480px) {
  .-pages .pageList-item {
    width: 100%;
  }
}
.-pages .pageList-item:hover {
  opacity: 0.65;
}
.-pages .pageList-item .ttl {
  font-size: 2.4rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 0.6em;
  padding-bottom: 0.3em;
}
.-pages .pageList-item .txt {
  font-weight: normal;
}
.-pages .pageCnt h2.ttl {
  padding: 0 0.6em;
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 180%;
  color: #0050A4;
  border-left: 6px solid #0050A4;
}
.-pages .pageCnt .wpText > * {
  margin-bottom: 3.5rem;
}
.-pages .pageCnt .wpText h2 {
  background: #f5f5f5;
  padding: 0.35em 0.6em;
  font-weight: bold;
  font-size: 160%;
  color: #0050A4;
  border-left: 3px solid #0050A4;
}
.-pages .pageCnt .wpText h2:not(:first-child) {
  margin-top: 4em;
}
.-pages .pageCnt .wpText h3 {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 132%;
  color: #0050A4;
}
.-pages .pageCnt .wpText h4 {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 120%;
}
.-pages .pageCnt .wpText p {
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-pages .pageCnt .wpText ul {
  list-style: disc;
  padding-left: 1.35em;
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-pages .pageCnt .wpText ul li:not(:first-child) {
  margin-top: 1em;
}
.-pages .pageCnt .wpText ol {
  list-style: decimal;
  padding-left: 1.35em;
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-pages .pageCnt .wpText ol li:not(:first-child) {
  margin-top: 1em;
}
.-pages .pageCnt .wpText .wp-block-columns {
  margin-top: 6rem;
}
@media screen and (max-width: 480px) {
  .-pages .pageCnt .wpText .wp-block-columns.flex_reverse {
    flex-direction: column-reverse !important;
  }
}
.-pages .pageCnt .wpText .wp-block-column > *:not(:first-child) {
  margin-top: 2em;
}
.-pages .pageCnt .wpText .wp-block-button a {
  background: #0050A4;
  color: #FFF;
  padding: 1em;
  text-align: center;
  border-radius: 5em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5em;
  line-height: 1.2;
  width: auto;
}
.-pages .pageCnt .wpText .wp-block-button a:hover {
  background: #003771;
}
.-pages .pageCnt .wpText .wp-block-button a:after {
  content: "";
  width: 0.65em;
  height: 0.65em;
  background: url("../img/common/icon-arrow.svg") no-repeat;
}
.-pages .pageCnt .wpText .wp-block-flexible-table-block-table table {
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-pages .newsDetail .newsLabel {
  padding-bottom: 1em;
  border-bottom: 2px solid #000;
}
.-pages .newsDetail .newsLabel .ttl {
  font-size: 190%;
  line-height: 1.4;
  margin-bottom: 0.2em;
}
.-pages .newsDetail .newsLabel .detail {
  color: #0050a4;
}
.-pages .newsDetail .wpText p,
.-pages .newsDetail .wpText figure,
.-pages .newsDetail .wpText h3,
.-pages .newsDetail .wpText h4,
.-pages .newsDetail .wpText ul,
.-pages .newsDetail .wpText ol {
  margin-top: 2em;
}
.-pages .newsDetail .wpText p {
  font-family: ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
}
.-pages .newsDetail .wpText h2 {
  margin-top: 2em;
  font-size: 160%;
  color: #0050a4;
}
.-pages .newsDetail .wpText h3 {
  background: #f5f5f5;
  padding: 0.6em;
  font-weight: bold;
  font-size: 120%;
  color: #0050a4;
  border-left: 3px solid #0050a4;
}
.-pages .newsDetail .wpText ul {
  list-style: disc;
  padding-left: 1.35em;
}
.-pages .newsDetail .wpText ul li:not(:first-child) {
  margin-top: 1em;
}
.-pages .newsDetail .wpText ol {
  list-style: decimal;
  padding-left: 1.35em;
}
.-pages .newsDetail .wpText ol li:not(:first-child) {
  margin-top: 1em;
}
.-pages .newsDetail .wpText iframe {
  margin-top: 2em;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.-pages.-notfound .wpText p {
  text-align: center;
}
.-pages.-notfound .wpText a {
  color: #0050a4;
}

/*==================================================================================================
	よくある質問
==================================================================================================*/
.-faq .pageCnt > .ttl {
  margin-top: 2em;
}
.-faq .pageCnt > .ttl:first-child {
  margin-top: 0;
}
.-faq .pageCnt details {
  border: #CCCCCC 1px solid;
  border-radius: 0.5em;
  padding: 1.4em;
  margin-bottom: 1em;
}
.-faq .pageCnt details summary {
  font-size: 120%;
  position: relative;
  padding-left: 1.6em;
  padding-right: 2em;
  cursor: pointer;
  line-height: 1.6;
}
.-faq .pageCnt details summary:before {
  content: "Q";
  font-family: "Montserrat", ヒラギノ角ゴシック, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, メイリオ, Meiryo, Meiryo UI, sans-serif;
  color: #0050A4;
  font-weight: 700;
  font-size: 120%;
  position: absolute;
  left: 0;
  top: -0.2em;
}
.-faq .pageCnt details summary:after {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: url("../img/common/icon-plus.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 0;
  top: 0.2em;
}
.-faq .pageCnt details[open] summary {
  margin-bottom: 0.8em;
  padding-bottom: 0.8em;
  border-bottom: #CCCCCC 1px solid;
}
.-faq .pageCnt details[open] summary:after {
  background: url("../img/common/icon-minus.svg") no-repeat;
  background-position: center;
  background-size: contain;
}

/*==================================================================================================
	お問い合わせ
==================================================================================================*/
.-contact .pageCnt .wpText:nth-child(1) .wp-block-heading {
  margin-top: 2em;
}
.-contact .pageCnt .wpText:nth-child(1) .tel {
  font-size: 200%;
  margin-bottom: 0;
}
.-contact .wpText a {
  color: #0050A4;
}
.-contact .wpcf7 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.-contact .wpcf7 .formItem {
  margin-bottom: 2em;
}
.-contact .wpcf7 .formItem:last-child {
  margin-bottom: 0;
}
.-contact .wpcf7 .formItem .itemName {
  margin-bottom: 0.5em;
  color: #0050A4;
}
.-contact .wpcf7 .formItem .itemName span {
  color: #FFF;
}
.-contact .wpcf7 .formItem .itemName .any {
  background: #999;
}
.-contact .wpcf7 .formItem .tel {
  font-size: 100% !important;
  margin-bottom: 0;
}
.-contact .wpcf7 .formItem.noclick {
  position: relative;
}
.-contact .wpcf7 .formItem.noclick::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.-contact .wpcf7 input, .-contact .wpcf7 textarea {
  font-weight: normal;
}
.-contact .wpcf7 input[readonly], .-contact .wpcf7 textarea[readonly] {
  border: 0px;
  background: #f8f8f8;
}
.-contact .wpcf7 .wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  gap: 0.6em;
}
.-contact .wpcf7 .wpcf7-checkbox .wpcf7-list-item label {
  cursor: pointer;
}
.-contact .wpcf7 .wpcf7-submit {
  border-radius: 4em;
  font-weight: bold;
  background: url(../img/reservation/icon-arrow-right-white.svg) no-repeat center right 1em #0050A4;
}
.-contact input[type="date"],.-contact input[type="time"],.-contact input[type="datetime-local"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  min-height: 4em;
}
.-contact input[type="date"]::-webkit-date-and-time-value,
.-contact input[type="time"]::-webkit-date-and-time-value,
.-contact input[type="datetime-local"]::-webkit-date-and-time-value {
  text-align: left;
}

/*==================================================================================================
	サイトマップ
==================================================================================================*/
.-sitemap .pageList > li {
  border-bottom: #ccc 1px solid;
  padding: 1.5em 0.5em;
}
.-sitemap .pageList > li > a {
  padding-left: 1.5em;
  font-size: clamp(1.8rem, 4.5vw, 2.8rem);
  font-weight: 800;
  text-decoration: none;
  display: inline-block;
  position: relative;
}
.-sitemap .pageList > li > a:hover {
  color: #0050A4;
}
.-sitemap .pageList > li > a:before {
  content: "";
  width: 1em;
  height: 1em;
  background: url("../img/sitemap/icon-arrow.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) translateX(0);
}
.-sitemap .pageList > li .childPageList {
  margin-top: 1em;
  display: flex;
  flex-wrap: wrap;
  gap: 0.6em 2em;
}
.-sitemap .pageList > li .childPageList li a {
  text-decoration: none;
  font-size: clamp(1.3rem, 3vw, 2rem);
  padding-left: 1.5em;
  position: relative;
}
.-sitemap .pageList > li .childPageList li a:hover {
  color: #0050A4;
}
.-sitemap .pageList > li .childPageList li a:before {
  content: "";
  width: 1.2em;
  height: 1.2em;
  background: url("../img/sitemap/icon-arrow-child.svg") no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) translateX(0);
}
.-sitemap .pageList > li.contact .childPageList {
  display: none;
}

/*==================================================================================================
	デビューインタビュー　interview
==================================================================================================*/
.-interview a {
  color: #000000;
  text-decoration: none;
  transition: 0.5s;
}
.-interview a:hover {
  opacity: 0.8;
}
.-interview .secInterview {
  padding-bottom: 8em;
}
.-interview .interviewList .-knowledge {
  background-color: #44b6b6;
}
.-interview .interviewList .-contact-lens {
  background-color: #3595d3;
}
.-interview .interviewList .-eye {
  background-color: #f5991a;
}
.-interview .interviewList .-life-fashion {
  background-color: #e85976;
}
.-interview .interviewList .cate {
  display: inline-block;
  padding: 0.5em 0.7em;
  margin-right: 10px;
  border-radius: 0.3rem;
  color: #ffffff;
  background-color: #3595d3;
  font-size: 77%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}
.-interview .interviewList .cate:nth-child(odd) {
  background-color: #44b6b6;
}
.-interview .-interview .interviewList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 2.8em 1.5em;
}
.-interview .-interview .interviewList__item .thumb {
  margin-bottom: 0.85em;
}
.-interview .-interview .interviewList__item .cate {
  margin-bottom: 1em;
}
.-interview .-interview .interviewList__item .ttlArea {
  margin-bottom: 1.3em;
}
.-interview .-interview .interviewList__item .ttlArea .interviewTtl {
  display: block;
  color: #000000;
  font-size: 108%;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
  position: relative;
}
.-interview .-interview .interviewList__item .detail {
  color: #000000;
  font-size: 90%;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0;
  padding: 1em;
  background: #e9f7f7;
  border-radius: 10px;
  position: relative;
}
.-interview .-interview .interviewList__item .detail::before {
  content: "";
  width: 2.5rem;
  height: 1.5rem;
  background: url("../img/interview/balloon_up.svg") no-repeat center/contain;
  position: absolute;
  left: 10px;
  top: -1.5rem;
}
@media screen and (max-width: 560px) {
  .-interview .-interview .interviewList {
    grid-template-columns: 1fr 1fr;
  }
}
.-interview .-interview .interviewBnr {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
  gap: 2em;
}
.-interview .interviewDetail .interviewLabel {
  padding-bottom: 4em;
  text-align: center;
}
.-interview .interviewDetail .interviewLabel .ttl {
  font-size: 240%;
  line-height: 1.4;
  margin-bottom: 0.2em;
}
.-interview .interviewDetail .interviewLabel .detail .cate {
  display: inline-block;
  padding: 0.5em 0.7em;
  margin-right: 10px;
  border-radius: 0.3rem;
  color: #ffffff;
  background-color: #3595d3;
  font-size: 77%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}
.-interview .interviewDetail .interviewLabel .detail .cate:nth-child(odd) {
  background-color: #44b6b6;
}
.-interview .interviewDetail .interviewKv {
  margin-bottom: 3em;
  text-align: center;
}
.-interview .interviewDetail dl.interviewQa {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  padding: 0 1rem 0 8rem;
  gap: 1em;
  font-size: 110%;
  color: #fff;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa {
    padding-left: 10vw;
    font-size: 95%;
    line-height: 1.5;
  }
}
.-interview .interviewDetail dl.interviewQa dt {
  padding: 1em 1.5em;
  background-color: #3595d3;
  border-radius: 35px;
  max-width: 60%;
  position: relative;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa dt {
    border-radius: 18px;
    max-width: 95%;
    padding: 0.5em 1.5em;
  }
}
.-interview .interviewDetail dl.interviewQa dt::before {
  content: "";
  width: 6.5rem;
  height: 6.5rem;
  background: url("../img/interview/icon_q.svg") no-repeat center/contain;
  position: absolute;
  left: -8rem;
  top: -1rem;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa dt::before {
    width: 10vw;
    height: 10vw;
    left: -13vw;
  }
}
.-interview .interviewDetail dl.interviewQa dt::after {
  content: "";
  width: 2rem;
  height: 1.5rem;
  background: url("../img/interview/balloon_q.svg") no-repeat center/contain;
  position: absolute;
  left: -0.8rem;
  top: 0.5rem;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa dt::after {
    width: 1.5rem;
    height: 1rem;
    left: -0.3rem;
  }
}
.-interview .interviewDetail dl.interviewQa dt + dt::before, .-interview .interviewDetail dl.interviewQa dt + dt::after {
  display: none;
}
.-interview .interviewDetail dl.interviewQa dd {
  padding: 1em 1.5em;
  background-color: #44b6b6;
  border-radius: 35px;
  max-width: 60%;
  margin-left: auto;
  position: relative;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa dd {
    border-radius: 18px;
    max-width: 95%;
    padding: 0.5em 1.5em;
  }
}
.-interview .interviewDetail dl.interviewQa dd::after {
  content: "";
  width: 2rem;
  height: 1.5rem;
  background: url("../img/interview/balloon_a.svg") no-repeat center/contain;
  position: absolute;
  right: -0.8rem;
  top: 0.5rem;
}
@media screen and (max-width: 560px) {
  .-interview .interviewDetail dl.interviewQa dd::after {
    width: 1.5rem;
    height: 1rem;
    right: -0.3rem;
  }
}
.-interview .-recent .columnList .cate {
  display: inline-block;
  padding: 0.5em 0.7em;
  border-radius: 0.3rem;
  color: #ffffff;
  font-size: 77%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}
.-interview .-recent .columnList .-knowledge {
  background-color: #44b6b6;
}
.-interview .-recent .columnList .-contact-lens {
  background-color: #3595d3;
}
.-interview .-recent .columnList .-eye {
  background-color: #f5991a;
}
.-interview .-recent .columnList .-life-fashion {
  background-color: #e85976;
}
.-interview .-recent .columnList__item {
  padding: 2em 0;
  position: relative;
}
.-interview .-recent .columnList__item:nth-child(even):before {
  display: block;
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background-color: #f5f5f5;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.-interview .-recent .columnList__item a {
  display: flex;
  align-items: center;
  gap: 2em;
}
.-interview .-recent .columnList__item a .thumb {
  aspect-ratio: 1/1;
  max-width: 200px;
  width: 30%;
}
.-interview .-recent .columnList__item a .thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.-interview .-recent .columnList__item a .textArea {
  display: flex;
  flex-direction: column;
  gap: 1em;
  flex: 1;
}
.-interview .-recent .columnList__item a .labelArea {
  grid-row: 1/2;
  grid-column: 2/3;
}
.-interview .-recent .columnList__item a .labelArea .cate {
  margin-bottom: 0.5em;
}
.-interview .-recent .columnList__item a .labelArea .columnTtl {
  font-size: 108%;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 20px;
}
.-interview .-recent .columnList__item a .detail {
  grid-row: 2/3;
  grid-column: 2/3;
  font-size: 90%;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0;
}
@media screen and (max-width: 560px) {
  .-interview .-recent .columnList__item {
    padding: 1.6em 0;
  }
  .-interview .-recent .columnList__item a {
    padding-bottom: 5em;
    position: relative;
  }
  .-interview .-recent .columnList__item a .thumb {
    grid-row: 1/2;
    grid-column: 1/2;
  }
  .-interview .-recent .columnList__item a .labelArea {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: flex-start;
    grid-row: 1/2;
    grid-column: 2/3;
  }
  .-interview .-recent .columnList__item a .labelArea .cate {
    margin-bottom: 1em;
  }
  .-interview .-recent .columnList__item a .detail {
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 400px) {
  .-interview .-recent .columnList__item {
    padding: 1.6em 0;
  }
  .-interview .-recent .columnList__item a {
    padding-bottom: 5em;
  }
}
/*# sourceMappingURL=page.css.map */