@charset "UTF-8";
@font-face {
  font-family: "MPLUSRounded1c";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Regular.woff2") format("woff2"), url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Regular.woff") format("woff");
}
@font-face {
  font-family: "MPLUSRounded1c";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Medium.woff2") format("woff2"), url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Medium.woff") format("woff");
}
@font-face {
  font-family: "MPLUSRounded1c";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Bold.woff2") format("woff2"), url("../fonts/MPLUSRounded1c/MPLUSRounded1c-Bold.woff") format("woff");
}
@font-face {
  font-family: "MPLUSRounded1c";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/MPLUSRounded1c/MPLUSRounded1c-ExtraBold.woff2") format("woff2"), url("../fonts/MPLUSRounded1c/MPLUSRounded1c-ExtraBold.woff") format("woff");
}
/*  reset
-------------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
::before,
::after {
  background-repeat: no-repeat;
  zoom: 1;
}

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

html,
body {
  font-size: 62.5%;
  -webkit-overflow-scrolling: touch;
}

html {
  overflow-y: scroll;
  cursor: default;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
  font-weight: 700;
  line-height: 1em;
}

ol,
ul,
li {
  list-style: none;
  zoom: normal;
}

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

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

th {
  font-weight: normal;
}

td,
th {
  padding: 0;
}

blockquote {
  quotes: none;
}

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

a {
  color: inherit;
  background-color: transparent;
  text-decoration: none;
  -webkit-text-decoration-skip: objects;
  cursor: pointer;
}

a:active,
a:hover {
  outline-width: 0;
}

a:focus,
*:focus {
  outline: none;
}

img {
  border-style: none;
  vertical-align: bottom;
  image-rendering: -webkit-optimize-contrast;
}

[type=text],
[type=tel],
[type=email],
[type=date],
[type=number],
[type=submit],
[type=button],
button,
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input,
select {
  vertical-align: middle;
}

select {
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/*  html / body
-------------------------------------------------------*/
html {
  font-size: 62.5%;
}

body {
  width: 100%;
  height: 100%;
  color: #333333;
  background-color: #fbf9f2;
  font-family: "MPLUSRounded1c", sans-serif;
  font-size: 3.7333333333vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden;
}

@media all and (min-width: 751px) {
  body {
    font-size: 1.1111111111vw;
  }
}
@media all and (min-width: 1441px) {
  body {
    font-size: 1.6em;
  }
}
a.on--opa {
  display: inline-block;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

a.on--opa:hover {
  opacity: 0.8;
}

.on--popup {
  position: relative;
  display: block;
}

.on--popup:after {
  content: "";
  position: absolute;
  right: 2vw;
  bottom: 2vw;
  display: inline-block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background-image: url(../img/common/popup.png);
  background-size: contain;
  z-index: 1;
}

@media all and (min-width: 751px) {
  .on--popup:after {
    right: 0.6944444444vw;
    bottom: 0.6944444444vw;
    width: 2.0833333333vw;
    height: 2.0833333333vw;
  }
}
@media all and (min-width: 1441px) {
  .on--popup:after {
    right: 10px;
    bottom: 10px;
    width: 30px;
    height: 30px;
  }
}
/* utils
-------------------------------------------------------*/
@media all and (max-width: 750px) {
  .none--sp {
    display: none !important;
  }
  .br--pc {
    display: none;
  }
  .br--sp {
    display: block;
  }
}
@media all and (min-width: 751px) {
  .none--pc {
    display: none !important;
  }
  .br--pc {
    display: block;
  }
  .br--sp {
    display: none;
  }
}
.img--fit {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.img--scale {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.img--scale img {
  width: 100%;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

.youtube,
.ggmap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.youtube iframe,
.ggmap iframe,
.ggmap object,
.ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.youtube iframe,
.ggmap iframe {
  border: none;
}

.lightboxOverlay {
  width: 100% !important;
}

/*  #header
-------------------------------------------------------------------------------*/
/* ------------------------------------------- header top - */
.header {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0 0 2.6666666667vw;
  width: 100%;
  height: 16vw;
  background-color: #fbf9f2;
  visibility: visible;
  opacity: 1;
  -webkit-transition: 0.1s ease;
  transition: 0.1s ease;
  z-index: 8888;
}

.header.is-fixed {
  visibility: hidden;
  opacity: 0;
}

.header-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0 2.6666666667vw;
  width: 80.5333333333vw;
}

.header-image a {
  display: block;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 371px;
}

.header-store-name {
  font-weight: 700;
  color: #126fb4;
}

@media all and (max-width: 750px) {
  .header.is-open {
    top: 0 !important;
  }
  .header-content {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0 auto;
    width: 90.1333333333vw;
    background-color: #fbf9f2;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    -webkit-transition: visibility 0.4s;
    transition: visibility 0.4s;
  }
  .header-content.is-open {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    min-height: 100svh;
    opacity: 1;
    visibility: visible;
  }
  .header-content-scroll {
    position: relative;
    padding: 23.3333333333vw 0 8vw 0;
    height: 100%;
    overflow-x: scroll;
    z-index: 999;
  }
  .header-content-in {
    position: relative;
    margin: 0 auto;
    width: 95.2vw;
  }
  .header-btn {
    display: none;
  }
  .header .relation {
    margin-bottom: 0;
  }
  .header-image a {
    width: 39.4666666667vw;
  }
  .header-store-name {
    font-size: 3.2vw;
  }
  .header-pc {
    display: none;
  }
}
@media all and (min-width: 751px) {
  .header {
    padding: 0 0.6944444444vw;
    height: 6.25vw;
  }
  .header-image {
    gap: 0 0.6944444444vw;
    width: 39.2361111111vw;
  }
  .header-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header-btn {
    margin-left: 1.3888888889vw;
    width: 18.0555555556vw;
  }
  .header-btn .btn:after {
    content: none;
  }
  .header-btn a {
    padding-right: 0;
    height: 4.1666666667vw;
    border-radius: 2.0833333333vw;
  }
  .header-btn a span {
    font-size: 1.1805555556vw;
  }
  .header-image a {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .header-sp {
    display: none;
  }
}
@media all and (min-width: 1441px) {
  .header {
    padding: 0 20px;
    height: 90px;
  }
  .header-image {
    gap: 0 10px;
    width: 565px;
  }
  .header-btn {
    margin-left: 30px;
    width: 260px;
  }
  .header-btn a {
    height: 60px;
    border-radius: 30px;
  }
  .header-btn a span {
    font-size: 17px;
    font-size: 1.7rem;
  }
}
@media all and (min-width: 751px) and (max-width: 1549px) {
  .header-image {
    width: 28%;
  }
}
/*  #contents
-------------------------------------------------------------------------------*/
.contents {
  position: relative;
  padding-top: 16vw;
}

@media all and (min-width: 751px) {
  .contents {
    padding-top: 6.25vw;
  }
}
@media all and (min-width: 1441px) {
  .contents {
    padding-top: 90px;
  }
}
/*  #footer
-------------------------------------------------------------------------------*/
.footer {
  position: relative;
  margin-top: 14.6666666667vw;
  background-color: #e4831a;
}
.footer:before {
  content: "";
  position: absolute;
  top: -8.9333333333vw;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 9.0666666667vw;
  background-image: url(../img/common/wave.png);
  background-size: auto 9.0666666667vw;
  background-repeat: repeat-x;
}

.relation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 6.6666666667vw auto;
  width: 85.3333333333vw;
}

.relation a {
  display: block;
}

.relation--l {
  width: 100%;
}

.relation--social {
  width: 40.6666666667vw;
}

.relation--youtube {
  width: 40.6666666667vw;
}

.footer-bar {
  position: relative;
  margin: 0 auto;
  padding: 4vw 2.6666666667vw 2.6666666667vw 2.6666666667vw;
  width: 80vw;
  background-color: #ffffff;
  border-radius: 6.6666666667vw 6.6666666667vw 0 0;
}

.footer-logo {
  margin: 0 auto;
  width: 72vw;
}

.footer-logo a {
  position: relative;
  display: block;
  padding: 3.4666666667vw 0 0 21.3333333333vw;
  height: 8.9333333333vw;
}
.footer-logo a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 19.8666666667vw;
  height: 9.0666666667vw;
  background-image: url(../img/common/mark-l.svg);
  background-size: contain;
}

.footer-store-name {
  margin-top: 2.6666666667vw;
  font-weight: 700;
  text-align: center;
  color: #126fb4;
}

.footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4vw;
}

.footer-social a {
  display: block;
  width: 6vw;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

.footer-social a:nth-child(n+2) {
  margin-left: 4vw;
}

.footer-social a:hover {
  opacity: 0.7;
}

.footer-copy {
  margin-top: 4vw;
  color: #e4831a;
  font-size: 3.4666666667vw;
  font-weight: 700;
  text-align: center;
}

@media all and (max-width: 750px) {
  .footer {
    margin-bottom: 16vw;
  }
  .footer--sp {
    margin-bottom: 0;
  }
  .relation a:nth-child(n+3) {
    margin-top: 4vw;
  }
}
@media all and (min-width: 751px) {
  .footer {
    margin: 8.6805555556vw 0 0 0;
  }
  .footer:before {
    top: -4.6527777778vw;
    height: 4.7222222222vw;
    background-image: image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-size: auto 4.7222222222vw;
  }
  .relation {
    margin-bottom: 0;
    width: 69.4444444444vw;
  }
  .relation--l {
    width: 34.0277777778vw;
  }
  .relation--social {
    width: 12.5vw;
  }
  .relation--youtube {
    width: 26.0416666667vw;
  }
  .footer-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 2.7777777778vw;
    width: 83.3333333333vw;
    height: 5.5555555556vw;
    border-radius: 3.4722222222vw 3.4722222222vw 0 0;
  }
  .footer-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0 0.6944444444vw;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    width: 25vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .footer-logo a {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 1.0416666667vw 0 0 7.2916666667vw;
    height: 2.9861111111vw;
  }
  .footer-logo a:before {
    width: 6.5277777778vw;
    height: 2.9861111111vw;
  }
  .footer-store-name {
    margin-top: 0.9027777778vw;
    text-align: left;
  }
  .footer-social {
    margin-top: 0;
  }
  .footer-social a {
    width: 2.0833333333vw;
  }
  .footer-social a:nth-child(n+2) {
    margin-left: 1.3888888889vw;
  }
  .footer-copy {
    margin-top: 0;
    font-size: 0.8333333333vw;
    text-align: left;
  }
}
@media all and (min-width: 1441px) {
  .footer {
    margin-top: 125px;
  }
  .footer:before {
    top: -68px;
    height: 68px;
    background-size: auto 68px;
  }
  .relation {
    width: 1000px;
  }
  .relation--l {
    width: 490px;
  }
  .relation--social {
    width: 180px;
  }
  .relation--youtube {
    width: 375px;
  }
  .footer-bar {
    padding: 0 40px;
    width: 1200px;
    height: 80px;
    border-radius: 50px 50px 0 0;
  }
  .footer-logo {
    gap: 0 10px;
    width: 360px;
  }
  .footer-logo a {
    padding: 15px 0 0 105px;
    height: 43px;
  }
  .footer-logo a:before {
    width: 94px;
    height: 43px;
  }
  .footer-store-name {
    margin-top: 13px;
  }
  .footer-social a {
    width: 30px;
  }
  .footer-social a:nth-child(n+2) {
    margin-left: 20px;
  }
  .footer-copy {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
/*  gnavi
-------------------------------------------------------*/
/* ------------------------------------------- sp - */
@media all and (max-width: 750px) {
  .navi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 6.6666666667vw;
    border-radius: 5.3333333333vw;
    overflow: hidden;
  }
  .navi > a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 47.2vw;
    height: 14.6666666667vw;
    background-color: #ffffff;
    font-size: 3.7333333333vw;
    font-weight: 700;
    text-align: center;
    line-height: 1.25em;
    letter-spacing: 0;
  }
  .navi > a:nth-child(n+3) {
    margin-top: 0.8vw;
  }
  .navi > a:last-child {
    width: 100%;
  }
  .navi > a span.external {
    position: relative;
    display: inline-block;
    padding-right: 6.6666666667vw;
  }
  .navi > a span.external:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    width: 4.4vw;
    height: 4.1333333333vw;
    background-image: url(../img/common/external-og.svg);
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
/* ------------------------------------------- pc - */
@media all and (min-width: 751px) {
  .navi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    z-index: 2;
  }
  .navi > li {
    position: relative;
    display: block;
  }
  .navi > li:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 0%;
    height: 0.2083333333vw;
    background-color: #e4831a;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .navi > li:hover::after {
    width: 100%;
  }
  .navi > li:nth-child(n+2) {
    margin-left: 1.3888888889vw;
  }
  .navi-parent {
    position: relative;
  }
  .navi-menu {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 2.5694444444vw;
    cursor: pointer;
  }
  .navi-menu > p {
    position: relative;
    display: inline-block;
    font-size: 1.0416666667vw;
    font-weight: 700;
    letter-spacing: 0;
  }
  .navi-parent .navi-menu > p {
    padding-right: 1.3888888889vw;
  }
  .navi-parent .navi-menu > p:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    width: 0.6944444444vw;
    height: 0.4166666667vw;
    background-image: url(../img/header/down.svg);
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .navi-menu .external {
    position: relative;
    padding-right: 1.7361111111vw;
  }
  .navi-menu .external:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    width: 1.25vw;
    height: 1.1805555556vw;
    background-image: url(../img/common/external-og.svg);
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .navi-submenu {
    position: absolute;
    top: 100%;
    left: 50%;
    display: none !important;
    padding: 0.3472222222vw 0.6944444444vw;
    min-width: 13.8888888889vw;
    height: auto;
    background-color: #e4831a;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 999;
  }
  .navi > li:hover .navi-submenu {
    display: block !important;
  }
  .navi-submenu-list a {
    position: relative;
    display: block;
    padding: 0.7em 0.5em;
    color: #ffffff;
    font-size: 0.9027777778vw;
    border-top: 1px solid #fbf9f2;
    font-weight: 500;
    text-align: left;
    line-height: 1.6em;
    letter-spacing: 0.02em;
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .navi-submenu-list a:first-child {
    border-top: none;
  }
  .navi-submenu-list a:hover {
    color: #126fb4;
  }
}
@media all and (min-width: 1441px) {
  .navi > li:after {
    height: 3px;
  }
  .navi > li:nth-child(n+2) {
    margin-left: 25px;
  }
  .navi-menu {
    height: 37px;
  }
  .navi-menu > p {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .navi-parent .navi-menu > p {
    padding-right: 20px;
  }
  .navi-parent .navi-menu > p:after {
    width: 10px;
    height: 6px;
  }
  .navi-menu .external {
    padding-right: 25px;
  }
  .navi-menu .external:after {
    width: 18px;
    height: 17px;
  }
  .navi-submenu {
    padding: 5px 10px;
    min-width: 200px;
  }
  .navi-submenu-list a {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media all and (min-width: 751px) and (max-width: 1699px) {
  .navi > li:nth-child(1) {
    display: none;
  }
}
@media all and (min-width: 1600px) {
  .navi-menu > p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
/*  toggle
-------------------------------------------------------*/
.toggle {
  position: absolute;
  top: 2vw;
  right: 2.6666666667vw;
  width: 12vw;
  height: 12vw;
  background-color: #126fb4;
  border-radius: 50%;
  z-index: 8888;
  cursor: pointer;
}

.header.is-open .toggle {
  position: fixed;
}

.toggle span {
  position: absolute;
  left: 50%;
  width: 7.3333333333vw;
  height: 0.5333333333vw;
  background-color: #ffffff;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
  z-index: 2;
}

.toggle span:nth-of-type(1) {
  top: 4vw;
}

.toggle span:nth-of-type(2) {
  top: 5.8666666667vw;
}

.toggle span:nth-of-type(3) {
  top: 7.7333333333vw;
}

.toggle.is-active span:nth-of-type(1) {
  top: 5.8666666667vw;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}

.toggle.is-active span:nth-of-type(2) {
  display: none;
}

.toggle.is-active span:nth-of-type(3) {
  top: 5.8666666667vw;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}

@media all and (min-width: 751px) {
  .toggle {
    display: none;
  }
}
/*  section
-------------------------------------------------------*/
.sec {
  position: relative;
}

.sec-in {
  position: relative;
  margin: 0 auto;
  width: 90.1333333333vw;
  z-index: 1;
}

.sec-en {
  position: absolute;
  top: -0.1em;
  left: -0.1em;
  color: #ffffff;
  font-size: 21.3333333333vw;
  letter-spacing: 0;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  z-index: -1;
}

.sec-head-ttl {
  position: relative;
  font-size: 8.5333333333vw;
  font-weight: 700;
  line-height: 1.2em;
  letter-spacing: 0.05em;
}

.sec-head-desc {
  margin-top: 2.0833333333vw;
}
.sec-head-desc p {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5em;
}

.sec-head {
  position: relative;
  margin-bottom: 1em;
  font-size: 8.2666666667vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.2em;
  letter-spacing: 0.05em;
}
.sec-head span {
  position: relative;
}
.sec-head span:before {
  content: "";
  position: absolute;
  top: -2.6666666667vw;
  left: -4.6666666667vw;
  display: inline-block;
  width: 6.6666666667vw;
  height: 6.2666666667vw;
  background-size: contain;
}

.sec-btn {
  margin: 0 auto;
  width: 80vw;
}

.sec-btn .btn {
  height: 13.3333333333vw;
  border-radius: 6.6666666667vw;
}

@media all and (min-width: 751px) {
  .sec-in {
    width: 69.4444444444vw;
  }
  .sec-en {
    font-size: 12.5vw;
  }
  .sec-head {
    font-size: 3.75vw;
  }
  .sec-head span:before {
    top: -1.3888888889vw;
    left: -2.7777777778vw;
    width: 3.4722222222vw;
    height: 3.2638888889vw;
  }
  .sec-head-ttl {
    top: 0.05em;
    font-size: 3.6111111111vw;
  }
  .sec-head-desc {
    margin: 0 0 0 2.0833333333vw;
  }
  .sec-head-desc p {
    font-size: 1.25vw;
  }
  .sec-btn {
    width: 29.1666666667vw;
  }
  .sec-btn .btn {
    height: 4.5138888889vw;
    border-radius: 2.4305555556vw;
  }
}
@media all and (min-width: 1441px) {
  .sec-in {
    width: 1000px;
  }
  .sec-en {
    font-size: 180px;
    font-size: 18rem;
  }
  .sec-head {
    font-size: 54px;
    font-size: 5.4rem;
  }
  .sec-head span:before {
    top: -20px;
    left: -40px;
    width: 50px;
    height: 47px;
  }
  .sec-head-ttl {
    font-size: 52px;
    font-size: 5.2rem;
  }
  .sec-head-desc {
    margin-left: 30px;
  }
  .sec-head-desc p {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .sec-btn {
    width: 420px;
  }
  .sec-btn .btn {
    height: 65px;
    border-radius: 35px;
  }
}
/*  button
-------------------------------------------------------*/
/* ------------------------------------------- search - */
.search-btn {
  margin-top: 5.3333333333vw;
}

.search p {
  margin-top: 5.3333333333vw;
  color: #37ab05;
  font-size: 3.7333333333vw;
  font-weight: 700;
  text-align: center;
}

@media all and (min-width: 751px) {
  .search-btn {
    margin-top: 1.7361111111vw;
  }
  .search p {
    margin-top: 1.6666666667vw;
    font-size: 1.1111111111vw;
  }
}
@media all and (min-width: 1441px) {
  .search-btn {
    margin-top: 25px;
  }
  .search p {
    margin-top: 24px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
/* ------------------------------------------- btn - */
.btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-style: solid;
  border-width: 0.8vw;
  -webkit-transition: background-color 0.4s, border-color 0.4s;
  transition: background-color 0.4s, border-color 0.4s;
}
.btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 3.3333333333vw;
  width: 1.8666666667vw;
  height: 3.3333333333vw;
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn span {
  position: relative;
  font-size: 4.2666666667vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.15em;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
  z-index: 1;
}

.btn--og {
  background-color: #ffffff;
  border-color: #f28f24;
}
.btn--og:after {
  background-image: url(../img/common/arrow-yo.svg);
}
.btn--og span {
  color: #f28f24;
}
.btn--og:hover {
  background-color: #f28f24;
}
.btn--og:hover:after {
  background-image: url(../img/common/arrow-wh.svg);
}
.btn--og:hover span {
  color: #ffffff;
}

.btn--search {
  top: 1.3333333333vw;
  height: 16vw;
  background-color: #37ab05;
  border-color: #37ab05;
  border-radius: 8vw;
  -webkit-box-shadow: 0 1.3333333333vw 0 0 #277f00;
          box-shadow: 0 1.3333333333vw 0 0 #277f00;
  -webkit-transform: translateY(-1.3333333333vw);
          transform: translateY(-1.3333333333vw);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.btn--search:after {
  background-image: url(../img/common/arrow-wh.svg);
}
.btn--search span {
  padding-left: 6.6666666667vw;
  color: #ffffff;
}
.btn--search span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -2.6666666667vw;
  width: 5.3333333333vw;
  height: 3.7333333333vw;
  background-image: url(../img/common/mail-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.btn--search:hover {
  -webkit-box-shadow: 0 1px 0 0 #277f00;
          box-shadow: 0 1px 0 0 #277f00;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}

.btn--consul {
  background-color: #37ab05;
  border-color: #ffffff;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}
.btn--consul:after {
  background-image: url(../img/common/arrow-wh.svg);
}
.btn--consul span {
  position: relative;
  padding-left: 9.3333333333vw;
  color: #ffffff;
}
.btn--consul span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 5.3333333333vw;
  height: 3.7333333333vw;
  background-image: url(../img/common/mail-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}

@media all and (min-width: 751px) {
  .btn {
    border-width: 0.2777777778vw;
  }
  .btn:after {
    right: 1.0416666667vw;
    width: 0.6944444444vw;
    height: 1.25vw;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .btn span {
    font-size: 1.25vw;
  }
  .btn:not(.btn--search):hover:after {
    -webkit-transform: translateX(0.2em) translateY(-50%);
            transform: translateX(0.2em) translateY(-50%);
  }
  .btn--search {
    top: 0.5555555556vw;
    height: 5.5555555556vw;
    border-radius: 2.7777777778vw;
    -webkit-box-shadow: 0 0.5555555556vw 0 0 #277f00;
            box-shadow: 0 0.5555555556vw 0 0 #277f00;
    -webkit-transform: translateY(-0.5555555556vw);
            transform: translateY(-0.5555555556vw);
  }
  .btn--search span {
    padding-left: 3.4722222222vw;
  }
  .btn--search span:before {
    left: 0.6944444444vw;
    width: 1.5972222222vw;
    height: 1.1111111111vw;
  }
  .btn--search:hover {
    background-color: #ffffff;
    -webkit-box-shadow: 0 1px 0 0 #37ab05;
            box-shadow: 0 1px 0 0 #37ab05;
    -webkit-transform: translateY(-1px);
            transform: translateY(-1px);
  }
  .btn--search:hover span:before {
    background-image: url(../img/common/mail-gr.svg);
  }
  .btn--search:hover:after {
    background-image: url(../img/common/arrow-gr.svg);
  }
  .btn--search:hover span {
    color: #37ab05;
  }
  .btn--consul {
    padding-right: 1.3888888889vw;
  }
  .btn--consul span {
    padding-left: 2.7777777778vw;
  }
  .btn--consul span:before {
    width: 1.5972222222vw;
    height: 1.1111111111vw;
  }
  .btn--consul:hover {
    background-color: #ffffff;
    border-color: #37ab05;
  }
  .btn--consul:hover:after {
    background-image: url(../img/common/arrow-gr.svg);
  }
  .btn--consul:hover span {
    color: #37ab05;
  }
  .btn--consul:hover span:before {
    background-image: url(../img/common/mail-gr.svg);
  }
}
@media all and (min-width: 1441px) {
  .btn {
    border-width: 4px;
  }
  .btn:after {
    right: 15px;
    width: 10px;
    height: 18px;
  }
  .btn span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .btn--search {
    top: 8px;
    height: 80px;
    border-radius: 40px;
    -webkit-box-shadow: 0 8px 0 0 #277f00;
            box-shadow: 0 8px 0 0 #277f00;
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
  }
  .btn--search span {
    padding-left: 50px;
  }
  .btn--search span:before {
    left: 10px;
    width: 23px;
    height: 16px;
  }
  .btn--consul {
    padding-right: 20px;
  }
  .btn--consul span {
    padding-left: 40px;
  }
  .btn--consul span:before {
    width: 23px;
    height: 16px;
  }
}
/*  slide
-------------------------------------------------------*/
/* ------------------------------------------- pagination bar - */
.slide-pagination {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.slide-pagination .swiper-pagination-bullet {
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  background-color: #4f4f4f;
  border-radius: 50%;
  -webkit-transition: background-color 0.4s;
  transition: background-color 0.4s;
  opacity: 1;
}

.swiper-pagination-bullet:nth-child(n+2) {
  margin-left: 2vw;
}

.slide-pagination .swiper-pagination-bullet-active {
  background-color: #126fb4 !important;
}

@media all and (min-width: 751px) {
  .slide-pagination .swiper-pagination-bullet {
    width: 0.6944444444vw;
    height: 0.6944444444vw;
  }
  .swiper-pagination-bullet:nth-child(n+2) {
    margin-left: 0.9027777778vw;
  }
}
@media all and (min-width: 1441px) {
  .slide-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }
  .swiper-pagination-bullet:nth-child(n+2) {
    margin-left: 13px;
  }
}
/* ------------------------------------------- btn - */
.slide-prev,
.slide-next {
  position: absolute;
  top: 50%;
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 888;
  cursor: pointer;
}
.slide-prev:before,
.slide-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-size: contain;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.slide-prev {
  left: 0;
}

.slide-prev:before {
  background-image: url(../img/slide/prev.svg);
}

.slide-next {
  right: 0;
}

.slide-next:before {
  background-image: url(../img/slide/next.svg);
}

.slide-prev:hover,
.slide-next:hover {
  opacity: 0.8;
}

@media all and (min-width: 751px) {
  .slide-prev,
  .slide-next {
    width: 4.1666666667vw;
    height: 4.1666666667vw;
  }
}
@media all and (min-width: 1441px) {
  .slide-prev,
  .slide-next {
    width: 60px;
    height: 60px;
  }
}
/*  form
-------------------------------------------------------------------------------*/
.contact {
  position: relative;
}

.contact-form {
  position: relative;
  margin-top: 10.6666666667vw;
  padding: 8vw 5.3333333333vw;
  background-color: #ffffff;
  border-radius: 2.6666666667vw;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}

.seminar-form .contact-form {
  margin-top: 0;
}

.contact-form > p {
  margin-bottom: 1.5em;
  text-indent: -0.5em;
}
.contact-form > p span {
  color: #dc3232;
}

.form dl:nth-child(n+2) {
  margin-top: 4vw;
}

.form dt {
  position: relative;
  margin-bottom: 0.5em;
  color: #333333;
  font-size: 4vw;
  font-weight: 500;
  line-height: 1.25em;
}

.form dd {
  position: relative;
  margin-top: 1.3333333333vw;
}

.form input[type=text],
.form input[type=email],
.form input[type=tel],
.form input[type=date],
.form select {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1em;
  width: 100%;
  height: 13.3333333333vw;
  background-color: #ffffff;
  border-color: #e4e4e4;
  border-style: solid;
  border-width: 0.6666666667vw;
  border-radius: 2vw;
  color: #333333;
  font-family: "MPLUSRounded1c", sans-serif;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.02em;
}

.form .wpcf7-validates-as-required:not(.wpcf7-checkbox) {
  background-color: #fdf8f8 !important;
}

.form textarea {
  padding: 1em;
  width: 100%;
  height: 57.3333333333vw;
  background-color: #ffffff;
  border-color: #e4e4e4;
  border-style: solid;
  border-width: 0.6666666667vw;
  border-radius: 2vw;
  font-family: "MPLUSRounded1c", sans-serif;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.02em;
  resize: none;
}

.form-label {
  position: relative;
}
.form-label:before {
  content: "*";
  position: absolute;
  top: 0;
  left: -0.5em;
  color: #ea5550;
  font-weight: 400;
}

.form-hosoku {
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 0.5em;
  font-size: 3.4666666667vw;
  line-height: 1.6em;
}

.form-hosoku:before {
  content: "※";
}

@media all and (max-width: 750px) {
  .contact-form {
    margin-left: -2.5333333333vw;
    width: 95.2vw;
  }
  .form input[type=text],
  .form input[type=email],
  .form input[type=tel],
  .form input[type=date],
  .form select,
  .form textarea {
    font-size: max(4.5vw, 16px);
  }
}
@media all and (min-width: 751px) {
  .contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .contact-content {
    width: 29.8611111111vw;
  }
  .contact-form {
    margin: 0;
    border-radius: 1.3888888889vw;
  }
  .contact .contact-form {
    padding: 2.0833333333vw 2.0833333333vw 3.4722222222vw 2.0833333333vw;
    width: 36.1111111111vw;
  }
  .seminar-form .contact-form {
    margin: 0 auto;
    padding: 3.4722222222vw 4.1666666667vw;
    width: 55.5555555556vw;
  }
  .form dl:nth-child(n+2) {
    margin-top: 1.3888888889vw;
  }
  .form dt {
    font-size: 1.1111111111vw;
  }
  .form dd {
    margin-top: 0;
  }
  .form input[type=text],
  .form input[type=email],
  .form input[type=tel],
  .form input[type=date],
  .form select {
    height: 4.1666666667vw;
    border-width: 0.2083333333vw;
    border-radius: 0.6944444444vw;
    font-size: 1.1111111111vw;
    line-height: 1.65em;
  }
  .form textarea {
    height: 13.8888888889vw;
    border-width: 0.2083333333vw;
    border-radius: 0.6944444444vw;
    font-size: 1.1111111111vw;
    line-height: 1.65em;
  }
  .form-label:before {
    left: -1em;
  }
  .form-hosoku {
    font-size: 0.9722222222vw;
  }
}
@media all and (min-width: 1441px) {
  .contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .contact-content {
    width: 430px;
  }
  .contact-form {
    border-radius: 20px;
  }
  .contact .contact-form {
    padding: 30px 30px 50px 30px;
    width: 520px;
  }
  .seminar-form .contact-form {
    padding: 50px 60px;
    width: 800px;
  }
  .contact-form > p {
    text-indent: -1em;
  }
  .form dl:nth-child(n+2) {
    margin-top: 20px;
  }
  .form dt {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .form input[type=text],
  .form input[type=email],
  .form input[type=tel],
  .form input[type=date],
  .form select {
    height: 60px;
    border-width: 3px;
    border-radius: 10px;
    font-size: 16px;
    line-height: 1.65em;
  }
  .form textarea {
    height: 200px;
    border-width: 3px;
    border-radius: 10px;
    font-size: 16px;
  }
  .form-hosoku {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
/* ---------------------------------- select */
.form-select {
  position: relative;
}

.form-select:before {
  content: "";
  position: absolute;
  top: 5.7333333333vw;
  right: 3.0666666667vw;
  display: inline-block;
  width: 3.2vw;
  height: 2.6666666667vw;
  background-image: url(../img/page/select.svg);
  background-size: contain;
  pointer-events: none;
  z-index: 1;
}

.form select {
  width: 100%;
}

@media all and (min-width: 751px) {
  .form-select:before {
    top: 1.7361111111vw;
    right: 1.0416666667vw;
    width: 0.8333333333vw;
    height: 0.6944444444vw;
  }
}
@media all and (min-width: 1441px) {
  .form-select:before {
    top: 25px;
    right: 15px;
    width: 12px;
    height: 10px;
  }
}
/* ---------------------------------- date */
.form-dates > div:nth-child(n+2) {
  margin-top: 4.6666666667vw;
}

.form-date-head {
  margin-bottom: 0.5em;
  font-weight: 500;
  line-height: 1.25em;
}

.form-date-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2.6666666667vw;
}

.form-date02 .form-date-time {
  display: block;
  width: 100%;
}

.form-date-time > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40.2666666667vw;
}

.form-date-time > div .form-select {
  width: 34.6666666667vw;
}

.form-date02 .form-date-time > div,
.form-date02 .form-date-time > div .form-select {
  display: block;
  width: 100% !important;
}

.form-date-time div:nth-child(n+2) {
  margin-left: 4vw;
}

@media all and (min-width: 751px) {
  .form-dates > div:nth-child(n+2) {
    margin-top: 1.3888888889vw;
  }
  .form-date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .form-date-calendar {
    width: 15.625vw;
  }
  .seminar-form .form-date-calendar {
    width: 30.9027777778vw;
  }
  .form-date-time {
    margin: 0 0 0 0.6944444444vw;
    width: 15.625vw;
  }
  .form-date02 .form-date-time {
    width: 15.2777777778vw;
  }
  .form-date-time > div {
    width: 7.2916666667vw;
  }
  .form-date02 .form-date-time > div {
    width: 100% !important;
  }
  .form-date-time > div .form-select {
    width: 5.5555555556vw;
  }
  .form-date02 .form-date-time > div .form-select {
    width: 100% !important;
  }
  .form-date-time div:nth-child(n+2) {
    margin-left: 1.0416666667vw;
  }
}
@media all and (min-width: 1441px) {
  .form-dates > div:nth-child(n+2) {
    margin-top: 20px;
  }
  .form-date-calendar {
    width: 225px;
  }
  .seminar-form .form-date-calendar {
    width: 445px;
  }
  .form-date-time {
    margin-left: 10px;
    width: 225px;
  }
  .form-date02 .form-date-time {
    width: 220px;
  }
  .form-date-time > div {
    width: 105px;
  }
  .form-date-time > div .form-select {
    width: 80px;
  }
  .form-date-time div:nth-child(n+2) {
    margin-left: 15px;
  }
}
/* ---------------------------------- people */
.form-people {
  margin-top: 4vw;
}

@media all and (min-width: 751px) {
  .form-people {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 1.3888888889vw;
  }
  .form-people dl {
    -ms-flex-preferred-size: 48%;
        flex-basis: 48%;
  }
  .form .form-people dl {
    margin-top: 0;
  }
}
@media all and (min-width: 1441px) {
  .form-people {
    margin-top: 20px;
  }
}
/* ---------------------------------- placeholder */
.form input::-webkit-input-placeholder,
.form select::-webkit-input-placeholder,
.form textarea::-webkit-input-placeholder {
  color: #cccccc;
}

.form input:-ms-input-placeholder,
.form select:-ms-input-placeholder,
.form textarea:-ms-input-placeholder,
.form input::-ms-input-placeholder,
.form textarea::-ms-input-placeholder {
  color: #cccccc;
}

.form input::-moz-placeholder,
.form select::-moz-placeholder,
.form textarea::-moz-placeholder {
  color: #cccccc;
}

/* ---------------------------------- radio & checkbox */
.form-consent {
  margin-top: 4vw;
  text-align: center;
}

.form-consent .formErrorContent {
  text-align: center;
}

.form .wpcf7-radio,
.form .wpcf7-checkbox,
.form-consent .wpcf7-checkbox {
  display: block;
  margin: 0 0 4vw -8vw;
  width: calc(100% + 8vw);
}

.form .wpcf7-radio .wpcf7-list-item,
.form .wpcf7-checkbox .wpcf7-list-item,
.form-consent .wpcf7-checkbox .wpcf7-list-item {
  margin: 4vw 0 0 8vw;
}

.form .wpcf7-radio input[type=radio],
.form .wpcf7-checkbox input[type=checkbox],
.form-consent .wpcf7-checkbox input[type=checkbox] {
  width: 0;
  height: 0;
  visibility: hidden;
  opacity: 0;
}

.form input[type=radio] + span,
.form input[type=checkbox] + span,
.form-consent input[type=checkbox] + span {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 10vw;
  height: 6.6666666667vw;
  font-size: 3.7333333333vw;
  font-weight: 500;
  cursor: pointer;
}

.form input[type=radio] + span::before,
.form input[type=checkbox] + span::before,
.form-consent input[type=checkbox] + span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 6.6666666667vw;
  height: 6.6666666667vw;
  background-color: #ffffff;
  border-color: #e4e4e4;
  border-style: solid;
  border-width: 0.6666666667vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.form input[type=radio] + span::before {
  border-radius: 50% !important;
}

.form input[type=checkbox] + span::before,
.form-consent input[type=checkbox] + span::before {
  border-radius: 2.1333333333vw;
}

.form input[type=radio]:checked + span::after,
.form input[type=checkbox]:checked + span::after,
.form-consent input[type=checkbox]:checked + span::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
}

.form input[type=radio]:checked + span::after {
  left: 2.1333333333vw;
  width: 3.7333333333vw;
  height: 3.7333333333vw;
  background-color: #e4831a;
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.form input[type=checkbox]:checked + span::after,
.form-consent input[type=checkbox]:checked + span::after {
  left: 1.3333333333vw;
  margin-top: -0.2em;
  width: 4vw;
  height: 2vw;
  border-left: 1.3333333333vw solid #e4831a;
  border-bottom: 1.3333333333vw solid #e4831a;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

@media all and (min-width: 751px) {
  .form-consent {
    margin-top: 2.0833333333vw;
  }
  .form .wpcf7-radio,
  .form .wpcf7-checkbox,
  .form-consent .wpcf7-checkbox {
    margin: -0.6944444444vw 0 0.6944444444vw -2.7777777778vw;
    width: calc(100% + 2.7777777778vw);
  }
  .form .wpcf7-radio .wpcf7-list-item,
  .form .wpcf7-checkbox .wpcf7-list-item {
    margin: 1.7361111111vw 0 0 2.7777777778vw;
  }
  .form-consent .wpcf7-checkbox .wpcf7-list-item {
    margin: 1.0416666667vw 0 0 2.7777777778vw;
  }
  .form input[type=radio] + span,
  .form input[type=checkbox] + span,
  .form-consent input[type=checkbox] + span {
    padding-left: 3.125vw;
    height: 2.0833333333vw;
    font-size: 1.1111111111vw;
  }
  .form input[type=radio] + span::before,
  .form input[type=checkbox] + span::before,
  .form-consent input[type=checkbox] + span::before {
    width: 2.0833333333vw;
    height: 2.0833333333vw;
    border-width: 0.2083333333vw;
  }
  .form input[type=checkbox] + span::before,
  .form-consent input[type=checkbox] + span::before {
    border-radius: 0.5555555556vw;
  }
  .form input[type=radio]:checked + span::after {
    left: 0.625vw;
    width: 1.25vw;
    height: 1.25vw;
  }
  .form input[type=checkbox]:checked + span::after,
  .form-consent input[type=checkbox]:checked + span::after {
    left: 0.4166666667vw;
    width: 1.3888888889vw;
    height: 0.6944444444vw;
    border-left: 0.3472222222vw solid #e4831a;
    border-bottom: 0.3472222222vw solid #e4831a;
  }
}
@media all and (min-width: 1441px) {
  .form-consent {
    margin-top: 30px;
  }
  .form .wpcf7-radio,
  .form .wpcf7-checkbox,
  .form-consent .wpcf7-checkbox {
    margin: -10px 0 10px -40px;
    width: calc(100% + 40px);
  }
  .form .wpcf7-radio .wpcf7-list-item,
  .form .wpcf7-checkbox .wpcf7-list-item {
    margin: 25px 0 0 40px;
  }
  .form-consent .wpcf7-checkbox .wpcf7-list-item {
    margin: 15px 0 0 40px;
  }
  .form input[type=radio] + span,
  .form input[type=checkbox] + span,
  .form-consent input[type=checkbox] + span {
    padding-left: 45px;
    height: 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .form input[type=radio] + span::before,
  .form input[type=checkbox] + span::before,
  .form-consent input[type=checkbox] + span::before {
    width: 30px;
    height: 30px;
    border-width: 3px;
  }
  .form input[type=checkbox] + span::before,
  .form-consent input[type=checkbox] + span::before {
    border-radius: 8px;
  }
  .form input[type=radio]:checked + span::after {
    left: 9px;
    width: 18px;
    height: 18px;
  }
  .form input[type=checkbox]:checked + span::after,
  .form-consent input[type=checkbox]:checked + span::after {
    left: 6px;
    width: 20px;
    height: 10px;
    border-left: 5px solid #e4831a;
    border-bottom: 5px solid #e4831a;
  }
}
/* ---------------------------------- btn */
.form-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 9.3333333333vw auto 0 auto;
  width: 100%;
  height: 14.6666666667vw;
  background-color: #126fb4;
  border-color: #126fb4;
  border-style: solid;
  border-width: 0.8vw;
  border-radius: 8vw;
  cursor: pointer;
  z-index: 1;
}

.form-btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 3.3333333333vw;
  display: inline-block;
  width: 1.8666666667vw;
  height: 3.3333333333vw;
  background-size: contain;
  background-image: url(../img/common/arrow-wh.svg);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 2;
}

.form-submit {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  color: #ffffff;
  font-family: "MPLUSRounded1c", sans-serif;
  font-size: 4vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.25em;
  z-index: 2;
}

.form-btn:hover {
  opacity: 0.8;
}

@media all and (min-width: 751px) {
  .form-btn {
    margin-top: 3.4722222222vw;
    width: 25vw;
    height: 4.8611111111vw;
    border-width: 0.2777777778vw;
    border-radius: 3.4722222222vw;
    -webkit-transition: background-color 0.4s, color 0.4s;
    transition: background-color 0.4s, color 0.4s;
  }
  .form-btn:after {
    right: 1.3888888889vw;
    width: 0.6944444444vw;
    height: 1.25vw;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .form-submit {
    font-size: 1.25vw;
  }
  .form-btn:hover {
    background-color: #ffffff;
  }
  .form-btn:hover:after {
    background-image: url(../img/common/arrow-bl.svg);
    -webkit-transform: translateX(0.2em) translateY(-50%);
            transform: translateX(0.2em) translateY(-50%);
  }
  .form-btn:hover .form-submit {
    color: #126fb4;
  }
}
@media all and (min-width: 1441px) {
  .form-btn {
    margin-top: 50px;
    width: 360px;
    height: 70px;
    border-width: 4px;
    border-radius: 50px;
  }
  .form-btn:after {
    right: 20px;
    width: 10px;
    height: 18px;
  }
  .form-submit {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
/* ---------------------------------- レイアウト崩れ防止 */
div.wpcf7 .ajax-loader,
.wpcf7-spinner {
  display: none !important;
}

/* ---------------------------------- エラー表示 */
.wpcf7-response-output {
  margin: 2em 0 0 0 !important;
  padding: 1em !important;
  width: 100%;
  text-align: center;
  line-height: 1.25em;
}

.wpcf7-form-control-wrap span.wpcf7-not-valid-tip {
  display: none !important;
}

.form-checkbox-req .wpcf7-form-control-wrap span.wpcf7-not-valid-tip,
.form-consent .wpcf7-form-control-wrap span.wpcf7-not-valid-tip {
  display: block !important;
}

span.wpcf7-form-control-wrap {
  position: static;
}

.wpcf7-validation-errors {
  padding: 1em !important;
  border: 1px solid #126fb4 !important;
}

.wpcf7-not-valid-tip {
  margin-top: 0.75em;
}

.wpcf7-not-valid-tip,
.formError .formErrorContent {
  color: #dc3232;
  font-size: 3.2vw !important;
}

.wpcf7-response-output {
  font-size: 2.9333333333vw;
}

@media all and (min-width: 751px) {
  .wpcf7-not-valid-tip,
  .formError .formErrorContent {
    font-size: 0.9027777778vw !important;
  }
  .wpcf7-response-output {
    font-size: 0.9722222222vw !important;
  }
}
@media all and (min-width: 1441px) {
  .wpcf7-not-valid-tip,
  .formError .formErrorContent {
    font-size: 13px;
    font-size: 1.3rem !important;
  }
  .wpcf7-response-output {
    font-size: 14px;
    font-size: 1.4rem !important;
  }
}
/*  float
-------------------------------------------------------*/
.float {
  position: fixed;
  right: 0.6944444444vw;
  bottom: 6.25vw;
  display: none;
  z-index: 666;
}

.float > a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-color: #ffffff;
  border-style: solid;
  border-width: 0.2777777778vw;
  border-radius: 50%;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
  -webkit-transition: background-color 0.4s, border-color 0.4s;
  transition: background-color 0.4s, border-color 0.4s;
}
.float > a span {
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}
.float > a:before {
  content: "";
  position: absolute;
  left: 50%;
  display: inline-block;
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.float > a:nth-child(1) {
  padding-top: 2.2222222222vw;
  width: 8.3333333333vw;
  height: 8.3333333333vw;
  background-color: #37ab05;
}
.float > a:nth-child(1) span {
  position: relative;
  font-size: 1.1111111111vw;
  text-indent: 0.75em;
  line-height: 1.2em;
}
.float > a:nth-child(1) span:before {
  content: "";
  position: absolute;
  top: 0.3472222222vw;
  left: -0.35em;
  display: inline-block;
  width: 0.9027777778vw;
  height: 0.625vw;
  background-image: url(../img/common/mail-wh.svg);
  background-size: contain;
}
.float > a:nth-child(1):before {
  top: 1.0416666667vw;
  width: 3.1944444444vw;
  height: 2.0833333333vw;
  background-image: url(../img/common/smile-wh.svg);
}
.float > a:nth-child(1):hover {
  background-color: #ffffff;
  border-color: #37ab05;
}
.float > a:nth-child(1):hover span {
  color: #37ab05;
}
.float > a:nth-child(1):hover span:before {
  background-image: url(../img/common/mail-gr.svg);
}
.float > a:nth-child(1):hover:before {
  background-image: url(../img/common/smile-gr.svg);
}

@media all and (min-width: 1441px) {
  .float {
    right: 10px;
    bottom: 90px;
  }
  .float > a {
    border-width: 4px;
  }
  .float > a:nth-child(1) {
    padding-top: 32px;
    width: 120px;
    height: 120px;
  }
  .float > a:nth-child(1) span {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .float > a:nth-child(1) span:before {
    top: 5px;
    width: 13px;
    height: 9px;
  }
  .float > a:nth-child(1):before {
    top: 15px;
    width: 46px;
    height: 30px;
  }
}
@media all and (max-width: 750px) {
  .float {
    display: none !important;
  }
}
/*  fixed
-------------------------------------------------------*/
.fixed {
  position: fixed;
  left: 0;
  bottom: 0;
  display: none;
  width: 100%;
  height: 16vw;
  z-index: 6666;
}

.fixed ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.fixed ul > li {
  padding: 0 0.6666666667vw;
  width: 100%;
}

.fixed ul > li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 16vw;
}
.fixed ul > li a span {
  position: relative;
  display: inline-block;
  color: #ffffff;
  font-size: 4.8vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.15em;
}
.fixed ul > li a span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.fixed ul > li:nth-child(1) {
  background-color: #37ab05;
}
.fixed ul > li:nth-child(1) span {
  padding-left: 9.3333333333vw;
}
.fixed ul > li:nth-child(1) span:before {
  width: 5.3333333333vw;
  height: 3.7333333333vw;
  background-image: url(../img/common/mail-wh.svg);
}

@media all and (min-width: 751px) {
  .fixed {
    display: none !important;
  }
}
/*  front - #hero
-------------------------------------------------------------------------------*/
.sec--store {
  padding: 8vw 0 13.3333333333vw 0;
}
.sec--store:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 100%;
  height: 32vw;
  background-image: url(../img/store/city.svg);
  background-size: auto 32vw;
  background-repeat: repeat-x;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 0.55;
}

.store-name {
  position: relative;
  margin-bottom: 4vw;
  padding: 9.3333333333vw 0 6.6666666667vw 0;
  color: #126fb4;
  font-size: 6.9333333333vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.15em;
  letter-spacing: 0.05em;
}
.store-name:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: inline-block;
  width: 20.9333333333vw;
  height: 6.4vw;
  background-image: url(../img/common/mark-s.svg);
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.store-name:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 79.2vw;
  height: 3.0666666667vw;
  background-image: url(../img/common/line.svg);
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.store-slide {
  position: relative;
}

.store-slide > div {
  position: relative;
}

.store-slide .swiper-wrapper .swiper-slide {
  border-color: #ffffff;
  border-style: solid;
  border-width: 0.8vw;
  border-radius: 5.3333333333vw;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
  overflow: hidden;
}

.store-slide .swiper-wrapper .swiper-slide img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  height: 48vw;
}

#store-prev {
  left: -2.6666666667vw;
}

#store-next {
  right: -2.6666666667vw;
}

#store-pagination {
  margin-top: 4.6666666667vw;
}

.store {
  position: relative;
  margin-top: 8.6666666667vw;
  padding: 4.6666666667vw 2.6666666667vw 4vw 2.6666666667vw;
  background-color: #ffffff;
  border-radius: 1.3333333333vw;
}

.store-num {
  position: relative;
  padding-left: 20.6666666667vw;
  color: #126fb4;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  font-size: 9.7333333333vw;
  letter-spacing: 0;
}
.store-num:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  margin-top: 0.5333333333vw;
  width: 18.5333333333vw;
  height: 7.6vw;
  background-image: url(../img/common/label_sp.png);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.store-desc {
  margin: 1em 0;
  font-size: 3.4666666667vw;
  line-height: 1.5em;
  font-weight: 500;
}

.store-cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.3333333333vw;
  margin-top: 6.6666666667vw;
}

.store-cat > li {
  position: relative;
  display: block;
  padding: 9.3333333333vw 1.3333333333vw 0;
  height: 13.3333333333vw;
  background-color: #e4831a;
  border-radius: 0.6666666667vw;
  color: #ffffff;
  font-weight: 500;
  font-size: 2.1333333333vw;
  letter-spacing: 0;
}
.store-cat > li:before {
  content: "";
  position: absolute;
  left: 50%;
  display: inline-block;
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.store-cat--cat01:before {
  top: 2.2666666667vw;
  width: 7.7333333333vw;
  height: 6.5333333333vw;
  background-image: url(../img/store/icon01.svg);
}

.store-cat--cat02:before {
  top: 2.6666666667vw;
  width: 6.8vw;
  height: 5.4666666667vw;
  background-image: url(../img/store/icon02.svg);
}

.store-cat--cat03:before {
  top: 2.2666666667vw;
  width: 4.5333333333vw;
  height: 6.1333333333vw;
  background-image: url(../img/store/icon03.svg);
}

.store-cat--cat04:before {
  top: 2.4vw;
  width: 6.4vw;
  height: 6.1333333333vw;
  background-image: url(../img/store/icon04.svg);
}

.store-cat--cat05:before {
  top: 2.2666666667vw;
  width: 6.4vw;
  height: 6.1333333333vw;
  background-image: url(../img/store/icon05.svg);
}

.store-cat--cat06:before {
  top: 2vw;
  width: 6.5333333333vw;
  height: 5.8666666667vw;
  background-image: url(../img/store/icon06.svg);
}

.store-cat--cat07:before {
  top: 2vw;
  width: 6.5333333333vw;
  height: 5.8666666667vw;
  background-image: url(../img/store/icon07.svg);
}

.store-data dl {
  border-bottom: 1px solid #e4e4e4;
}

.store-data dl dt {
  position: relative;
  color: #126fb4;
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: 1.35em;
}
.store-data dl dt:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -3.3333333333vw;
  display: inline-block;
  width: 1.6vw;
  height: 3.2vw;
  background-image: url(../img/common/arrow.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.store-data dl dd {
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: 1.35em;
}

@media all and (max-width: 750px) {
  .store {
    margin-left: -2.5333333333vw;
    width: 95.2vw;
  }
  .store-slide .swiper-wrapper .swiper-slide {
    width: 81.6vw;
    height: 49.6vw;
  }
  .store-desc {
    text-align: center;
  }
  .store-data {
    margin-top: 2.6666666667vw;
  }
  .store-data dl {
    padding: 2.6666666667vw 3.3333333333vw;
  }
  .store-data dl dt {
    margin-bottom: 0.25em;
  }
}
@media all and (min-width: 751px) {
  .sec--store {
    padding: 4.1666666667vw 0 5.9027777778vw 0;
  }
  .sec--store:after {
    height: 16.6666666667vw;
    background-size: auto 16.6666666667vw;
  }
  .store-name {
    margin-bottom: 2.0833333333vw;
    padding: 4.1666666667vw 0 2.7777777778vw 0;
    font-size: 3.3333333333vw;
  }
  .store-name:before {
    width: 10.9027777778vw;
    height: 3.3333333333vw;
  }
  .store-name:after {
    width: 41.25vw;
    height: 1.5972222222vw;
  }
  .store-slide .swiper-wrapper .swiper-slide {
    border-width: 0.4166666667vw;
    border-radius: 2.7777777778vw;
  }
  .store-slide .swiper-wrapper .swiper-slide img {
    height: 37.5vw;
  }
  #store-prev {
    left: -9.0277777778vw;
  }
  #store-next {
    right: -9.0277777778vw;
  }
  #store-pagination {
    margin-top: 2.0833333333vw;
  }
  .store {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 2.0833333333vw;
    padding: 2.0833333333vw 1.7361111111vw;
    border-radius: 0.6944444444vw;
  }
  .store-info {
    width: 32.6388888889vw;
  }
  .store-num {
    padding-left: 7.9861111111vw;
    font-size: 3.3333333333vw;
  }
  .store-num:before {
    left: 0;
    margin-top: 0.1388888889vw;
    width: 7.2916666667vw;
    height: 3.0555555556vw;
    background-image: url(../img/common/label.png);
    background-image: image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
  }
  .store-desc {
    font-size: 0.9722222222vw;
  }
  .cta-btn.store-btn {
    width: 27.7777777778vw;
  }
  .cta-btn.store-btn .btn {
    height: 4.5138888889vw;
  }
  .store-cat {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0.4861111111vw;
    margin-top: 2.0833333333vw;
  }
  .store-cat > li {
    padding: 2.6388888889vw 0.5555555556vw 0;
    height: 3.8194444444vw;
    border-radius: 0.3472222222vw;
    font-size: 0.7638888889vw;
  }
  .store-cat--cat01:before {
    top: 0.4861111111vw;
    width: 2.1527777778vw;
    height: 1.8055555556vw;
  }
  .store-cat--cat02:before {
    top: 0.625vw;
    width: 1.9444444444vw;
    height: 1.5972222222vw;
  }
  .store-cat--cat03:before {
    top: 0.4861111111vw;
    width: 1.3194444444vw;
    height: 1.8055555556vw;
  }
  .store-cat--cat04:before {
    top: 0.5555555556vw;
    width: 1.8055555556vw;
    height: 1.7361111111vw;
  }
  .store-cat--cat05:before {
    top: 0.4861111111vw;
    width: 2.0138888889vw;
    height: 1.8055555556vw;
  }
  .store-cat--cat06:before {
    top: 0.5555555556vw;
    width: 1.9444444444vw;
    height: 1.6666666667vw;
  }
  .store-cat--cat07:before {
    top: 0.5555555556vw;
    width: 1.9444444444vw;
    height: 1.6666666667vw;
  }
  .store-data {
    width: 31.25vw;
  }
  .store-data dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 3.8194444444vw;
  }
  .store-data dl dt {
    padding-left: 1.0416666667vw;
    width: 7.6388888889vw;
    font-size: 1.1111111111vw;
  }
  .store-data dl dt:before {
    left: 0;
    width: 0.4166666667vw;
    height: 0.8333333333vw;
  }
  .store-data dl dd {
    width: 24.6527777778vw;
    font-size: 1.1111111111vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--store {
    padding: 60px 0 85px 0;
  }
  .sec--store:after {
    height: 240px;
    background-size: auto 240px;
  }
  .store-name {
    margin-bottom: 30px;
    padding: 60px 0 40px 0;
    font-size: 48px;
    font-size: 4.8rem;
  }
  .store-name:before {
    width: 157px;
    height: 48px;
  }
  .store-name:after {
    width: 594px;
    height: 23px;
  }
  .store-slide .swiper-wrapper .swiper-slide {
    border-width: 6px;
    border-radius: 40px;
  }
  .store-slide .swiper-wrapper .swiper-slide img {
    height: 540px;
  }
  #store-prev {
    left: -130px;
  }
  #store-next {
    right: -130px;
  }
  #store-pagination {
    margin-top: 30px;
  }
  .store {
    margin-top: 30px;
    padding: 30px 25px;
    border-radius: 10px;
  }
  .store-info {
    width: 470px;
  }
  .store-num {
    padding-left: 115px;
    font-size: 48px;
    font-size: 4.8rem;
  }
  .store-num:before {
    margin-top: 2px;
    width: 105px;
    height: 44px;
  }
  .store-desc {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cta-btn.store-btn {
    width: 400px;
  }
  .cta-btn.store-btn .btn {
    height: 65px;
  }
  .store-cat {
    gap: 7px;
    margin-top: 30px;
  }
  .store-cat > li {
    padding: 38px 8px 0;
    height: 55px;
    border-radius: 5px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .store-cat--cat01:before {
    top: 7px;
    width: 31px;
    height: 26px;
  }
  .store-cat--cat02:before {
    top: 9px;
    width: 28px;
    height: 23px;
  }
  .store-cat--cat03:before {
    top: 7px;
    width: 19px;
    height: 26px;
  }
  .store-cat--cat04:before {
    top: 8px;
    width: 26px;
    height: 25px;
  }
  .store-cat--cat05:before {
    top: 7px;
    width: 29px;
    height: 26px;
  }
  .store-cat--cat06:before {
    top: 8px;
    width: 28px;
    height: 24px;
  }
  .store-cat--cat07:before {
    top: 8px;
    width: 28px;
    height: 24px;
  }
  .store-data {
    width: 450px;
  }
  .store-data dl {
    height: 55px;
  }
  .store-data dl dt {
    padding-left: 15px;
    width: 110px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .store-data dl dt:before {
    width: 6px;
    height: 12px;
  }
  .store-data dl dd {
    width: 355px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
/*  front - #seminar
-------------------------------------------------------------------------------*/
.sec--seminar {
  padding: 17.3333333333vw 0 13.3333333333vw 0;
}

.sec--seminar .sec-head span:before {
  background-image: url(../img/common/deco-bl.svg);
}

.sec--seminar .sec-btn {
  margin-top: 9.3333333333vw;
}

@media all and (max-width: 750px) {
  .sec--seminar .sec-btn .btn {
    height: 16vw;
    border-radius: 8vw;
  }
}
@media all and (min-width: 751px) {
  .sec--seminar {
    padding: 6.9444444444vw 0 4.8611111111vw 0;
  }
  .sec--seminar .sec-btn {
    margin-top: 4.1666666667vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--seminar {
    padding: 100px 0 70px 0;
  }
  .sec--seminar .sec-btn {
    margin-top: 60px;
  }
}
.seminar-pickup {
  margin-bottom: 8vw;
}

.seminar-pickup .seminar-post {
  width: 90%;
  margin: 0 auto;
}

.seminar-pickup .seminar-post a {
  padding: 8vw 6vw 5vw;
  border: 3px solid #e4831a;
}

.seminar-pickup .seminar-image {
  width: 100%;
}

.seminar-pickup .seminar-content {
  width: 100%;
}

.seminar-pickup .seminar-ttl {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.seminar-pickup .seminar-summary dl dt {
  width: 17vw;
  height: 6vw;
  font-size: 3vw;
}

.seminar-pickup .seminar-summary dl dd {
  margin-top: 2vw;
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
  line-height: 1.4;
}

@media all and (max-width: 750px) {
  .seminar-pickup .seminar-post a {
    display: block;
  }
  .seminar-pickup .seminar-summary dl {
    display: block;
  }
}
@media all and (min-width: 751px) {
  .sec--seminar.sec--seminar-wide .sec-in {
    width: auto;
    padding: 0 24px;
  }
  .sec--seminar-wide .seminar {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: 0;
    -webkit-column-gap: 1.3888888889vw;
       -moz-column-gap: 1.3888888889vw;
            column-gap: 1.3888888889vw;
  }
  .sec--seminar-wide .seminar-post {
    margin-left: 0;
    width: calc((100% - 2.7777777777vw) / 3);
  }
  .sec--seminar-wide .seminar-post:nth-child(n+3) {
    margin-top: 0;
  }
  .sec--seminar-wide .seminar-post:nth-child(n+4) {
    margin-top: 3.4722222222vw;
  }
  .sec--seminar-wide .seminar-post a {
    padding: 2vw 0.6944444444vw;
    border-radius: 1.3888888889vw;
  }
  .sec--seminar-wide .seminar-image {
    width: 9.26vw;
  }
  .sec--seminar-wide .seminar-image img {
    height: 9.26vw;
  }
  .sec--seminar-wide .seminar-content {
    width: calc(100% - 9.26vw - 10px);
  }
  .seminar-pickup {
    margin-bottom: 3vw;
  }
  .seminar-pickup .seminar-post {
    width: 50%;
    margin: 0 auto;
  }
  .seminar-pickup .seminar-post a {
    padding: 3vw 0.694vw 1.388vw;
    border: 4px solid #e4831a;
  }
  .seminar-pickup .seminar-image {
    width: 30%;
  }
  .seminar-pickup .seminar-content {
    width: calc(70% - 10px);
  }
  .seminar-pickup .seminar-ttl {
    font-size: 2vw;
  }
  .seminar-pickup .seminar-summary dl dt {
    width: 8vw;
    height: 26px;
    font-size: 1.2vw;
    border-radius: 13px;
  }
  .seminar-pickup .seminar-summary dl dd {
    margin-top: 0;
    width: calc(100% - 8vw - 10px);
    line-height: 1.3;
  }
}
@media all and (min-width: 1441px) {
  .sec--seminar.sec--seminar-wide .sec-in {
    width: 1300px;
    padding: 0 24px;
  }
  .sec--seminar-wide .seminar {
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
  .sec--seminar-wide .seminar-post {
    width: calc((100% - 40px) / 3);
  }
  .sec--seminar-wide .seminar-post:nth-child(n+4) {
    margin-top: 30px;
  }
  .sec--seminar-wide .seminar-post a {
    padding: 30px 10px 20px;
    border-radius: 20px;
  }
  .sec--seminar-wide .seminar-image {
    width: 150px;
  }
  .sec--seminar-wide .seminar-image img {
    height: 150px;
  }
  .sec--seminar-wide .seminar-content {
    width: calc(100% - 160px);
  }
  .seminar-pickup {
    margin-bottom: 50px;
  }
  .seminar-pickup .seminar-post {
    width: 50%;
    margin: 0 auto;
  }
  .seminar-pickup .seminar-post a {
    padding: 30px 10px 20px;
    border-radius: 20px;
  }
  .seminar-pickup .seminar-image {
    width: 37%;
  }
  .seminar-pickup .seminar-content {
    width: calc(63% - 15px);
  }
  .seminar-pickup .seminar-ttl {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .seminar-pickup .seminar-summary dl dt {
    width: 120px;
    height: 30px;
    border-radius: 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .seminar-pickup .seminar-summary dl dd {
    width: calc(100% - 130px);
    font-size: 18px;
    font-size: 1.8rem;
  }
}
/*  front - #blog
-------------------------------------------------------------------------------*/
.sec--blog {
  padding: 17.3333333333vw 0 13.3333333333vw 0;
}

.sec--blog .sec-head {
  color: #126fb4;
}
.sec--blog .sec-head span:before {
  background-image: url(../img/common/deco-og.svg);
}
.sec--blog .sec-btn {
  margin-top: 7.3333333333vw;
}

.blog-slide {
  position: relative;
}

.blog-slide .slide-off-wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 9.3333333333vw;
}

.blog-slide .slide-off {
  width: 60.5333333333vw !important;
}

#blog-prev {
  left: 2.6666666667vw;
}

#blog-next {
  right: 2.6666666667vw;
}

#blog-pagination {
  margin-top: 10.6666666667vw;
}

@media all and (max-width: 750px) {
  .blog-image img {
    height: 49.8666666667vw !important;
  }
}
@media all and (min-width: 751px) {
  .sec--blog {
    padding: 9.7222222222vw 0 6.9444444444vw 0;
  }
  .sec--blog .sec-head:before {
    content: "";
    position: absolute;
    top: -6.9444444444vw;
    right: -5.5555555556vw;
    display: inline-block;
    width: 13.3333333333vw;
    height: 19.0972222222vw;
    background-image: url(../img/blog/illust.svg);
    background-size: contain;
  }
  .sec--blog .sec-btn {
    margin-top: 3.4722222222vw;
  }
  .blog-frt {
    margin-left: -12.9166666667vw;
    width: 95.2777777778vw;
  }
  .blog-slide .swiper-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    height: auto;
  }
  .blog-slide .slide-off-wrapper {
    gap: 0 2.7777777778vw;
  }
  .blog-slide .slide-off {
    width: 22.9861111111vw !important;
  }
  .blog-slide .swiper-wrapper .blog-post {
    width: calc(25% - 3.0555555556vw);
  }
  #blog-prev,
  #blog-next,
  #blog-pagination {
    display: none;
  }
}
@media all and (min-width: 1441px) {
  .sec--blog {
    padding: 140px 0 100px 0;
  }
  .sec--blog .sec-head:before {
    top: -100px;
    right: -80px;
    width: 192px;
    height: 275px;
  }
  .sec--blog .sec-btn {
    margin-top: 50px;
  }
  .blog-frt {
    margin-left: -186px;
    width: 1372px;
  }
  .blog-slide .slide-off-wrapper {
    gap: 0 40px;
  }
  .blog-slide .slide-off {
    width: 331px !important;
  }
  .blog-slide .swiper-wrapper .blog-post {
    width: calc(25% - 44px);
  }
  #blog-prev {
    left: -30px;
  }
  #blog-next {
    right: -30px;
  }
  #blog-pagination {
    margin-top: 50px;
  }
}
/*  front - #voice
-------------------------------------------------------------------------------*/
.sec--voice {
  margin-top: 16vw;
  background-color: #e4831a;
}
.sec--voice:before {
  content: "";
  position: absolute;
  top: -8.9333333333vw;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 9.0666666667vw;
  background-image: url(../img/common/wave.png);
  background-size: auto 9.0666666667vw;
  background-repeat: repeat-x;
}

.sec-bg {
  position: relative;
  padding: 4vw 0 13.3333333333vw 0;
}
.sec-bg:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 98.6666666667vw;
  width: 0;
  height: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20vw 100vw;
  border-color: transparent transparent #fef3a7 transparent;
}
.sec-bg:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 98.6666666667vw;
  background-color: #fef3a7;
}

.sec--voice .sec-en {
  top: -0.35em;
  opacity: 0.1;
}
.sec--voice .sec-btn {
  margin-top: 8vw;
}

.voice-sec-head {
  position: relative;
  display: inline-block;
  margin-bottom: 8vw;
  padding: 0 0 4vw 0;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
  z-index: 2;
}
.voice-sec-head:before {
  content: "";
  position: absolute;
  top: 14.9333333333vw;
  left: -4vw;
  display: inline-block;
  width: 6.6666666667vw;
  height: 11.7333333333vw;
  background-image: url(../img/voice/microphone_sp.png);
  background-size: contain;
}
.voice-sec-head:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0.8vw;
  background-color: #e99c47;
}

.voice-sec-catch {
  margin-bottom: 0.5em;
  color: #ffffff;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.35em;
}

.voice-sec-jp {
  position: relative;
  display: inline-block;
  padding: 0 12.6666666667vw 0 4vw;
  color: #ffffff;
  font-size: 8.5333333333vw;
  font-style: italic;
  font-weight: 800;
  letter-spacing: 0.05em;
}
.voice-sec-jp:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 10.4vw;
  height: 8.4vw;
  background-image: url(../img/voice/house.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%) rotate(5deg);
          transform: translateY(-50%) rotate(5deg);
}

.voice-frt {
  position: relative;
}
.voice-frt:after {
  content: "";
  position: absolute;
  top: -64vw;
  right: -6.6666666667vw;
  display: inline-block;
  width: 35.7333333333vw;
  height: 52.2666666667vw;
  background-image: url(../img/voice/illust_sp.png);
  background-size: contain;
}

.voice-frt.is-show:after {
  -webkit-animation: moveleft 2s forwards;
          animation: moveleft 2s forwards;
}

.voice-slide {
  position: relative;
}

.voice-slide .slide-off-wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 13.3333333333vw;
}
.voice-slide .slide-off-wrapper .swiper-slide-active {
  -webkit-transform: none;
          transform: none;
}

.voice-slide .swiper-slide {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.6s;
  transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
}

.voice-slide .slide-off {
  width: 60.5333333333vw !important;
}

.voice-slide .swiper-slide-active {
  -webkit-transform: scale(1.1, 1.1);
          transform: scale(1.1, 1.1);
  z-index: 1;
}

#voice-prev {
  left: 5.3333333333vw;
}

#voice-next {
  right: 5.3333333333vw;
}

#voice-pagination {
  margin-top: 10.6666666667vw;
}

.voice-image img {
  display: block;
  margin: 0 auto;
  height: 53.0666666667vw !important;
}

@media all and (min-width: 751px) {
  .sec--voice {
    margin-top: 6.9444444444vw;
  }
  .sec--voice:before {
    top: -4.6527777778vw;
    height: 4.7222222222vw;
    background-image: image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-size: auto 4.7222222222vw;
  }
  .sec-bg {
    padding: 2.0833333333vw 0 6.9444444444vw 0;
  }
  .sec-bg:before {
    border-width: 0 0 8.3333333333vw 100vw;
    bottom: 37.5vw;
  }
  .sec-bg:after {
    height: 37.5vw;
  }
  .sec--voice .sec-btn {
    margin-top: 2.0833333333vw;
  }
  .voice-sec-head {
    margin-bottom: 3.4722222222vw;
    padding: 0 0 1.3888888889vw 3.4722222222vw;
  }
  .voice-sec-head:before {
    top: -0.3472222222vw;
    left: -1.3888888889vw;
    width: 3.8194444444vw;
    height: 6.6666666667vw;
    background-image: url(../img/voice/microphone.png);
    background-image: image-set(url(../img/voice/microphone.png) 1x, url(../img/voice/microphone-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/voice/microphone.png) 1x, url(../img/voice/microphone-2x.png) 2x);
  }
  .voice-sec-head:after {
    height: 0.4166666667vw;
  }
  .voice-sec-catch {
    font-size: 1.6666666667vw;
  }
  .voice-sec-jp {
    padding: 0 7.2916666667vw 0 0;
    font-size: 4.1666666667vw;
  }
  .voice-sec-jp:after {
    width: 5.4166666667vw;
    height: 4.375vw;
  }
  .voice-frt:after {
    top: -26.0416666667vw;
    right: 0;
    width: 23.6805555556vw;
    height: 32.5vw;
    background-image: url(../img/voice/illust.png);
    background-image: image-set(url(../img/voice/illust.png) 1x, url(../img/voice/illust-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/voice/illust.png) 1x, url(../img/voice/illust-2x.png) 2x);
  }
  .voice-slide .slide-off-wrapper {
    gap: 0 2.7777777778vw;
  }
  .voice-slide .slide-off {
    width: 22.9861111111vw !important;
  }
  #voice-prev {
    left: -7.6388888889vw;
  }
  #voice-next {
    right: -7.6388888889vw;
  }
  #voice-pagination {
    margin-top: 3.4722222222vw;
  }
  .voice-image img {
    width: 21.7361111111vw !important;
    height: 19.0277777778vw !important;
  }
}
@media all and (min-width: 1441px) {
  .sec--voice {
    margin-top: 100px;
  }
  .sec--voice:before {
    top: -68px;
    height: 68px;
    background-size: auto 68px;
  }
  .sec-bg {
    padding: 30px 0 100px 0;
  }
  .sec-bg:before {
    border-width: 0 0 120px 100vw;
    bottom: 540px;
  }
  .sec-bg:after {
    height: 540px;
  }
  .sec--voice .sec-btn {
    margin-top: 30px;
  }
  .voice-sec-head {
    margin-bottom: 50px;
    padding: 0 0 20px 50px;
  }
  .voice-sec-head:before {
    top: -5px;
    left: -20px;
    width: 55px;
    height: 96px;
  }
  .voice-sec-head:after {
    height: 6px;
  }
  .voice-sec-catch {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .voice-sec-jp {
    padding-right: 105px;
    font-size: 60px;
    font-size: 6rem;
  }
  .voice-sec-jp:after {
    width: 78px;
    height: 63px;
  }
  .voice-frt:after {
    top: -375px;
    width: 341px;
    height: 468px;
  }
  .voice-slide .slide-off-wrapper {
    gap: 0 40px;
  }
  .voice-slide .slide-off {
    width: 331px !important;
  }
  #voice-prev {
    left: -110px;
  }
  #voice-next {
    right: -110px;
  }
  #voice-pagination {
    margin-top: 50px;
  }
  .voice-image img {
    width: 313px !important;
    height: 274px !important;
  }
}
/*  front - #housing
-------------------------------------------------------------------------------*/
.sec--housing {
  padding: 17.3333333333vw 0 13.3333333333vw 0;
}

.sec--housing .sec-head span:before {
  background-image: url(../img/common/deco-bl.svg);
}

.sec--housing .sec-btn {
  margin-top: 8vw;
}

.housing-slide {
  position: relative;
}

.housing-slide .slide-off-wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 9.3333333333vw;
}

.housing-slide .slide-off {
  width: 60.5333333333vw !important;
}

.housing-slide-post a {
  position: relative;
  display: block;
  background-color: #ffffff;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}

.housing-slide-image {
  position: relative;
  overflow: hidden;
}

.housing-slide-image img {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  height: 54.1333333333vw;
}

.housing-slide-post a:hover .housing-slide-image img {
  -webkit-transform: scale(1.07, 1.07);
          transform: scale(1.07, 1.07);
  cursor: pointer;
}

.housing-slide-content {
  padding: 3.3333333333vw 4vw 9.3333333333vw 4vw;
}

.housing-slide-ttl {
  position: relative;
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}

.housing-slide-more {
  position: absolute;
  right: 3.3333333333vw;
  bottom: 4vw;
  display: inline-block;
  padding-right: 4.6666666667vw;
  color: #e4831a;
  font-size: 3.4666666667vw;
  font-weight: 700;
}
.housing-slide-more:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.6vw;
  height: 2.9333333333vw;
  background-image: url(../img/common/arrow-yo.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#housing-prev {
  left: 2.6666666667vw;
}

#housing-next {
  right: 2.6666666667vw;
}

#housing-pagination {
  margin-top: 10.6666666667vw;
}

@media all and (min-width: 751px) {
  .sec--housing {
    padding: 6.9444444444vw 0 4.8611111111vw 0;
  }
  .sec--housing .sec-btn {
    margin-top: 2.0833333333vw;
  }
  .housing-slide .slide-off-wrapper {
    gap: 0 2.7777777778vw;
  }
  .housing-slide .slide-off {
    width: 22.9861111111vw !important;
  }
  .housing-slide-image img {
    height: 16.9444444444vw;
  }
  .housing-slide-content {
    padding: 0.6944444444vw 1.3888888889vw 3.4722222222vw 1.3888888889vw;
  }
  .housing-slide-ttl {
    min-height: 2.66em;
    font-size: 1.25vw;
    line-height: 1.33em;
  }
  .housing-slide-more {
    right: 1.0416666667vw;
    bottom: 1.0416666667vw;
    padding-right: 1.3888888889vw;
    font-size: 1.0416666667vw;
  }
  .housing-slide-more:after {
    width: 0.5555555556vw;
    height: 1.0416666667vw;
  }
  .housing-slide-post a:hover .housing-slide-more:after {
    -webkit-transform: translateX(0.2em) translateY(-50%);
            transform: translateX(0.2em) translateY(-50%);
  }
  #housing-prev {
    left: -2.0833333333vw;
  }
  #housing-next {
    right: -2.0833333333vw;
  }
  #housing-pagination {
    margin-top: 3.4722222222vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--housing {
    padding: 100px 0 70px 0;
  }
  .sec--housing .sec-btn {
    margin-top: 30px;
  }
  .housing-slide .slide-off-wrapper {
    gap: 0 40px;
  }
  .housing-slide .slide-off {
    width: 331px !important;
  }
  .housing-slide-image img {
    height: 244px;
  }
  .housing-slide-content {
    padding: 10px 20px 50px 20px;
  }
  .housing-slide-ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .housing-slide-more {
    right: 15px;
    bottom: 15px;
    padding-right: 20px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .housing-slide-more:after {
    width: 8px;
    height: 15px;
  }
  #housing-prev {
    left: -30px;
  }
  #housing-next {
    right: -30px;
  }
  #housing-pagination {
    margin-top: 50px;
  }
}
/*  front - #staff
-------------------------------------------------------------------------------*/
.sec--staff {
  padding: 13.3333333333vw 0;
  background-image: url(../img/staff/bg.jpg);
  background-repeat: repeat;
}

.sec--staff .sec-head span:before {
  background-image: url(../img/common/deco-bl.svg);
}

.sec--staff .sec-btn {
  margin-top: 8vw;
}

#staff-slide .slide-off-wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 10.6666666667vw;
}

.staff-slide {
  position: relative;
}

.staff-slide .swiper-slide {
  position: relative;
  padding: 4vw 1.3333333333vw 1.3333333333vw 1.3333333333vw;
  background-color: #126fb4;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}
.staff-slide .swiper-slide a {
  display: block;
}

.staff-slide .slide-off {
  width: 56.5333333333vw !important;
}

.staff-slide-ttl {
  margin-bottom: 0.7em;
  color: #ffffff;
  font-size: 4.8vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.5em;
}

.staff-slide-image {
  overflow: hidden;
}
.staff-slide-image img {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  height: 53.3333333333vw;
  margin: 0 auto;
}

.staff-slide .swiper-slide a:hover .staff-slide-image img {
  -webkit-transform: scale(1.07, 1.07);
          transform: scale(1.07, 1.07);
  cursor: pointer;
}

#staff-prev {
  left: 2.6666666667vw;
}

#staff-next {
  right: 2.6666666667vw;
}

#staff-pagination {
  margin-top: 10.6666666667vw;
}

@media all and (min-width: 751px) {
  .sec--staff {
    padding: 6.9444444444vw 0;
  }
  .sec--staff:before {
    top: -4.6527777778vw;
    height: 4.7222222222vw;
    background-image: image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/wave.png) 1x, url(../img/common/wave-2x.png) 2x);
    background-size: auto 4.7222222222vw;
  }
  .sec--staff .sec-btn {
    margin-top: 2.0833333333vw;
  }
  #staff-slide .slide-off-wrapper {
    gap: 0 2.7777777778vw;
  }
  .staff-slide .swiper-slide {
    padding: 1.3888888889vw 0.6944444444vw 0.6944444444vw 0.6944444444vw;
  }
  .staff-slide .slide-off {
    width: 21.25vw !important;
  }
  .staff-slide-ttl {
    font-size: 1.6666666667vw;
  }
  .staff-slide-image img {
    height: 20.8333333333vw;
  }
  #staff-prev {
    left: -2.0833333333vw;
  }
  #staff-next {
    right: -2.0833333333vw;
  }
  #staff-pagination {
    margin-top: 3.4722222222vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--staff {
    padding: 100px 0;
  }
  .sec--staff:before {
    top: -68px;
    height: 68px;
    background-size: auto 68px;
  }
  .sec--staff .sec-btn {
    margin-top: 30px;
  }
  #staff-slide .slide-off-wrapper {
    gap: 0 40px;
  }
  .staff-slide .swiper-slide {
    padding: 20px 10px 10px 10px;
  }
  .staff-slide .slide-off {
    width: 306px !important;
  }
  .staff-slide-ttl {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .staff-slide-image img {
    height: 300px;
  }
  #staff-prev {
    left: -30px;
  }
  #staff-next {
    right: -30px;
  }
  #staff-pagination {
    margin-top: 50px;
  }
}
/*  front - #access
-------------------------------------------------------------------------------*/
.sec--access {
  padding: 17.3333333333vw 0 13.3333333333vw 0;
}

.sec--access .sec-head span:before {
  background-image: url(../img/common/deco-og.svg);
}

.access-map {
  margin-bottom: 5.3333333333vw;
  border-color: #ffffff;
  border-style: solid;
  border-width: 1.3333333333vw;
}

.access-add p {
  font-weight: 500;
  line-height: 1.8em;
}

.access-review {
  margin-top: 13.3333333333vw;
}

.access-review a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 5.3333333333vw;
  height: 34.6666666667vw;
  background-color: #ffffff;
  border-color: #e4831a;
  border-style: solid;
  border-width: 1.0666666667vw;
}
.access-review a:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  width: 56vw;
  height: 41.3333333333vw;
  background-image: url(../img/access/illust_sp.png);
  background-size: contain;
}
.access-review a p {
  font-size: 4.8vw;
  font-weight: 800;
  text-align: center;
  line-height: 1.35em;
}
.access-review a p span {
  color: #e4831a;
}

@media all and (max-width: 750px) {
  .access-map {
    margin-left: -4.9333333333vw;
    width: 100vw;
  }
}
@media all and (min-width: 751px) {
  .sec--access {
    padding: 6.9444444444vw 0;
  }
  .access {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .access > div:nth-child(n+2) {
    margin-left: 3.4722222222vw;
  }
  .access-map {
    margin-bottom: 0;
    width: 39.5833333333vw;
  }
  .access-map .ggmap {
    padding-bottom: 65%;
  }
  .access-content {
    width: 26.0416666667vw;
  }
  .access-map {
    border-width: 0.6944444444vw;
  }
  .access-review {
    margin-top: 3.4722222222vw;
  }
  .access-review a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 2.0833333333vw;
    height: 9.0277777778vw;
    border-width: 0.3472222222vw;
  }
  .access-review a:before {
    width: 14.5833333333vw;
    height: 10.7638888889vw;
    background-image: url(../img/access/illust.png);
    background-image: image-set(url(../img/access/illust.png) 1x, url(../img/access/illust-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/access/illust.png) 1x, url(../img/access/illust-2x.png) 2x);
  }
  .access-review a p {
    font-size: 1.4583333333vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--access {
    padding: 100px 0;
  }
  .access > div:nth-child(n+2) {
    margin-left: 50px;
  }
  .access-map {
    width: 570px;
  }
  .access-content {
    width: 375px;
  }
  .access-map {
    border-width: 10px;
  }
  .access-add p {
    font-weight: 500;
  }
  .access-review {
    margin-top: 50px;
  }
  .access-review a {
    padding: 0 30px;
    height: 130px;
    border-width: 5px;
  }
  .access-review a:before {
    width: 210px;
    height: 155px;
  }
  .access-review a p {
    font-size: 21px;
    font-size: 2.1rem;
  }
}
/*  front - #consul
-------------------------------------------------------------------------------*/
.sec--consul {
  padding: 17.3333333333vw 0 13.3333333333vw 0;
  background-color: #f8e1cc;
}

.sec--consul .sec-in:before {
  content: "";
  position: absolute;
  top: -25.3333333333vw;
  right: -6.6666666667vw;
  display: inline-block;
  width: 24vw;
  height: 24vw;
  background-image: url(../img/consultation/sun.svg);
  background-size: contain;
}

.sec--consul .sec-head span {
  color: #e4831a;
}
.sec--consul .sec-head span:before {
  background-image: url(../img/common/deco-bk.svg);
}

@media all and (min-width: 751px) {
  .sec--consul {
    padding: 6.9444444444vw 0 5.5555555556vw 0;
  }
  .sec--consul .sec-in:before {
    top: -8.3333333333vw;
    right: -4.1666666667vw;
    width: 12.5vw;
    height: 12.5vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--consul {
    padding: 100px 0 80px 0;
  }
  .sec--consul .sec-in:before {
    top: -120px;
    right: -60px;
    width: 180px;
    height: 180px;
  }
}
/* cta
-------------------------------------------------------------------------------*/
.cta {
  position: relative;
  margin: 0 auto;
  padding: 6.6666666667vw 0;
  width: 94.6666666667vw;
}
.cta:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  background-color: #e4831a;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.cta > div {
  position: relative;
  background-color: #ffffff;
  padding: 6.6666666667vw 4vw;
  border-radius: 8vw;
  z-index: 1;
}

.cta-logo {
  position: relative;
  margin: 0 auto 4vw auto;
  padding-bottom: 9.3333333333vw;
  width: 74.6666666667vw;
}
.cta-logo:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 20.9333333333vw;
  height: 6.4vw;
  background-image: url(../img/common/mark-s.svg);
  background-size: contain;
}

.cta-tel {
  position: relative;
}

.cta-num {
  position: relative;
  padding-left: 20.6666666667vw;
}
.cta-num:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 18.8vw;
  height: 8.1333333333vw;
  background-image: url(../img/common/label_sp.png);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.cta-num a,
.cta-num p {
  display: inline-block;
  color: #126fb4;
  font-family: "Lato", sans-serif;
  font-size: 9.6vw;
  font-weight: 900;
  letter-spacing: 0;
}

.cta-time {
  margin-top: 0.5em;
  color: #126fb4;
  font-size: 3.2vw;
  font-weight: 500;
  text-align: center;
}

@media all and (max-width: 750px) {
  .cta-logo:after {
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .cta-btn {
    margin-top: 4vw;
  }
  .cta-btn a {
    height: 16vw;
    border-radius: 8vw;
  }
  .cta-btn a span {
    font-size: 4.8vw;
  }
}
@media all and (min-width: 751px) {
  .cta {
    padding: 2.7777777778vw 0;
    width: 76.3888888889vw;
  }
  .cta > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2.0833333333vw 4.1666666667vw;
    border-radius: 4.1666666667vw;
  }
  .cta-contact {
    min-width: 40.2777777778vw;
  }
  .cta-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.0416666667vw;
    padding: 0 0 0 12.1527777778vw;
    width: 40.2777777778vw;
  }
  .cta-logo:after {
    top: 50%;
    left: 0;
    margin-top: -0.1388888889vw;
    width: 10.9027777778vw;
    height: 3.3333333333vw;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .cta-tel {
    padding-left: 8.6805555556vw;
  }
  .cta-num {
    padding-left: 0;
  }
  .cta-num:before {
    left: -9.375vw;
    width: 7.2916666667vw;
    height: 3.0555555556vw;
    background-image: url(../img/common/label.png);
    background-image: image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
  }
  .cta-num a,
  .cta-num p {
    font-size: 4.7222222222vw;
  }
  .cta-time {
    font-size: 1.25vw;
    text-align: left;
  }
  .cta-btn {
    width: 24.3055555556vw;
  }
  .cta-btn .btn {
    height: 5.4166666667vw;
    border-radius: 3.125vw;
  }
}
@media all and (min-width: 1441px) {
  .cta {
    padding: 40px 0;
    width: 1100px;
  }
  .cta > div {
    padding: 30px 60px;
    border-radius: 60px;
  }
  .cta-contact {
    min-width: 580px;
  }
  .cta-logo {
    margin-bottom: 15px;
    padding-left: 175px;
    width: 580px;
    height: 48px;
  }
  .cta-logo:after {
    margin-top: -2px;
    width: 157px;
    height: 48px;
  }
  .cta-tel {
    padding-left: 125px;
  }
  .cta-num:before {
    left: -125px;
    width: 105px;
    height: 44px;
  }
  .cta-num a,
  .cta-num p {
    font-size: 68px;
    font-size: 6.8rem;
  }
  .cta-time {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .cta-btn {
    width: 350px;
  }
  .cta-btn .btn {
    height: 78px;
    border-radius: 45px;
  }
}
/*  inquiry
-------------------------------------------------------------------------------*/
.sec--inquiry {
  padding-top: 13.3333333333vw;
}

.inquiry {
  position: relative;
  margin: 0 auto;
  width: 94.6666666667vw;
  z-index: 1;
}

.inquiry-ttl {
  position: relative;
  margin-left: 1.3333333333vw;
  width: 90.1333333333vw;
}
.inquiry-ttl:after {
  content: "";
  position: absolute;
  top: 14.6666666667vw;
  right: -2vw;
  display: inline-block;
  width: 11.2vw;
  height: 14.6666666667vw;
  background-image: url(../img/inquiry/mark.svg);
  background-size: contain;
}

.inquiry > div {
  position: relative;
  margin-top: 4vw;
  padding: 6.6666666667vw 4vw;
  background-color: #ffffff;
  border-radius: 8vw;
}

.inquiry-logo {
  position: relative;
  padding-bottom: 9.3333333333vw;
  width: 74.6666666667vw;
}
.inquiry-logo:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 20.9333333333vw;
  height: 6.4vw;
  background-image: url(../img/common/mark-s.svg);
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.inquiry-store-name {
  margin-top: 2.6666666667vw;
  font-weight: 700;
  text-align: center;
  color: #126fb4;
}

.inquiry-tel {
  position: relative;
}

.inquiry-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2.6666666667vw;
}

.inquiry-point > li {
  padding: 0.4em 1em;
  background-color: #e4831a;
  border-radius: 6.6666666667vw;
  color: #ffffff;
  font-size: 3.7333333333vw;
  font-weight: 700;
}

.inquiry-point > li:nth-child(n+2) {
  margin-left: 2vw;
}

.inquiry-num {
  position: relative;
  padding-left: 20.6666666667vw;
}
.inquiry-num:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 18.8vw;
  height: 8.1333333333vw;
  background-image: url(../img/common/label_sp.png);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.inquiry-num a,
.inquiry-num p {
  display: inline-block;
  color: #126fb4;
  font-family: "Lato", sans-serif;
  font-size: 9.6vw;
  font-weight: 900;
  letter-spacing: 0;
}

.inquiry-time {
  margin-top: 0.5em;
  color: #126fb4;
  font-size: 3.2vw;
  font-weight: 500;
  text-align: center;
}

.inquiry-navi {
  display: none;
}

@media all and (max-width: 750px) {
  .header .inquiry {
    margin-bottom: 4vw;
  }
  .inquiry-logo {
    margin: 0 auto 4vw auto;
  }
  .inquiry-point {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .inquiry-btn {
    margin-top: 4vw;
  }
  .inquiry-btn a {
    height: 16vw;
    border-radius: 8vw;
  }
  .inquiry-btn a span {
    font-size: 4.8vw;
  }
}
@media all and (min-width: 751px) {
  .sec--inquiry {
    padding-top: 8.3333333333vw;
  }
  .inquiry {
    width: 94.4444444444vw;
  }
  .inquiry-ttl {
    margin-left: 25.2083333333vw;
    width: 49.5138888889vw;
  }
  .inquiry-ttl:before {
    content: "";
    position: absolute;
    top: -3.8194444444vw;
    left: -4.0277777778vw;
    display: inline-block;
    width: 6.25vw;
    height: 7.0138888889vw;
    background-image: url(../img/inquiry/balloon.png);
    background-image: image-set(url(../img/inquiry/balloon.png) 1x, url(../img/inquiry/balloon-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/inquiry/balloon.png) 1x, url(../img/inquiry/balloon-2x.png) 2x);
    background-size: contain;
  }
  .inquiry-ttl:after {
    top: -1.3888888889vw;
    right: -1.875vw;
    width: 4.2361111111vw;
    height: 5.625vw;
  }
  .inquiry > div {
    margin-top: 2.4305555556vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.3888888889vw 3.125vw;
    border-radius: 4.1666666667vw;
  }
  .inquiry > div:after {
    content: "";
    position: absolute;
    top: -15.2777777778vw;
    left: 5.7638888889vw;
    display: inline-block;
    width: 15.2777777778vw;
    height: 19.0972222222vw;
    background-image: url(../img/inquiry/illust.svg);
    background-size: contain;
    z-index: -1;
  }
  .inquiry-logo {
    padding-bottom: 4.1666666667vw;
    width: 20.8333333333vw;
  }
  .inquiry-logo:after {
    width: 10.9027777778vw;
    height: 3.3333333333vw;
  }
  .inquiry-store-name {
    margin-top: 0.6944444444vw;
  }
  .inquiry-tel {
    padding-left: 7.9861111111vw;
    min-width: 33.3333333333vw;
  }
  .inquiry-point {
    margin-bottom: 0.3472222222vw;
  }
  .inquiry-point > li {
    border-radius: 2.0833333333vw;
    font-size: 1.1111111111vw;
  }
  .inquiry-point > li:nth-child(n+2) {
    margin-left: 0.6944444444vw;
  }
  .inquiry-num {
    padding-left: 0;
  }
  .inquiry-num:before {
    left: -7.9861111111vw;
    width: 7.2916666667vw;
    height: 3.0555555556vw;
    background-image: url(../img/common/label.png);
    background-image: image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
    background-image: -webkit-image-set(url(../img/common/label.png) 1x, url(../img/common/label-2x.png) 2x);
  }
  .inquiry-num a,
  .inquiry-num p {
    font-size: 3.75vw;
  }
  .inquiry-time {
    font-size: 1.0416666667vw;
    text-align: left;
  }
  .inquiry-navi {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 1.1111111111vw 0 1.1111111111vw 2.7777777778vw;
    width: 27.0833333333vw;
  }
  .inquiry-navi:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 0.2083333333vw;
    height: 100%;
    background-image: url(../img/inquiry/line.svg);
    background-size: 0.2083333333vw auto;
  }
  .inquiry-navi ul li:nth-child(n+2) {
    margin-top: 0.5em;
  }
  .inquiry-navi ul li a {
    position: relative;
    display: block;
    padding-left: 1.0416666667vw;
    color: #126fb4;
    font-size: 1.1111111111vw;
    font-weight: 500;
    -webkit-transition: color 0.4s;
    transition: color 0.4s;
  }
  .inquiry-navi ul li a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 0.4166666667vw;
    height: 0.8333333333vw;
    background-image: url(../img/common/arrow.svg);
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .inquiry-navi ul li a:hover {
    color: #e4831a;
  }
}
@media all and (min-width: 1441px) {
  .sec--inquiry {
    padding-top: 120px;
  }
  .inquiry {
    width: 1360px;
  }
  .inquiry-ttl {
    margin-left: 363px;
    width: 713px;
  }
  .inquiry-ttl:before {
    top: -55px;
    left: -58px;
    width: 90px;
    height: 101px;
  }
  .inquiry-ttl:after {
    top: -20px;
    right: -27px;
    width: 61px;
    height: 81px;
  }
  .inquiry > div {
    margin-top: 35px;
    padding: 30px 45px;
    border-radius: 60px;
  }
  .inquiry > div:after {
    top: -220px;
    left: 83px;
    width: 220px;
    height: 275px;
  }
  .inquiry-logo {
    padding-bottom: 60px;
    width: 300px;
  }
  .inquiry-logo:after {
    width: 157px;
    height: 48px;
  }
  .inquiry-store-name {
    margin-top: 10px;
  }
  .inquiry-tel {
    padding-left: 115px;
    min-width: 480px;
  }
  .inquiry-point {
    margin-bottom: 5px;
  }
  .inquiry-point > li {
    border-radius: 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .inquiry-point > li:nth-child(n+2) {
    margin-left: 10px;
  }
  .inquiry-num:before {
    left: -115px;
    width: 105px;
    height: 44px;
  }
  .inquiry-num a,
  .inquiry-num p {
    font-size: 54px;
    font-size: 5.4rem;
  }
  .inquiry-time {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .inquiry-navi {
    padding: 16px 0 16px 40px;
    width: 390px;
  }
  .inquiry-navi:before {
    width: 3px;
    background-size: 3px auto;
  }
  .inquiry-navi ul li a {
    padding-left: 15px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .inquiry-navi ul li a:before {
    width: 6px;
    height: 12px;
  }
}
/*  consul
-------------------------------------------------------------------------------*/
.consul-ttl {
  position: relative;
  margin-bottom: 0.5em;
  color: #e4831a;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.17em;
  letter-spacing: 0.05em;
}

.consul-desc p {
  line-height: 1.65em;
}
.consul-desc p:nth-child(n+2) {
  margin-top: 1.5em;
}

.consul-box {
  position: relative;
  margin-top: 6.6666666667vw;
  padding: 5.3333333333vw 4vw;
  background-color: #ffffff;
  border-color: #e4831a;
  border-style: solid;
  border-width: 0.8vw;
  border-radius: 2.6666666667vw;
}

.consul-box-ttl {
  margin-bottom: 1.2em;
  font-size: 5.0666666667vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.25em;
}
.consul-box-ttl:first-letter {
  color: #e4831a;
}

.consul-merit > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.consul-merit > li:nth-child(n+2) {
  margin-top: 4.6666666667vw;
}

.consul-merit-icon {
  position: relative;
  padding-top: 2.6666666667vw;
  width: 16vw;
  height: 16vw;
  background-color: #e4831a;
  border-radius: 50%;
}
.consul-merit-icon p {
  color: #ffffff;
  font-family: "Lato", sans-serif;
  font-size: 3.4666666667vw;
  font-weight: 900;
  text-align: center;
}
.consul-merit-icon:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 2.9333333333vw;
  display: inline-block;
  width: 8vw;
  height: 6.1333333333vw;
  background-image: url(../img/consultation/house.svg);
  background-size: contain;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.consul-merit-content {
  width: 60vw;
}

.consul-merit-ttl {
  font-size: 4.2666666667vw;
  font-weight: 700;
  line-height: 1.25em;
}

@media all and (min-width: 751px) {
  .consul-ttl {
    font-size: 2.5vw;
  }
  .consul-box {
    margin-top: 2.4305555556vw;
    padding: 2.0833333333vw 1.3888888889vw;
    border-width: 0.2777777778vw;
    border-radius: 1.3888888889vw;
  }
  .consul-box-ttl {
    font-size: 1.6666666667vw;
  }
  .consul-merit > li:nth-child(n+2) {
    margin-top: 2.0833333333vw;
  }
  .consul-merit-icon {
    padding-top: 0.6944444444vw;
    width: 4.1666666667vw;
    height: 4.1666666667vw;
  }
  .consul-merit-icon p {
    font-size: 0.9722222222vw;
  }
  .consul-merit-icon:before {
    bottom: 0.7638888889vw;
    width: 2.0833333333vw;
    height: 1.5972222222vw;
  }
  .consul-merit-content {
    width: 20.8333333333vw;
  }
  .consul-merit-ttl {
    font-size: 1.25vw;
  }
}
@media all and (min-width: 1441px) {
  .consul-ttl {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .consul-box {
    margin-top: 35px;
    padding: 30px 20px;
    border-width: 4px;
    border-radius: 20px;
  }
  .consul-box-ttl {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .consul-merit > li:nth-child(n+2) {
    margin-top: 30px;
  }
  .consul-merit-icon {
    padding-top: 10px;
    width: 60px;
    height: 60px;
  }
  .consul-merit-icon p {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .consul-merit-icon:before {
    bottom: 11px;
    width: 30px;
    height: 23px;
  }
  .consul-merit-content {
    width: 300px;
  }
  .consul-merit-ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
/*  first-intro
-------------------------------------------------------------------------------*/
.sec--first-intro {
  padding: 10.6666666667vw 0 13.3333333333vw 0;
}

.first-intro-ttl {
  margin-bottom: 1em;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.5em;
}
.first-intro-ttl span {
  display: inline-block;
  margin: 0 0.2em 0.3em 0;
  width: 73.4666666667vw;
}

.first-intro-desc p {
  font-weight: 500;
  line-height: 1.65em;
}

.first-intro-movie {
  position: relative;
  margin-top: 4.6666666667vw;
}

.first-intro-movie .youtube {
  border-color: #fff4a6;
  border-style: solid;
  border-width: 0.5333333333vw;
  border-radius: 5.3333333333vw;
}

.sec-btn-first-intro {
  margin-top: 9.3333333333vw;
}
.sec-btn-first-intro .btn--og {
  background-color: #e4831a;
  border-color: #e4831a;
}
.sec-btn-first-intro .btn--og:after {
  background-image: url(../img/common/arrow-wh.svg);
}
.sec-btn-first-intro span {
  padding-left: 9.3333333333vw;
  color: #ffffff;
}
.sec-btn-first-intro span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 4.2666666667vw;
  height: 6vw;
  background-image: url(../img/common/beginner-wh.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media all and (min-width: 751px) {
  .sec--first-intro {
    padding: 5.5555555556vw 0 6.9444444444vw 0;
  }
  .first-intro {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .first-intro-content {
    width: 34.0277777778vw;
  }
  .first-intro-ttl {
    font-size: 1.6666666667vw;
  }
  .first-intro-ttl span {
    width: 30.5555555556vw;
  }
  .first-intro-movie {
    margin-top: 0;
    width: 32.6388888889vw;
  }
  .first-intro-movie .youtube {
    border-width: 0.2777777778vw;
    border-radius: 2.7777777778vw;
  }
  .sec-btn-first-intro {
    margin-top: 4.1666666667vw;
  }
  .sec-btn-first-intro span {
    padding-left: 3.4722222222vw;
  }
  .sec-btn-first-intro span:before {
    width: 1.5277777778vw;
    height: 2.4305555556vw;
  }
  .sec-btn-first-intro:hover .btn--og {
    background-color: #ffffff;
  }
  .sec-btn-first-intro:hover .btn--og::after {
    background-image: url(../img/common/arrow-og.svg);
  }
  .sec-btn-first-intro:hover span {
    color: #e4831a;
  }
  .sec-btn-first-intro:hover span:before {
    background-image: url(../img/common/beginner-og.svg);
  }
}
@media all and (min-width: 1441px) {
  .sec--first-intro {
    padding: 80px 0 110px 0;
  }
  .first-intro-content {
    width: 490px;
  }
  .first-intro-ttl {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .first-intro-ttl span {
    width: 440px;
  }
  .first-intro-movie {
    width: 470px;
  }
  .first-intro-movie .youtube {
    border-width: 4px;
    border-radius: 40px;
  }
  .sec-btn-first-intro {
    margin-top: 60px;
  }
  .sec-btn-first-intro span {
    padding-left: 50px;
  }
  .sec-btn-first-intro span:before {
    width: 22px;
    height: 35px;
  }
}
/*  seminar --> archive
-------------------------------------------------------------------------------*/
.seminar-archive {
  position: relative;
}

.seminar-archive > div:nth-child(n+2) {
  margin-top: 16vw;
}

.seminar-post a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2vw;
  background-color: #ffffff;
  border-radius: 2.6666666667vw;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
  overflow: hidden;
}

.seminar-cat {
  position: absolute;
  top: 0;
  right: 2vw;
  padding: 0.4em 0.5em;
  background-color: #e4831a;
  border-radius: 0 0 0.6666666667vw 0.6666666667vw;
  color: #ffffff;
  font-size: 2.9333333333vw;
  font-weight: 700;
  letter-spacing: 0;
  z-index: 1;
}

.seminar-image {
  position: relative;
  width: 34.6666666667vw;
  overflow: hidden;
}
.seminar-image img {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  height: 31.2vw;
}

.seminar-post a:hover .seminar-image img {
  -webkit-transform: scale(1.07, 1.07);
          transform: scale(1.07, 1.07);
  cursor: pointer;
}

.seminar-content {
  width: 48vw;
}

.seminar-ttl {
  margin-bottom: 0.5em;
  font-size: 4.2666666667vw;
  font-weight: 700;
  line-height: 1.25em;
  letter-spacing: 0.05em;
}

.seminar-summary dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.seminar-summary dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 16vw;
  height: 5.3333333333vw;
  background-color: #126fb4;
  border-radius: 5.3333333333vw;
  color: #ffffff;
  font-size: 2.6666666667vw;
  font-weight: 500;
}
.seminar-summary dl dd {
  width: calc(100% - 18.6666666667vw);
  font-size: 3.2vw;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.seminar-summary dl:nth-child(n+2) {
  margin-top: 1.3333333333vw;
}

.seminar-overlay {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  background-color: rgba(76, 76, 76, 0.7);
  color: #ffffff;
  font-size: 4.2666666667vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.35em;
  z-index: 2;
}

@media all and (max-width: 750px) {
  .seminar-post:nth-child(n+2) {
    margin-top: 8vw;
  }
  .seminar-content {
    padding-top: 2vw;
  }
}
@media all and (min-width: 751px) {
  .seminar-archive > div:nth-child(n+2) {
    margin-top: 6.9444444444vw;
  }
  .seminar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -2.0833333333vw;
  }
  .seminar-post {
    margin-left: 2.0833333333vw;
    width: calc(50% - 2.0833333333vw);
  }
  .seminar-post:nth-child(n+3) {
    margin-top: 3.4722222222vw;
  }
  .seminar-post a {
    padding: 0.6944444444vw;
    border-radius: 1.3888888889vw;
  }
  .seminar-cat {
    right: 1.0416666667vw;
    border-radius: 0 0 0.3472222222vw 0.3472222222vw;
    font-size: 1.0416666667vw;
  }
  .seminar-image {
    width: 13.8888888889vw;
  }
  .seminar-image img {
    height: 12.5vw;
  }
  .seminar-content {
    width: 17.3611111111vw;
  }
  .seminar-ttl {
    margin-bottom: 0.7em;
    font-size: 1.3888888889vw;
  }
  .seminar-summary dl dt {
    width: 5.5555555556vw;
    height: 1.6666666667vw;
    border-radius: 2.0833333333vw;
    font-size: 0.9027777778vw;
  }
  .seminar-summary dl dd {
    width: calc(100% - 6.25vw);
    font-size: 1.0416666667vw;
  }
  .seminar-summary dl:nth-child(n+2) {
    margin-top: 0.6944444444vw;
  }
  .seminar-overlay {
    font-size: 1.6666666667vw;
  }
}
@media all and (min-width: 1441px) {
  .seminar-archive > div:nth-child(n+2) {
    margin-top: 100px;
  }
  .seminar {
    margin-left: -30px;
  }
  .seminar-post {
    margin-left: 30px;
    width: calc(50% - 30px);
  }
  .seminar-post:nth-child(n+3) {
    margin-top: 50px;
  }
  .seminar-post a {
    padding: 10px;
    border-radius: 20px;
  }
  .seminar-cat {
    right: 15px;
    border-radius: 0 0 5px 5px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .seminar-image {
    width: 200px;
  }
  .seminar-image img {
    height: 180px;
  }
  .seminar-content {
    width: 250px;
  }
  .seminar-ttl {
    font-size: 20px;
    font-size: 2rem;
  }
  .seminar-summary dl dt {
    width: 80px;
    height: 24px;
    border-radius: 30px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .seminar-summary dl dd {
    width: calc(100% - 90px);
    font-size: 15px;
    font-size: 1.5rem;
  }
  .seminar-summary dl:nth-child(n+2) {
    margin-top: 5px;
  }
  .seminar-overlay {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
/*  blog --> common
-------------------------------------------------------------------------------*/
/* ------------------------------------------- archive - */
.blog {
  position: relative;
}

.blog-post a {
  position: relative;
  display: block;
  background-color: #ffffff;
}

.blog-image {
  position: relative;
  overflow: hidden;
}
.blog-image img {
  display: block;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  height: 61.0666666667vw;
  margin: 0 auto;
}

.blog-post a:hover .blog-image img {
  -webkit-transform: scale(1.07, 1.07);
          transform: scale(1.07, 1.07);
  cursor: pointer;
}

.blog-content {
  position: relative;
  padding: 2.4vw 3.3333333333vw 9.3333333333vw 3.3333333333vw;
}

.blog-content-box {
  margin-bottom: 0.7em;
}

.blog-content-box .post-date {
  margin: 0 0 0 auto;
}

.blog-cat {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 2.6666666667vw 0.7em 0;
  padding: 0 0.75em;
  height: 5.3333333333vw;
  background-color: #126fb4;
  border-radius: 2.6666666667vw;
  color: #ffffff;
  font-size: 3.4666666667vw;
  font-weight: 500;
  letter-spacing: 0;
}

.blog-ttl {
  position: relative;
  min-height: 3em;
  font-size: 4.2666666667vw;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: 0.1em;
}

.blog-excerpt {
  margin-top: 0.5em;
}
.blog-excerpt p {
  font-size: 3.4666666667vw;
  line-height: 1.5em;
}

.blog-more {
  position: absolute;
  right: 3.3333333333vw;
  bottom: 4vw;
  display: inline-block;
  padding-right: 4.6666666667vw;
  color: #e4831a;
  font-size: 3.4666666667vw;
  font-weight: 700;
}
.blog-more:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.6vw;
  height: 2.9333333333vw;
  background-image: url(../img/common/arrow-yo.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media all and (max-width: 750px) {
  .blog .blog-post:nth-child(n+2) {
    margin-top: 8vw;
  }
}
@media all and (min-width: 751px) {
  .blog {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -3.0555555556vw;
  }
  .blog .blog-post {
    margin-left: 3.0555555556vw;
    width: calc(33.33333% - 3.0555555556vw);
  }
  .blog .blog-post:nth-child(n+4) {
    margin-top: 3.4722222222vw;
  }
  .blog-image img {
    width: 21.5277777778vw;
    height: 14.5833333333vw;
  }
  .blog-content {
    padding: 1.0416666667vw 1.0416666667vw 3.4722222222vw 1.0416666667vw;
  }
  .blog-cat {
    margin-right: 0.6944444444vw;
    padding: 0 0.75em;
    height: 1.8055555556vw;
    border-radius: 0.9027777778vw;
    font-size: 0.9722222222vw;
  }
  .blog-ttl {
    font-size: 1.25vw;
    line-height: 1.33em;
  }
  .blog-excerpt p {
    font-size: 0.9722222222vw;
  }
  .blog-more {
    right: 1.0416666667vw;
    bottom: 1.0416666667vw;
    padding-right: 1.3888888889vw;
    font-size: 1.0416666667vw;
  }
  .blog-more:after {
    width: 0.5555555556vw;
    height: 1.0416666667vw;
  }
  .blog-post a:hover .blog-more:after {
    -webkit-transform: translateX(0.2em) translateY(-50%);
            transform: translateX(0.2em) translateY(-50%);
  }
}
@media all and (min-width: 1441px) {
  .blog {
    margin-left: -44px;
  }
  .blog .blog-post {
    margin-left: 44px;
    width: calc(33.33333% - 44px);
  }
  .blog .blog-post:nth-child(n+4) {
    margin-top: 50px;
  }
  .blog-image img {
    width: 310px;
    height: 210px;
  }
  .blog-content {
    padding: 15px 15px 50px 15px;
  }
  .blog-cat {
    margin-right: 10px;
    height: 26px;
    border-radius: 13px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .blog-ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .blog-excerpt p {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .blog-more {
    right: 15px;
    bottom: 15px;
    padding-right: 20px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .blog-more:after {
    width: 8px;
    height: 15px;
  }
}
.sec--page .blog-menu {
  margin-bottom: 8vw;
}

.blog-menu > li > a {
  position: relative;
  display: block;
  padding: 16vw 3.3333333333vw 13.3333333333vw 3.3333333333vw;
  background-color: #ffffff;
  border-radius: 2.6666666667vw;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}

.blog-menu-catch {
  position: absolute;
  top: -5.3333333333vw;
  left: 50%;
  padding: 1em;
  min-width: 72vw;
  background-color: #126fb4;
  border-radius: 2.6666666667vw;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.blog-menu-catch p {
  color: #ffffff;
  font-size: 4.2666666667vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.33em;
}

.blog-menu-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 5.3333333333vw;
}

.blog-menu-ttl {
  color: #126fb4;
  font-size: 6.4vw;
  font-weight: 700;
  text-align: center;
}

.blog-menu-desc {
  margin-top: 1.2em;
}
.blog-menu-desc p {
  line-height: 1.5em;
}

.blog-menu-more {
  position: absolute;
  right: 3.3333333333vw;
  bottom: 4vw;
  display: inline-block;
  padding-right: 4.6666666667vw;
  color: #e4831a;
  font-size: 3.7333333333vw;
  font-weight: 700;
}
.blog-menu-more:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 1.6vw;
  height: 2.9333333333vw;
  background-image: url(../img/common/arrow-yo.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media all and (max-width: 750px) {
  .sec--page .blog-menu {
    margin-top: 5.3333333333vw;
  }
  .blog-menu > li:nth-child(n+2) {
    margin-top: 12vw;
  }
  .blog-menu-contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .blog-menu-image {
    min-height: 24vw;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .blog-menu--plan .blog-menu-image {
    width: 26.6666666667vw;
  }
  .blog-menu--search .blog-menu-image {
    width: 32.2666666667vw;
  }
  .blog-menu--choose .blog-menu-image {
    width: 38vw;
  }
  .blog-menu--type .blog-menu-image {
    width: 26.1333333333vw;
  }
  .blog-menu-ttl {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media all and (min-width: 751px) {
  .sec--page .blog-menu {
    margin-bottom: 4.8611111111vw;
  }
  .blog-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-left: -12.9166666667vw;
    width: 95.2777777778vw;
  }
  .blog-menu > li {
    width: 21.5277777778vw;
  }
  .blog-menu > li > a {
    padding: 5.5555555556vw 1.7361111111vw 4.8611111111vw 1.7361111111vw;
    border-radius: 1.3888888889vw;
  }
  .blog-menu > li > a:hover .blog-menu-more:after {
    -webkit-transform: translateX(0.2em) translateY(-50%);
            transform: translateX(0.2em) translateY(-50%);
  }
  .blog-menu-catch {
    top: -1.3888888889vw;
    min-width: 16.3194444444vw;
    border-radius: 1.3888888889vw;
  }
  .blog-menu-catch p {
    font-size: 1.25vw;
  }
  .blog-menu-image {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto 1.0416666667vw auto;
    width: 18.0555555556vw;
    height: 7.5694444444vw;
  }
  .blog-menu-ttl {
    font-size: 2.0833333333vw;
  }
  .blog-menu-more {
    right: 1.7361111111vw;
    bottom: 2.0833333333vw;
    padding-right: 1.7361111111vw;
    font-size: 1.1111111111vw;
  }
  .blog-menu-more:after {
    width: 0.6944444444vw;
    height: 1.25vw;
  }
}
@media all and (min-width: 1441px) {
  .sec--page .blog-menu {
    margin-bottom: 70px;
  }
  .blog-menu {
    margin-left: -186px;
    width: 1372px;
  }
  .blog-menu > li {
    width: 310px;
  }
  .blog-menu > li > a {
    padding: 80px 25px 70px 25px;
    border-radius: 20px;
  }
  .blog-menu-catch {
    top: -20px;
    min-width: 235px;
    border-radius: 20px;
  }
  .blog-menu-catch p {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .blog-menu-image {
    margin: 0 auto 15px auto;
    width: 260px;
    height: 109px;
  }
  .blog-menu-ttl {
    font-size: 30px;
    font-size: 3rem;
  }
  .blog-menu-more {
    right: 25px;
    bottom: 30px;
    padding-right: 25px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .blog-menu-more:after {
    width: 10px;
    height: 18px;
  }
}
/* ------------------------------------------- NEW - */
.blog-new {
  position: absolute;
  top: -1.3333333333vw;
  left: -1.3333333333vw;
  z-index: 1;
  width: 14.9333333333vw;
  height: 14.9333333333vw;
}
.blog-new::before {
  content: "";
  position: absolute;
  z-index: 1;
  border-bottom: 4em solid transparent;
  border-left: 4em solid #e4831a;
}
.blog-new::after {
  content: "NEW";
  position: absolute;
  top: 3.2vw;
  left: 0.8vw;
  z-index: 2;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  color: #ffffff;
}

.blog-new-shadow {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
}
.blog-new-shadow::before, .blog-new-shadow::after {
  content: "";
  position: absolute;
  width: 98%;
  height: 1.3333333333vw;
  background-color: #ae691e;
}
.blog-new-shadow::before {
  top: 0;
  left: 0.2666666667vw;
}
.blog-new-shadow::after {
  top: 6.9333333333vw;
  left: -6.6666666667vw;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

@media all and (min-width: 751px) {
  .blog-new {
    top: -0.3472222222vw;
    left: -0.3472222222vw;
    width: 3.8888888889vw;
    height: 3.8888888889vw;
  }
  .blog-new::after {
    top: 0.9027777778vw;
    left: 0.2777777778vw;
  }
  .blog-new-shadow::before, .blog-new-shadow::after {
    width: 100%;
    height: 0.3472222222vw;
  }
  .blog-new-shadow::before {
    left: 0.5555555556vw;
  }
  .blog-new-shadow::after {
    top: 2.2916666667vw;
    left: -1.7361111111vw;
  }
}
@media all and (min-width: 1441px) {
  .blog-new {
    top: -5px;
    left: -5px;
    width: 56px;
    height: 56px;
  }
  .blog-new::after {
    top: 13px;
    left: 4px;
  }
  .blog-new-shadow::before, .blog-new-shadow::after {
    height: 5px;
  }
  .blog-new-shadow::before {
    left: 8px;
  }
  .blog-new-shadow::after {
    top: 33px;
    left: -25px;
  }
}
/*  voice --> common
-------------------------------------------------------------------------------*/
/* ------------------------------------------- post - */
.voice-post a {
  position: relative;
  display: block;
  background-color: #ffffff;
  -webkit-box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
          box-shadow: 0px 8px 4.75px 0.25px rgba(0, 0, 0, 0.14);
}

.voice-image {
  position: relative;
  border-color: #ffffff;
  overflow: hidden;
}

.voice-image img {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  height: 65.3333333333vw;
}

.voice-post a:hover .voice-image img {
  -webkit-transform: scale(1.07, 1.07);
          transform: scale(1.07, 1.07);
  cursor: pointer;
}

.voice-content {
  padding: 3.3333333333vw 4vw 3.3333333333vw 4vw;
}

.voice-ttl {
  position: relative;
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}

.voice-name {
  margin-top: 1em;
  font-size: 3.7333333333vw;
  font-weight: 500;
  text-align: right;
}

.voice-name span:nth-child(n+2) {
  margin-left: 0.5em;
}

@media all and (min-width: 751px) {
  .voice-image img {
    height: 19.0277777778vw;
  }
  .voice-content {
    padding: 0.6944444444vw 1.3888888889vw 1.25vw 1.3888888889vw;
  }
  .voice-ttl {
    min-height: 2.66em;
    font-size: 1.25vw;
    line-height: 1.33em;
  }
  .voice-name {
    font-size: 0.9722222222vw;
  }
}
@media all and (min-width: 1441px) {
  .voice-image img {
    height: 274px;
  }
  .voice-content {
    padding: 10px 20px 18px 20px;
  }
  .voice-ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .voice-name {
    font-size: 14px;
    font-size: 1.4rem;
  }
}