@charset "UTF-8";
/*
Theme Name: foomo.jp
Description: foomoのWordPressテーマ
*/

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

main {
  display: block;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* --- reset.cssここまで --- */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
}

body {
  max-width: 100%;
  color: #134e78;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1;
}

ul {
  list-style: none;
}

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.container {
  width: 1080px;
  margin: 0 auto;
  max-width: 100%;
}

@media screen and (max-width: 1240px) {
  body {
    font-size: 14px;
  }
  .container {
    width: 100%;
    padding: 0 30px;
  }
}
@media screen and (max-width: 1240px) {
  body {
    font-size: 12px;
  }
  .container {
    padding: 0 20px;
  }
}
.wrapper {
  padding-right: 140px;
}

.contents {
  width: 100%;
}

@media screen and (max-width: 1240px) {
  .wrapper {
    padding-right: 0;
  }
}
.page-contents {
  margin-top: 45px;
  padding-left: 120px;
}

@media screen and (max-width: 1240px) {
  .page-contents {
    margin-top: 40px;
    padding-left: 0;
  }
}
@media screen and (max-width: 758px) {
  .page-contents {
    margin-top: 20px;
    padding-left: 10px;
  }
}
.wpcf7-mail-sent-ok,
.wpcf7-response-output {
  display: none !important;
}

.sidenav {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 140px;
  background-color: #fff;
  z-index: 4;
}
.sidenav #pc-menu-btn {
  position: relative;
  width: 100%;
  height: 120px;
}
.sidenav #pc-menu-btn span {
  display: block;
  position: absolute;
  bottom: 51px;
  left: 50%;
  width: 60px;
  height: 2px;
  transform: translateX(-50%);
  background-color: #134e78;
  transition: all 0.3s;
}
.sidenav #pc-menu-btn span:first-child {
  top: 51px;
  bottom: auto;
  transition: all 0.3s;
}
.sidenav #pc-menu-btn.active {
  background-color: #134e78;
}
.sidenav #pc-menu-btn.active span {
  background-color: #fff;
  bottom: 45px;
  transform: rotate(25deg) translateX(-55%);
}
.sidenav #pc-menu-btn.active span:first-child {
  top: 45px;
  transform: rotate(-25deg) translateX(-55%);
}
.sidenav__links {
  margin-top: 42px;
}
.sidenav__link {
  display: block;
  width: 56px;
  margin: 0 auto;
  transition: all 0.3s;
}
.sidenav__link img {
  display: block;
  width: 100%;
}
.sidenav__link p {
  font-size: 11px;
  margin-top: 9px;
  text-align: center;
  color: #134e78;
}
.sidenav__link + .sidenav__link {
  margin-top: 34px;
}
.sidenav__link:hover {
  opacity: 0.6;
}
.sidenav .scroll {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
}
.sidenav .scroll__ico {
  width: 8px;
}

@media screen and (max-width: 1240px) {
  .sidenav {
    display: none;
  }
}
.section-title p, .section-title-text {
  position: relative;
  padding-bottom: 6px;
  font-size: 12px;
  font-weight: 500;
}
.section-title p::after, .section-title-text::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100px;
  height: 1px;
  background-color: #134e78;
}
.section-title h2, .section-title-heading {
  margin-top: 15px;
  font-size: 32px;
  font-weight: 700;
}
.section-title-heading {
  display: block;
}

@media screen and (max-width: 1240px) {
  .section-title p {
    padding-bottom: 4px;
    font-size: 10px;
  }
  .section-title p::after {
    width: 75px;
  }
  .section-title h2, .section-title-heading {
    margin-top: 11px;
    font-size: 24px;
  }
}
.morebtn {
  display: flex;
  justify-content: flex-end;
  margin-top: 45px;
}
.morebtn__link {
  display: flex;
  align-items: center;
}
.morebtn__txt {
  font-size: 18px;
  font-weight: 700;
  color: #134e78;
}
.morebtn__ico {
  position: relative;
  display: block;
  margin-left: 21px;
  width: 54px;
  height: 54px;
  border: 1px solid #134e78;
  border-radius: 50%;
  transition: all 0.3s;
}
.morebtn__ico::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-65%) translateY(-50%) rotate(45deg);
  display: block;
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #134e78;
  border-right: 2px solid #134e78;
  transition: all 0.3s;
}
.morebtn__link:hover .morebtn__ico {
  background-color: #134e78;
}
.morebtn__link:hover .morebtn__ico::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

@media screen and (max-width: 1240px) {
  .morebtn {
    margin-top: 30px;
  }
  .morebtn__txt {
    font-size: 16px;
  }
  .morebtn__ico {
    margin-left: 14px;
    width: 40px;
    height: 40px;
  }
  .morebtn__ico::before {
    width: 6px;
    height: 6px;
  }
}
@media screen and (max-width: 758px) {
  .morebtn {
    margin-top: 20px;
  }
  .morebtn__txt {
    font-size: 14px;
  }
  .morebtn__ico {
    margin-left: 10px;
    width: 36px;
    height: 36px;
  }
  .morebtn__ico::before {
    width: 6px;
    height: 6px;
  }
}
.lower-mv {
  width: 100%;
  height: 400px;
  background-image: url(img/news-mv.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.breadcrumb-wrap {
  margin-top: 40px;
}

.breadcrumb {
  display: flex;
  align-items: flex-start;
  color: #b2b2b2;
  line-height: 1.3;
}
.breadcrumb a {
  color: #b2b2b2;
}
.breadcrumb > span {
  margin: 2px 5px 0;
}
.breadcrumb > span:first-child {
  margin-left: 0;
}

@media screen and (max-width: 1240px) {
  .breadcrumb-wrap {
    margin-top: 30px;
  }
  .breadcrumb > span {
    margin: 1px 3px 0;
  }
}
@media screen and (max-width: 758px) {
  .breadcrumb-wrap {
    margin-top: 20px;
  }
  .breadcrumb {
    font-size: 10px;
  }
}
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.pagination {
  margin-top: 160px;
  display: flex;
  justify-content: flex-end;
}
.pagination .nav-links {
  display: flex;
  align-items: center;
}
.pagination .page-numbers {
  display: grid;
  place-items: center;
  width: 60px;
  height: 50px;
  color: #134e78;
  border: 1px solid #cbcbcb;
  border-radius: 4px;
  transition: all 0.3s;
}
.pagination .page-numbers.current, .pagination .page-numbers:hover {
  background-color: #134e78;
  border: 1px solid #134e78;
  color: #fff;
}
.pagination .page-numbers + .page-numbers {
  margin-left: 5px;
}
.pagination .page-numbers.dots {
  border: none;
  width: auto;
  margin: 0 5px 0 10px;
}
.pagination .page-numbers.dots:hover {
  background-color: transparent;
  border: none;
  color: #134e78;
}

@media screen and (max-width: 1240px) {
  .pagination {
    margin-top: 60px;
  }
  .pagination .page-numbers {
    width: 40px;
    height: 30px;
  }
  .pagination .page-numbers.dots {
    margin: 0 0 0 5px;
  }
}
.pageread-text {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.77;
}

@media screen and (max-width: 1240px) {
  .pageread-text {
    font-size: 14px;
  }
}
@media screen and (max-width: 758px) {
  .pageread-text {
    font-size: 13px;
  }
}
.popup {
  display: none;
}

@media screen and (max-width: 1240px) {
  .popup {
    display: block;
    position: fixed;
    bottom: -100px;
    left: 0;
    right: 0;
    padding: 12px 10px 15px;
    width: 100%;
    height: 100px;
    background-color: #314f76;
    z-index: 3;
    transition: all 0.5s;
  }
  .popup.pop {
    bottom: 0;
  }
  .popup__inner {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 12px;
  }
  .popup__title {
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    text-align: center;
  }
  .popup__item {
    margin-right: 4px;
  }
  .popup__item-line {
    display: none !important;
  }
  .popup__item-n {
    flex: 0 0 85px;
    width: 85px;
  }
  .popup__item img {
    width: 100%;
  }
  .popup__item-w {
    flex: 0 0 122px;
    width: 122px;
  }
  .popup__item:last-child {
    margin-right: 0;
  }
}
.line-modal,
.tel-modal,
.hp-modal {
  position: fixed;
  top: 120px;
  right: -100%;
  padding: 60px 42px;
  width: 440px;
  background-color: #fff;
  transition: all 0.5s;
  text-align: center;
  z-index: 3;
  opacity: 0;
  border: 1px solid #eee;
  border-right: none;
}
.line-modal.show,
.tel-modal.show,
.hp-modal.show {
  right: 140px;
  opacity: 1;
}
.line-modal__link,
.tel-modal__link,
.hp-modal__link {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  width: 250px;
  height: 50px;
  font-size: 20px;
  font-weight: 700;
  border-radius: 9999px;
  transition: all 0.3s;
}
.line-modal__link + .line-modal__link,
.tel-modal__link + .line-modal__link,
.hp-modal__link + .line-modal__link {
  margin-top: 30px;
}
.line-modal__link + .tel-modal__link,
.tel-modal__link + .tel-modal__link,
.hp-modal__link + .tel-modal__link {
  margin-top: 30px;
}
.line-modal__link + .hp-modal__link,
.tel-modal__link + .hp-modal__link,
.hp-modal__link + .hp-modal__link {
  margin-top: 30px;
}
.line-modal__link:hover,
.tel-modal__link:hover,
.hp-modal__link:hover {
  opacity: 0.6;
}

.line-modal__link {
  color: #fff;
  background-color: #68b82b;
}

.tel-modal__link {
  color: #fff;
  background-color: #29ABE2;
}

.hp-modal__link {
  color: #fff;
  background-color: #AE2D5C;
}

@media screen and (max-width: 1240px) {
  .line-modal,
  .tel-modal,
  .hp-modal {
    display: grid;
    place-items: center;
    position: fixed;
    top: auto;
    right: 0;
    bottom: -220px;
    padding: 0;
    width: 100%;
    height: 100px;
    border: none;
  }
  .line-modal.show,
  .tel-modal.show,
  .hp-modal.show {
    right: 0;
    bottom: 90px;
  }
  .line-modal__inner,
  .tel-modal__inner,
  .hp-modal__inner {
    display: flex;
    align-items: center;
  }
  .line-modal__link,
  .tel-modal__link,
  .hp-modal__link {
    font-size: 20px;
    font-weight: 700;
    transition: all 0.3s;
  }
  .line-modal__link + .tel-modal__link,
  .tel-modal__link + .tel-modal__link,
  .hp-modal__link + .tel-modal__link {
    margin-top: 0;
    margin-left: 15px;
  }
  .line-modal__link + .line-modal__link,
  .tel-modal__link + .line-modal__link,
  .hp-modal__link + .line-modal__link {
    margin-top: 0;
    margin-left: 15px;
  }
  .line-modal__link + .hp-modal__link,
  .tel-modal__link + .hp-modal__link,
  .hp-modal__link + .hp-modal__link {
    margin-top: 0;
    margin-left: 15px;
  }
  .line-modal__link:hover,
  .tel-modal__link:hover,
  .hp-modal__link:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 758px) {
  .line-modal,
  .tel-modal,
  .hp-modal {
    display: grid;
    place-items: center;
    position: fixed;
    top: auto;
    right: 0;
    bottom: -50vh;
    padding: 0;
    width: 100%;
    height: 60px;
  }
  .line-modal.show,
  .tel-modal.show,
  .hp-modal.show {
    right: 0;
    bottom: 100px;
  }
  .line-modal__link,
  .tel-modal__link,
  .hp-modal__link {
    width: 160px;
    height: 30px;
    font-size: 12px;
    border-width: 1px;
  }
  .line-modal__link + .tel-modal__link,
  .tel-modal__link + .tel-modal__link,
  .hp-modal__link + .tel-modal__link {
    margin-left: 10px;
  }
  .line-modal__link + .line-modal__link,
  .tel-modal__link + .line-modal__link,
  .hp-modal__link + .line-modal__link {
    margin-left: 10px;
  }
  .line-modal__link + .hp-modal__link,
  .tel-modal__link + .hp-modal__link,
  .hp-modal__link + .hp-modal__link {
    margin-left: 10px;
  }
}
/* ===========================

  header

============================== */
.header {
  position: relative;
  height: 120px;
  display: flex;
  align-items: center;
  padding-left: 3.9vw;
}
.header #sp-menu-btn {
  display: none;
  cursor: pointer;
}
.header__logo {
  width: 102px;
}

@media screen and (max-width: 1240px) {
  .header {
    width: 100%;
    height: 80px;
    padding: 0 30px;
    justify-content: space-between;
    background-color: #fff;
  }
  .header__logo {
    width: 90px;
  }
  .header #sp-menu-btn {
    position: fixed;
    top: 0;
    right: 0;
    background-color: #fff;
    display: block;
    width: 80px;
    height: 80px;
    z-index: 999;
  }
  .header #sp-menu-btn .bar {
    position: absolute;
    top: 34px;
    left: 50%;
    transform: translateX(-50%);
    width: 30px;
    height: 2px;
    background-color: #134e78;
  }
  .header #sp-menu-btn .bar:nth-of-type(2) {
    top: auto;
    bottom: 34px;
  }
  .header #sp-menu-btn.active .bar {
    top: 39px;
    transform: translateX(-49%) rotate(25deg);
  }
  .header #sp-menu-btn.active .bar:nth-of-type(2) {
    transform: translateX(-49%) rotate(-25deg);
    bottom: 30px;
  }
}
@media screen and (max-width: 758px) {
  .header {
    padding: 0 20px;
  }
  .header__logo {
    width: 61px;
  }
}
.gnav {
  position: fixed;
  top: 0;
  right: -100%;
  padding: 50px 30px 36px 42px;
  width: 440px;
  background-color: #134e78;
  transition: all 0.5s;
  z-index: 2;
  opacity: 0;
}
.gnav.show {
  right: 140px;
  opacity: 1;
}
.gnav__item + .gnav__item {
  margin-top: 33px;
}
.gnav__link {
  display: flex;
  flex-direction: column;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  transition: all 0.3s;
}
.gnav__link span {
  margin-top: 8px;
  font-size: 12px;
  font-weight: 400;
}
.gnav__link:hover {
  opacity: 0.6;
}
.gnav__foot {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-top: 36px;
}
.gnav__foot-link {
  margin-top: 14px;
  font-size: 12px;
  color: #fff;
  transition: all 0.3s;
}
.gnav__foot-link:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1240px) {
  .gnav {
    padding: 100px 30px 40px 40px;
    width: 440px;
  }
  .gnav.show {
    right: 0;
  }
  .gnav__item + .gnav__item {
    margin-top: 30px;
  }
  .gnav__link {
    font-size: 20px;
  }
  .gnav__link span {
    font-size: 11px;
  }
  .gnav__foot {
    margin-top: 35px;
  }
  .gnav__foot-link {
    margin-top: 14px;
    font-size: 11px;
  }
}
@media screen and (max-width: 758px) {
  .gnav {
    padding: 60px 30px 40px 30px;
    width: 100%;
    height: 100vh;
    z-index: 3;
  }
  .gnav__item + .gnav__item {
    margin-top: 25px;
  }
  .gnav__link {
    font-size: 18px;
  }
  .gnav__link span {
    font-size: 10px;
  }
  .gnav__foot {
    margin-top: 40px;
  }
  .gnav__foot-link {
    margin-top: 13px;
    font-size: 12px;
  }
}
/* =========================

  フッター：footer

============================ */
.footer .container {
  padding: 40px 0 50px;
  border-top: 2px solid #134e78;
}
.footer__body {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.footer__sns {
  display: flex;
  align-items: center;
}
.footer__sns .sns {
  display: block;
  width: 30px;
  flex: 0 0 30px;
  transition: all 0.3s;
}
.footer__sns .sns:hover {
  opacity: 0.6;
}
.footer__sns .sns + .sns {
  margin-left: 10px;
}
.footer .copyright {
  padding-bottom: 6px;
  font-size: 14px;
  font-weight: 500;
}

@media screen and (max-width: 1240px) {
  .footer {
    width: 100%;
    padding: 0 30px;
  }
  .footer .container {
    width: 100%;
    padding: 20px 0 50px;
    border-top: 2px solid #134e78;
  }
  .footer .copyright {
    padding-bottom: 0;
    font-size: 11px;
  }
}
@media screen and (max-width: 758px) {
  .footer {
    padding: 0 20px;
  }
  .footer__body {
    flex-direction: column;
    align-items: flex-start;
  }
  .footer__sns .sns {
    width: 24px;
    flex: 0 0 24px;
  }
  .footer__sns .sns + .sns {
    margin-left: 14px;
  }
  .footer .copyright {
    margin-top: 18px;
    font-size: 11px;
  }
}
/* ==========================

  トップページ

============================= */
.home .mv {
  display: flex;
}
.home .mv__contents {
  width: 50%;
  padding-top: 103px;
  padding-left: 7.8vw;
  padding-right: 4.2vw;
}
.home .mv__text h2 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
}
.home .mv__text p {
  margin-top: 33px;
  font-size: 18px;
  line-height: 2;
  font-weight: 500;
}
.home .mv__img {
  width: 50%;
}
.home .mv__img img {
  width: 100%;
}
.home .mv__img .sp {
  display: none;
}
.home .mv-info-wrap {
  margin-top: 112px;
}
.home .mv-info-title {
  display: inline-block;
  font-size: 18px;
  font-weight: 700;
  padding-bottom: 8px;
  border-bottom: 1px solid #134e78;
}
.home .mv-infos {
  margin-top: 18px;
}
.home .mv-info + .mv-info {
  margin-top: 12px;
}
.home .mv-info__link {
  display: flex;
  align-items: flex-start;
  color: #134e78;
  transition: all 0.3s;
  font-size: 14px;
}
.home .mv-info__link:hover {
  opacity: 0.6;
}
.home .mv-info__date {
  font-weight: 500;
}
.home .mv-info__title {
  margin-top: -2px;
  margin-left: 12px;
  line-height: 1.3;
}

@media screen and (max-width: 1240px) {
  .home .mv__contents {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-top: 0;
    padding-left: 30px;
    padding-right: 30px;
  }
  .home .mv__text h2 {
    font-size: 24px;
  }
  .home .mv__text p {
    margin-top: 20px;
    font-size: 14px;
  }
  .home .mv__img .pc {
    display: none;
  }
  .home .mv__img .sp {
    display: block;
  }
  .home .mv-info-wrap {
    margin-top: 60px;
  }
  .home .mv-info-title {
    font-size: 15px;
    padding-bottom: 6px;
  }
  .home .mv-infos {
    margin-top: 15px;
  }
  .home .mv-info__link {
    font-size: 12px;
  }
  .home .mv-info__title {
    margin-top: -1px;
    margin-left: 10px;
  }
}
@media screen and (max-width: 758px) {
  .home .mv {
    flex-direction: column;
  }
  .home .mv__contents {
    width: 100%;
    display: block;
    padding: 32px 20px 0;
    order: 2;
  }
  .home .mv__text h2 {
    line-height: 1.5;
  }
  .home .mv__text p {
    font-size: 12px;
  }
  .home .mv__img {
    order: 1;
    width: 100%;
  }
  .home .mv-info-wrap {
    margin-top: 74px;
  }
  .home .mv-info-title {
    font-size: 14px;
  }
  .home .mv-infos {
    margin-top: 23px;
  }
  .home .mv-info__title {
    margin-top: -2px;
    margin-left: 18px;
  }
}
.home .main {
  margin-top: 120px;
  padding-bottom: 70px;
}

@media screen and (max-width: 1240px) {
  .home .main {
    margin-top: 60px;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 758px) {
  .home .main {
    margin-top: 80px;
    padding-bottom: 74px;
  }
}
/* ==========================
  キャンペーン：campaigh
============================= */
.home .campaigh__contents {
  margin-top: 50px;
  padding-left: 120px;
}
.home .campaigh__read {
  font-size: 18px;
  font-weight: 700;
}
.home .campaigh__banners {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}
.home .campaigh__banner {
  display: block;
  width: 300px;
  transition: all 0.3s;
}
.home .campaigh__banner:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1240px) {
  .home .campaigh__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .campaigh__read {
    font-size: 14px;
  }
  .home .campaigh__banners {
    margin-top: 40px;
  }
  .home .campaigh__banner {
    width: 32%;
  }
}
@media screen and (max-width: 758px) {
  .home .campaigh__contents {
    margin-top: 18px;
    padding-left: 10px;
  }
  .home .campaigh__read {
    font-size: 13px;
  }
  .home .campaigh__banners {
    margin-top: 18px;
    flex-wrap: wrap;
  }
  .home .campaigh__banner {
    flex: 0 0 100%;
    width: 100%;
    margin-bottom: 12px;
  }
}
/* ==========================
  お客様の声：voice
============================= */
.home .voice {
  margin-top: 65px;
}
.home .voice__contents {
  margin-top: 43px;
  padding-left: 120px;
}
.home .voice__read {
  font-size: 18px;
  font-weight: 700;
}
.home .voice .items {
  margin-top: 43px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px 0;
}
.home .voice .item {
  width: 300px;
}
.home .voice .item__link {
  display: block;
  transition: all 0.3s;
}
.home .voice .item__thumb {
  overflow: hidden;
  width: 100%;
}
.home .voice .item__img {
  width: 100%;
  padding-top: 72.7%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.home .voice .item__body {
  margin-top: 11px;
  word-break: break-all;
}
.home .voice .item .post-categories {
  margin-top: 10px;
}
.home .voice .item .post-categories li {
  display: inline-block;
  padding: 5px 8px;
  background-color: #134e78;
  margin-right: 6px;
  margin-bottom: 5px;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.home .voice .item__name {
  font-size: 18px;
  font-weight: 700;
  color: #134e78;
  line-height: 1.3;
}
.home .voice .item__link:hover {
  opacity: 0.6;
}
.home .voice .item__link:hover .item__img {
  transform: scale(1.05);
}

@media screen and (max-width: 1240px) {
  .home .voice {
    margin-top: 60px;
  }
  .home .voice__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .voice__read {
    font-size: 14px;
  }
  .home .voice .items {
    margin-top: 40px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home .voice .item {
    width: 48.5%;
    margin-bottom: 30px;
  }
  .home .voice .item + .item {
    margin-left: 0;
  }
  .home .voice .item__body {
    margin-top: 12px;
  }
  .home .voice .item__name {
    font-size: 14px;
  }
  .home .voice .item .post-categories li {
    padding: 4px 6px;
    font-size: 12px;
    border-radius: 12px;
  }
}
@media screen and (max-width: 758px) {
  .home .voice {
    margin-top: 50px;
  }
  .home .voice__contents {
    margin-top: 16px;
    padding-left: 10px;
  }
  .home .voice__read {
    font-size: 13px;
    line-height: 1.77;
  }
  .home .voice .items {
    margin-top: 15px;
    flex-wrap: wrap;
  }
  .home .voice .item {
    width: 48.5%;
    margin-bottom: 20px;
  }
  .home .voice .item__body {
    margin-top: 7px;
    flex-direction: column;
  }
  .home .voice .item__name {
    margin-top: 6px;
    margin-left: 0;
    padding-top: 0;
    font-size: 12px;
  }
  .home .voice .item .post-categories li {
    padding: 3px 5px;
    margin-right: 2px;
    font-size: 10px;
    border-radius: 10px;
  }
}
/* ==========================
  選ばれる理由：service
============================= */
.home .service {
  margin-top: 100px;
}
.home .service__contents {
  margin-top: 43px;
  padding-left: 120px;
}
.home .service__read {
  font-size: 18px;
  font-weight: 700;
}
.home .service .services {
  margin-top: 53px;
}
.home .service .item {
  display: flex;
}
.home .service .item + .item {
  margin-top: 30px;
}
.home .service .item__img {
  width: 460px;
  flex: 0 0 460px;
}
.home .service .item__body {
  margin-left: 30px;
  padding-top: 37px;
  padding-right: 18px;
}
.home .service .item__point {
  display: inline-block;
  font-weight: 500;
  padding-bottom: 11px;
  border-bottom: 1px solid #134e78;
}
.home .service .item__title {
  margin-top: 21px;
  font-size: 24px;
  line-height: 1.33;
}
.home .service .item__text {
  margin-top: 15px;
  font-weight: 500;
  line-height: 2;
}
.home .service .item__text span {
  display: block;
  font-size: 14px;
}
.home .service .item:nth-child(2) .item__body {
  padding-top: 0;
}
.home .service .item:nth-child(3) .item__body {
  padding-top: 47px;
}
.home .service__details {
  margin-top: 62px;
  padding: 0 21px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.home .service .detail {
  display: flex;
  align-items: flex-start;
  width: 435px;
  margin-bottom: 44px;
}
.home .service .detail__ico {
  width: 90px;
  flex: 0 0 90px;
}
.home .service .detail__body {
  margin-left: 22px;
  flex: 1 1 auto;
}
.home .service .detail__title {
  padding-bottom: 7px;
  font-size: 18px;
  font-weight: 700;
  border-bottom: 1px solid #134e78;
}
.home .service .detail__text {
  margin-top: 5px;
  font-weight: 500;
  line-height: 2;
}
.home .service .zoom-consul {
  margin-top: 21px;
  width: 100%;
}
.home .service .zoom-consul__link {
  display: block;
  width: 100%;
  transition: all 0.3s;
}
.home .service .zoom-consul__link:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1240px) {
  .home .service {
    margin-top: 60px;
  }
  .home .service__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .service__read {
    font-size: 14px;
  }
  .home .service .services {
    margin-top: 40px;
  }
  .home .service .item + .item {
    margin-top: 20px;
  }
  .home .service .item__img {
    width: 40%;
    flex: 0 0 40%;
  }
  .home .service .item__body {
    margin-left: 20px;
    padding-top: 0px;
    padding-right: 0;
  }
  .home .service .item__point {
    padding-bottom: 6px;
    font-size: 12px;
  }
  .home .service .item__title {
    margin-top: 16px;
    font-size: 18px;
  }
  .home .service .item__text {
    margin-top: 14px;
    font-size: 13px;
  }
  .home .service .item__text span {
    font-size: 11px;
  }
  .home .service .item:nth-child(2) .item__body {
    padding-top: 0;
  }
  .home .service .item:nth-child(3) .item__body {
    padding-top: 0;
  }
  .home .service__details {
    margin-top: 40px;
    padding: 0;
  }
  .home .service .detail {
    width: 48.5%;
    margin-bottom: 30px;
  }
  .home .service .detail__ico {
    width: 75px;
    flex: 0 0 75px;
  }
  .home .service .detail__body {
    margin-left: 18px;
  }
  .home .service .detail__title {
    padding-bottom: 6px;
    font-size: 16px;
  }
  .home .service .detail__text {
    margin-top: 5px;
    font-size: 13px;
  }
  .home .service .zoom-consul {
    margin-top: 20px;
    width: 100%;
  }
}
@media screen and (max-width: 758px) {
  .home .service {
    margin-top: 75px;
  }
  .home .service__contents {
    margin-top: 18px;
    padding-left: 10px;
  }
  .home .service__read {
    font-size: 13px;
    line-height: 1.77;
  }
  .home .service .services {
    margin-top: 19px;
  }
  .home .service .item {
    flex-direction: column;
  }
  .home .service .item + .item {
    margin-top: 30px;
  }
  .home .service .item__img {
    width: 100%;
    flex: 0 0 100%;
  }
  .home .service .item__body {
    margin-left: 0;
    padding-top: 0;
    margin-top: 18px;
  }
  .home .service .item__point {
    padding-bottom: 9px;
  }
  .home .service .item__title {
    margin-top: 15px;
    line-height: 1.5;
  }
  .home .service .item__text {
    font-size: 12px;
  }
  .home .service .item__text span {
    font-size: 12px;
  }
  .home .service__details {
    margin-top: 34px;
  }
  .home .service .detail {
    width: 100%;
    margin-bottom: 0;
  }
  .home .service .detail + .detail {
    margin-top: 28px;
  }
  .home .service .detail__ico {
    width: 67px;
    flex: 0 0 67px;
  }
  .home .service .detail__body {
    margin-left: 14px;
  }
  .home .service .detail__title {
    padding-bottom: 5px;
    font-size: 14px;
  }
  .home .service .detail__text {
    margin-top: 4px;
    font-size: 12px;
  }
  .home .service .zoom-consul {
    margin-top: 40px;
  }
}
/* ==========================
  脱毛メニュー：menu
============================= */
.home .hmenu {
  margin-top: 140px;
}
.home .hmenu__contents {
  padding-left: 120px;
}
.home .hmenu__read {
  margin-top: 46px;
  font-size: 18px;
  font-weight: 700;
}
.home .hmenu .sp-l {
  display: none;
}
.home .hmenu .items {
  margin-top: 58px;
}
.home .hmenu .item__link {
  display: flex;
  justify-content: space-between;
  color: #134e78;
  transition: all 0.3s;
}
.home .hmenu .item__link:hover {
  opacity: 0.6;
}
.home .hmenu .item + .item {
  margin-top: 30px;
}
.home .hmenu .item__body {
  width: 460px;
  flex: 0 0 460px;
}
.home .hmenu .item__title {
  display: flex;
  justify-content: space-between;
  padding: 22px 0 12px;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #134e78;
}
.home .hmenu .item__title .price {
  margin-right: -8px;
}
.home .hmenu .item__title .price span {
  font-size: 14px;
}
.home .hmenu .item__text {
  margin-top: 22px;
  font-weight: 500;
}
.home .hmenu .item__targettitle {
  display: inline-block;
  margin-top: 24px;
  padding: 5px 8px;
  background-color: #134e78;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  border-radius: 12px;
}
.home .hmenu .item__targets {
  margin-top: 13px;
  display: flex;
  flex-wrap: wrap;
}
.home .hmenu .item__target {
  margin-right: 18px;
  line-height: 1.75;
  font-size: 14px;
  font-weight: 500;
}
.home .hmenu .item__img {
  width: 460px;
  flex: 0 0 460px;
}
.home .hmenu .satis {
  margin-top: 60px;
  padding: 40px;
  border: 1px solid #134e78;
}
.home .hmenu .satis__title {
  padding-bottom: 27px;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #134e78;
}
.home .hmenu .satis__text {
  margin-top: 18px;
  font-weight: 500;
  line-height: 2;
}
.home .hmenu .satis__foot {
  display: flex;
  align-items: center;
  margin-top: 32px;
  padding-left: 25px;
  width: 100%;
  height: 80px;
  background-color: #f7f8f8;
  font-weight: 500;
}
.home .hmenu .satis__foot .ico {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #134e78;
}
.home .hmenu .satis__foot .left-text {
  margin-left: 20px;
}
.home .hmenu .satis__foot .figure {
  position: relative;
  display: grid;
  place-items: center;
  margin-left: 40px;
  width: 120px;
  height: 32px;
  background-color: #134e78;
  font-weight: 700;
  color: #fff;
}
.home .hmenu .satis__foot .figure::after {
  position: absolute;
  top: 0;
  right: -20px;
  content: "";
  width: 20px;
  height: 32px;
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 20px solid #134e78;
}
.home .hmenu .satis__foot .right-text {
  margin-left: 56px;
}

@media screen and (max-width: 1240px) {
  .home .hmenu {
    margin-top: 60px;
  }
  .home .hmenu__contents {
    padding-left: 0;
  }
  .home .hmenu__read {
    margin-top: 40px;
    font-size: 14px;
  }
  .home .hmenu .items {
    margin-top: 40px;
  }
  .home .hmenu .item + .item {
    margin-top: 35px;
  }
  .home .hmenu .item__body {
    width: 50%;
    flex: 0 0 50%;
  }
  .home .hmenu .item__title {
    padding: 8px 0 10px;
    font-size: 20px;
  }
  .home .hmenu .item__title .price {
    margin-right: -5px;
  }
  .home .hmenu .item__title .price span {
    font-size: 12px;
  }
  .home .hmenu .item__text {
    margin-top: 16px;
    font-size: 14px;
  }
  .home .hmenu .item__targettitle {
    margin-top: 20px;
    padding: 4px 6px;
    font-size: 11px;
  }
  .home .hmenu .item__targets {
    margin-top: 10px;
  }
  .home .hmenu .item__target {
    margin-right: 12px;
    font-size: 12px;
  }
  .home .hmenu .item__img {
    width: 46%;
    flex: 0 0 46%;
  }
  .home .hmenu .satis {
    margin-top: 40px;
    padding: 30px;
  }
  .home .hmenu .satis__title {
    padding-bottom: 18px;
    font-size: 18px;
  }
  .home .hmenu .satis__text {
    margin-top: 16px;
  }
  .home .hmenu .satis__foot {
    margin-top: 25px;
    padding-left: 20px;
    height: 70px;
  }
  .home .hmenu .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
  }
  .home .hmenu .satis__foot .left-text {
    margin-left: 16px;
  }
  .home .hmenu .satis__foot .figure {
    margin-left: 30px;
    width: 100px;
    height: 26px;
  }
  .home .hmenu .satis__foot .figure::after {
    position: absolute;
    top: 0;
    right: -20px;
    content: "";
    width: 20px;
    height: 26px;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 13px solid #134e78;
  }
  .home .hmenu .satis__foot .right-text {
    margin-left: 35px;
  }
}
@media screen and (max-width: 758px) {
  .home .hmenu {
    margin-top: 62px;
  }
  .home .hmenu__contents {
    padding-left: 18px;
  }
  .home .hmenu__read {
    margin-top: 18px;
    font-size: 13px;
    line-height: 1.77;
  }
  .home .hmenu .pc-l {
    display: none;
  }
  .home .hmenu .sp-l {
    display: block;
  }
  .home .hmenu .items {
    margin-top: 18px;
  }
  .home .hmenu .item__link {
    flex-direction: column;
  }
  .home .hmenu .item + .item {
    margin-top: 25px;
  }
  .home .hmenu .item__body {
    width: 100%;
    flex: 0 0 100%;
    order: 2;
    padding-top: 14px;
  }
  .home .hmenu .item__title {
    padding: 0 0 12px;
    font-size: 18px;
  }
  .home .hmenu .item__title .price {
    margin-right: -6px;
  }
  .home .hmenu .item__title .price span {
    font-size: 12px;
  }
  .home .hmenu .item__text {
    margin-top: 18px;
    font-size: 12px;
  }
  .home .hmenu .item__targettitle {
    margin-top: 21px;
    padding: 3px 5px;
    font-size: 11px;
  }
  .home .hmenu .item__targets {
    margin-top: 6px;
  }
  .home .hmenu .item__target {
    margin-right: 14px;
    font-size: 11px;
  }
  .home .hmenu .item__img {
    width: 100%;
    flex: 0 0 100%;
    order: 1;
  }
  .home .hmenu .satis {
    margin-top: 30px;
    padding: 20px;
  }
  .home .hmenu .satis__title {
    padding-bottom: 10px;
    font-size: 15px;
  }
  .home .hmenu .satis__text {
    margin-top: 12px;
  }
  .home .hmenu .satis__foot {
    margin-top: 20px;
    padding: 0 10px;
    height: 70px;
  }
  .home .hmenu .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    font-size: 10px;
  }
  .home .hmenu .satis__foot .left-text {
    margin-left: 8px;
    margin-right: 6px;
    font-size: 10px;
    line-height: 1.3;
  }
  .home .hmenu .satis__foot .figure {
    margin-left: 0;
    flex: 0 0 50px;
    width: 50px;
    height: 20px;
    font-size: 10px;
  }
  .home .hmenu .satis__foot .figure::after {
    right: -20px;
    width: 20px;
    height: 20px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #134e78;
  }
  .home .hmenu .satis__foot .right-text {
    margin-left: 17px;
    font-size: 10px;
    line-height: 1.3;
  }
}
/* ==========================
  店舗情報：salonlist
============================= */
.home .salonlist {
  margin-top: 85px;
}
.home .salonlist__contents {
  margin-top: 62px;
  padding-left: 120px;
}
.home .salonlist .salons {
  display: flex;
  justify-content: flex-start;
  gap: 30px;
}
.home .salonlist .salon {
  width: 300px;
}
.home .salonlist .salon__link {
  display: block;
  transition: all 0.3s;
}
.home .salonlist .salon__thumb {
  overflow: hidden;
}
.home .salonlist .salon__img {
  width: 100%;
  padding-top: 53.3%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.home .salonlist .salon__name {
  margin-top: 16px;
  font-size: 18px;
  font-weight: 700;
  color: #134e78;
}
.home .salonlist .salon__link:hover {
  opacity: 0.6;
}
.home .salonlist .salon__link:hover .salon__img {
  transform: scale(1.05);
}

@media screen and (max-width: 1240px) {
  .home .salonlist {
    margin-top: 60px;
  }
  .home .salonlist__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .salonlist .salon {
    width: 32.5%;
  }
  .home .salonlist .salon__name {
    margin-top: 15px;
    font-size: 15px;
  }
}
@media screen and (max-width: 758px) {
  .home .salonlist__contents {
    margin-top: 25px;
    padding-left: 10px;
  }
  .home .salonlist .salons {
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .home .salonlist .salon {
    width: 48.5%;
  }
  .home .salonlist .salon:nth-child(n+3) {
    margin-top: 20px;
  }
  .home .salonlist .salon__name {
    margin-top: 10px;
    font-size: 14px;
  }
}
/* ==========================
  よくある質問：qa
============================= */
.home .qa {
  margin-top: 50px;
}
.home .qa__contents {
  margin-top: 50px;
  padding-left: 120px;
}
.home .qa__item {
  padding-bottom: 35px;
  border-bottom: 1px solid #134e78;
}
.home .qa__item + .qa__item {
  margin-top: 35px;
}
.home .qa .question {
  display: flex;
  align-items: flex-start;
}
.home .qa .question__ico {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  background-color: #134e78;
  font-size: 24px;
  font-weight: 700;
  color: #fff;
}
.home .qa .question__title {
  margin-left: 20px;
  padding-top: 5px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.home .qa .question__btn {
  display: none;
}
.home .qa .answer {
  margin-top: 16px;
}
.home .qa .answer__inner {
  display: flex;
  align-items: flex-start;
}
.home .qa .answer__ico {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  font-size: 24px;
  font-weight: 700;
  border: 1px solid #134e78;
}
.home .qa .answer__body {
  margin-left: 20px;
  margin-bottom: -8px;
  padding-top: 0;
  font-weight: 500;
  line-height: 2;
}
.home .qa .morebtn {
  margin-top: 40px;
}

@media screen and (max-width: 1240px) {
  .home .qa {
    margin-top: 60px;
  }
  .home .qa__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .qa__item {
    padding-bottom: 30px;
  }
  .home .qa__item + .qa__item {
    margin-top: 30px;
  }
  .home .qa .question__ico {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    font-size: 18px;
  }
  .home .qa .question__title {
    margin-left: 16px;
    padding-top: 3px;
    font-size: 15px;
  }
  .home .qa .answer {
    margin-top: 15px;
  }
  .home .qa .answer__ico {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    font-size: 18px;
  }
  .home .qa .answer__body {
    margin-left: 16px;
    margin-bottom: -8px;
    font-size: 14px;
  }
  .home .qa .morebtn {
    margin-top: 30px;
  }
}
@media screen and (max-width: 758px) {
  .home .qa__contents {
    margin-top: 24px;
    padding-left: 10px;
  }
  .home .qa__item {
    padding-bottom: 14px;
  }
  .home .qa__item + .qa__item {
    margin-top: 18px;
  }
  .home .qa .question__title {
    margin-left: 15px;
    padding-top: 3px;
    font-size: 14px;
  }
  .home .qa .question__btn {
    display: block;
    margin-left: auto;
    font-size: 24px;
    font-weight: 300;
    color: #134e78;
    margin-top: -1px;
    cursor: pointer;
  }
  .home .qa .answer {
    margin-top: 15px;
    display: none;
  }
  .home .qa .answer__body {
    margin-left: 15px;
    margin-bottom: -8px;
    font-size: 12px;
  }
  .home .qa .morebtn {
    margin-top: 30px;
  }
}
/* ==========================
  お役立ち情報：content
============================= */
.home .useful {
  margin-top: 70px;
}
.home .useful__contents {
  margin-top: 43px;
  padding-left: 120px;
}
.home .useful__read {
  font-size: 18px;
  font-weight: 700;
}
.home .useful .entries {
  display: flex;
  justify-content: space-between;
  margin-top: 53px;
}
.home .useful .entry {
  width: 300px;
  padding: 0;
  background-color: #fff;
}
.home .useful .entry + .entry {
  margin-top: 0;
}
.home .useful .entry__link {
  display: block;
  color: #134e78;
  transition: all 0.3s;
}
.home .useful .entry__thumb {
  overflow: hidden;
}
.home .useful .entry__img {
  width: 100%;
  padding-top: 53.3%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.home .useful .entry__body {
  margin-top: 18px;
  word-break: break-all;
}
.home .useful .entry__date {
  font-size: 14px;
  margin-left: 0;
}
.home .useful .entry__title {
  margin-top: 8px;
  font-size: 18px;
  line-height: 1.5;
  border: none;
}
.home .useful .entry__text {
  margin-top: 6px;
}
.home .useful .entry__text p {
  line-height: 2;
}
.home .useful .entry .post-categories li {
  display: inline-block;
  margin-top: 15px;
  margin-right: 6px;
  padding: 5px 8px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.home .useful .morebtn {
  margin-top: 42px;
}

@media screen and (max-width: 1240px) {
  .home .useful {
    margin-top: 60px;
  }
  .home .useful__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .home .useful__read {
    font-size: 14px;
  }
  .home .useful .entries {
    margin-top: 40px;
  }
  .home .useful .entry {
    width: 32.5%;
  }
  .home .useful .entry__body {
    margin-top: 16px;
  }
  .home .useful .entry__date {
    font-size: 12px;
  }
  .home .useful .entry__title {
    margin-top: 6px;
    font-size: 14px;
  }
  .home .useful .entry__text {
    margin-top: 5px;
    font-size: 12px;
  }
  .home .useful .entry .post-categories li {
    margin-top: 12px;
    padding: 4px 6px;
    font-size: 12px;
  }
  .home .useful .morebtn {
    margin-top: 30px;
  }
}
@media screen and (max-width: 758px) {
  .home .useful {
    margin-top: 80px;
  }
  .home .useful__contents {
    margin-top: 16px;
    padding-left: 10px;
  }
  .home .useful__read {
    font-size: 13px;
    line-height: 1.77;
  }
  .home .useful .entries {
    margin-top: 12px;
    flex-direction: column;
  }
  .home .useful .entry {
    width: 100%;
  }
  .home .useful .entry + .entry {
    margin-top: 15px;
  }
  .home .useful .entry__link {
    display: flex;
  }
  .home .useful .entry__thumb {
    width: 105px;
    flex: 0 0 105px;
  }
  .home .useful .entry__img {
    padding-top: 114.3%;
  }
  .home .useful .entry__body {
    margin-top: 0;
    padding-top: 5px;
    margin-left: 15px;
    flex: 1 1 auto;
  }
  .home .useful .entry__date {
    font-size: 10px;
  }
  .home .useful .entry__title {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.3;
  }
  .home .useful .entry__text {
    font-size: 12px;
  }
  .home .useful .entry .post-categories li {
    margin-top: 9px;
    margin-right: 3px;
    padding: 4px 5px;
    font-size: 10px;
  }
  .home .useful .morebtn {
    margin-top: 30px;
  }
}
/* ===================================

  アーカイブページ(お知らせ一覧)：archive
  固定ページ：page

  ==================================== */
.archive .breadcrumb-wrap,
.blog .breadcrumb-wrap,
.page .breadcrumb-wrap {
  margin-top: 20px;
}
.archive .main,
.blog .main,
.page .main {
  margin-top: 66px;
  padding-bottom: 100px;
}
.archive__contents,
.blog__contents,
.page__contents {
  margin-top: 45px;
  padding-left: 120px;
}
.archive__read,
.blog__read,
.page__read {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.77;
}
.archive .entries,
.blog .entries,
.page .entries {
  margin-top: 70px;
}
.archive .entry,
.blog .entry,
.page .entry {
  padding: 30px 30px 35px;
  background-color: #f1f1f1;
}
.archive .entry + .entry,
.blog .entry + .entry,
.page .entry + .entry {
  margin-top: 30px;
}
.archive .entry__link,
.blog .entry__link,
.page .entry__link {
  display: block;
  color: #134e78;
  transition: all 0.3s;
}
.archive .entry__link:hover,
.blog .entry__link:hover,
.page .entry__link:hover {
  opacity: 0.6;
}
.archive .entry__meta,
.blog .entry__meta,
.page .entry__meta {
  display: flex;
  align-items: center;
}
.archive .entry__cate,
.blog .entry__cate,
.page .entry__cate {
  display: inline-block;
  padding: 4px 10px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.archive .entry__date,
.blog .entry__date,
.page .entry__date {
  margin-left: 8px;
}
.archive .entry__title,
.blog .entry__title,
.page .entry__title {
  margin-top: 15px;
  padding-bottom: 5px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  border-bottom: 1px solid #134e78;
}
.archive .entry__excerpt,
.blog .entry__excerpt,
.page .entry__excerpt {
  margin-top: 17px;
  word-break: break-all;
}
.archive .entry__excerpt p,
.blog .entry__excerpt p,
.page .entry__excerpt p {
  line-height: 2;
}
.archive .entry__btn,
.blog .entry__btn,
.page .entry__btn {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}
.archive .entry__btn img,
.blog .entry__btn img,
.page .entry__btn img {
  width: 30px;
}

@media screen and (max-width: 1240px) {
  .archive .main,
  .blog .main,
  .page .main {
    margin-top: 60px;
    padding-bottom: 60px;
  }
  .archive__contents,
  .blog__contents,
  .page__contents {
    margin-top: 40px;
    padding-left: 0;
  }
  .archive__read,
  .blog__read,
  .page__read {
    font-size: 14px;
  }
  .archive .entries,
  .blog .entries,
  .page .entries {
    margin-top: 40px;
  }
  .archive .entry + .entry,
  .blog .entry + .entry,
  .page .entry + .entry {
    margin-top: 20px;
  }
  .archive .entry__cate,
  .blog .entry__cate,
  .page .entry__cate {
    padding: 4px 6px;
    font-size: 11px;
    border-radius: 12px;
  }
  .archive .entry__date,
  .blog .entry__date,
  .page .entry__date {
    font-size: 12px;
  }
  .archive .entry__title,
  .blog .entry__title,
  .page .entry__title {
    margin-top: 12px;
    padding-bottom: 4px;
    font-size: 18px;
  }
  .archive .entry__excerpt,
  .blog .entry__excerpt,
  .page .entry__excerpt {
    margin-top: 15px;
  }
  .archive .entry__btn,
  .blog .entry__btn,
  .page .entry__btn {
    margin-top: 20px;
  }
}
@media screen and (max-width: 758px) {
  .archive .main,
  .blog .main,
  .page .main {
    margin-top: 40px;
    padding-bottom: 60px;
  }
  .archive__contents,
  .blog__contents,
  .page__contents {
    margin-top: 20px;
    padding-left: 10px;
  }
  .archive__read,
  .blog__read,
  .page__read {
    font-size: 13px;
  }
  .archive .entries,
  .blog .entries,
  .page .entries {
    margin-top: 30px;
  }
  .archive .entry + .entry,
  .blog .entry + .entry,
  .page .entry + .entry {
    margin-top: 20px;
  }
  .archive .entry__cate,
  .blog .entry__cate,
  .page .entry__cate {
    padding: 3px 5px;
    font-size: 10px;
  }
  .archive .entry__date,
  .blog .entry__date,
  .page .entry__date {
    font-size: 11px;
  }
  .archive .entry__title,
  .blog .entry__title,
  .page .entry__title {
    font-size: 16px;
  }
  .archive .entry__btn,
  .blog .entry__btn,
  .page .entry__btn {
    margin-top: 20px;
  }
}
/* ==================================

  お客様の声：post-type-archive-voice

===================================== */
.post-type-archive-voice .breadcrumb-wrap {
  margin-top: 20px;
}
.post-type-archive-voice .voice-entries {
  margin-top: 70px;
  display: flex;
  flex-wrap: wrap;
}
.post-type-archive-voice .voice-entry {
  width: 300px;
  flex: 0 0 300px;
  word-break: break-all;
}
.post-type-archive-voice .voice-entry__link {
  display: block;
  color: #134e78;
  transition: all 0.3s;
}
.post-type-archive-voice .voice-entry + .voice-entry {
  margin-left: 20px;
}
.post-type-archive-voice .voice-entry:nth-child(3n+1) {
  margin-left: 0;
}
.post-type-archive-voice .voice-entry:nth-child(n+4) {
  margin-top: 20px;
}
.post-type-archive-voice .voice-entry__thumb {
  overflow: hidden;
}
.post-type-archive-voice .voice-entry__img {
  width: 100%;
  padding-top: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.post-type-archive-voice .voice-entry__body {
  padding: 22px 30px 30px;
  background-color: #f5f5f5;
}
.post-type-archive-voice .voice-entry__date {
  font-size: 14px;
  font-weight: 500;
}
.post-type-archive-voice .voice-entry__cats {
  margin-top: 15px;
}
.post-type-archive-voice .voice-entry__cate {
  display: inline-block;
  margin-right: 3px;
  margin-bottom: 5px;
  padding: 4px 8px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.post-type-archive-voice .voice-entry__name {
  margin-top: 12px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
}
.post-type-archive-voice .voice-entry:hover {
  opacity: 0.6;
}
.post-type-archive-voice .voice-entry:hover .voice-entry__img {
  transform: scale(1.05);
}

@media screen and (max-width: 1240px) {
  .post-type-archive-voice .voice-entries {
    margin-top: 40px;
  }
  .post-type-archive-voice .voice-entry {
    width: 32.5%;
    flex: 0 0 32.5%;
  }
  .post-type-archive-voice .voice-entry + .voice-entry {
    margin-left: 1.25%;
  }
  .post-type-archive-voice .voice-entry:nth-child(3n+1) {
    margin-left: 0;
  }
  .post-type-archive-voice .voice-entry:nth-child(n+4) {
    margin-top: 20px;
  }
  .post-type-archive-voice .voice-entry__body {
    padding: 20px 20px 30px;
    background-color: #f5f5f5;
  }
  .post-type-archive-voice .voice-entry__date {
    font-size: 12px;
  }
  .post-type-archive-voice .voice-entry__cats {
    margin-top: 10px;
  }
  .post-type-archive-voice .voice-entry__cate {
    margin-bottom: 3px;
    padding: 4px 6px;
    font-size: 10px;
  }
  .post-type-archive-voice .voice-entry__name {
    margin-top: 10px;
    font-size: 16px;
  }
}
@media screen and (max-width: 758px) {
  .post-type-archive-voice .voice-entries {
    justify-content: space-between;
    margin-top: 30px;
  }
  .post-type-archive-voice .voice-entry {
    width: 48.5%;
    flex: 0 0 48.5%;
    margin-bottom: 15px;
  }
  .post-type-archive-voice .voice-entry + .voice-entry {
    margin-left: 0;
  }
  .post-type-archive-voice .voice-entry:nth-child(n+4) {
    margin-top: 0;
  }
  .post-type-archive-voice .voice-entry__body {
    padding: 15px 10px 20px;
    background-color: #f5f7f9;
  }
  .post-type-archive-voice .voice-entry__date {
    font-size: 12px;
  }
  .post-type-archive-voice .voice-entry__cats {
    margin-top: 8px;
  }
  .post-type-archive-voice .voice-entry__cate {
    margin-bottom: 3px;
    padding: 3px 5px;
    font-size: 10px;
  }
  .post-type-archive-voice .voice-entry__name {
    margin-top: 8px;
    font-size: 14px;
  }
}
/* ====================================

  お役立ち情報：post-type-archive-blog

======================================= */
.post-type-archive-blog .breadcrumb-wrap {
  margin-top: 20px;
}
.post-type-archive-blog .blog-entries {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 70px;
}
.post-type-archive-blog .blog-entry {
  width: 460px;
  flex: 0 0 460px;
}
.post-type-archive-blog .blog-entry:nth-child(n+3) {
  margin-top: 30px;
}
.post-type-archive-blog .blog-entry__link {
  display: block;
  transition: all 0.3s;
  color: #134e78;
}
.post-type-archive-blog .blog-entry__thumb {
  overflow: hidden;
}
.post-type-archive-blog .blog-entry__img {
  width: 100%;
  padding-top: 48.9%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.post-type-archive-blog .blog-entry__body {
  position: relative;
  padding: 30px 110px 25px 30px;
  background-color: #f5f7f9;
}
.post-type-archive-blog .blog-entry__date {
  font-size: 14px;
}
.post-type-archive-blog .blog-entry__title {
  margin-top: 10px;
  font-size: 20px;
  line-height: 1.3;
}
.post-type-archive-blog .blog-entry__excerpt {
  margin-top: 23px;
  line-height: 2;
  font-weight: 500;
}
.post-type-archive-blog .blog-entry__foot {
  margin-top: 15px;
}
.post-type-archive-blog .blog-entry__cate {
  display: inline-block;
  padding: 4px 7px;
  margin-right: 4px;
  margin-bottom: 5px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.post-type-archive-blog .blog-entry__ico {
  position: absolute;
  bottom: 39px;
  right: 34px;
  width: 30px;
}
.post-type-archive-blog .blog-entry__ico img {
  width: 100%;
}
.post-type-archive-blog .blog-entry__link:hover {
  opacity: 0.6;
}
.post-type-archive-blog .blog-entry__link:hover .blog-entry__img {
  transform: scale(1.05);
}

@media screen and (max-width: 1240px) {
  .post-type-archive-blog .blog-entries {
    margin-top: 40px;
  }
  .post-type-archive-blog .blog-entry {
    width: 48.5%;
    flex: 0 0 48.5%;
  }
  .post-type-archive-blog .blog-entry:nth-child(n+3) {
    margin-top: 20px;
  }
  .post-type-archive-blog .blog-entry__img {
    padding-top: 50%;
  }
  .post-type-archive-blog .blog-entry__body {
    padding: 20px 70px 20px 20px;
  }
  .post-type-archive-blog .blog-entry__date {
    font-size: 14px;
  }
  .post-type-archive-blog .blog-entry__title {
    margin-top: 12px;
    font-size: 18px;
  }
  .post-type-archive-blog .blog-entry__excerpt {
    margin-top: 18px;
  }
  .post-type-archive-blog .blog-entry__foot {
    margin-top: 16px;
  }
  .post-type-archive-blog .blog-entry__cate {
    padding: 4px 6px;
    margin-right: 3px;
    margin-bottom: 4px;
    font-size: 11px;
    border-radius: 10px;
  }
  .post-type-archive-blog .blog-entry__ico {
    position: absolute;
    bottom: 30px;
    right: 20px;
  }
}
@media screen and (max-width: 758px) {
  .post-type-archive-blog .blog-entries {
    flex-direction: column;
    margin-top: 30px;
  }
  .post-type-archive-blog .blog-entry {
    width: 100%;
    flex: 0 0 100%;
  }
  .post-type-archive-blog .blog-entry:nth-child(n+3) {
    margin-top: 0;
  }
  .post-type-archive-blog .blog-entry + .blog-entry {
    margin-top: 20px;
  }
  .post-type-archive-blog .blog-entry__date {
    font-size: 12px;
  }
  .post-type-archive-blog .blog-entry__title {
    margin-top: 12px;
    font-size: 18px;
  }
  .post-type-archive-blog .blog-entry__foot {
    margin-top: 20px;
  }
  .post-type-archive-blog .blog-entry__cate {
    padding: 4px 6px;
    font-size: 12px;
  }
}
/* ========================================

  キャンペーン一覧：post-type-archive-campaign

============================================ */
.post-type-archive-campaign .breadcrumb-wrap {
  margin-top: 20px;
}
.post-type-archive-campaign .cam-entries {
  margin-top: 40px;
}
.post-type-archive-campaign .cam-entry + .cam-entry {
  margin-top: 45px;
}
.post-type-archive-campaign .cam-entry__link {
  display: flex;
  align-items: flex-start;
  color: #134e78;
  transition: all 0.3s;
}
.post-type-archive-campaign .cam-entry__link:hover {
  opacity: 0.6;
}
.post-type-archive-campaign .cam-entry__link:hover .morebtn__ico {
  background-color: #134e78;
}
.post-type-archive-campaign .cam-entry__link:hover .morebtn__ico::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
.post-type-archive-campaign .cam-entry__img {
  width: 48%;
  flex: 0 0 48%;
}
.post-type-archive-campaign .cam-entry__img img {
  width: 100%;
}
.post-type-archive-campaign .cam-entry__contents {
  margin-left: 30px;
  word-break: break-all;
}
.post-type-archive-campaign .cam-entry__title {
  font-size: 24px;
  line-height: 1.33;
  padding-bottom: 10px;
  border-bottom: 1px solid #134e78;
}
.post-type-archive-campaign .cam-entry__text {
  margin-top: 15px;
  line-height: 2;
}
.post-type-archive-campaign .cam-entry .morebtn {
  margin-top: 15px;
}

@media screen and (max-width: 1240px) {
  .post-type-archive-campaign .cam-entry + .cam-entry {
    margin-top: 50px;
  }
  .post-type-archive-campaign .cam-entry__contents {
    margin-left: 25px;
  }
  .post-type-archive-campaign .cam-entry__title {
    font-size: 20px;
  }
  .post-type-archive-campaign .cam-entry__text {
    margin-top: 14px;
  }
}
@media screen and (max-width: 758px) {
  .post-type-archive-campaign .cam-entry__link {
    flex-direction: column;
  }
  .post-type-archive-campaign .cam-entry__img {
    width: 100%;
    flex: 0 0 100%;
  }
  .post-type-archive-campaign .cam-entry__contents {
    margin-left: 0;
    margin-top: 20px;
  }
  .post-type-archive-campaign .cam-entry__title {
    font-size: 18px;
  }
  .post-type-archive-campaign .cam-entry__text {
    margin-top: 12px;
  }
}
/* ===============================

  Q&A一覧：archive-qa

================================== */
.page-qa .breadcrumb-wrap {
  margin-top: 20px;
}
.page-qa .archive__contents {
  margin-top: 54px;
}
.page-qa .qa__item {
  padding-bottom: 35px;
  border-bottom: 1px solid #134e78;
}
.page-qa .qa__item + .qa__item {
  margin-top: 35px;
}
.page-qa .qa .question {
  display: flex;
  align-items: flex-start;
}
.page-qa .qa .question__ico {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  background-color: #134e78;
  font-size: 24px;
  font-weight: 700;
  color: #fff;
}
.page-qa .qa .question__title {
  margin-left: 20px;
  padding-top: 5px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.page-qa .qa .question__btn {
  display: none;
}
.page-qa .qa .answer {
  margin-top: 16px;
}
.page-qa .qa .answer__inner {
  display: flex;
  align-items: flex-start;
}
.page-qa .qa .answer__ico {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  font-size: 24px;
  font-weight: 700;
  border: 1px solid #134e78;
}
.page-qa .qa .answer__body {
  margin-left: 20px;
  margin-bottom: -8px;
  padding-top: 0;
  font-weight: 500;
  line-height: 2;
}

@media screen and (max-width: 1240px) {
  .page-qa .archive__contents {
    margin-top: 60px;
  }
  .page-qa .qa__item {
    padding-bottom: 30px;
  }
  .page-qa .qa__item + .qa__item {
    margin-top: 30px;
  }
  .page-qa .qa .question__ico {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    font-size: 18px;
  }
  .page-qa .qa .question__title {
    margin-left: 16px;
    padding-top: 3px;
    font-size: 15px;
  }
  .page-qa .qa .answer {
    margin-top: 15px;
  }
  .page-qa .qa .answer__ico {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    font-size: 18px;
  }
  .page-qa .qa .answer__body {
    margin-left: 16px;
    margin-bottom: -8px;
    font-size: 14px;
  }
}
@media screen and (max-width: 758px) {
  .page-qa .archive__contents {
    margin-top: 40px;
  }
  .page-qa .qa__item {
    padding-bottom: 14px;
  }
  .page-qa .qa__item + .qa__item {
    margin-top: 18px;
  }
  .page-qa .qa .question__title {
    margin-left: 15px;
    padding-top: 3px;
    font-size: 14px;
  }
  .page-qa .qa .question__btn {
    display: block;
    margin-left: auto;
    font-size: 24px;
    font-weight: 300;
    color: #134e78;
    margin-top: -1px;
    cursor: pointer;
  }
  .page-qa .qa .answer {
    margin-top: 15px;
    display: none;
  }
  .page-qa .qa .answer__body {
    margin-left: 15px;
    margin-bottom: -8px;
    font-size: 12px;
  }
}
/* =============================

  お知らせ詳細：single

================================ */
.single .container {
  width: 1000px;
}
.single .breadcrumb-wrap {
  margin-top: 20px;
}
.single .main {
  padding: 25px 0 100px;
}
.single .entry__meta {
  display: flex;
  align-items: center;
}
.single .entry__cats {
  display: flex;
  align-items: center;
}
.single .entry__cate {
  display: block;
  margin-right: 5px;
  padding: 4px 10px;
  background-color: #134e78;
  color: #fff;
  border-radius: 12px;
}
.single .entry__date {
  margin-left: 18px;
  font-size: 18px;
}
.single .entry__title {
  margin-top: 17px;
  padding-bottom: 35px;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
  border-bottom: 1px solid #134e78;
}
.single .entry__body {
  margin-top: 50px;
  padding-bottom: 40px;
  border-bottom: 1px solid #134e78;
}
.single .entry__body > *:first-child {
  margin-top: 0;
}
.single .entry__body img {
  width: 100%;
}
.single .entry__body p {
  margin-top: 12px;
  line-height: 2;
}
.single .entry__body h2 {
  margin-top: 45px;
  padding-bottom: 10px;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.3;
  border-bottom: 1px solid #134e78;
}
.single .entry__body h3 {
  margin-top: 58px;
  padding-left: 11px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  border-left: 4px solid #134e78;
}
.single .entry__body h4 {
  margin-top: 57px;
  font-size: 23px;
  line-height: 1.3;
}
.single .entry__foot {
  padding-top: 50px;
}
.single .nav-links .nav-previous,
.single .nav-links .nav-next {
  display: block;
  font-size: 20px;
  line-height: 1.3;
}
.single .nav-links .nav-previous a,
.single .nav-links .nav-next a {
  color: #134e78;
  transition: all 0.3s;
}
.single .nav-links .nav-previous a:hover,
.single .nav-links .nav-next a:hover {
  opacity: 0.6;
}
.single .nav-links .nav-previous a::before {
  content: "前の投稿";
  margin-right: 30px;
}
.single .nav-links .nav-next {
  margin-top: 15px;
}
.single .nav-links .nav-next a::before {
  content: "次の投稿";
  margin-right: 30px;
}
.single .toarchive-btn {
  display: flex;
  align-items: flex-end;
  margin-top: 35px;
  font-size: 18px;
  color: #134e78;
  transition: all 0.3s;
}
.single .toarchive-btn:hover {
  opacity: 0.6;
}
.single .toarchive-btn img {
  flex: 0 0 30px;
  width: 30px;
  margin-right: 14px;
}
.single .rtoc-mokuji-content.frame2 {
  margin-top: 37px;
  padding: 31px 31px 22px;
}
.single .rtoc-mokuji-content .rtoc-mokuji.mokuji_none.level-1 {
  padding-left: 18px;
}
.single .rtoc-mokuji-content .rtoc-mokuji.mokuji_none.level-1 .rtoc-item a {
  font-size: 14px;
  font-weight: 700;
}
.single .rtoc-mokuji-content .rtoc-mokuji.mokuji_none.level-1 > .rtoc-item + .rtoc-item {
  border-top: 1px dashed #134e78;
}
.single .rtoc-mokuji-content .rtoc-mokuji.mokuji_none.level-2 .rtoc-item a {
  font-weight: 400;
}
.single #rtoc-mokuji-title span {
  font-size: 18px;
  font-weight: 700;
}
.single button.rtoc_open_close {
  display: none;
}

@media screen and (max-width: 1240px) {
  .single .container {
    width: 100%;
  }
  .single .main {
    padding: 25px 0 60px;
  }
  .single .entry__cate {
    padding: 4px 6px;
    font-size: 12px;
  }
  .single .entry__date {
    font-size: 14px;
  }
  .single .entry__title {
    margin-top: 15px;
    padding-bottom: 24px;
    font-size: 24px;
  }
  .single .entry__body {
    margin-top: 40px;
  }
  .single .entry__body h2 {
    margin-top: 40px;
    padding-bottom: 8px;
    font-size: 20px;
  }
  .single .entry__body h3 {
    margin-top: 45px;
    padding-left: 10px;
    font-size: 18px;
  }
  .single .entry__body h4 {
    margin-top: 45px;
    font-size: 14px;
  }
  .single .entry__foot {
    padding-top: 40px;
  }
  .single .nav-links .nav-previous,
  .single .nav-links .nav-next {
    font-size: 16px;
  }
  .single .nav-links .nav-previous a::before {
    margin-right: 20px;
  }
  .single .nav-links .nav-next {
    margin-top: 12px;
  }
  .single .nav-links .nav-next a::before {
    margin-right: 20px;
  }
  .single .toarchive-btn {
    margin-top: 30px;
    font-size: 14px;
  }
  .single .toarchive-btn img {
    flex: 0 0 24px;
    width: 24px;
    margin-right: 12px;
  }
}
@media screen and (max-width: 758px) {
  .single .entry__cate {
    padding: 3px 5px;
    font-size: 10px;
    margin-right: 3px;
  }
  .single .entry__date {
    font-size: 12px;
    margin-left: 5px;
  }
  .single .entry__title {
    margin-top: 15px;
    padding-bottom: 20px;
    font-size: 20px;
  }
  .single .entry__body {
    margin-top: 30px;
    padding-bottom: 40px;
  }
  .single .entry__body h2 {
    margin-top: 30px;
    padding-bottom: 6px;
    font-size: 18px;
  }
  .single .entry__body h3 {
    margin-top: 35px;
    padding-left: 8px;
    font-size: 16px;
  }
  .single .entry__body h4 {
    margin-top: 30px;
    font-size: 14px;
  }
  .single .entry__foot {
    padding-top: 40px;
  }
  .single .nav-links .nav-previous,
  .single .nav-links .nav-next {
    font-size: 14px;
  }
  .single .nav-links .nav-previous a::before {
    margin-right: 10px;
  }
  .single .nav-links .nav-next {
    margin-top: 20px;
  }
  .single .nav-links .nav-next a::before {
    margin-right: 10px;
  }
  .single .toarchive-btn {
    margin-top: 30px;
    font-size: 13px;
    font-weight: 700;
  }
}
/* ===============================

  お客様の声詳細：single-voice

================================== */
.single-voice .main {
  padding-top: 50px;
  padding-bottom: 40px;
}
.single-voice .container {
  width: 980px;
}
.single-voice .voice-entry {
  width: 100%;
}
.single-voice .voice-entry__date {
  font-size: 18px;
  font-weight: 500;
}
.single-voice .voice-entry__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 24px;
  padding-bottom: 23px;
  border-bottom: 1px solid #134e78;
}
.single-voice .voice-entry__title {
  font-size: 32px;
  font-weight: 700;
}
.single-voice .voice-entry__cats {
  max-width: 55%;
}
.single-voice .voice-entry__cate {
  display: inline-block;
  margin-left: 5px;
  padding: 5px 7px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 15px;
}
.single-voice .voice-entry__body {
  display: flex;
  margin-top: 40px;
}
.single-voice .voice-entry__thumb {
  width: 400px;
  flex: 0 0 400px;
}
.single-voice .voice-entry__img {
  width: 100%;
  padding-top: 75%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.single-voice .voice-entry__contents {
  flex: 1 1 auto;
  margin-left: 96px;
  word-break: break-all;
}
.single-voice .voice-entry .question {
  display: flex;
  align-items: center;
  margin-left: -21px;
  font-size: 18px;
  font-weight: 700;
}
.single-voice .voice-entry .question::before {
  content: "";
  width: 12px;
  height: 12px;
  margin-right: 9px;
  background-color: #134e78;
  border-radius: 50%;
}
.single-voice .voice-entry .question:nth-child(n+2) {
  margin-top: 30px;
}
.single-voice .voice-entry .answer {
  margin-top: 10px;
  line-height: 2;
}
.single-voice .stuff-msg {
  margin-top: 52px;
  padding: 30px 30px 22px;
  background-color: #f5f7f9;
}
.single-voice .stuff-msg__title {
  padding-bottom: 22px;
  font-size: 18px;
  border-bottom: 1px solid #134e78;
}
.single-voice .stuff-msg__body {
  margin-top: 22px;
}
.single-voice .stuff-msg__body p {
  line-height: 2;
}
.single-voice .voice-entry__foot {
  margin-top: 100px;
}

@media screen and (max-width: 1240px) {
  .single-voice .main {
    padding-top: 60px;
  }
  .single-voice .container {
    width: 100%;
  }
  .single-voice .voice-entry__date {
    font-size: 16px;
  }
  .single-voice .voice-entry__head {
    margin-top: 20px;
    padding-bottom: 20px;
  }
  .single-voice .voice-entry__title {
    font-size: 24px;
  }
  .single-voice .voice-entry__cate {
    margin-left: 3px;
    padding: 4px 6px;
    font-size: 12px;
    border-radius: 12px;
  }
  .single-voice .voice-entry__body {
    margin-top: 30px;
  }
  .single-voice .voice-entry__thumb {
    width: 40%;
    flex: 0 0 40%;
  }
  .single-voice .voice-entry__contents {
    margin-left: 60px;
  }
  .single-voice .voice-entry .question {
    margin-left: -16px;
    font-size: 16px;
  }
  .single-voice .voice-entry .question::before {
    width: 10px;
    height: 10px;
    margin-right: 6px;
  }
  .single-voice .voice-entry .question:nth-child(n+2) {
    margin-top: 20px;
  }
  .single-voice .voice-entry .answer {
    font-size: 13px;
  }
  .single-voice .stuff-msg {
    margin-top: 40px;
    padding: 30px 20px;
  }
  .single-voice .stuff-msg__title {
    padding-bottom: 16px;
    font-size: 16px;
  }
  .single-voice .stuff-msg__body {
    margin-top: 16px;
  }
  .single-voice .voice-entry__foot {
    margin-top: 60px;
  }
}
@media screen and (max-width: 758px) {
  .single-voice .main {
    padding-top: 40px;
    padding-bottom: 25px;
  }
  .single-voice .voice-entry__date {
    font-size: 12px;
  }
  .single-voice .voice-entry__head {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 16px;
    padding-bottom: 8px;
  }
  .single-voice .voice-entry__title {
    font-size: 20px;
  }
  .single-voice .voice-entry__cats {
    margin-top: 16px;
    max-width: 100%;
  }
  .single-voice .voice-entry__cate {
    padding: 3px 5px;
    font-size: 10px;
    border-radius: 10px;
    margin: 0 3px 3px 0;
  }
  .single-voice .voice-entry__body {
    flex-direction: column;
    margin-top: 30px;
  }
  .single-voice .voice-entry__thumb {
    width: 100%;
    flex: 0 0 100%;
  }
  .single-voice .voice-entry__contents {
    margin-top: 40px;
    margin-left: 0;
    padding-left: 13px;
  }
  .single-voice .voice-entry .question {
    margin-left: -13px;
    font-size: 14px;
  }
  .single-voice .voice-entry .question::before {
    width: 8px;
    height: 8px;
    margin-right: 5px;
  }
  .single-voice .voice-entry .question:nth-child(n+2) {
    margin-top: 20px;
  }
  .single-voice .voice-entry .answer {
    font-size: 12px;
  }
  .single-voice .stuff-msg {
    margin-top: 40px;
    padding: 20px;
  }
  .single-voice .stuff-msg__title {
    padding-bottom: 12px;
    font-size: 14px;
  }
  .single-voice .stuff-msg__body {
    margin-top: 12px;
    font-size: 12px;
  }
}
/* =================================

  お役立ち情報詳細：single-blog

==================================== */
.single-blog .container {
  width: 1080px;
}
.single-blog .main {
  padding-bottom: 0;
}
.single-blog .blog-entry {
  padding-bottom: 24px;
  border-bottom: 1px solid #134e78;
}
.single-blog .blog-entry__date {
  font-size: 18px;
  font-weight: 500;
}
.single-blog .blog-entry__title {
  margin-top: 19px;
  font-size: 32px;
  line-height: 1.5;
}
.single-blog .blog-entry__cats {
  margin-top: 29px;
}
.single-blog .blog-entry__cate {
  display: inline-block;
  margin-right: 5px;
  padding: 7px 10px;
  background-color: #134e78;
  color: #fff;
  border-radius: 15px;
}
.single-blog .blog-entry__thumb {
  margin-top: 28px;
}
.single-blog .blog-entry__img {
  width: 100%;
  padding-top: 59.2%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.single-blog .blog-entry__body {
  margin-top: 30px;
}
.single-blog .blog-entry__body > *:first-child {
  margin-top: 0;
}
.single-blog .blog-entry__body img {
  width: 100%;
}
.single-blog .blog-entry__body p {
  margin-top: 12px;
  line-height: 2;
}
.single-blog .blog-entry__body h2 {
  margin-top: 45px;
  padding-bottom: 10px;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.3;
  border-bottom: 1px solid #134e78;
}
.single-blog .blog-entry__body h3 {
  margin-top: 58px;
  padding-left: 11px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  border-left: 4px solid #134e78;
}
.single-blog .blog-entry__body h4 {
  margin-top: 57px;
  font-size: 23px;
  line-height: 1.3;
}
.single-blog .blog-entry__foot {
  margin-top: 52px;
}
.single-blog .toarchive-btn {
  margin-top: 0;
}
.single-blog .related {
  padding: 45px 0 50px;
}
.single-blog .related__title {
  font-size: 30px;
  font-weight: 700;
}
.single-blog .rentries {
  display: flex;
  margin-top: 45px;
}
.single-blog .rentry {
  width: 32%;
  flex: 0 0 32%;
}
.single-blog .rentry + .rentry {
  margin-left: 2%;
}
.single-blog .rentry__link {
  display: block;
  color: #134e78;
  transition: all 0.3s;
}
.single-blog .rentry__thumb {
  width: 100%;
  overflow: hidden;
}
.single-blog .rentry__img {
  width: 100%;
  padding-top: 59%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all 0.3s;
}
.single-blog .rentry__body {
  position: relative;
  background-color: #f5f7f9;
  padding: 20px;
}
.single-blog .rentry__date {
  font-size: 14px;
  font-weight: 700;
}
.single-blog .rentry__title {
  margin-top: 14px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.33;
}
.single-blog .rentry__cats {
  margin-top: 19px;
  padding-right: 80px;
}
.single-blog .rentry__cate {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 5px 8px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.single-blog .rentry__ico {
  position: absolute;
  right: 25px;
  bottom: 32px;
  width: 30px;
}
.single-blog .rentry__link:hover {
  opacity: 0.6;
}
.single-blog .rentry__link:hover .rentry__img {
  transform: scale(1.05);
}

@media screen and (max-width: 1240px) {
  .single-blog .container {
    width: 100%;
  }
  .single-blog .blog-entry {
    padding-bottom: 30px;
  }
  .single-blog .blog-entry__date {
    font-size: 16px;
  }
  .single-blog .blog-entry__title {
    margin-top: 15px;
    font-size: 24px;
  }
  .single-blog .blog-entry__cats {
    margin-top: 20px;
  }
  .single-blog .blog-entry__cate {
    padding: 5px 8px;
    border-radius: 13px;
  }
  .single-blog .blog-entry__thumb {
    margin-top: 25px;
  }
  .single-blog .blog-entry__body h2 {
    margin-top: 40px;
    padding-bottom: 8px;
    font-size: 20px;
  }
  .single-blog .blog-entry__body h3 {
    margin-top: 45px;
    padding-left: 10px;
    font-size: 18px;
  }
  .single-blog .blog-entry__body h4 {
    margin-top: 45px;
    font-size: 14px;
  }
  .single-blog .blog-entry__foot {
    margin-top: 50px;
  }
  .single-blog .toarchive-btn {
    font-size: 14px;
  }
  .single-blog .toarchive-btn img {
    flex: 0 0 24px;
    width: 24px;
    margin-right: 12px;
  }
  .single-blog .related {
    padding: 40px 0;
  }
  .single-blog .related__title {
    font-size: 20px;
  }
  .single-blog .rentries {
    margin-top: 40px;
  }
  .single-blog .rentry__body {
    padding: 20px 15px;
  }
  .single-blog .rentry__date {
    font-size: 12px;
  }
  .single-blog .rentry__title {
    margin-top: 12px;
    font-size: 15px;
  }
  .single-blog .rentry__cats {
    margin-top: 15px;
    padding-right: 50px;
  }
  .single-blog .rentry__cate {
    margin-right: 3px;
    padding: 4px 6px;
    font-size: 11px;
  }
  .single-blog .rentry__ico {
    position: absolute;
    right: 15px;
    bottom: 20px;
    width: 25px;
  }
}
@media screen and (max-width: 758px) {
  .single-blog .blog-entry {
    padding-bottom: 30px;
  }
  .single-blog .blog-entry__date {
    font-size: 13px;
  }
  .single-blog .blog-entry__title {
    font-size: 20px;
  }
  .single-blog .blog-entry__cats {
    margin-top: 20px;
  }
  .single-blog .blog-entry__cate {
    margin-right: 2px;
    padding: 4px 6px;
    border-radius: 10px;
  }
  .single-blog .blog-entry__thumb {
    margin-top: 30px;
  }
  .single-blog .blog-entry__body h2 {
    margin-top: 30px;
    padding-bottom: 6px;
    font-size: 18px;
  }
  .single-blog .blog-entry__body h3 {
    margin-top: 35px;
    padding-left: 8px;
    font-size: 16px;
  }
  .single-blog .blog-entry__body h4 {
    margin-top: 30px;
    font-size: 14px;
  }
  .single-blog .toarchive-btn {
    font-size: 13px;
  }
  .single-blog .related__title {
    font-size: 18px;
  }
  .single-blog .rentries {
    margin-top: 30px;
  }
  .single-blog .rentries {
    flex-direction: column;
  }
  .single-blog .rentry {
    width: 100%;
    flex: 0 0 100%;
  }
  .single-blog .rentry + .rentry {
    margin-left: 0;
    margin-top: 20px;
  }
}
/* ================================

  料金・メニュー：page-menu

=================================== */
.page-menu .lower-mv {
  background-image: url(img/menu-mv@3x-80.jpg);
}
.page-menu .main {
  padding-bottom: 200px;
}
.page-menu .satis {
  margin-top: 68px;
  padding: 40px;
  border: 1px solid #134e78;
}
.page-menu .satis__title {
  padding-bottom: 27px;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #134e78;
}
.page-menu .satis__text {
  margin-top: 18px;
  font-weight: 500;
  line-height: 2;
}
.page-menu .satis__foot {
  display: flex;
  align-items: center;
  margin-top: 32px;
  padding-left: 25px;
  width: 100%;
  height: 80px;
  background-color: #f7f8f8;
  font-weight: 500;
}
.page-menu .satis__foot .ico {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #134e78;
}
.page-menu .satis__foot .left-text {
  margin-left: 20px;
}
.page-menu .satis__foot .figure {
  position: relative;
  display: grid;
  place-items: center;
  margin-left: 40px;
  width: 120px;
  height: 32px;
  background-color: #134e78;
  font-weight: 700;
  color: #fff;
}
.page-menu .satis__foot .figure::after {
  position: absolute;
  top: 0;
  right: -20px;
  content: "";
  width: 20px;
  height: 32px;
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 20px solid #134e78;
}
.page-menu .satis__foot .right-text {
  margin-left: 56px;
}
.page-menu .sp-l {
  display: none;
}
.page-menu .menu {
  padding-top: 80px;
}
.page-menu .menu__title {
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 16px;
  border-bottom: 1px solid #134e78;
}
.page-menu .menu__wrap {
  display: flex;
  align-items: flex-start;
  margin-top: 20px;
}
.page-menu .menu__contents {
  width: 50%;
  flex: 0 0 50%;
  padding-right: 10px;
}
.page-menu .menu__read {
  margin-top: -4px;
  line-height: 1.5;
}
.page-menu .menu__price {
  margin-top: 42px;
}
.page-menu .menu .price {
  display: flex;
  align-items: center;
}
.page-menu .menu .price + .price {
  margin-top: 28px;
}
.page-menu .menu .price dt {
  position: relative;
  width: 120px;
  height: 32px;
  line-height: 32px;
  background-color: #134e78;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.page-menu .menu .price dt::after {
  content: "";
  position: absolute;
  top: 0;
  right: -20px;
  width: 20px;
  height: 32px;
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 20px solid #134e78;
}
.page-menu .menu .price dd {
  margin-left: 50px;
  font-size: 24px;
  font-weight: 700;
}
.page-menu .menu .price dd span {
  font-size: 14px;
}
.page-menu .menu__details {
  margin-top: 48px;
  padding: 20px;
  background-color: #f5f7f9;
}
.page-menu .menu__detail {
  display: flex;
  align-items: center;
}
.page-menu .menu__detail + .menu__detail {
  margin-top: 15px;
}
.page-menu .menu__detail .title {
  display: grid;
  place-items: center;
  width: 70px;
  height: 24px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.page-menu .menu__detail .data {
  margin-left: 20px;
  font-size: 14px;
  font-weight: 700;
}
.page-menu .menu__imgs {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 50%;
  flex: 0 0 50%;
  padding-left: 10px;
}
.page-menu .menu__img {
  width: 110px;
  margin-left: 10px;
}
.page-menu .menu__img:nth-child(4n+1) {
  margin-left: 0;
}
.page-menu .menu__img:nth-child(n+5) {
  margin-top: 12px;
}
.page-menu .menu__img img {
  width: 100%;
}
.page-menu .menu__img p {
  margin-top: 5px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}
.page-menu .cam-banner {
  margin-top: 60px;
}
.page-menu .cam-banner a {
  display: block;
  transition: all 0.3s;
}
.page-menu .cam-banner a:hover {
  opacity: 0.6;
}
.page-menu .cam-banner img {
  width: 100%;
}

@media screen and (max-width: 1240px) {
  .page-menu .main {
    padding-bottom: 100px;
  }
  .page-menu .satis {
    margin-top: 40px;
    padding: 30px;
  }
  .page-menu .satis__title {
    padding-bottom: 18px;
    font-size: 18px;
  }
  .page-menu .satis__text {
    margin-top: 16px;
  }
  .page-menu .satis__foot {
    margin-top: 25px;
    padding-left: 20px;
    height: 70px;
  }
  .page-menu .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
  }
  .page-menu .satis__foot .left-text {
    margin-left: 16px;
  }
  .page-menu .satis__foot .figure {
    margin-left: 30px;
    width: 100px;
    height: 26px;
  }
  .page-menu .satis__foot .figure::after {
    position: absolute;
    top: 0;
    right: -20px;
    content: "";
    width: 20px;
    height: 26px;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 13px solid #134e78;
  }
  .page-menu .satis__foot .right-text {
    margin-left: 35px;
  }
  .page-menu .menu {
    padding-top: 60px;
  }
  .page-menu .menu__title {
    font-size: 20px;
    padding-bottom: 14px;
  }
  .page-menu .menu__read {
    margin-top: 0;
  }
  .page-menu .menu__price {
    margin-top: 50px;
  }
  .page-menu .menu .price + .price {
    margin-top: 30px;
  }
  .page-menu .menu .price dt {
    width: 100px;
    height: 28px;
    line-height: 28px;
  }
  .page-menu .menu .price dt::after {
    right: -16px;
    width: 16px;
    height: 28px;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 16px solid #134e78;
  }
  .page-menu .menu .price dd {
    margin-left: 40px;
    font-size: 20px;
  }
  .page-menu .menu .price dd span {
    font-size: 12px;
  }
  .page-menu .menu__details {
    margin-top: 50px;
  }
  .page-menu .menu__detail + .menu__detail {
    margin-top: 20px;
  }
  .page-menu .menu__detail .title {
    font-size: 12px;
  }
  .page-menu .menu__detail .data {
    font-size: 14px;
  }
  .page-menu .menu__img {
    width: 32%;
    margin-left: 2%;
  }
  .page-menu .menu__img:nth-child(4n+1) {
    margin-left: 2%;
  }
  .page-menu .menu__img:nth-child(3n+1) {
    margin-left: 0;
  }
  .page-menu .menu__img:nth-child(n+5) {
    margin-top: 0;
  }
  .page-menu .menu__img:nth-child(n+4) {
    margin-top: 15px;
  }
  .page-menu .menu__img p {
    font-size: 12px;
  }
}
@media screen and (max-width: 758px) {
  .page-menu .lower-mv {
    background-image: url(img/sp-menu-mv@3x-80.jpg);
  }
  .page-menu .main {
    padding-bottom: 60px;
  }
  .page-menu .satis {
    margin-top: 30px;
    padding: 20px;
  }
  .page-menu .satis__title {
    padding-bottom: 10px;
    font-size: 15px;
  }
  .page-menu .satis__text {
    margin-top: 12px;
  }
  .page-menu .satis__foot {
    margin-top: 20px;
    padding: 0 10px;
    height: 70px;
  }
  .page-menu .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    font-size: 10px;
  }
  .page-menu .satis__foot .left-text {
    margin-left: 8px;
    margin-right: 6px;
    font-size: 10px;
    line-height: 1.3;
  }
  .page-menu .satis__foot .figure {
    margin-left: 0;
    flex: 0 0 50px;
    width: 50px;
    height: 20px;
    font-size: 10px;
  }
  .page-menu .satis__foot .figure::after {
    right: -20px;
    width: 20px;
    height: 20px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #134e78;
  }
  .page-menu .satis__foot .right-text {
    margin-left: 17px;
    font-size: 10px;
    line-height: 1.3;
  }
  .page-menu .pc-l {
    display: none;
  }
  .page-menu .sp-l {
    display: block;
  }
  .page-menu .menu {
    padding-top: 60px;
  }
  .page-menu .menu__title {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .page-menu .menu__read {
    margin-top: 14px;
  }
  .page-menu .menu__wrap {
    flex-direction: column;
  }
  .page-menu .menu__imgs {
    width: 100%;
    flex: 0 0 100%;
    justify-content: space-between;
    padding: 0;
  }
  .page-menu .menu__img {
    width: 32.5%;
    flex: 0 0 32.5%;
    margin-left: 0;
  }
  .page-menu .menu__img:nth-child(4n+1) {
    margin-left: 0;
  }
  .page-menu .menu__img:nth-child(n+4) {
    margin-top: 10px;
  }
  .page-menu .menu__img p {
    font-size: 10px;
  }
  .page-menu .menu__contents {
    padding-right: 0;
    width: 100%;
    flex: 0 0 100%;
  }
  .page-menu .menu__price {
    margin-top: 35px;
    width: 100%;
  }
  .page-menu .menu .price + .price {
    margin-top: 25px;
  }
  .page-menu .menu .price dt {
    width: 80px;
    height: 22px;
    line-height: 22px;
    font-size: 11px;
  }
  .page-menu .menu .price dt::after {
    right: -14px;
    width: 14px;
    height: 22px;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 14px solid #134e78;
  }
  .page-menu .menu .price dd {
    display: block;
    width: auto;
    margin-left: 30px;
    font-size: 24px;
  }
  .page-menu .menu .price dd span {
    display: inline;
    margin-top: 0;
    font-size: 10px;
  }
  .page-menu .menu__details {
    margin-top: 30px;
    padding: 15px 10px;
  }
  .page-menu .menu__detail + .menu__detail {
    margin-top: 20px;
  }
  .page-menu .menu__detail .title {
    flex: 0 0 55px;
    width: 55px;
    height: 20px;
    font-size: 10px;
    border-radius: 10px;
  }
  .page-menu .menu__detail .data {
    margin-left: 10px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
  }
  .page-menu .cam-banner {
    margin-top: 40px;
  }
}
/* ================================

  料金・メニュー：page-vio

=================================== */
.page-vio .lower-mv {
  background-image: url(img/menu-mv@3x-80.jpg);
}
.page-vio .main {
  padding-bottom: 200px;
}
.page-vio .satis {
  margin-top: 68px;
  padding: 40px;
  border: 1px solid #134e78;
}
.page-vio .satis__title {
  padding-bottom: 27px;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #134e78;
}
.page-vio .satis__text {
  margin-top: 18px;
  font-weight: 500;
  line-height: 2;
}
.page-vio .satis__foot {
  display: flex;
  align-items: center;
  margin-top: 32px;
  padding-left: 25px;
  width: 100%;
  height: 80px;
  background-color: #f7f8f8;
  font-weight: 500;
}
.page-vio .satis__foot .ico {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #134e78;
}
.page-vio .satis__foot .left-text {
  margin-left: 20px;
}
.page-vio .satis__foot .figure {
  position: relative;
  display: grid;
  place-items: center;
  margin-left: 40px;
  width: 120px;
  height: 32px;
  background-color: #134e78;
  font-weight: 700;
  color: #fff;
}
.page-vio .satis__foot .figure::after {
  position: absolute;
  top: 0;
  right: -20px;
  content: "";
  width: 20px;
  height: 32px;
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 20px solid #134e78;
}
.page-vio .satis__foot .right-text {
  margin-left: 56px;
}
.page-vio .sp-l {
  display: none;
}
.page-vio .menu {
  padding-top: 80px;
}
.page-vio .menu__title {
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 16px;
  border-bottom: 1px solid #134e78;
}
.page-vio .menu__wrap {
  display: flex;
  align-items: flex-start;
  margin-top: 20px;
}
.page-vio .menu__contents {
  width: 50%;
  flex: 0 0 50%;
  padding-right: 10px;
}
.page-vio .menu__read {
  margin-top: -4px;
  line-height: 1.5;
}
.page-vio .menu__price {
  margin-top: 42px;
}
.page-vio .menu .price {
  display: flex;
  align-items: center;
}
.page-vio .menu .price + .price {
  margin-top: 28px;
}
.page-vio .menu .price dt {
  position: relative;
  width: 120px;
  height: 32px;
  line-height: 32px;
  background-color: #134e78;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.page-vio .menu .price dt::after {
  content: "";
  position: absolute;
  top: 0;
  right: -20px;
  width: 20px;
  height: 32px;
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;
  border-left: 20px solid #134e78;
}
.page-vio .menu .price dd {
  margin-left: 50px;
  font-size: 24px;
  font-weight: 700;
}
.page-vio .menu .price dd span {
  font-size: 14px;
}
.page-vio .menu__details {
  margin-top: 48px;
  padding: 20px;
  background-color: #f5f7f9;
}
.page-vio .menu__detail {
  display: flex;
  align-items: center;
}
.page-vio .menu__detail + .menu__detail {
  margin-top: 15px;
}
.page-vio .menu__detail .title {
  display: grid;
  place-items: center;
  width: 70px;
  height: 24px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.page-vio .menu__detail .data {
  margin-left: 20px;
  font-size: 14px;
  font-weight: 700;
}
.page-vio .menu__imgs {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 50%;
  flex: 0 0 50%;
  padding-left: 10px;
}
.page-vio .menu__img {
  width: 110px;
  margin-left: 10px;
}
.page-vio .menu__img:nth-child(4n+1) {
  margin-left: 0;
}
.page-vio .menu__img:nth-child(n+5) {
  margin-top: 12px;
}
.page-vio .menu__img img {
  width: 100%;
}
.page-vio .menu__img p {
  margin-top: 5px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}
.page-vio .cam-banner {
  margin-top: 60px;
}
.page-vio .cam-banner a {
  display: block;
  transition: all 0.3s;
}
.page-vio .cam-banner a:hover {
  opacity: 0.6;
}
.page-vio .cam-banner img {
  width: 100%;
}

@media screen and (max-width: 1240px) {
  .page-vio .main {
    padding-bottom: 100px;
  }
  .page-vio .satis {
    margin-top: 40px;
    padding: 30px;
  }
  .page-vio .satis__title {
    padding-bottom: 18px;
    font-size: 18px;
  }
  .page-vio .satis__text {
    margin-top: 16px;
  }
  .page-vio .satis__foot {
    margin-top: 25px;
    padding-left: 20px;
    height: 70px;
  }
  .page-vio .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
  }
  .page-vio .satis__foot .left-text {
    margin-left: 16px;
  }
  .page-vio .satis__foot .figure {
    margin-left: 30px;
    width: 100px;
    height: 26px;
  }
  .page-vio .satis__foot .figure::after {
    position: absolute;
    top: 0;
    right: -20px;
    content: "";
    width: 20px;
    height: 26px;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 13px solid #134e78;
  }
  .page-vio .satis__foot .right-text {
    margin-left: 35px;
  }
  .page-vio .menu {
    padding-top: 60px;
  }
  .page-vio .menu__title {
    font-size: 20px;
    padding-bottom: 14px;
  }
  .page-vio .menu__read {
    margin-top: 0;
  }
  .page-vio .menu__price {
    margin-top: 50px;
  }
  .page-vio .menu .price + .price {
    margin-top: 30px;
  }
  .page-vio .menu .price dt {
    width: 100px;
    height: 28px;
    line-height: 28px;
  }
  .page-vio .menu .price dt::after {
    right: -16px;
    width: 16px;
    height: 28px;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 16px solid #134e78;
  }
  .page-vio .menu .price dd {
    margin-left: 40px;
    font-size: 20px;
  }
  .page-vio .menu .price dd span {
    font-size: 12px;
  }
  .page-vio .menu__details {
    margin-top: 50px;
  }
  .page-vio .menu__detail + .menu__detail {
    margin-top: 20px;
  }
  .page-vio .menu__detail .title {
    font-size: 12px;
  }
  .page-vio .menu__detail .data {
    font-size: 14px;
  }
  .page-vio .menu__img {
    width: 32%;
    margin-left: 2%;
  }
  .page-vio .menu__img:nth-child(4n+1) {
    margin-left: 2%;
  }
  .page-vio .menu__img:nth-child(3n+1) {
    margin-left: 0;
  }
  .page-vio .menu__img:nth-child(n+5) {
    margin-top: 0;
  }
  .page-vio .menu__img:nth-child(n+4) {
    margin-top: 15px;
  }
  .page-vio .menu__img p {
    font-size: 12px;
  }
}
@media screen and (max-width: 758px) {
  .page-vio .lower-mv {
    background-image: url(img/sp-menu-mv@3x-80.jpg);
  }
  .page-vio .main {
    padding-bottom: 60px;
  }
  .page-vio .satis {
    margin-top: 30px;
    padding: 20px;
  }
  .page-vio .satis__title {
    padding-bottom: 10px;
    font-size: 15px;
  }
  .page-vio .satis__text {
    margin-top: 12px;
  }
  .page-vio .satis__foot {
    margin-top: 20px;
    padding: 0 10px;
    height: 70px;
  }
  .page-vio .satis__foot .ico {
    display: grid;
    place-items: center;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    font-size: 10px;
  }
  .page-vio .satis__foot .left-text {
    margin-left: 8px;
    margin-right: 6px;
    font-size: 10px;
    line-height: 1.3;
  }
  .page-vio .satis__foot .figure {
    margin-left: 0;
    flex: 0 0 50px;
    width: 50px;
    height: 20px;
    font-size: 10px;
  }
  .page-vio .satis__foot .figure::after {
    right: -20px;
    width: 20px;
    height: 20px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #134e78;
  }
  .page-vio .satis__foot .right-text {
    margin-left: 17px;
    font-size: 10px;
    line-height: 1.3;
  }
  .page-vio .pc-l {
    display: none;
  }
  .page-vio .sp-l {
    display: block;
  }
  .page-vio .menu {
    padding-top: 60px;
  }
  .page-vio .menu__title {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .page-vio .menu__read {
    margin-top: 14px;
  }
  .page-vio .menu__wrap {
    flex-direction: column;
  }
  .page-vio .menu__imgs {
    width: 100%;
    flex: 0 0 100%;
    justify-content: space-between;
    padding: 0;
  }
  .page-vio .menu__img {
    width: 32.5%;
    flex: 0 0 32.5%;
    margin-left: 0;
  }
  .page-vio .menu__img:nth-child(4n+1) {
    margin-left: 0;
  }
  .page-vio .menu__img:nth-child(n+4) {
    margin-top: 10px;
  }
  .page-vio .menu__img p {
    font-size: 10px;
  }
  .page-vio .menu__contents {
    padding-right: 0;
    width: 100%;
    flex: 0 0 100%;
  }
  .page-vio .menu__price {
    margin-top: 35px;
    width: 100%;
  }
  .page-vio .menu .price + .price {
    margin-top: 25px;
  }
  .page-vio .menu .price dt {
    width: 80px;
    height: 22px;
    line-height: 22px;
    font-size: 11px;
  }
  .page-vio .menu .price dt::after {
    right: -14px;
    width: 14px;
    height: 22px;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 14px solid #134e78;
  }
  .page-vio .menu .price dd {
    display: block;
    width: auto;
    margin-left: 30px;
    font-size: 24px;
  }
  .page-vio .menu .price dd span {
    display: inline;
    margin-top: 0;
    font-size: 10px;
  }
  .page-vio .menu__details {
    margin-top: 30px;
    padding: 15px 10px;
  }
  .page-vio .menu__detail + .menu__detail {
    margin-top: 20px;
  }
  .page-vio .menu__detail .title {
    flex: 0 0 55px;
    width: 55px;
    height: 20px;
    font-size: 10px;
    border-radius: 10px;
  }
  .page-vio .menu__detail .data {
    margin-left: 10px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
  }
  .page-vio .cam-banner {
    margin-top: 40px;
  }
}
/* 20240304 追加 VIOコースの専用ページ作成について */
.page-vio .vio {
  padding-top: 80px;
}
.page-vio .vio__title {
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 16px;
  border-bottom: 1px solid #134e78;
}
.page-vio .vio__wrap {
  margin-top: 20px;
}
.page-vio .vio__txt {
  font-size: 18px;
  line-height: 1.6;
}
.page-vio .vio__list {
  margin-left: 20px;
  margin-bottom: 20px;
}
.page-vio .vio__list li {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 10px;
}
.page-vio .vio__list li::marker {
  font-weight: bold;
}
.page-vio .vio__list .bold {
  font-weight: bold;
}
.page-vio .qa {
  margin-top: 40px;
}

@media screen and (max-width: 1240px) {
  .page-vio .vio__title {
    font-size: 20px;
    padding-bottom: 14px;
  }
  .page-vio .vio {
    padding-top: 60px;
  }
  .page-vio .vio__txt {
    font-size: 16px;
  }
  .page-vio .vio__list li {
    font-size: 16px;
  }
}
@media screen and (max-width: 758px) {
  .page-vio .vio__title {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .page-vio .vio__txt {
    font-size: 14px;
  }
  .page-vio .vio__list li {
    font-size: 14px;
  }
}
/* ==============================

  店舗情報：page-shop

================================= */
.page-shop .lower-mv {
  background-image: url(img/shop-mv@3x-80.jpg);
}
.page-shop .shops {
  margin-top: 82px;
}
.page-shop .shop {
  display: flex;
}
.page-shop .shop__link {
  color: #134e78;
  transition: all 0.3s;
}
.page-shop .shop__link:hover {
  opacity: 0.6;
}
.page-shop .shop + .shop {
  margin-top: 55px;
}
.page-shop .shop__thumb {
  width: 47.9%;
  flex: 0 0 47.9%;
  overflow: hidden;
}
.page-shop .shop__img {
  width: 100%;
  padding-top: 75%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.page-shop .shop__contents {
  flex: 1 1 auto;
  margin-left: 30px;
  word-break: break-all;
}
.page-shop .shop__name {
  font-size: 24px;
  padding-bottom: 15px;
  border-bottom: 1px solid #134e78;
}
.page-shop .shop__infos {
  margin-top: 24px;
}
.page-shop .shop__info {
  display: flex;
}
.page-shop .shop__info + .shop__info {
  margin-top: 25px;
}
.page-shop .shop__label {
  width: 120px;
  flex: 0 0 120px;
  font-weight: 700;
}
.page-shop .shop__data a {
  color: #134e78;
  transition: all 0.3s;
}
.page-shop .shop__data .shop__gmlink {
  display: grid;
  place-items: center;
  margin-top: 16px;
  width: 140px;
  height: 24px;
  background-color: #134e78;
  font-size: 14px;
  color: #fff;
  border-radius: 12px;
}
.page-shop .shop__data .shop__gmlink:hover {
  opacity: 0.6;
}
.page-shop .shop__address {
  margin-top: 8px;
  line-height: 1.75;
}

@media screen and (max-width: 1240px) {
  .page-shop .shops {
    margin-top: 60px;
  }
  .page-shop .shop + .shop {
    margin-top: 60px;
  }
  .page-shop .shop__thumb {
    width: 45%;
    flex: 0 0 45%;
  }
  .page-shop .shop__contents {
    margin-left: 30px;
  }
  .page-shop .shop__name {
    font-size: 20px;
    padding-bottom: 12px;
  }
  .page-shop .shop__infos {
    margin-top: 25px;
  }
  .page-shop .shop__label {
    width: 100px;
    flex: 0 0 100px;
  }
  .page-shop .shop__data .shop__gmlink {
    margin-top: 15px;
    width: 130px;
    font-size: 11px;
  }
}
@media screen and (max-width: 758px) {
  .page-shop .lower-mv {
    background-image: url(img/sp-shop-mv@3x-80.jpg);
  }
  .page-shop .shops {
    margin-top: 40px;
  }
  .page-shop .shop {
    flex-direction: column-reverse;
  }
  .page-shop .shop + .shop {
    margin-top: 80px;
  }
  .page-shop .shop__thumb {
    width: 100%;
    flex: 0 0 100%;
    margin-top: 20px;
  }
  .page-shop .shop__contents {
    margin-left: 0;
  }
  .page-shop .shop__name {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .page-shop .shop__infos {
    margin-top: 20px;
  }
  .page-shop .shop__info + .shop__info {
    margin-top: 20px;
  }
  .page-shop .shop__label {
    width: 80px;
    flex: 0 0 80px;
  }
  .page-shop .shop__data .shop__gmlink {
    margin-top: 15px;
    width: 120px;
  }
}
/* ===========================

  会社概要：page-about

============================== */
.page-about .lower-mv {
  background-image: url(img/shop-mv-80.jpg);
}
.page-about .page__contents {
  margin-top: 16px;
}
.page-about .campany {
  display: flex;
  align-items: flex-start;
  padding: 32px 13px 27px;
  line-height: 2;
  border-bottom: 1px solid #93adc3;
}
.page-about .campany__title {
  width: 240px;
  flex: 0 0 240px;
}
.page-about .campany__data {
  word-break: break-all;
}

@media screen and (max-width: 1240px) {
  .page-about .page__contents {
    margin-top: 30px;
  }
  .page-about .campany {
    padding: 30px 10px 25px;
  }
  .page-about .campany__title {
    width: 200px;
    flex: 0 0 200px;
  }
}
@media screen and (max-width: 758px) {
  .page-about .lower-mv {
    background-image: url(img/sp-shop-mv-80.jpg);
  }
  .page-about .page__contents {
    margin-top: 40px;
  }
  .page-about .campany {
    padding: 20px 5px 18px;
  }
  .page-about .campany__title {
    width: 110px;
    flex: 0 0 110px;
  }
}
/* ===============================

  お問い合わせページ；page-contact

================================== */
.page-contact .fm,
.page-zoomcontact .fm {
  margin-top: 100px;
  font-size: 18px;
}
.page-contact .fm__group,
.page-zoomcontact .fm__group {
  display: flex;
  align-items: center;
  margin-bottom: 36px;
}
.page-contact .fm__label,
.page-zoomcontact .fm__label {
  width: 350px;
  flex: 0 0 350px;
}
.page-contact .fm__label label,
.page-zoomcontact .fm__label label {
  position: relative;
  display: flex;
  align-items: center;
  font-weight: 700;
}
.page-contact .fm__label .require,
.page-contact .fm__label .any,
.page-zoomcontact .fm__label .require,
.page-zoomcontact .fm__label .any {
  display: grid;
  place-items: center;
  margin-right: 1em;
  width: 45px;
  height: 22px;
  font-size: 12px;
  color: #fff;
  border-radius: 12px;
}
.page-contact .fm__label .require,
.page-zoomcontact .fm__label .require {
  background-color: #ff7466;
}
.page-contact .fm__label .any,
.page-zoomcontact .fm__label .any {
  background-color: #898989;
}
.page-contact .fm__label .addtext,
.page-zoomcontact .fm__label .addtext {
  position: absolute;
  top: 27px;
  left: 60px;
  font-size: 15px;
  font-weight: 400;
}
.page-contact .fm__input,
.page-zoomcontact .fm__input {
  flex: 1 1 auto;
}
.page-contact .fm input,
.page-contact .fm textarea,
.page-zoomcontact .fm input,
.page-zoomcontact .fm textarea {
  outline: none;
  border-radius: 0;
  color: #134e78;
}
.page-contact .fm input::-moz-placeholder, .page-contact .fm textarea::-moz-placeholder, .page-zoomcontact .fm input::-moz-placeholder, .page-zoomcontact .fm textarea::-moz-placeholder {
  opacity: 0.5;
  font-weight: 400;
}
.page-contact .fm input::placeholder,
.page-contact .fm textarea::placeholder,
.page-zoomcontact .fm input::placeholder,
.page-zoomcontact .fm textarea::placeholder {
  opacity: 0.5;
  font-weight: 400;
}
.page-contact .fm input[type=text],
.page-contact .fm input[type=email],
.page-contact .fm input[type=tel],
.page-contact .fm input[type=date],
.page-contact .fm select,
.page-zoomcontact .fm input[type=text],
.page-zoomcontact .fm input[type=email],
.page-zoomcontact .fm input[type=tel],
.page-zoomcontact .fm input[type=date],
.page-zoomcontact .fm select {
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0 10px;
  height: 48px;
  width: 100%;
  border: 1px solid #134e78;
  border-radius: 0;
}
.page-contact .fm .select-wrap,
.page-zoomcontact .fm .select-wrap {
  position: relative;
}
.page-contact .fm .select-wrap::after,
.page-zoomcontact .fm .select-wrap::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  width: 10px;
  height: 6px;
  border-top: 10px solid #134e78;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  z-index: 1;
  pointer-events: none;
}
.page-contact .fm option,
.page-zoomcontact .fm option {
  color: #134e78;
}
.page-contact .fm textarea,
.page-zoomcontact .fm textarea {
  width: 100%;
  border: 1px solid #134e78;
}
.page-contact .fm .wpcf7-list-item,
.page-zoomcontact .fm .wpcf7-list-item {
  margin: 0;
  margin-right: 18px;
}
.page-contact .fm .body-detail,
.page-zoomcontact .fm .body-detail {
  display: flex;
  padding-left: 20px;
  margin-top: 56px;
  margin-bottom: 36px;
}
.page-contact .fm .body-detail__title,
.page-zoomcontact .fm .body-detail__title {
  color: #ff7466;
  font-size: 16px;
  line-height: 1.33;
}
.page-contact .fm .body-detail__input,
.page-zoomcontact .fm .body-detail__input {
  margin-left: 30px;
  display: flex;
  flex-wrap: wrap;
}
.page-contact .fm .body-detail__input .wpcf7-list-item,
.page-zoomcontact .fm .body-detail__input .wpcf7-list-item {
  width: 24%;
  flex: 0 0 24%;
  margin-bottom: 20px;
  margin-right: 0;
}
.page-contact .fm .body-detail__input input,
.page-zoomcontact .fm .body-detail__input input {
  margin-right: 5px;
}
.page-contact .fm .notice,
.page-zoomcontact .fm .notice {
  color: #ff7466;
}
.page-contact .fm input[name=student],
.page-zoomcontact .fm input[name=student] {
  margin-right: 5px;
}
.page-contact .fm .ta-g,
.page-zoomcontact .fm .ta-g {
  margin-top: 56px;
  align-items: flex-start;
}
.page-contact .fm .ta-g .fm__label,
.page-zoomcontact .fm .ta-g .fm__label {
  padding-top: 12px;
}
.page-contact .fm .ta-g textarea,
.page-zoomcontact .fm .ta-g textarea {
  height: 272px;
  padding: 10px;
}
.page-contact .pp,
.page-zoomcontact .pp {
  margin-top: 40px;
  padding: 28px 30px 30px;
  line-height: 1.33;
  background-color: #efefef;
}
.page-contact .pp__box,
.page-zoomcontact .pp__box {
  overflow-y: scroll;
  margin-top: 20px;
  padding: 20px;
  height: 200px;
  background-color: #fff;
}
.page-contact .pp__box p,
.page-zoomcontact .pp__box p {
  line-height: 1.5;
}
.page-contact .pp__btn,
.page-zoomcontact .pp__btn {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}
.page-contact input[type=submit],
.page-zoomcontact input[type=submit] {
  display: grid;
  place-items: center;
  margin: 50px auto 0;
  width: 300px;
  height: 66px;
  border: 2px solid #134e78;
  border-radius: 33px;
  transition: all 0.3s;
}
.page-contact input[type=submit]:hover,
.page-zoomcontact input[type=submit]:hover {
  background-color: #134e78;
  color: #fff;
}

@media screen and (max-width: 1240px) {
  .page-contact .fm,
  .page-zoomcontact .fm {
    margin-top: 60px;
    font-size: 14px;
  }
  .page-contact .fm__group,
  .page-zoomcontact .fm__group {
    margin-bottom: 30px;
  }
  .page-contact .fm__label,
  .page-zoomcontact .fm__label {
    width: 200px;
    flex: 0 0 200px;
  }
  .page-contact .fm__label .require,
  .page-contact .fm__label .any,
  .page-zoomcontact .fm__label .require,
  .page-zoomcontact .fm__label .any {
    width: 40px;
    height: 20px;
    font-size: 10px;
    border-radius: 10px;
  }
  .page-contact .fm__label .addtext,
  .page-zoomcontact .fm__label .addtext {
    top: 25px;
    left: 50px;
    font-size: 12px;
  }
  .page-contact .fm input[type=text],
  .page-contact .fm input[type=email],
  .page-contact .fm input[type=tel],
  .page-contact .fm input[type=date],
  .page-contact .fm select,
  .page-zoomcontact .fm input[type=text],
  .page-zoomcontact .fm input[type=email],
  .page-zoomcontact .fm input[type=tel],
  .page-zoomcontact .fm input[type=date],
  .page-zoomcontact .fm select {
    height: 40px;
    max-width: 600px;
  }
  .page-contact .fm label input[type=checkbox],
  .page-zoomcontact .fm label input[type=checkbox] {
    position: relative;
    top: 1px;
  }
  .page-contact .fm .select-wrap,
  .page-zoomcontact .fm .select-wrap {
    max-width: 600px;
  }
  .page-contact .fm .select-wrap::after,
  .page-zoomcontact .fm .select-wrap::after {
    right: 18px;
    width: 8px;
    height: 5px;
    border-top: 8px solid #134e78;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
  }
  .page-contact .fm .wpcf7-list-item,
  .page-zoomcontact .fm .wpcf7-list-item {
    margin-right: 15px;
  }
  .page-contact .fm .body-detail,
  .page-zoomcontact .fm .body-detail {
    padding-left: 0;
    margin-top: 50px;
    margin-bottom: 30px;
  }
  .page-contact .fm .body-detail__title,
  .page-zoomcontact .fm .body-detail__title {
    font-size: 12px;
  }
  .page-contact .fm .ta-g,
  .page-zoomcontact .fm .ta-g {
    margin-top: 50px;
  }
  .page-contact .fm .ta-g .fm__label,
  .page-zoomcontact .fm .ta-g .fm__label {
    padding-top: 10px;
  }
  .page-contact .fm .ta-g textarea,
  .page-zoomcontact .fm .ta-g textarea {
    height: 230px;
  }
}
@media screen and (max-width: 758px) {
  .page-contact .fm,
  .page-zoomcontact .fm {
    margin-top: 40px;
  }
  .page-contact .fm__group,
  .page-zoomcontact .fm__group {
    display: block;
    margin-bottom: 15px;
  }
  .page-contact .fm__label,
  .page-zoomcontact .fm__label {
    width: 100%;
    flex: 0 0 100%;
  }
  .page-contact .fm__label label,
  .page-zoomcontact .fm__label label {
    font-weight: 400;
  }
  .page-contact .fm__label .require,
  .page-contact .fm__label .any,
  .page-zoomcontact .fm__label .require,
  .page-zoomcontact .fm__label .any {
    width: 30px;
    height: 15px;
    font-size: 10px;
    margin-right: 15px;
    border-radius: 8px;
  }
  .page-contact .fm__label .addtext,
  .page-zoomcontact .fm__label .addtext {
    position: relative;
    top: auto;
    left: auto;
    margin-left: 24px;
    font-size: 12px;
  }
  .page-contact .fm__input,
  .page-zoomcontact .fm__input {
    margin-top: 10px;
  }
  .page-contact .fm input[type=text],
  .page-contact .fm input[type=email],
  .page-contact .fm input[type=tel],
  .page-contact .fm input[type=date],
  .page-contact .fm select,
  .page-zoomcontact .fm input[type=text],
  .page-zoomcontact .fm input[type=email],
  .page-zoomcontact .fm input[type=tel],
  .page-zoomcontact .fm input[type=date],
  .page-zoomcontact .fm select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 40px;
  }
  .page-contact .fm input[type=text]::-moz-placeholder, .page-contact .fm input[type=email]::-moz-placeholder, .page-contact .fm input[type=tel]::-moz-placeholder, .page-contact .fm input[type=date]::-moz-placeholder, .page-contact .fm select::-moz-placeholder, .page-zoomcontact .fm input[type=text]::-moz-placeholder, .page-zoomcontact .fm input[type=email]::-moz-placeholder, .page-zoomcontact .fm input[type=tel]::-moz-placeholder, .page-zoomcontact .fm input[type=date]::-moz-placeholder, .page-zoomcontact .fm select::-moz-placeholder {
    opacity: 0.75;
  }
  .page-contact .fm input[type=text]::placeholder,
  .page-contact .fm input[type=email]::placeholder,
  .page-contact .fm input[type=tel]::placeholder,
  .page-contact .fm input[type=date]::placeholder,
  .page-contact .fm select::placeholder,
  .page-zoomcontact .fm input[type=text]::placeholder,
  .page-zoomcontact .fm input[type=email]::placeholder,
  .page-zoomcontact .fm input[type=tel]::placeholder,
  .page-zoomcontact .fm input[type=date]::placeholder,
  .page-zoomcontact .fm select::placeholder {
    opacity: 0.75;
  }
  .page-contact .fm .small,
  .page-zoomcontact .fm .small {
    font-size: 12px;
  }
  .page-contact .fm .wpcf7-form-control-wrap.wpcf7-radio,
  .page-zoomcontact .fm .wpcf7-form-control-wrap.wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
  }
  .page-contact .fm .wpcf7-list-item,
  .page-zoomcontact .fm .wpcf7-list-item {
    display: inline-block;
    flex: 0 0 49%;
    width: 49%;
    margin-right: 0;
  }
  .page-contact .fm .wpcf7-list-item:nth-child(n+3),
  .page-zoomcontact .fm .wpcf7-list-item:nth-child(n+3) {
    margin-top: 15px;
  }
  .page-contact .fm .body-detail,
  .page-zoomcontact .fm .body-detail {
    flex-direction: column;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
  }
  .page-contact .fm .body-detail__title,
  .page-zoomcontact .fm .body-detail__title {
    font-size: 12px;
  }
  .page-contact .fm .body-detail .wpcf7-list-item,
  .page-zoomcontact .fm .body-detail .wpcf7-list-item {
    width: 49%;
    flex: 0 0 49%;
    margin-bottom: 0;
  }
  .page-contact .fm .body-detail__input,
  .page-zoomcontact .fm .body-detail__input {
    margin-left: 0;
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .page-contact .fm .notice,
  .page-zoomcontact .fm .notice {
    position: absolute;
    top: 60px;
    left: 0;
    margin-left: 0;
  }
  .page-contact .fm .ta-g,
  .page-zoomcontact .fm .ta-g {
    margin-top: 55px;
  }
  .page-contact .fm .ta-g .fm__label,
  .page-zoomcontact .fm .ta-g .fm__label {
    padding-top: 10px;
  }
  .page-contact .fm .ta-g textarea,
  .page-zoomcontact .fm .ta-g textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 120px;
  }
  .page-contact .pp,
  .page-zoomcontact .pp {
    margin-top: 22px;
    padding: 16px 16px 27px;
    font-size: 12px;
  }
  .page-contact .pp__box,
  .page-zoomcontact .pp__box {
    margin-top: 15px;
    padding: 10px;
    height: 80px;
  }
  .page-contact .pp__box p,
  .page-zoomcontact .pp__box p {
    line-height: 1.75;
  }
  .page-contact .pp__btn,
  .page-zoomcontact .pp__btn {
    margin-top: 17px;
  }
  .page-contact .pp__btn .wpcf7-list-item,
  .page-zoomcontact .pp__btn .wpcf7-list-item {
    width: 100%;
  }
  .page-contact .pp__btn .wpcf7-list-item-label,
  .page-zoomcontact .pp__btn .wpcf7-list-item-label {
    position: relative;
    top: -1px;
  }
  .page-contact input[type=submit],
  .page-zoomcontact input[type=submit] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 28px auto 0;
    width: 180px;
    height: 40px;
    border-radius: 20px;
    font-size: 12px;
  }
}
/* ==============================

  予約完了ページ：page-thanks

================================= */
.page-thanks .thanks__title,
.page-thankszoom .thanks__title {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
}
.page-thanks .thanks__text,
.page-thankszoom .thanks__text {
  margin-top: 30px;
  line-height: 2;
}
.page-thanks .morebtn,
.page-thankszoom .morebtn {
  margin-top: 64px;
  justify-content: flex-start;
}

@media screen and (max-width: 1240px) {
  .page-thanks .page__contents,
  .page-thankszoom .page__contents {
    padding-top: 40px;
  }
  .page-thanks .thanks__title,
  .page-thankszoom .thanks__title {
    font-size: 20px;
  }
  .page-thanks .morebtn,
  .page-thankszoom .morebtn {
    margin-top: 60px;
  }
}
@media screen and (max-width: 758px) {
  .page-thanks .thanks__title,
  .page-thankszoom .thanks__title {
    font-size: 18px;
  }
}
/* =============================

  個人情報保護方針：page-privacy

================================ */
.page-privacy .page__contents {
  padding-left: 0;
}
.page-privacy .privacy-entry {
  margin-top: 50px;
}
.page-privacy .privacy-entry h2 {
  margin-top: 41px;
  padding-bottom: 18px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  border-bottom: 1px solid #134e78;
}
.page-privacy .privacy-entry h2:nth-of-type(1) {
  margin-top: 53px;
}
.page-privacy .privacy-entry p {
  margin-top: 22px;
  line-height: 2;
}
.page-privacy .privacy-entry ul,
.page-privacy .privacy-entry ol {
  margin-top: 24px;
}
.page-privacy .privacy-entry ul li,
.page-privacy .privacy-entry ol li {
  position: relative;
  line-height: 2;
}
.page-privacy .privacy-entry ul li + li,
.page-privacy .privacy-entry ol li + li {
  margin-top: 8px;
}
.page-privacy .privacy-entry ul {
  padding-left: calc(1rem + 10px);
}
.page-privacy .privacy-entry ul li {
  text-indent: calc(-1rem - 10px);
}
.page-privacy .privacy-entry ul li:before {
  display: inline-block;
  content: "";
  margin-right: 1em;
  width: 10px;
  height: 10px;
  background-color: #134e78;
  border-radius: 50%;
}
.page-privacy .privacy-entry ol {
  list-style: none;
  padding-left: 2rem;
}
.page-privacy .privacy-entry ol li {
  text-indent: -2.5rem;
}
.page-privacy .privacy-entry > * {
  margin-top: 0;
}

@media screen and (max-width: 1240px) {
  .page-privacy .privacy-entry {
    margin-top: 40px;
  }
  .page-privacy .privacy-entry h2 {
    margin-top: 40px;
    padding-bottom: 16px;
    font-size: 20px;
  }
  .page-privacy .privacy-entry h2:nth-of-type(1) {
    margin-top: 40px;
  }
  .page-privacy .privacy-entry p {
    margin-top: 15px;
  }
  .page-privacy .privacy-entry ul,
  .page-privacy .privacy-entry ol {
    margin-top: 20px;
  }
  .page-privacy .privacy-entry ul li + li,
  .page-privacy .privacy-entry ol li + li {
    margin-top: 6px;
  }
  .page-privacy .privacy-entry ul {
    padding-left: calc(1rem + 7px);
  }
  .page-privacy .privacy-entry ul li {
    text-indent: calc(-1rem - 5px);
  }
  .page-privacy .privacy-entry ul li:before {
    width: 8px;
    height: 8px;
  }
  .page-privacy .privacy-entry ol {
    list-style: none;
    padding-left: 1.6rem;
  }
  .page-privacy .privacy-entry ol li {
    text-indent: -1.95rem;
  }
}
@media screen and (max-width: 758px) {
  .page-privacy .privacy-entry h2 {
    margin-top: 30px;
    padding-bottom: 6px;
    font-size: 15px;
    padding-left: 1.1rem;
    text-indent: -1.1rem;
  }
  .page-privacy .privacy-entry h2:nth-of-type(1) {
    margin-top: 30px;
  }
  .page-privacy .privacy-entry p {
    margin-top: 12px;
  }
  .page-privacy .privacy-entry ul,
  .page-privacy .privacy-entry ol {
    margin-top: 12px;
  }
  .page-privacy .privacy-entry ul li + li,
  .page-privacy .privacy-entry ol li + li {
    margin-top: 3px;
  }
  .page-privacy .privacy-entry ul {
    padding-left: 1rem;
  }
  .page-privacy .privacy-entry ul li {
    text-indent: -1rem;
  }
  .page-privacy .privacy-entry ul li:before {
    width: 8px;
    height: 8px;
    margin-right: 8px;
  }
}
/* ===============================

  キャンペーンページ詳細：campaigh

================================== */
.single-campaign .main {
  padding-top: 0;
}
.single-campaign .container {
  width: 1080px;
}
.single-campaign .wrapper {
  display: flex;
}
.single-campaign .cam-entry {
  width: 720px;
  flex: 0 0 720px;
}
.single-campaign .cam-entry img {
  width: 100%;
}
.single-campaign .cam-entry .access {
  padding: 100px 30px;
  background-color: #ccecf5;
}
.single-campaign .cam-entry .access h2 img {
  display: block;
  margin: 0 auto;
  width: 51.1%;
}
.single-campaign .cam-entry .access__contents {
  margin-top: 100px;
}
.single-campaign .cam-entry .access__contents + .access__contents {
  margin-top: 100px;
}
.single-campaign .cam-entry .access__map {
  overflow: hidden;
  position: relative;
  margin-top: 30px;
  padding-top: 53.3%;
}
.single-campaign .cam-entry .access__map iframe {
  position: absolute;
  top: 0;
  width: 100%;
}
.single-campaign .sidebar {
  width: 300px;
  flex: 0 0 300px;
  margin-left: 60px;
}
.single-campaign .sidebar a {
  transition: all 0.3s;
}
.single-campaign .sidebar a:hover {
  opacity: 0.6;
}
.single-campaign .sidebar a + a {
  display: block;
  margin-top: 40px;
}
.single-campaign .sidebar img {
  width: 100%;
}

@media screen and (max-width: 1240px) {
  .single-campaign .main {
    padding: 0;
    margin: 0;
  }
  .single-campaign .container {
    width: 100%;
    padding: 0;
  }
  .single-campaign .cam-entry {
    width: 100%;
    flex: 0 0 100%;
  }
  .single-campaign .cam-entry .wp-block-image {
    margin: 0;
  }
  .single-campaign .cam-entry .page-qa {
    padding: 0 20px;
  }
  .single-campaign .sidebar {
    display: none;
  }
  .single-campaign .footer {
    display: none;
  }
}
@media screen and (max-width: 758px) {
  .single-campaign .cam-entry .access {
    padding: 43px 30px 100px;
  }
  .single-campaign .cam-entry .access__contents {
    margin-top: 52px;
  }
  .single-campaign .cam-entry .access__map {
    margin-top: 15px;
  }
}
/* ===========================

  404エラーページ：error404

============================== */
.error404 .error {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 78vh;
}
.error404 .error__title {
  font-size: 48px;
}
.error404 .error__text {
  margin-top: 50px;
  text-align: center;
}
.error404 .error__text span {
  display: block;
  font-size: 24px;
  margin-bottom: 20px;
  font-weight: 700;
}
.error404 .error__link {
  display: block;
  margin-top: 80px;
  font-size: 18px;
  font-weight: 700;
  color: #134e78;
  text-decoration: underline;
  transition: all 0.3s;
}
.error404 .error__link:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1240px) {
  .error404 .error__title {
    font-size: 36px;
  }
  .error404 .error__text {
    margin-top: 50px;
    line-height: 1.5;
  }
  .error404 .error__text span {
    font-size: 20px;
  }
}
@media screen and (max-width: 758px) {
  .error404 .error__title {
    font-size: 30px;
  }
  .error404 .error__text {
    margin-top: 40px;
    line-height: 2;
  }
  .error404 .error__text span {
    font-size: 16px;
  }
  .error404 .error__link {
    font-size: 14px;
  }
}

/* 20240221 追加 対象ページへのリンク設定 */
.copyright a {
  color: rgb(19, 78, 120);
}

/* 20240221 追加 会社情報の追記とCorporationの構造化データについて */
.footer__company p:nth-child(1) {
  line-height: 14px;
  margin: 0 0 14px;
}

@media screen and (max-width: 758px) {
  .footer__company {
      margin: 18px 0 0;
  }
  .footer__company p {
      line-height: 11px;
      font-size: 11px;
  }
  .footer__company p:nth-child(1) {
      margin: 0 0 11px;
  }
}

/* 20241031 対象ページへのリンク設定 */
a.shop__thumb{
  transition: all .6s;
}
a.shop__thumb:hover{
  opacity: .6;
}

.salonlist__contents .salon{
  margin-bottom: 20px;
}
.salonlist__contents .gmap iframe{
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}
.salonlist__contents h3.salon__name{
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid #134e78;
}
.salon__info th,
.salon__info td{
  font-size: 12px;
  text-align: left;
  line-height: 1.6;
  padding: .5em 0;
}
.salon__info th{
  width: 5em;
  font-weight: bold;
}
.salon__info .btn{
  color: #fff;
  line-height: 2;
  padding: 0 20px;
  margin-top: 5px;
  border-radius: 20px;
  display: inline-block;
  background-color: #134e78;
}
@media screen and (max-width: 758px) {
  .home .salonlist .salon {
      width: 100%;
  }
  .home .salonlist .salon__name{
      font-size: 20px;
  }
  .salon__info th,
  .salon__info td{
      font-size: 16px;
  }
}

/* 20250514 施術までの流れ */
.flow {
  margin-top: 43px;
}
.flow-items {
  margin-top: 43px;
  padding-left: 120px;
}
.flow-item {
  display: flex;
  gap: 30px;
  margin-bottom: 30px;
}
.flow-item-img {
  flex: 0 0 40%;
}
.flow-step {
  background-color: #134e78;
  color: #fff;
  font-size: 20px;
  padding: 15px;
  font-weight: bold;
  margin-bottom: 20px;
}
.flow-txt {
  margin-top: 20px;
  line-height: 1.8;
}
@media screen and (max-width: 758px) {
  .flow-items {
    margin-top: 18px;
    padding-left: 0;
  }
  .flow-item {
    display: block;
  }
  .flow-item-img {
    width: 100%;
  }
}

/* 20250514 おすすめメニュー テキスト化 */
.hmenu__plan-items {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
  border: 1px solid #ddd;
}
.hmenu__plan-item {
  flex: 0 0 50%;
  color: #222;
}
.hmenu__plan-item:nth-child(2n) {
  border-left: 1px solid #ddd;
}
.hmenu__plan-name {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  padding: 12px;
}
.-green {
  background-color: #CCE7B5;
}
.-pink {
  background-color: #FEB5B0;
}
.-blue {
  background-color: #92E2FB;
}
.-purple {
  background-color: #EEC9FE;
}
.hmenu__plan-pcice {
  font-size: 40px;
  text-align: center;
  text-decoration: underline;
  padding: 40px 0 30px 0;
}
.hmenu__plan-ttl {
  text-align: center;
  background-color: #1964EE;
  color: #fff;
  padding: 15px;
  font-size: 30px;
  margin-top: 50px;
}
.hmenu__plan-txt {
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
.hmenu__plan-txt span {
  font-size: 23px;
}
@media screen and (max-width: 758px) {
  .home .hmenu__contents.hmenu__contents-plan {
    padding-left: 0;
  }
  .hmenu__plan-items {
    display: block;
  }
  .hmenu__plan-item {
    width: 100%;
  }
  .hmenu__plan-item:nth-child(2n) {
    border-left: none;
  }
}
.plan-table {
  width: 100%;
  margin-top: 20px;
  text-align: center;
  color: #222;
  border-left: 1px solid #ddd;
}
.plan-table tr:first-child {
  border-top: 1px solid #ddd;
}
.plan-table th,
.plan-table td {
  vertical-align: middle;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
}
.plan-table th {
  font-size: 20px;
  font-weight: bold;
  padding: 20px;
}
.-gray {
  background-color: #f2f2f2;
}
.plan-table .price td {
  font-size: 25px;
  padding: 20px;
}
.once-price td {
  padding: 10px;
  background-color: #f2f2f2;
  border-top: 1px solid #ddd;
}
@media screen and (max-width: 758px) {
  .plan-table-container {
    overflow: scroll;
  }
  .plan-table {
    width: 800px;
  }
}
.face-set-plan {
  display: flex;
  flex-wrap: wrap;
}
.face-set-plan table {
  margin-top: 20px;
  width: 49%;
}
.face-set-plan table:nth-of-type(2n) {
  margin-left: auto;
}
.face-set-plan th,
.face-set-plan td {
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 18px;
  border: 1px solid;
}
.face-set-plan th {
  font-weight: bold;
}
.face-set-plan table tr:first-child th {
  font-weight: bold;
  font-size: 25px;
  padding: 20px;
  color: #fff;
}
.face-set-plan .face-set-3months tr:first-child th {
  background: #045C48;
}
.face-set-plan .face-set-6months tr:first-child th {
  background: #B51A5A;
}
.face-set-plan .face-set-12months tr:first-child th {
  background: #172F6F;
}
.face-set-plan .face-set-24months tr:first-child th {
  background: #422B52;
}
.face-set-plan .face-set-3months th,
.face-set-plan .face-set-3months td {
  border-color: #045C48;
  color: #045C48;
}
.face-set-plan .face-set-6months th,
.face-set-plan .face-set-6months td {
  border-color: #B51A5A;
  color: #B51A5A;
}
.face-set-plan .face-set-12months th,
.face-set-plan .face-set-12months td {
  border-color: #172F6F;
  color: #172F6F;
}
.face-set-plan .face-set-24months th,
.face-set-plan .face-set-24months td {
  border-color: #422B52;
  color: #422B52;
}
@media screen and (max-width: 758px) {
  .face-set-plan {
    display: block;
  }
  .face-set-plan table {
    width: 100%;
  }
  .face-set-plan table:nth-of-type(2n) {
    margin-left: 0;
  }
  .face-set-plan table tr:first-child th {
    font-size: 20px;
  }
}

.shop__payment {
  margin-bottom: 5px;
}
@media screen and (max-width: 758px) {
  .gnav.show {
    overflow: auto;
  }
}