﻿@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url(//use.typekit.net/igf2cuo.css);

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box
}

*,
::before,
::after {
  background-repeat: no-repeat
}

::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;
  -webkit-print-color-adjust: exact
}

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

ol,
ul,
li {
  list-style: none
}

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
}

[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,
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
}

input::-ms-clear {
  visibility: hidden
}

input::-ms-reveal {
  visibility: hidden
}

@font-face {
  font-family: 'langdon';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/langdon/Langdon.eot");
  src: url("../fonts/langdon/Langdon.eot?#iefix") format("embedded-opentype"), url("../fonts/langdon/Langdon.woff2") format("woff2"), url("../fonts/langdon/Langdon.woff") format("woff"), url("../fonts/langdon/Langdon.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: 'Noteworthy';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Noteworthy/Noteworthy-Bold.eot");
  src: url("../fonts/Noteworthy/Noteworthy-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Noteworthy/Noteworthy-Bold.woff2") format("woff2"), url("../fonts/Noteworthy/Noteworthy-Bold.woff") format("woff"), url("../fonts/Noteworthy/Noteworthy-Bold.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/FontAwesome5/fa-regular-400.eot");
  src: url("../fonts/FontAwesome5/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../fonts/FontAwesome5/fa-regular-400.woff2") format("woff2"), url("../fonts/FontAwesome5/fa-regular-400.woff") format("woff"), url("../fonts/FontAwesome5/fa-regular-400.ttf") format("truetype"), url("../fonts/FontAwesome5/fa-regular-400.svg#fontawesome") format("svg")
}

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/FontAwesome5/fa-solid-900.eot");
  src: url("../fonts/FontAwesome5/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../fonts/FontAwesome5/fa-solid-900.woff2") format("woff2"), url("../fonts/FontAwesome5/fa-solid-900.woff") format("woff"), url("../fonts/FontAwesome5/fa-solid-900.ttf") format("truetype"), url("../fonts/FontAwesome5/fa-solid-900.svg#fontawesome") format("svg")
}

html {
  font-size: 62.5%
}

body {
  width: 100%;
  height: 100%;
  color: #313131;
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .1em;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden
}

@media screen and (min-width: 751px) {
  body {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  body {
    font-size: 1.6rem
  }
}

a {
  -webkit-transition: all .3s;
  transition: all .3s
}

a:hover {
  cursor: pointer
}

a.opacity {
  display: block
}

a.opacity:hover {
  opacity: 0.7
}

.header {
  position: relative;
  margin: 0 auto;
  width: 100%;
  /*height:calc(170 / 750 * 100vw);*/
  background-color: #fff;
  z-index: 10
}

@media screen and (min-width: 751px) {
  .header {
    position: relative;
    height: calc(210 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .header {
    height: 210px
  }
}

.header__inner {
  margin: 0 auto;
  padding: 0 3.3vw;
  width: 100%
}

.header__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1.4vw
}

@media screen and (min-width: 751px) {
  .header__inner {
    padding: 0;
    width: calc(1000 / 1300 * 100vw)
  }

  .header__top {
    padding-top: 1.15vw
  }
}

@media screen and (min-width: 1279px) {
  .header__inner {
    width: 1000px
  }

  .header__top {
    padding-top: 15px
  }
}

@media screen and (max-width: 750px) {
  .header__inner {
    transition: all 0.3s ease
  }
}

.header__logo {
  position: relative;
  width: calc(210 / 750 * 100vw);
  transition: all 0.3s
}

@media screen and (max-width: 750px) {
  .header__inner {
    transition: all 0.3s ease
  }
}

@media screen and (min-width: 751px) {
  .header__logo {
    top: 0;
    width: calc(145 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .header__logo {
    width: 145px
  }
}

.header__btn__menu {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.header__btn__menu>div {
  margin-right: calc(20 / 750 * 100vw)
}

.header__btn__menu>div:last-of-type {
  margin-right: 0
}

@media screen and (max-width: 750px) {
  .header__btn__menu>div:last-of-type {
    margin-right: 0;
    position: fixed;
    background: #fff;
    padding: 6px 15px 3px 15px;
    border-radius: 10px;
    /* CSS3草案 */
    -webkit-border-radius: 10px;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 10px;
    /* Firefox用 */
  }

  .header__btn__menu>div:nth-of-type(2) {
    margin-right: calc(130 / 750 * 100vw);
  }
}

@media screen and (max-width: 750px) {
  .header__btn__menu img {
    width: calc(100 / 750 * 100vw);
    height: calc(100 / 750 * 100vw)
  }
}

@media screen and (min-width: 751px) {
  .header__btn__menu>div {
    margin-right: 25px
  }
}

@media screen and (min-width: 1279px) {
  .header__btn__menu>div {
    margin-right: 25px
  }
}

.navigation {
  width: 100%
}

.navigation.is-fixed {
  position: fixed;
  top: 0;
  left: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.32);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

@media screen and (max-width: 750px) {
  .navigation {
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.7s, visibility 0.7s;
    transition: opacity 0.7s, visibility 0.7s;
    overflow: hidden;
    z-index: 222
  }

  .navigation.is-close {
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.35s, visibility 0.35s;
    transition: opacity 0.35s, visibility 0.35s;
    overflow: hidden
  }

  .navigation.is-open {
    opacity: 1;
    visibility: visible;
    width: 100%
  }
}

@media screen and (max-width: 750px) {
  .navigation__inner {
    position: relative;
    margin-left: auto;
    width: 96vw;
    height: 100vh;
    overflow-x: scroll;
    z-index: 999
  }

  .navigation__content {
    position: relative;
    margin: 0 auto;
    padding: 0 0 16vw 0;
    width: 100%;
    background-color: rgba(100, 181, 140, 0.9)
  }

  .navi-container-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0 4vw;
    height: calc(170 / 750 * 100vw);
    background-color: #fff
  }

  .navi__sp__inner {
    padding: 0 4vw
  }
}

@media screen and (min-width: 751px) {
  .navi-inner {
    display: flex
  }

  .navigation__content {
    padding: 0;
    width: 100%
  }
}

@media screen and (max-width: 750px) {
  .navi {
    margin: 0 auto;
    width: 86vw
  }

  .navi>li {
    border-bottom: 1px dashed #fff
  }

  .navi>li:hover {
    cursor: pointer
  }

  .navi>li>p {
    position: relative;
    display: block;
    color: #fff;
    font-size: calc(36 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .1em
  }

  .navi>li:nth-child(3)>p,
  .navi>li:nth-child(4)>p,
  .navi>li:nth-child(5)>p,
  .navi>li:nth-child(6)>p {
    padding: 1em .5em
  }

  .navi>li>p>a {
    display: block;
    padding: 1em .5em
  }

  .navi__submenu {
    display: none;
    padding-bottom: 2vw
  }

  .navi__submenu__list a {
    position: relative;
    padding: 1em .5em 1em 1.5em;
    display: block;
    width: 100%;
    color: #fff;
    font-size: calc(34 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: .1em
  }


  .navi__submenu__list a:last-child {
    margin-bottom: 10vw;
  }

  .navi>li>p:after,
  .navi__submenu__list a:after {
    content: '';
    width: 2vw;
    height: 2vw;
    display: block;
    border-top: 0.6vw solid;
    border-right: 0.6vw solid;
    transform: rotate(45deg);
    position: absolute;
    top: 1vw;
    bottom: 0;
    right: .5em;
    margin: auto
  }

  .navi>li>p.is-open:after {
    transform: rotate(135deg)
  }

  .icon__home:before {
    content: '';
    display: inline-block;
    width: 4.67vw;
    height: 4.67vw;
    margin-right: 1em;
    background-image: url(../img/header/home_w.png);
    background-size: contain;
    background-repeat: no-repeat
  }
}

@media screen and (min-width: 751px) {
  .navi {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    padding: 1.9em 0;
    width: calc(1000 / 1300 * 100vw)
  }

  .navi>li {
    padding: .5em 0;
    width: 25%;
    height: auto;
    border-right: 1px solid #707070;
    font-size: calc(18 / 1300 * 100vw);
    font-weight: 700;
    text-align: center
  }

  .navi>li:last-child {
    border-right: none
  }

  .navi>li:hover {
    cursor: pointer
  }

  .navi p {
    position: relative;
    width: 100%;
    height: 100%;
    font-weight: 700
  }

  .navi p::after {
    position: absolute;
    bottom: -.5em;
    left: 50%;
    content: '';
    width: 0;
    height: calc(4 / 1300 * 100vw);
    background-color: #87C8A7;
    transition: .3s;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }

  .navi p:hover::after {
    width: 80%
  }

  .navi__submenu {
    position: absolute;
    top: 14.62vw;
    left: 0;
    padding: 1.5em 0 .5em 0;
    width: 100%;
    background-color: #5ab486;
    transition: .3s;
    visibility: hidden;
    opacity: 0;
    z-index: 20
  }

  .navi>li:hover .navi__submenu {
    visibility: visible;
    opacity: 1
  }

  .navi__submenu__inner {
    margin: 0 auto;
    width: calc(1000 / 1300 * 100vw)
  }

  .navi__submenu__list {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    margin-left: -1.92vw
  }

  .navi__submenu__list a {
    position: relative;
    display: block;
    margin-left: 1.92vw;
    margin-bottom: 1vw;
    padding: .5em .5em .5em 1.5em;
    width: calc(33.33333% - 1.92vw);
    border: 2px solid #313131;
    background-color: #313131;
    border-radius: .5em;
    color: #fff;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: calc(55 / 1300 * 100vw);;
    font-family: "langdon";
    font-size: calc(16 / 1300 * 100vw);
    font-weight: 700;
    text-align: left
  }
  .navi__submenu__list a span{
    font-size: calc(14 / 1300 * 100vw);
    display: block;
    margin-top: 0.5em;
  }
  .navi__submenu__list a:hover {
    background-color: #fff;
    color: #313131
  }

  .navi__submenu__list a:after {
    content: '';
    position: absolute;
    top: 50%;
    bottom: 0;
    right: 1em;
    width: .5em;
    height: .5em;
    display: block;
    margin-top: -.25em;
    border-top: solid 2px;
    border-right: solid 2px;
    transform: rotate(45deg)
  }

  .icon__home:before {
    content: '';
    display: inline-block;
    width: 1.31vw;
    height: 1.31vw;
    margin-right: 1em;
    background-image: url(../img/header/home_g.png);
    background-size: contain;
    background-repeat: no-repeat
  }
}

@media screen and (min-width: 1279px) {
  .navi {
    width: 1000px
  }

  .navi>li {
    font-size: 1.8rem
  }

  .navi p::after {
    height: 4px
  }

  .navi__submenu {
    top: 190px
  }

  .navi__submenu__inner {
    width: 1000px
  }

  .navi__submenu__list {
    margin-left: -25px
  }

  .navi__submenu__list a {
    margin-left: 25px;
    margin-bottom: 7px;
    width: calc(33.33333% - 25px);
    font-size: 1.6rem;
    height: 55px;
  }
  .navi__submenu__list a span{
    font-size: 1.4rem
  }

  .icon__home:before {
    width: 17px;
    height: 17px
  }
}

.toggle {
  position: relative;
  top: 0.5vw;
  width: 7.33vw;
  height: 12.93vw;
  cursor: pointer;
  z-index: 111;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.toggle:hover {
  opacity: 0.7
}

.toggle span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.8vw;
  background-color: #333;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  cursor: pointer
}

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

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

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

.toggle.active span {
  display: none
}

.toggle-text {
  position: absolute;
  left: 0;
  bottom: 1.2vw;
  color: #333;
  font-family: "langdon", sans-serif;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 500;
  text-align: center;
  line-height: 1em;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 751px) {
  .toggle {
    display: none
  }
}

@media screen and (max-width: 750px) {
  .img-close-btn {
    width: calc(100 / 750 * 100vw);
    height: auto
  }
}

.header__contact {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0 1em;
  height: calc(160 / 750 * 100vw);
  border-radius: .5em;
  background-color: #313131;
  color: #fff;
  border: 1px solid #313131;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s
}

.header__contact__icon {
  margin-right: 1em
}

.header__contact:hover {
  background-color: #5ab486;
  border: 1px solid #5ab486
}

@media screen and (max-width: 750px) {
  .header__contact__icon {
    width: 10vw
  }
}

@media screen and (min-width: 751px) {
  .header__contact {
    height: calc(80 / 1300 * 100vw);
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .header__contact {
    height: 80px;
    font-size: 1.6rem
  }
}

.header__tel__btn {
  margin: 6vw auto;
  width: 100%
}

.header__tel__btn a {
  display: block;
  padding: 1em 3vw;
  border-radius: .5em;
  background-color: #fff;
  text-align: center
}

.header__tel__btn a .number__container {
  justify-content: center
}

.header__tel__btn a .number__image {
  width: 10.67vw;
  height: auto
}

.header__tel__btn a .number__content {
  font-size: calc(82 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .floathing {
    position: fixed;
    right: 0;
    top: calc(100 / 1300 * 100vw);
    width: 4.62vw;
    height: 43.08vw;
    z-index: 10
  }

  .floathing>div>a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4.62vw;
    height: 21.54vw;
    color: #fff;
    font-size: calc(16 / 1300 * 100vw);
    font-weight: 700;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
  }

  .floathing__icon {
    margin-bottom: .5em
  }

  .floathing__contact a {
    background-color: #313131
  }

  .floathing__contact a img {
    width: 2.69vw;
    height: auto
  }

  .floathing__raiten a {
    background-color: #b98855
  }

  .floathing__raiten a img {
    width: 2.38vw;
    height: auto
  }
}

@media screen and (min-width: 1279px) {
  .floathing {
    top: 100px;
    width: 60px;
    height: 560px
  }

  .floathing>div>a {
    width: 60px;
    height: 280px;
    font-size: 1.6rem
  }

  .floathing__contact a img {
    width: 35px
  }

  .floathing__raiten a img {
    width: 31px
  }
}

.floathing.is-fixed {
  display: none !important
}

.floathing.is-hide {
  transform: translateY(-100%)
}

@media screen and (max-width: 750px) {
  .floathing {
    display: none !important
  }
}

.header__illust__baloon {
  display: none
}

@media screen and (min-width: 751px) {
  .header__illust__baloon {
    display: block;
    position: absolute;
    bottom: -15.38vw;
    left: 50%;
    margin-left: 47.69vw;
    width: calc(203 / 1300 * 100vw);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}

@media screen and (min-width: 1279px) {
  .header__illust__baloon {
    bottom: -200px;
    margin-left: 620px;
    width: 203px
  }
}

.footer {
  position: relative;
  padding-top: 8.6vw;
  background-color: #313131
}

@media screen and (min-width: 751px) {
  .footer {
    padding-top: calc(95 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .footer {
    padding-top: 95px
  }
}

.footer__inner {
  padding: 3.3vw 4vw 0 4vw;
  border-radius: 1em 1em 0 0;
  background-color: #fff;
  width: 100%
}

.footer__left {
  margin-bottom: 5.3vw;
  width: 100%
}

.footer__left__content {
  margin-top: 4vw;
  text-align: center
}

.footer__right {
  padding: .5em 0 .5em 0;
  width: 100%
}

.footer__right a {
  display: block;
  margin-bottom: 1em
}

.footer__info {
  font-size: calc(24 / 750 * 100vw);
  text-align: center;
  letter-spacing: .05em;
  line-height: 2em
}

.footer__copy {
  padding: 1em 0;
  background-color: #fff;
  color: #4b2600
}

.footer__copy p {
  font-size: calc(20 / 750 * 100vw);
  text-align: center;
  letter-spacing: .05em
}

@media screen and (min-width: 751px) {
  .footer__inner {
    display: flex;
    align-items: center;
    padding: calc(25 / 1300 * 100vw) calc(5 / 1300 * 100vw) 0 calc(5 / 1300 * 100vw);
    border-radius: 1em 1em 0 0;
    background-color: #fff;
    width: 100%;
    height: calc(157 / 1300 * 100vw)
  }

  .footer__left {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    width: calc(100% - 35.38vw)
  }

  .footer__right {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 35.38vw
  }

  .footer__left__image {
    width: 11.15vw
  }

  .footer__left__content {
    margin-top: 0;
    width: calc(100% - 11.15vw);
    text-align: left
  }

  .footer__info {
    font-size: calc(12 / 1300 * 100vw);
    text-align: left
  }

  .footer__copy p {
    font-size: calc(10 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .footer__inner {
    padding: 25px 15px 0 15px;
    height: 157px
  }

  .footer__left {
    width: calc(100% - 460px)
  }

  .footer__right {
    width: 460px
  }

  .footer__left__content {
    width: calc(100% - 145px)
  }

  .footer__info {
    font-size: 1.2rem
  }

  .footer__copy p {
    font-size: 1rem
  }
}

.img__footer__logo {
  width: 33.33vw
}

@media screen and (min-width: 751px) {
  .img__footer__logo {
    width: 9.62vw
  }
}

@media screen and (min-width: 1279px) {
  .img__footer__logo {
    width: 125px
  }
}

.footer__submenu {
  display: flex;
  justify-content: center;
  margin-top: 2vw
}

.footer__submenu li {
  margin-right: 2em
}

.footer__submenu li a:hover {
  font-weight: 700
}

.footer__submenu li:last-child {
  margin-right: 0
}

.footer__submenu li:before {
  margin-right: .3em;
  content: '\f105';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

@media screen and (min-width: 751px) {
  .footer__submenu {
    justify-content: flex-start;
    margin-top: 0
  }
}

.pagetop {
  position: absolute;
  top: -4.4vw;
  right: 2vw;
  width: 24vw;
  z-index: 5
}

.pagetop a {
  display: block
}

.pagetop:hover {
  opacity: 0.7
}

@media screen and (min-width: 751px) {
  .pagetop {
    top: -4.31vw;
    right: 1.15vw;
    width: calc(132 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .pagetop {
    top: -56px;
    right: 15px;
    width: 132px
  }
}

.container {
  margin: 0 auto;
  margin-top: calc(30 / 750 * 100vw);
  width: 100%;
}

@media screen and (min-width: 751px) {
  .container {
    margin-top: 0
  }
}

.container__inner {
  position: relative;
  margin: 0 auto;
  padding: 0 4.27vw;
  width: 100%
}

@media screen and (min-width: 751px) {
  .container__inner {
    padding: 0;
    width: calc(1000 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .container__inner {
    padding: 0;
    width: 1000px
  }
}

.page__container {
  padding-top: calc(30 / 750 * 100vw);
}

@media screen and (min-width: 751px) {
  .page__container {
    padding-top: calc(50 / 750 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .page__container {
    padding-top: 50px
  }
}

.page__content {
  padding-top: calc(70 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .page__content {
    padding-top: calc(50 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .page__content {
    padding-top: 50px
  }
}

.news__container,
.event__container,
.blog__container {
  display: block;
  height: calc(418 / 750 * 100vw);
  overflow-y: auto
}

@media screen and (min-width: 751px) {

  .news__container,
  .event__container,
  .blog__container {
    height: calc(226 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {

  .news__container,
  .event__container {
    height: 226px
  }
}

.news__content {
  width: 100%
}

.blog__content {
  width: 100%
}

.omitted {
  overflow: hidden
}

.omitted__text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.ellipsis {
  width: 100%;
  white-space: wrap;
  text-overflow: ellipsis;
  overflow: hidden
}

.ellipsis1__wrap {
  width: 100%;
  white-space: wrap;
  text-overflow: ellipsis;
  overflow: hidden
}

.ellipsis__1 {
  min-height: calc(1em * 1);
  line-height: 1em
}

.ellipsis__1 .ellipsis__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1em
}

@media all and (-ms-high-contrast: none) {
  .ellipsis1__wrap {
    white-space: nowrap !important
  }
}

.ellipsis__2 {
  min-height: calc(1.6em * 2);
  line-height: 1.6em
}

.ellipsis__2 .ellipsis__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.6em
}

.ellipsis__3 {
  min-height: calc(1.6em * 3);
  line-height: 1.6em
}

.ellipsis__3 .ellipsis__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 1.6em
}

.img__scale {
  width: 100%;
  height: auto;
  overflow: hidden
}

.img__scale img {
  width: 100%;
  transition-duration: 0.5s
}

.img__scale img:hover {
  transform: scale(1.1, 1.1);
  cursor: pointer
}

.contact-section-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 2.6vw;
  width: 100%;
  height: 100%;
  max-width: 1000px
}

@media screen and (min-width: 751px) {
  .contact-section-inner {
    padding: 0 2vw;
    max-width: calc(1000 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .contact-section-inner {
    padding: 0;
    max-width: 1000px
  }
}

.number__container {
  display: flex;
  align-items: center
}

#cta .number__container {
  justify-content: center
}

.number__image {
  margin-right: .3em;
  width: 12.53vw
}

.number__content {
  width: calc(100% - 12.53vw - .3em);
  font-family: din-2014, sans-serif;
  font-size: calc(88 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1em;
  letter-spacing: -0.02em
}

.number__time {
  margin-bottom: .5em;
  color: #999;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: .05em
}

@media screen and (min-width: 751px) {
  #header .number__image {
    width: 3.15vw
  }

  #cta .number__image {
    width: 4vw
  }

  #header .number__content {
    width: calc(100% - 3.15vw - .3em);
    font-size: calc(42 / 1300 * 100vw);
    white-space: nowrap
  }

  #cta .number__content {
    width: calc(100% - 4vw - .3em);
    font-size: calc(48 / 1300 * 100vw)
  }

  .number__time {
    font-size: calc(14 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  #header .number__image {
    width: 41px
  }

  #cta .number__image {
    width: 52px
  }

  #header .number__content {
    width: calc(100% - 41px - .3em)
  }

  #cta .number__content {
    width: calc(100% - 52px - .3em)
  }

  #header .number__content {
    font-size: 4.2rem
  }

  #cta .number__content {
    font-size: 5rem
  }

  .number__time {
    font-size: 1.4rem
  }
}

.bird {
  position: absolute;
  top: 11.6vw;
  left: 0;
  z-index: 2
}

.baloon {
  position: absolute;
  top: -1.6vw;
  right: 0;
  z-index: 2
}

.kikyu {
  position: absolute;
  top: -4vw;
  left: 2vw;
  z-index: 2
}

.woman {
  position: absolute;
  bottom: 0;
  right: 2vw;
  z-index: 2
}

.flag {
  position: absolute;
  bottom: -18vw;
  right: 0;
  z-index: 2
}

.cta__thanks {
  position: absolute;
  top: -33vw;
  left: 2vw;
  z-index: 2
}

.cta__star {
  position: absolute;
  top: 1vw;
  right: 1vw;
  z-index: 2
}

@media screen and (min-width: 751px) {
  .bird {
    top: -1.5vw;
    left: 1vw
  }

  .baloon {
    top: -8.5vw;
    right: 1vw
  }

  .kikyu {
    top: -1vw;
    left: 2vw
  }

  .woman {
    bottom: 0;
    right: 2vw
  }

  .flag {
    bottom: -14.6vw;
    right: 0
  }

  .cta__thanks {
    top: -16.5vw;
    left: 1vw
  }

  .cta__star {
    top: -13vw;
    right: 1vw
  }
}

@media screen and (min-width: 1279px) {
  .bird {
    top: -15px;
    left: -120px
  }

  .baloon {
    top: -85px;
    right: -120px
  }

  .kikyu {
    top: -10px
  }

  .flag {
    bottom: -134px;
    right: -130px
  }

  .cta__thanks {
    top: -165px;
    left: -85px
  }

  .cta__star {
    top: -130px;
    right: -25px
  }
}

@media screen and (max-width: 1280px) {
  .img-mv-free {
    width: calc(123 / 1300 * 100vw);
    height: auto
  }

  .img-mv-book {
    width: calc(157 / 1300 * 100vw);
    height: auto
  }

  .img-line {
    width: calc(237 / 1300 * 100vw);
    height: auto
  }

  .img-bird {
    width: calc(191 / 1300 * 100vw);
    height: auto
  }

  .img-baloon {
    width: calc(220 / 1300 * 100vw);
    height: auto
  }

  .img-kikyu {
    width: calc(157 / 1300 * 100vw);
    height: auto
  }

  .img-woman {
    width: calc(185 / 1300 * 100vw);
    height: auto
  }

  .img-flag {
    width: calc(275 / 1300 * 100vw);
    height: auto
  }

  .img-cta-call {
    width: calc(52 / 1300 * 100vw);
    height: auto
  }

  .img-cta-more {
    width: calc(308 / 1300 * 100vw);
    height: auto
  }

  .img-cta-flower {
    width: calc(54 / 1300 * 100vw);
    height: auto
  }

  .img-cta-flowers {
    width: calc(109 / 1300 * 100vw);
    height: auto
  }

  .img-cta-woodbox {
    width: calc(99 / 1300 * 100vw);
    height: auto
  }

  .img-fukidashi {
    width: calc(322 / 1300 * 100vw);
    height: auto
  }

  .img-books {
    width: calc(245 / 1300 * 100vw);
    height: auto
  }

  .img-thanks {
    width: calc(199 / 1300 * 100vw);
    height: auto
  }

  .img-star {
    width: calc(117 / 1300 * 100vw);
    height: auto
  }

  .img-footer-logo {
    width: calc(120 / 1300 * 100vw)
  }

  .img-footer-instagram {
    width: calc(80 / 1300 * 100vw)
  }
}

@media screen and (max-width: 750px) {
  .img-mv-free {
    width: calc(246 / 750 * 100vw)
  }

  .img-mv-book {
    width: calc(191 / 750 * 100vw)
  }

  .img-line {
    width: calc(475 / 750 * 100vw)
  }

  .img-bird {
    width: calc(181 / 750 * 100vw)
  }

  .img-baloon {
    width: calc(207 / 750 * 100vw)
  }

  .img-kikyu {
    width: calc(150 / 750 * 100vw)
  }

  .img-woman {
    width: calc(170 / 750 * 100vw)
  }

  .img-flag {
    width: calc(279 / 750 * 100vw)
  }

  .img-cta-call {
    width: calc(98 / 750 * 100vw)
  }

  .img-cta-more {
    width: calc(567 / 750 * 100vw)
  }

  .img-cta-flower {
    width: calc(97 / 750 * 100vw)
  }

  .img-cta-flowers {
    width: calc(117 / 750 * 100vw)
  }

  .img-cta-woodbox {
    width: calc(195 / 750 * 100vw)
  }

  .img-thanks {
    width: calc(300 / 750 * 100vw)
  }

  .img-star {
    width: calc(200 / 750 * 100vw)
  }

  .img-contact {
    width: calc(531 / 750 * 100vw)
  }

  .img-footer-logo {
    width: calc(250 / 750 * 100vw)
  }

  .img-footer-instagram {
    width: calc(90 / 750 * 100vw)
  }
}

.editor {
  margin: 0 auto;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif
}

.editor h4 {
  position: relative;
  display: block;
  margin-bottom: .5em;
  padding: .3em 0;
  border-bottom: 2px solid #cdcdcd;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

.editor p {
  font-size: calc(24 / 750 * 100vw);
  line-height: 1.8em
}

.editor a {
  font-weight: 700
}

.editor a:hover {
  color: #5ab486
}

.editor strong {
  font-weight: 700
}

.editor ul {
  margin-bottom: 1.5em
}

.editor ul li {
  margin-left: 1.5em;
  list-style-type: square
}

.editor ol {
  margin-bottom: 1.5em
}

.editor ol li {
  margin-left: 2.5em;
  list-style-type: decimal-leading-zero
}

.editor blockquote {
  margin: 1.5em 1em;
  padding: 1em;
  background-color: #f9f8f8;
  font-style: italic
}

.editor img {
  margin: 1em 0;
  max-width: 100%;
  height: auto
}

.editor .iframe-wrap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0
}

.editor .iframe-wrap iframe,
.editor .iframe-wrap object,
.editor .iframe-wrap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.editor iframe {
  width: 100%;
}

@media screen and (min-width: 751px) {
  .editor h4 {
    font-size: calc(20 / 1300 * 100vw)
  }

  .editor p {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .editor h4 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .editor p {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.mv__pc,
.mv__sp {
  position: relative;
  width: 100%;
  z-index: 2
}

.mv__pc{
  background: url(../img/mv/mainv_img.jpg) no-repeat center left;
  background-size: cover;
  min-height: 570px;
}

.mv__sp {
  background: url(../img/mv/mainv_img_sp.jpg) no-repeat center center;
  background-size: cover;
  min-height: 65vh;
  padding: 0 5%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mv__sp h1{
  margin-top: -40vw;
}
/* .mv__pc:before {
  content: '';
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: calc(80 / 1300 * 100vw);
  background-image: url(../img/mv/wave.png);
  background-repeat: repeat-x;
  z-index: 1
} */

.mv__pc__inner {
  position: absolute;
  top: 40%;
  left: 50%;
  /* width: calc(450 / 1300 * 100vw);
  height: calc(400 / 1300 * 100vw); */
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 12
}



@media screen and (min-width: 1279px) {
  .mv__pc:before {
    height: 80px
  }

  .mv__pc__inner {
    /* width: 450px;
    height: 400px */
  }
}

.mv__illust__flower {
  position: absolute;
  top: 3vw;
  left: 2vw;
  width: calc(149 / 750 * 100vw);
  z-index: 3
}

.mv__illust__baloon {
  position: absolute;
  top: 0;
  right: 2vw;
  width: calc(203 / 750 * 100vw);
  z-index: 3
}

.mv__illust__star {
  position: absolute;
  bottom: -2vw;
  right: 2vw;
  width: calc(149 / 750 * 100vw);
  z-index: 3
}

@media screen and (min-width: 751px) {
  .mv__illust__flower {
    position: absolute;
    top: 7.23vw;
    left: -10vw;
    width: calc(109 / 1300 * 100vw)
  }

  .mv__illust__baloon {
    display: none
  }

  .mv__illust__star {
    position: absolute;
    bottom: -8.85vw;
    right: -20.38vw;
    width: calc(89 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .mv__illust__flower {
    position: absolute;
    top: 94px;
    left: -295px;
    width: 109px
  }

  .mv__illust__star {
    position: absolute;
    bottom: -115px;
    right: -265px;
    width: 89px
  }
}

.section__front__head__container {
  text-align: center
}

.section__front__subhead {
  position: relative;
  display: block;
  margin-bottom: .5em;
  font-family: "langdon", sans-serif;
  font-size: calc(144 / 750 * 100vw)
}

.section__front__subhead__base {
  color: #fff
}

.section__front__subhead:after {
  content: '';
  position: absolute;
  bottom: -.2em;
  left: 50%;
  width: 86.25vw;
  height: 1px;
  border-bottom: 1px dashed #5b5b5b;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.section__front__subhead__base:after {
  content: none
}

.section__front__head {
  display: block;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .section__front__subhead {
    font-size: calc(72 / 1300 * 100vw)
  }

  .section__front__subhead:after {
    width: calc(350 / 1300 * 100vw)
  }

  .section__front__head {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .section__front__subhead {
    font-size: 7.2rem
  }

  .section__front__subhead:after {
    width: 350px
  }

  .section__front__head {
    font-size: 2.4rem
  }
}

.section__front__headflex__container {
  position: relative;
  top: -16vw;
  display: flex;
  align-items: center;
  margin-bottom: -16vw
}

.section__front__subheadflex {
  display: block;
  font-family: "langdon", sans-serif;
  font-size: calc(100 / 750 * 100vw)
}

.section__front__headflex {
  display: block;
  margin-left: 1em;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .section__front__headflex__container {
    top: -5.77vw;
    margin-bottom: -5.77vw
  }

  .section__front__subheadflex {
    font-size: calc(60 / 1300 * 100vw)
  }

  .section__front__headflex {
    margin-top: -.5em;
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .section__front__headflex__container {
    top: -75px;
    margin-bottom: -75px
  }

  .section__front__subheadflex {
    font-size: 6rem
  }

  .section__front__headflex {
    font-size: 2.4rem
  }
}

.slick-slide {
  height: auto !important
}

.sec__banner {
  position: relative;
  padding: 28.6vw 0 4vw 0
}

.sec__banner__illust__bird {
  position: absolute;
  top: 350vw;
  left: 2vw;
  width: calc(343 / 750 * 100vw);
  z-index: 3
}

.sec__event__illust__mega {
  position: absolute;
  top: -71vw;
  left: -2vw;
  width: calc(180 / 750 * 100vw);
  z-index: 3;
}

.sec__event__illust__movie {
  position: absolute;
  top: -18vw;
  right: 2vw;
  width: calc(140 / 750 * 100vw);
  z-index: 3;
}

@media screen and (min-width: 751px) {
  .sec__banner {
    padding: calc(65 / 1300 * 100vw) 0 calc(45 / 1300 * 100vw) 0
  }

  .sec__banner__illust__bird {
    top: 100vw;
    left: -10vw;
    width: calc(191 / 1300 * 100vw)
  }

  .sec__event__illust__mega {
    top: -22vw;
    left: 4vw;
    width: calc(203 / 1300 * 100vw)
  }

  .sec__event__illust__movie {
    top: 3vw;
    right: 4vw;
    width: calc(130 / 1300 * 100vw);
  }
}

@media screen and (min-width: 1279px) {
  .sec__banner {
    padding: 65px 0 45px 0
  }

  .sec__banner__illust__bird {
    top: 1300px;
    left: -100px;
    width: 191px
  }

  .sec__event__illust__mega {
    top: -274px;
    left: 70px;
    width: 203px;
  }

  .sec__event__illust__movie {
    top: 50px;
    right: 90px;
    width: 130px;
  }
}

.banner__container_top {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 3%;
}

#news_wide {
  margin-bottom: 5%;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  padding: 3% 2% 3.4% 2%;
}

.banner__container_top a {
  display: block;
  margin-bottom: 5.33vw;
}

.banner__container_top a:hover {
  opacity: 0.7;
}

.banner__container_top a:nth-of-type(1),
.banner__container_top a:nth-of-type(2) {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}

.banner__container_top a:nth-of-type(6) {
  order: 7;
}

.banner__container_top a:nth-of-type(7) {
  order: 6;
}

@media screen and (min-width: 751px) {
  .banner__container_top a {
    margin-bottom: 1.54vw;
  }

  .banner__container_top a:nth-of-type(6) {
    order: 6;
  }

  .banner__container a:nth-of-type(7) {
    order: 7;
  }
}

@media screen and (min-width: 1279px) {
  .banner__container_top a {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 1280px) {

  .banner__container_top a:nth-of-type(1),
  .banner__container_top a:nth-of-type(2) {
    width: 37.69vw;
  }

  .banner__container_top a:nth-of-type(3),
  .banner__container_top a:nth-of-type(4),
  .banner__container_top a:nth-of-type(5) {
    width: 24.62vw;
  }

  .banner__container_top a:nth-of-type(6) {
    width: 45.38vw;
  }

  .banner__container_top a:nth-of-type(7) {
    width: 30vw;
  }
}

@media screen and (max-width: 750px) {

  .banner__container_top a:nth-of-type(1),
  .banner__container_top a:nth-of-type(2),
  .banner__container_top a:nth-of-type(6) {
    width: 100%;
  }

  .banner__container_top a:nth-of-type(3),
  .banner__container_top a:nth-of-type(4),
  .banner__container_top a:nth-of-type(5),
  .banner__container_top a:nth-of-type(7) {
    width: 44vw;
  }
}

/* top回遊用 */


.banner__container_kaiyu a {
        display:block;
        margin-bottom: 5.33vw;
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}

.banner__container_kaiyu a:hover {
        opacity: 0.7;
}

@media screen and (min-width: 751px) {

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

        .banner__container_kaiyu a {
                width: 24.62vw;
                margin-bottom: 1.54vw;
        }

}

@media screen and (min-width: 1279px) {
        
        .banner__container_kaiyu a {
                width:32%;
                margin-bottom:20px;
        }
        
}



/* サブ回遊用 */
.banner__container_kaiyu_s {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
}

.banner__container_kaiyu_s a {
  display: block;
  margin-bottom: 5.33vw;
}

.banner__container_kaiyu_s a:hover {
  opacity: 0.7;
}

.banner__container_kaiyu_s a:nth-of-type(1),
.banner__container_kaiyu_s a:nth-of-type(2) {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}

.banner__container_kaiyu_s a:nth-of-type(6) {
  order: 7;
}

.banner__container_kaiyu_s a:nth-of-type(7) {
  order: 6;
}

@media screen and (min-width: 751px) {
  .banner__container_kaiyu_s a {
    margin-bottom: 1.54vw;
  }

  .banner__container_kaiyu_s a:nth-of-type(6) {
    order: 6;
  }

  .banner__container a:nth-of-type(7) {
    order: 7;
  }
}

@media screen and (min-width: 1279px) {
  .banner__container_kaiyu_s a {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 1280px) {

  .banner__container_kaiyu_s a:nth-of-type(1),
  .banner__container_kaiyu_s a:nth-of-type(2) {
    width: 37.69vw;
  }

  .banner__container_kaiyu_s a:nth-of-type(3),
  .banner__container_kaiyu_s a:nth-of-type(4),
  .banner__container_kaiyu_s a:nth-of-type(5) {
    width: 24.62vw;
  }

  .banner__container_kaiyu_s a:nth-of-type(6) {
    width: 45.38vw;
  }

  .banner__container_kaiyu_s a:nth-of-type(7) {
    width: 30vw;
  }
}

@media screen and (max-width: 750px) {

  .banner__container_kaiyu_s a:nth-of-type(1),
  .banner__container_kaiyu_s a:nth-of-type(2),
  .banner__container_kaiyu_s a:nth-of-type(6) {
    width: 100%;
  }

  .banner__container_kaiyu_s a:nth-of-type(3),
  .banner__container_kaiyu_s a:nth-of-type(4),
  .banner__container_kaiyu_s a:nth-of-type(5),
  .banner__container_kaiyu_s a:nth-of-type(7) {
    width: 44vw;
  }
}

.sec__update {
  position: relative;
  padding: 11.88vw 0;
  background-color: #5ab486;
  margin-bottom: 8rem
}

@media screen and (min-width: 751px) {
  .sec__update {
    padding: calc(80 / 1300 * 100vw) 0 calc(90 / 1300 * 100vw) 0
  }
}

@media screen and (min-width: 1279px) {
  .sec__update {
    padding: 80px 0 90px 0
  }
}

.update__container>div {
  margin-bottom: 12.67vw;
  padding: 9.33vw 4vw 5vw 4vw;
  background-color: #fff
}

@media screen and (min-width: 751px) {
  .update__container {
    display: flex;
    justify-content: center;
    margin-left: -1.54vw
  }

  .update__container>div {
    margin-left: 1.54vw;
    margin-bottom: 0;
    padding: 3.85vw 2.31vw 2.31vw 2.31vw;
    width: calc(50% - 1.54vw)
  }
}

@media screen and (min-width: 1279px) {
  .update__container {
    display: flex;
    margin-left: -20px
  }

  .update__container>div {
    margin-left: 20px;
    margin-bottom: 0;
    padding: 50px 30px 30px 30px;
    width: calc(50% - 20px)
  }
}

.sec__lineup {
  position: relative;
  padding: 20.25vw 0 6.88vw 0;
  background-image: url(../img/lineup/bg_sp.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%
}

.sec__lineup__illust__kikyu {
  position: absolute;
  top: 85vw;
  left: 4vw;
  width: 19.63vw;
  z-index: 3
}

.sec__lineup__illust__flag {
  position: absolute;
  top: 85vw;
  right: 0;
  width: 44.75vw;
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__lineup {
    padding: calc(55 / 1300 * 100vw) 0 calc(160 / 1300 * 100vw) 0;
    background-image: url(../img/lineup/bg.png);
    background-position: bottom center
  }

  .sec__lineup__illust__kikyu {
    top: 27vw;
    left: -6vw;
    width: calc(157 / 1300 * 100vw)
  }

  .sec__lineup__illust__flag {
    top: 52vh;
    right: -10vw;
    width: calc(358 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__lineup {
    padding: 55px 0 160px 0
  }

  .sec__lineup__illust__kikyu {
    top: 300px;
    left: -185px;
    width: 157px
  }

  .sec__lineup__illust__flag {
    width: 358px
  }
}

.lineup__front__container a {
  margin-bottom: 5vw;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2)
}

.lineup__front__container .lineup__front__slide .slick-prev,
.lineup__front__container .lineup__front__slide .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 40%;
  display: block;
  width: 35px;
  height: 58px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

.lineup__front__container .lineup__front__slide .slick-prev {
  left: 0;
  z-index: 9;
}

.lineup__front__container .lineup__front__slide .slick-next {
  right: 0;
}

.lineup__front__container .lineup__front__slide .slick-next:before,
.lineup__front__container .lineup__front__slide .slick-prev:before {
  content: '';
  display: block;
}

.lineup__front__container .lineup__front__slide .slick-next:before {
  width: 0;
  height: 0;
  border-style: solid;
  /*border-width: 29px 0 29px 35.6px;*/
  border-width: 20px 0 20px 22.6px;
  border-color: transparent transparent transparent #fff;
  font-size: 0;
}

.lineup__front__container .lineup__front__slide .slick-prev:before {
  width: 0;
  height: 0;
  border-style: solid;
  /*border-width: 29px 35.6px 29px 0;*/
  border-width: 20px 22.6px 20px 0;
  border-color: transparent #fff transparent transparent;
  font-size: 0;
}

@media screen and (max-width: 750px) {
  .lineup__front__container .lineup__front__slide .slick-slide {
    height: 100vw !important;
  }
}

@media screen and (min-width: 751px) {
  .lineup__front__container {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1.54vw
  }

  .lineup__front__container a {
    margin-left: 1.54vw;
    margin-bottom: calc(40 / 1300 * 100vw);
    width: calc(50% - 1.54vw)
  }

  .lineup__front__container .lineup__front__slide .slick-prev,
  .lineup__front__container .lineup__front__slide .slick-next {
    top: 50%;
  }

  .lineup__front__container .lineup__front__slide .slick-prev:before {
    border-width: 29px 35.6px 29px 0;
  }

  .lineup__front__container .lineup__front__slide .slick-next:before {
    border-width: 29px 0 29px 35.6px;
  }

  .lineup__front__container .lineup__front__slide .slick-prev {
    left: -45px;
  }

  .lineup__front__container .lineup__front__slide .slick-next {
    right: -45px;
  }

  .lineup__front__container .lineup__front__slide .slider {
    height: 30vw;
  }
}

@media screen and (min-width: 1279px) {
  .lineup__front__container {
    margin-left: -20px
  }

  .lineup__front__container a {
    margin-left: 20px;
    margin-bottom: 40px;
    width: calc(50% - 20px)
  }

  .lineup__front__container .lineup__front__slide .slider {
    height: 400px;
  }
}

.sec__present {
  position: relative;
  padding: 11.88vw 0
}

.sec__present__illust__star {
  display: none;
  position: absolute;
  z-index: 3
}

.sec__present__illust__baloon {
  position: absolute;
  top: -16vw;
  width: calc(144 / 750 * 100vw);
  z-index: 3
}

@media screen and (max-width: 750px) {
  .sec__present__illust__baloon {
    left: 2vw
  }
}

@media screen and (min-width: 751px) {
  .sec__present {
    padding: calc(80 / 1300 * 100vw) 0 calc(90 / 1300 * 100vw) 0
  }

  .sec__present__illust__star {
    display: block;
    top: 0;
    left: 15.38vw;
    width: calc(89 / 1300 * 100vw)
  }

  .sec__present__illust__baloon {
    top: -7.31vw;
    right: 1.15vw;
    width: calc(203 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__present {
    padding: 80px 0 90px 0
  }

  .sec__present__illust__star {
    left: 200px;
    width: 89px
  }

  .sec__present__illust__baloon {
    top: -95px;
    right: 15px;
    width: 203px
  }
}

.present {
  position: relative;
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

.present__box {
  position: relative;
  top: -5.33vw;
  margin-left: -4.27vw;
  margin-bottom: -5.33vw;
  width: calc(100% + 4.27vw + 4.27vw);
  height: 50vw;
  background-color: #362e2b
}

.present__main {
  position: relative;
  z-index: 2
}

.present__free {
  position: absolute;
  top: -8.6vw;
  left: 10vw;
  width: calc(217 / 750 * 100vw);
  height: calc(182 / 750 * 100vw);
  z-index: 3 !important
}

.present__book {
  position: absolute;
  top: 33vw;
  right: 6vw;
  width: calc(191 / 750 * 100vw);
  height: calc(200 / 750 * 100vw);
  z-index: 3 !important
}

.present__box p {
  position: absolute;
  left: 50%;
  bottom: 14vw;
  width: 100%;
  color: #fff;
  font-size: calc(26 / 750 * 100vw);
  text-align: center;
  line-height: 1.8em;
  letter-spacing: .01em;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.present__box p span {
  color: #fff100
}

@media screen and (min-width: 751px) {
  .present {
    margin-left: 0;
    width: 100%
  }

  .present__box {
    top: -2.69vw;
    margin-left: 0;
    margin-bottom: -2.69vw;
    width: 100%;
    height: 13.08vw
  }

  .present__free {
    top: -1.92vw;
    left: 12.69vw;
    width: calc(123 / 1300 * 100vw);
    height: calc(103 / 1300 * 100vw)
  }

  .present__book {
    top: -1vw;
    right: 11.15vw;
    width: calc(157 / 1300 * 100vw);
    height: calc(165 / 1300 * 100vw)
  }

  .present__box p {
    bottom: 1.5em;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .present__box {
    top: -35px;
    margin-bottom: -35px;
    height: 170px
  }

  .present__free {
    top: 25px;
    left: 165px;
    width: 123px;
    height: 103px
  }

  .present__book {
    top: 20px;
    right: 145px;
    width: 157px;
    height: 165px
  }

  .present__box p {
    font-size: 1.6rem
  }
}

.sec__reason {
  position: relative;
  padding: 11.88vw 0 22.93vw 0;
  background-image: url(../img/reason/bg.jpg);
  background-repeat: repeat;
  background-size: 100%
}

.sec__reason__illust__flag--l {
  position: absolute;
  top: -1.33vw;
  left: 2vw;
  width: 17.6vw;
  z-index: 3
}

.sec__reason__illust__flag--r {
  position: absolute;
  top: -1.33vw;
  right: 2vw;
  width: 17.6vw;
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__reason {
    padding: calc(80 / 1300 * 100vw) 0 calc(90 / 1300 * 100vw) 0
  }

  .sec__reason__illust__flag--l {
    top: -1.54vw;
    left: 10.23vw;
    width: calc(132 / 1300 * 100vw)
  }

  .sec__reason__illust__flag--r {
    top: -1.54vw;
    right: 11vw;
    width: calc(132 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__reason {
    padding: 80px 0 90px 0
  }

  .sec__reason__illust__flag--l {
    top: -20px;
    left: 133px;
    width: 132px
  }

  .sec__reason__illust__flag--r {
    top: -20px;
    right: 143px;
    width: 132px
  }
}

.reason__front__content {
  position: relative;
  top: -12vw;
  margin-left: -4.27vw;
  padding: 1.5em 1.8em;
  width: 96vw;
  background-color: #fff;
  font-size: calc(26 / 750 * 100vw);
  line-height: 1.8em
}

.reason__front:nth-of-type(odd) .reason__front__content {
  margin-right: auto
}

.reason__front:nth-of-type(even) .reason__front__content {
  margin-left: auto
}

@media screen and (min-width: 751px) {

  .reason__front__image,
  .reason__front__content {
    width: calc(790 / 1300 * 100vw)
  }

  .reason__front__content {
    top: -19.23vw;
    margin-bottom: -13.85vw;
    padding: 3em 4em;
    font-size: calc(16 / 1300 * 100vw)
  }

  .reason__front:nth-of-type(odd) .reason__front__image {
    margin-left: auto
  }

  .reason__front:nth-of-type(even) .reason__front__image {
    margin-right: auto
  }
}

@media screen and (min-width: 1279px) {

  .reason__front__image,
  .reason__front__content {
    width: 790px
  }

  .reason__front__content {
    top: -250px;
    margin-bottom: -180px;
    font-size: 1.6rem
  }
}

.sec__gallery {
  position: relative;
  padding: 12.50vw 0 10vw 0;
  background-color: #e8fcf2
}

.sec__gallery__illust__bird {
  position: absolute;
  top: -24.8vw;
  left: 2vw;
  width: calc(305 / 750 * 100vw);
  z-index: 3
}

.sec__gallery__illust__flower {
  position: absolute;
  top: -26.67vw;
  right: 2vw;
  width: calc(174 / 750 * 100vw);
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__gallery {
    padding: calc(80 / 1300 * 100vw) 0 calc(90 / 1300 * 100vw) 0
  }

  .sec__gallery__illust__bird {
    top: 1.54vw;
    left: 0;
    width: calc(191 / 1300 * 100vw)
  }

  .sec__gallery__illust__flower {
    top: -1.54vw;
    right: 0;
    width: calc(109 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__gallery {
    padding: 80px 0 90px 0
  }

  .sec__gallery__illust__bird {
    top: 20px;
    width: 191px
  }

  .sec__gallery__illust__flower {
    top: -20px;
    width: 109px
  }
}

.sec__voice {
  position: relative;
  padding: 11.88vw 0 26.67vw 0
}

.sec__voice:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #fff;
  z-index: -1
}

.sec__voice:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #5ab486;
  z-index: -1
}

.sec__voice__illust__baloon {
  position: absolute;
  top: -20.13vw;
  left: 2vw;
  width: calc(203 / 750 * 100vw);
  z-index: 3
}

.sec__voice__illust__star {
  position: absolute;
  top: -13.87vw;
  right: 2vw;
  width: calc(149 / 750 * 100vw);
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__voice {
    padding: calc(80 / 1300 * 100vw) 0 calc(90 / 1300 * 100vw) 0
  }

  .sec__voice__illust__baloon {
    top: -7.31vw;
    left: -6vw;
    width: calc(203 / 1300 * 100vw)
  }

  .sec__voice__illust__star {
    top: 10vw;
    right: -6vw;
    width: calc(89 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__voice {
    padding: 80px 0 90px 0
  }

  .sec__voice__illust__baloon {
    top: -95px;
    left: -205px;
    width: 203px
  }

  .sec__voice__illust__star {
    top: 175px;
    right: -102px;
    width: 89px
  }
}

.sec__cta {
  position: relative;
  margin-top: 28.67vw
}

.sec__cta__illust__thanks {
  position: absolute;
  top: -43.07vw;
  left: 2vw;
  width: calc(398 / 750 * 100vw)
}

.sec__cta__illust__staff {
  position: absolute;
  top: -50.4vw;
  right: 2vw;
  width: calc(294 / 750 * 100vw)
}

.sec__cta__illust__fukidashi {
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(610 / 750 * 100vw);
  z-index: 2
}

.sec__cta__illust__book {
  position: absolute;
  bottom: -8.6vw;
  right: 0;
  width: calc(360 / 750 * 100vw);
  z-index: 2
}

@media screen and (min-width: 751px) {
  .sec__cta {
    margin-top: 7.69vw
  }

  .sec__cta__illust__thanks {
    top: -12.31vw;
    left: 1.54vw;
    width: calc(199 / 1300 * 100vw)
  }

  .sec__cta__illust__staff {
    top: -17.69vw;
    right: 0;
    width: calc(180 / 1300 * 100vw)
  }

  .sec__cta__illust__fukidashi {
    left: -1vw;
    width: calc(322 / 1300 * 100vw)
  }

  .sec__cta__illust__book {
    bottom: calc(35 / 1300 * 100vw);
    right: calc(18 / 1300 * 100vw);
    width: calc(245 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__cta {
    margin-top: 100px
  }

  .sec__cta__illust__thanks {
    top: -160px;
    left: 20px;
    width: 199px
  }

  .sec__cta__illust__staff {
    top: -230px;
    right: 0;
    width: 180px
  }

  .sec__cta__illust__fukidashi {
    bottom: 0;
    left: -10px;
    width: 322px
  }

  .sec__cta__illust__book {
    bottom: 35px;
    right: 18px;
    width: 245px
  }
}

.cta__gallery {
  position: relative;
  background-image: url(../img/cta/bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: calc(1385 / 750 * 100vw);
  z-index: 1
}

@media screen and (min-width: 751px) {
  .cta__gallery {
    height: calc(290 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .cta__gallery {
    height: 290px
  }
}

.cta__box {
  position: relative;
  top: -7.3vw;
  margin: 0 auto;
  margin-bottom: -7.3vw;
  padding: 11.3vw 3vw 7.3vw 3vw;
  width: calc(690 / 750 * 100vw);
  border: 1px solid #ccc;
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0px 0px 20px 0px rgba(51, 51, 51, 0.1);
  line-height: 1.8em
}

@media screen and (min-width: 751px) {
  .cta__box {
    top: -10vw;
    margin-bottom: -10vw;
    padding: calc(45 / 1300 * 100vw) calc(60 / 1300 * 100vw) calc(35 / 1300 * 100vw) calc(60 / 1300 * 100vw);
    width: calc(480 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .cta__box {
    top: -120px;
    margin-bottom: -120px;
    padding: 45px 60px 35px 60px;
    width: 480px
  }
}

.cta__gallery::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(90, 180, 134, 0.5)
}

.cta__number__box>.cta__number__wrap {
  justify-content: center
}

.cta__number__box {
  padding: 4vw 0;
  border-top: 1px solid #362e2b;
  border-bottom: 1px solid #362e2b
}

.cta__title {
  margin: 0 auto 5.33vw auto;
  width: 70.8vw
}

.cta__subtitle {
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: .05em
}

.cta__time {
  font-size: calc(32 / 750 * 100vw);
  text-align: center;
  letter-spacing: .05em
}

.cta__name {
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 751px) {
  .cta__number__box {
    padding: calc(15 / 1300 * 100vw) 0
  }

  .cta__title {
    margin: 0 auto 1.92vw auto;
    width: 22.69vw
  }

  .cta__subtitle,
  .cta__time {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .cta__number__box {
    padding: 15px 0
  }

  .cta__title {
    margin: 0 auto 25px auto;
    width: 295px
  }

  .cta__subtitle,
  .cta__time {
    font-size: 1.8rem
  }
}

.news,
.blog {
  position: relative;
  display: flex;
  padding: 1em 0;
  background-color: #fff;
  border-bottom: 1px dashed #dfdfdf
}

.news:hover,
.blog:hover {
  opacity: 0.7
}

.news__arcive__container a,
.blog__arcive__container a {
  display: block
}

.news__image,
.blog__image {
  margin-right: 3.33vw;
  width: 21.33vw
}

.news__date,
.blog__date {
  margin-bottom: .5em;
  color: #5ab486;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700
}

.news__title,
.blog__title {
  display: block;
  width: 100%;
  font-weight: 700
}



@media screen and (min-width: 751px) {

  .news,
  .blog {
    padding: 1.5em 0
  }

  .news__content,
  .blogarc__content {
    display: flex;
    align-items: center;
    width: 100%
  }

  .news__title__container,
  .blog__title__container {
    width: calc(100% - 8.85vw)
  }

  .news__date,
  .blog__date {
    margin-bottom: 0;
    width: calc(115 / 1300 * 100vw);
    font-size: calc(14 / 1300 * 100vw)
  }

  .news__title {
    margin-left: 23px;
  }
}

@media screen and (max-width: 750px) {
  .news__date {
    display: inline-block;
  }

  .news__cat {
    display: inline-block;

  }
}

@media screen and (min-width: 1279px) {

  .news__date,
  .blog__date {
    width: 115px;
    font-size: 1.4rem
  }

  .news__title__container,
  .blog__title__container {
    width: calc(100% - 115px)
  }
}

@media screen and (min-width: 751px) {

  .news__arcive__container,
  .blog__arcive__container {
    margin: 0 auto;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {

  .news__arcive__container,
  .blog__arcive__container {
    width: 800px
  }
}

.news__arcive__container a:after,
.blog__arcive__container a:after {
  position: absolute;
  top: 50%;
  right: 0;
  content: '\f105';
  color: #5ab486;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.news__arcive__container .news__title__container,
.blog__arcive__container .blog__title__container {
  padding-right: 1.5em
}

.event {
  position: relative;
  display: flex;
  padding: 1em 0;
  background-color: #fff;
  border-bottom: 1px dashed #dfdfdf
}

.event:hover {
  opacity: 0.7
}

.event__image {
  margin-right: 3.33vw;
  width: 21.33vw
}

.event__content {
  width: calc(100% - 21.33vw - 3.33vw)
}

.event__date {
  color: #5ab486;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700
}

.event__title {
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .event__image {
    margin-right: 1.54vw;
    width: 6.15vw
  }

  .event__content {
    width: calc(100% - 6.15vw - 1.54vw)
  }

  .event__date {
    font-size: calc(14 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__image {
    margin-right: 20px;
    width: 80px
  }

  .event__content {
    width: calc(100% - 80px - 20px)
  }

  .event__date {
    font-size: 1.4rem
  }
}

.event__arcive__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.6vw
}

.event__arcive__container a {
  margin-left: 2.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 2.6vw);
  border-bottom: 3px solid #5ab486
}

.event__arcive__container a:hover {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2)
}

.event__archive__content {
  padding: .8em .7em 1em .7em
}

.event__archive__label {
  display: block;
  padding: .5em 0;
  background-color: #5ab486;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.event__archive__date {
  padding: .3em .7em;
  background-color: #fff;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

.event__archive__title {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .event__arcive__container {
    margin-left: -1.15vw
  }

  .event__arcive__container a {
    margin-left: 1.15vw;
    margin-bottom: calc(40 / 1300 * 100vw);
    width: calc(33.33333% - 1.15vw)
  }

  .event__date__container {
    display: flex;
    align-items: center;
    height: calc(60 / 1300 * 100vw)
  }

  .event__archive__content {
    padding: 1em 1.3em 2em 1.3em
  }

  .event__archive__label {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    padding: 0;
    width: 3.6em;
    font-size: calc(18 / 1300 * 100vw)
  }

  .event__archive__date {
    display: flex;
    align-items: center;
    align-self: stretch;
    padding: .6em .8em;
    width: calc(100% - 3.6em);
    font-size: calc(16 / 1300 * 100vw)
  }

  .event__archive__title {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__arcive__container {
    margin-left: -15px
  }

  .event__arcive__container a {
    margin-left: 15px;
    margin-bottom: 40px;
    width: calc(33.33333% - 15px)
  }

  .event__date__container {
    height: 60px
  }

  .event__archive__label {
    font-size: 1.8rem
  }

  .event__archive__date {
    font-size: 1.6rem
  }

  .event__archive__title {
    font-size: 1.8rem
  }
}

.event__sec__head {
  display: block;
  margin-bottom: 2em;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4em
}

@media screen and (min-width: 751px) {
  .event__sec__head {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__sec__head {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.event__info__container {
  margin-left: -4.27vw;
  padding: 4vw;
  width: calc(100% + 4.27vw + 4.27vw);
  background-color: #e8fcf2
}

.event__info__inner {
  margin: 0 auto;
  width: 100%
}

.event__data__container {
  padding: 4vw
}

.event__map {
  margin-top: 4vw
}

.event__map__container {
  padding: .5em;
  background-color: #fff
}

@media screen and (min-width: 751px) {
  .event__info__inner {
    display: flex;
    align-content: space-between;
    margin-left: 0;
    width: 100%
  }

  .event__data__container {
    padding: calc(25 / 750 * 100vw);
    width: calc(100% - 27.69vw - 1.54vw);
    align-self: flex-start
  }

  .event__data__container--ful {
    width: 100% !important
  }

  .event__map {
    margin-top: 0;
    margin-left: 1.54vw;
    width: calc(360 / 750 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__info__container {
    padding: 40px 30px
  }

  .event__data__container {
    padding: 25px;
    width: calc(100% - 360px - 20px)
  }

  .event__map {
    margin-left: 20px;
    width: 360px
  }
}

.event__cat {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-left: -3vw
}

.event__cat li {
  display: block;
  margin-left: 3vw;
  margin-bottom: .5em;
  padding: .7em 1em;
  width: calc(50% - 3vw);
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  text-align: center;
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .event__cat {
    margin-left: 0;
    justify-content: flex-start;
    flex-wrap: nowrap
  }

  .event__cat li {
    margin: 0 .5em 0 0;
    width: auto;
    font-size: calc(18 / 1300 * 100vw)
  }

  .event__cat li:last-child {
    margin: 0
  }
}

@media screen and (min-width: 1279px) {
  .event__cat li {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.event__cat1 {
  background-color: #e18db3
}

.event__cat2 {
  background-color: #e19a25
}

.event__cat3 {
  background-color: #66442b
}

.event__cat4 {
  background-color: #38afa9
}

.event__cat5 {
  background-color: #906da4
}

.event__cat6 {
  background-color: #bf2359
}

.event__data__container {
  background-color: #fff
}

.event__data dt {
  display: inline-block;
  padding: .5em 0;
  width: 8em;
  background-color: #5ab486;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.6em
}

.event__data dd {
  margin-bottom: .5em;
  padding: .5em 0;
  width: 100%;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.6em
}

.event__data dt:last-of-type,
.event__data dd:last-of-type {
  margin-bottom: 0
}

@media screen and (min-width: 751px) {
  .event__data {
    display: flex;
    align-items: center;
    flex-wrap: wrap
  }

  .event__data dt {
    display: block;
    margin: 0 1.54vw 1.5em 0;
    width: 10vw;
    font-size: calc(16 / 1300 * 100vw)
  }

  .event__data dd {
    margin-bottom: 1.5em;
    width: calc(100% - 10vw - 1.54vw);
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__data dt {
    margin: 0 20px 1.5em 0;
    width: 130px;
    font-size: 16px;
    font-size: 1.6rem
  }

  .event__data dd {
    margin-bottom: 1.5em;
    width: calc(100% - 130px - 20px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.event__summary {
  line-height: 1.6em
}

.event__summary__inner {
  margin: 0 auto;
  padding: 1em;
  width: 100%
}

@media screen and (min-width: 751px) {
  .event__summary__inner {
    padding: 2em 0;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__summary__inner {
    width: 800px
  }
}

.event__detail__image {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2vw
}

.event__detail__image a {
  margin-left: 2vw;
  margin-bottom: 2vw;
  width: calc(50% - 2vw)
}

@media screen and (min-width: 751px) {
  .event__detail__image {
    margin-left: -1.54vw
  }

  .event__detail__image a {
    margin-left: 1.54vw;
    margin-bottom: 1.54vw;
    width: calc(33.33333% - 1.54vw)
  }
}

@media screen and (min-width: 1279px) {
  .event__detail__image {
    margin-left: -20px
  }

  .event__detail__image a {
    margin-left: 20px;
    margin-bottom: 20px;
    width: calc(33.33333% - 20px)
  }
}

.ggmap {
  position: relative;
  padding-top: 30px;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden
}

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

.seko__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px
}

.seko__container a {
  position: relative;
  margin-left: 10px;
  margin-bottom: 20px;
  width: calc(50% - 10px);
  background-color: #fff;
  border-bottom: 2px solid #5ab486
}

.seko__content {
  padding: 1.5em .5em 1em .5em
}

.seko__name {
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .seko__container {
    margin-left: -1.54vw
  }

  .seko__container a {
    margin-left: 1.54vw;
    margin-bottom: 3.08vw;
    width: calc(33.33333% - 1.54vw)
  }

  .seko__content {
    padding: 1.5em 1.2em
  }

  .seko__name {
    font-size: calc(14 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__container {
    margin-left: -20px
  }

  .seko__container a {
    margin-left: 20px;
    margin-bottom: 40px;
    width: calc(33.33333% - 20px)
  }

  .seko__name {
    font-size: 1.4rem
  }
}

.seko__arcive__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.6vw
}

.seko__arcive__container a {
  margin-left: 2.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 2.6vw);
  border-bottom: 3px solid #f19149
}

.seko__arcive__container a:hover {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2)
}

.seko__archive__content {
  padding: .8em .5em 1em .5em
}

.seko__archive__name {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

.seko__archive__title {
  font-size: calc(28 / 750 * 100vw);
  min-height: calc(3 * 1.6em)
}

@media screen and (min-width: 751px) {
  .seko__arcive__container {
    margin-left: -1.54vw
  }

  .seko__arcive__container a {
    margin-left: 1.54vw;
    margin-bottom: calc(60 / 1300 * 100vw);
    width: calc(33.33333% - 1.54vw)
  }

  .seko__archive__content {
    padding: 1.5em 1.3em 2em 1.3em
  }

  .seko__archive__name {
    font-size: calc(18 / 1300 * 100vw)
  }

  .seko__archive__title {
    min-height: calc(2 * 1.6em);
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__arcive__container {
    margin-left: -20px
  }

  .seko__arcive__container a {
    margin-left: 20px;
    margin-bottom: 60px;
    width: calc(33.33333% - 20px)
  }

  .seko__archive__name {
    font-size: 1.8rem
  }

  .seko__archive__title {
    font-size: 1.8rem
  }
}

.seko__after__full {
  margin-bottom: calc(35 / 750 * 100vw);
  width: 100%;
  height: calc(400 / 750 * 100vw);
  background-size: cover;
  background-position: center center
}

.seko__after__thumb__item__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.67vw
}

.seko__after__thumb__item {
  margin-left: 2.67vw;
  margin-bottom: 2.67vw;
  width: calc(20% - 2.67vw);
  height: calc(122 / 750 * 100vw);
  background-size: cover;
  background-position: center center;
  transition: .3s
}

.seko__after__thumb__item:hover {
  opacity: 0.7;
  cursor: pointer
}

@media screen and (min-width: 751px) {
  .seko__after {
    margin: 0 auto;
    width: calc(800 / 1300 * 100vw)
  }

  .seko__after__full {
    margin-bottom: calc(10 / 1300 * 100vw);
    height: calc(450 / 1300 * 100vw)
  }

  .seko__after__thumb__item__container {
    display: flex;
    flex-wrap: wrap;
    margin-left: -0.77vw
  }

  .seko__after__thumb__item {
    margin-left: 0.77vw;
    margin-bottom: 0.77vw;
    width: calc(10% - 0.77vw);
    height: calc(70 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__after {
    width: 800px
  }

  .seko__after__full {
    margin-bottom: 10px;
    height: 450px
  }

  .seko__after__thumb__item__container {
    margin-left: -10px
  }

  .seko__after__thumb__item {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(10% - 10px);
    height: 70px
  }
}

.seko__before__full {
  margin-bottom: calc(35 / 750 * 100vw);
  width: 100%;
  height: calc(390 / 750 * 100vw);
  background-size: cover;
  background-position: center center
}

.seko__before__thumb__item__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.67vw
}

.seko__before__thumb__item {
  margin-left: 2.67vw;
  margin-bottom: 2.67vw;
  width: calc(33.33333% - 2.67vw);
  height: calc(220 / 750 * 100vw);
  background-size: cover;
  background-position: center center;
  transition: .3s
}

.seko__before__thumb__item:hover {
  opacity: 0.7;
  cursor: pointer
}

@media screen and (min-width: 751px) {
  .seko__before {
    display: flex
  }

  .seko__before__full {
    margin-right: 1.54vw;
    margin-bottom: 0;
    width: 40vw;
    height: calc(300 / 1300 * 100vw)
  }

  .seko__before__thumb {
    width: calc(100% - 40vw - 1.54vw)
  }

  .seko__before__thumb__item__container {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1.54vw
  }

  .seko__before__thumb__item {
    margin-left: 1.54vw;
    margin-bottom: 1.54vw;
    width: calc(33.33333% - 1.54vw);
    height: calc(140 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__before__full {
    margin-right: 20px;
    width: 520px;
    height: 300px
  }

  .seko__before__thumb {
    width: calc(100% - 520px - 20px)
  }

  .seko__before__thumb__item__container {
    margin-left: -20px
  }

  .seko__before__thumb__item {
    margin-left: 20px;
    margin-bottom: 20px;
    width: calc(33.33333% - 20px);
    height: 140px
  }
}

.seko__data {
  border-top: 1px solid #5ab486
}

.seko__data dt {
  display: block;
  padding: .8em 1em;
  background-color: #5ab486;
  color: #fff;
  width: 100%;
  border-left: 1px solid #5ab486;
  border-right: 1px solid #5ab486;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: left;
  line-height: 1.6em
}

.seko__data dd {
  display: block;
  padding: .8em 1em;
  background-color: #fff;
  border: 1px solid #5ab486;
  width: 100%;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .seko__data {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    width: calc(800 / 1300 * 100vw)
  }

  .seko__data dt {
    padding: 1em;
    width: 13.08vw;
    border-bottom: 1px solid #fff;
    font-size: calc(16 / 1300 * 100vw)
  }

  .seko__data dt:last-of-type {
    border-bottom: 1px solid #5ab486
  }

  .seko__data dd {
    padding: 1em;
    width: calc(100% - 13.08vw);
    border: none;
    border-right: 1px solid #5ab486;
    border-bottom: 1px solid #5ab486;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__data {
    width: 800px
  }

  .seko__data dt {
    width: 170px;
    font-size: 16px;
    font-size: 1.6rem
  }

  .seko__data dd {
    width: calc(100% - 170px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.seko__point__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.67vw
}

.seko__point {
  margin-left: 2.67vw;
  margin-bottom: 2.67vw;
  width: calc(50% - 2.67vw);
  border: calc(6 / 750 * 100vw) solid #5ab486
}

.seko__point__content {
  padding: 1em
}

@media screen and (min-width: 751px) {
  .seko__point__container {
    margin-left: -1.54vw
  }

  .seko__point {
    margin-left: 1.54vw;
    margin-bottom: 1.54vw;
    width: calc(33.33333% - 1.54vw);
    border: calc(3 / 1300 * 100vw) solid #5ab486
  }
}

@media screen and (min-width: 1279px) {
  .seko__point__container {
    margin-left: -20px
  }

  .seko__point {
    margin-left: 20px;
    margin-bottom: 20px;
    width: calc(33.33333% - 20px);
    border: 3px solid #5ab486
  }
}

.seko__comment {
  background-color: #e8fcf2;
  line-height: 1.6em
}

.seko__comment__inner {
  margin: 0 auto;
  padding: 1em;
  width: 100%
}

@media screen and (min-width: 751px) {
  .seko__comment__inner {
    padding: 2em 0;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__comment__inner {
    width: 800px
  }
}

.seko__tantou {
  background-color: #f6f6f6;
  line-height: 1.6em
}

.seko__tantou__inner {
  margin: 0 auto;
  padding: 1em;
  width: 100%
}

@media screen and (min-width: 751px) {
  .seko__tantou__inner {
    padding: 2em 0;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .seko__tantou__inner {
    width: 800px
  }
}

.sekocat__navi {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-left: -4vw
}

.sekocat__navi a {
  position: relative;
  display: block;
  margin-left: 4vw;
  margin-bottom: 1.92vw;
  padding: 1em .5em 1em 1.5em;
  width: calc(50% - 4vw);
  border: 2px solid #313131;
  background-color: #313131;
  border-radius: .5em;
  color: #fff;
  font-family: "langdon", sans-serif;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: left
}

.sekocat__navi a:after {
  content: '';
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1em;
  width: .5em;
  height: .5em;
  display: block;
  margin-top: -.25em;
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(45deg)
}

@media screen and (min-width: 751px) {
  .sekocat__navi {
    flex-wrap: nowrap;
    margin-left: -1.92vw
  }

  .sekocat__navi a {
    margin-left: 1.92vw;
    margin-bottom: 0;
    padding: 1em .5em 1em 1.5em;
    width: calc(25% - 1.92vw);
    font-family: "langdon", sans-serif;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sekocat__navi {
    margin-left: -25px
  }

  .sekocat__navi a {
    margin-left: 25px;
    width: calc(25% - 25px);
    font-size: 1.6rem
  }
}

.voice__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2vw
}

.voice__container a {
  position: relative;
  margin-left: 2vw;
  margin-bottom: 5.33vw;
  width: calc(50% - 2vw);
  background-color: #fff;
  border: 0.75vw solid #dcdcdc;
  border-radius: 2em
}

.voice__image {
  border-radius: 1.8em 1.8em 0 0
}

.voice__content {
  padding: 1.5em 1em 1em 1em
}

.voice__name {
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

@media screen and (min-width: 751px) {
  .voice__container {
    margin-left: -1.54vw
  }

  .voice__container a {
    margin-left: 1.54vw;
    margin-bottom: 3.08vw;
    width: calc(33.33333% - 1.54vw);
    border: 0.46vw solid #dcdcdc
  }

  .voice__image {
    border-radius: 1.5em 1.5em 0 0
  }

  .voice__content {
    padding: 1.5em 1.2em
  }

  .voice__name {
    font-size: calc(14 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .voice__container {
    margin-left: -20px
  }

  .voice__container a {
    margin-left: 20px;
    margin-bottom: 40px;
    width: calc(33.33333% - 20px);
    border: 6px solid #dcdcdc
  }

  .voice__name {
    font-size: 1.4rem
  }
}

.voice__arcive__container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2vw
}

.voice__arcive__container a {
  position: relative;
  margin-left: 2vw;
  margin-bottom: 5.33vw;
  width: calc(50% - 2vw);
  background-color: #fff;
  border: 0.75vw solid #dcdcdc;
  border-radius: 2em
}

.voice__image {
  border-radius: 1.8em 1.8em 0 0
}

.voice__content {
  padding: 1.2em 1em 1em 1em
}

.voice__name {
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700
}

.voice__title {
  min-height: calc(3 * 1.6em)
}

.voice__front__title {
  min-height: calc(3 * 1.6em)
}

@media screen and (min-width: 751px) {
  .voice__arcive__container {
    margin-left: -0.92vw
  }

  .voice__arcive__container a {
    margin-left: 0.92vw;
    margin-bottom: 1.54vw;
    width: calc(25% - 0.92vw);
    border: 0.46vw solid #dcdcdc
  }

  .voice__image {
    border-radius: 1.5em 1.5em 0 0
  }

  .voice__content {
    padding: 1.2em 1em
  }

  .voice__name {
    font-size: calc(14 / 1300 * 100vw)
  }

  .voice__title {
    min-height: calc(2 * 1.6em)
  }

  .voice__front__title {
    min-height: calc(2 * 1.6em)
  }
}

@media screen and (min-width: 1279px) {
  .voice__arcive__container {
    margin-left: -12px
  }

  .voice__arcive__container a {
    margin-left: 12px;
    margin-bottom: 20px;
    width: calc(25% - 12px);
    border: 6px solid #dcdcdc
  }

  .voice__name {
    font-size: 1.4rem
  }
}

.voice__single {
  margin-bottom: calc(120 / 750 * 100vw)
}

.voice__single__image {
  margin-bottom: calc(40 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .voice__single {
    display: flex;
    margin-bottom: calc(60 / 1300 * 100vw)
  }

  .voice__single__image {
    margin-right: 2.31vw;
    width: 27.69vw
  }

  .voice__single__content {
    width: calc(100% - 27.69vw - 2.31vw)
  }
}

@media screen and (min-width: 1279px) {
  .voice__single {
    margin-bottom: 60px
  }

  .voice__single__image {
    margin-right: 30px;
    width: 360px
  }

  .voice__single__content {
    width: calc(100% - 360px - 30px)
  }
}

.voice__data {
  border-top: 1px solid #5ab486
}

.voice__data dt {
  display: block;
  padding: .8em 1em;
  background-color: #5ab486;
  color: #fff;
  width: 100%;
  border-left: 1px solid #5ab486;
  border-right: 1px solid #5ab486;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: left;
  line-height: 1.6em
}

.voice__data dd {
  display: block;
  padding: .8em 1em;
  background-color: #fff;
  border: 1px solid #5ab486;
  width: 100%;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .voice__data {
    display: flex;
    flex-wrap: wrap
  }

  .voice__data dt {
    padding: 1em;
    width: 13.08vw;
    border-bottom: 1px solid #fff;
    font-size: calc(16 / 1300 * 100vw)
  }

  .voice__data dt:last-of-type {
    border-bottom: 1px solid #5ab486
  }

  .voice__data dd {
    padding: 1em;
    width: calc(100% - 13.08vw);
    border: none;
    border-right: 1px solid #5ab486;
    border-bottom: 1px solid #5ab486;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .voice__data dt {
    width: 170px;
    font-size: 16px;
    font-size: 1.6rem
  }

  .voice__data dd {
    width: calc(100% - 170px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.voice__message {
  background-color: #fff1e6;
  line-height: 1.6em
}

.voice__message__inner {
  margin: 0 auto;
  padding: 1em;
  width: 100%
}

@media screen and (min-width: 751px) {
  .voice__message__inner {
    padding: 2em 0;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .voice__message__inner {
    width: 800px
  }
}

.staff {
  margin-bottom: calc(120 / 750 * 100vw)
}

.staff:last-of-type() {
  margin-bottom: 0
}

.staff__image {
  margin-bottom: calc(40 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .staff {
    display: flex;
    margin-bottom: calc(60 / 1300 * 100vw)
  }

  .staff__image {
    margin-right: 2.31vw;
    width: 27.69vw
  }

  .staff__content {
    width: calc(100% - 27.69vw - 2.31vw)
  }
}

@media screen and (min-width: 1279px) {
  .staff {
    margin-bottom: 60px
  }

  .staff__image {
    margin-right: 30px;
    width: 360px
  }

  .staff__content {
    width: calc(100% - 360px - 30px)
  }
}

.staff__name {
  padding: .5em 1em;
  background-color: #5ab486;
  color: #fff;
  font-size: calc(40 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .staff__name {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .staff__name {
    font-size: 2.4rem
  }
}

.staff__table dt {
  padding: 1em 1em .5em 1em;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

.staff__table dd {
  padding: .5em 1em 1em 1em;
  font-size: calc(32 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .staff__table {
    display: flex;
    flex-wrap: wrap
  }

  .staff__table dt {
    padding: 1em .7em;
    width: 15.38vw;
    font-size: calc(18 / 1300 * 100vw)
  }

  .staff__table dd {
    padding: 1em .7em;
    width: calc(100% - 15.38vw);
    font-size: calc(18 / 1300 * 100vw);
    align-self: stretch
  }
}

@media screen and (min-width: 1279px) {
  .staff__table dt {
    width: 200px;
    font-size: 18px;
    font-size: 1.8rem
  }

  .staff__table dd {
    width: calc(100% - 200px);
    font-size: 18px;
    font-size: 1.8rem
  }
}

.staff__table dt:nth-of-type(even),
.staff__table dd:nth-of-type(even) {
  background-color: #f6f6f6
}

.staff__message {
  padding: 0 1em;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .staff__message {
    padding: 0 .7em;
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .staff__message {
    padding: 0 1em;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.faq {
  margin: 0 auto;
  width: 100%
}

.faq__ques {
  position: relative;
  padding: 1em 2em 1em 3.2em;
  display: block;
  border-bottom: 1px solid #ccc
}

.faq__ques:hover {
  cursor: pointer
}

.faq__ques:before {
  position: absolute;
  top: .3em;
  left: 0;
  content: 'Q';
  color: #5ab486;
  font-family: din-2014, sans-serif;
  font-size: calc(72 / 750 * 100vw);
  font-weight: 700
}

.faq__ques:after {
  position: absolute;
  top: 50%;
  right: 0;
  content: '\f107';
  color: #5ab486;
  font-family: "Font Awesome 5 Free";
  font-size: 1.5em;
  font-weight: 900;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.faq__ques.is-show:after {
  content: '\f104'
}

.faq__title {
  font-weight: 700;
  line-height: 1.6em
}

.faq__ans {
  position: relative;
  padding: 1em 2em 1em 3.2em;
  display: none
}

.faq__ans:before {
  position: absolute;
  top: .3em;
  left: 0;
  content: 'A';
  color: #f19149;
  font-family: din-2014, sans-serif;
  font-size: calc(72 / 750 * 100vw);
  font-weight: 700
}

.faq__ans p {
  font-weight: 600;
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .faq {
    width: calc(800 / 1300 * 100vw)
  }

  .faq__ques {
    padding: 1em 2em 1em 3em
  }

  .faq__ques:before {
    top: .3em;
    left: .2em;
    font-size: calc(36 / 1300 * 100vw)
  }

  .faq__ans {
    padding: 1.5em 2em 1.5em 6em
  }

  .faq__ans:before {
    top: .6em;
    left: 1.3em;
    font-size: calc(36 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .faq {
    width: 800px
  }

  .faq__ques:before {
    font-size: 36px;
    font-size: 3.6rem
  }

  .faq__ans:before {
    font-size: 36px;
    font-size: 3.6rem
  }
}

.section__page__head {
  position: relative;
  margin-bottom: 1em;
  padding-bottom: 1em;
  font-size: calc(40 / 750 * 100vw);
  line-height: 1.4em;
  font-weight: 700
}

.section__page__head:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1em;
  height: calc(8 / 750 * 100vw);
  background-color: #5ab486
}

@media screen and (min-width: 751px) {
  .section__page__head {
    font-size: calc(24 / 1300 * 100vw)
  }

  .section__page__head:after {
    height: calc(4 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .section__page__head {
    font-size: 2.4rem
  }

  .section__page__head:after {
    height: 4px
  }
}

.section__page__head--double {
  position: relative;
  margin-bottom: 1.5em;
  padding-bottom: 1em;
  font-size: calc(48 / 750 * 100vw);
  line-height: 1.4em;
  font-weight: 700
}

.section__page__head--double:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: .8em;
  height: calc(8 / 750 * 100vw);
  background-color: #5ab486
}

.section__page__head--double:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: .8em;
  width: .8em;
  height: calc(8 / 750 * 100vw);
  background-color: #c8a063
}

@media screen and (min-width: 751px) {
  .section__page__head--double {
    font-size: calc(24 / 1300 * 100vw)
  }

  .section__page__head--double:before,
  .section__page__head--double:after {
    height: calc(4 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .section__page__head--double {
    font-size: 24px;
    font-size: 2.4rem
  }

  .section__page__head--double:before,
  .section__page__head--double:after {
    height: 4px
  }
}

.loan__head {
  display: block;
  padding: .5em 1.5em;
  background-color: #f07850;
  color: #fff;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.loan__table li {
  margin: 0 auto calc(20 / 750 * 100vw) auto;
  width: calc(540 / 750 * 100vw)
}

.loan__table li:nth-child(1) {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(232 / 750 * 100vw);
  background-color: #f07850
}

.loan__table li:nth-child(1) .loan__circle {
  position: relative;
  margin-right: calc(20 / 750 * 100vw);
  border-radius: 50%;
  background-color: #fff;
  width: calc(140 / 750 * 100vw);
  height: calc(140 / 750 * 100vw)
}

.loan__table li:nth-child(1) .loan__circle p {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #f07850;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.2em;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.loan__table li:nth-child(1) .loan__price {
  color: #fff;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

.loan__table li:nth-child(1) .loan__price span {
  font-size: calc(120 / 750 * 100vw)
}

.loan__table li:nth-child(2) {
  border: calc(6 / 750 * 100vw) solid #f07850;
  background-color: #fff
}

.loan__table li:nth-child(2) .loan__circle {
  position: relative;
  margin-right: calc(30 / 750 * 100vw);
  border-radius: 50%;
  background-color: #f07850;
  width: calc(120 / 750 * 100vw);
  height: calc(120 / 750 * 100vw)
}

.loan__table li:nth-child(2) .loan__circle p {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.2em;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.loan__table li:nth-child(2) .loan__price {
  color: #f07850;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

.loan__table li:nth-child(2) .loan__price span {
  font-size: calc(60 / 750 * 100vw)
}

.loan__table__div1 {
  width: 100%
}

.loan__table__div1>div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 1em;
  height: calc(105 / 750 * 100vw);
  border-bottom: calc(6 / 750 * 100vw) solid #f07850
}

.loan__price__label {
  color: #f07850;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

.loan__table__div1>div:nth-child(2) {
  height: calc(60 / 750 * 100vw);
}

.loan__table__div1>div:nth-child(2) .loan__price__label {
  font-size: calc(26 / 750 * 100vw);
}

.loan__table__div1>div:nth-child(2) .loan__price {
  font-size: calc(26 / 750 * 100vw);
}

.loan__table__div1>div:nth-child(2) .loan__price span {
  font-size: calc(26 / 750 * 100vw);
}

.loan__table__div2 {
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  padding: 0 calc(40 / 750 * 100vw);
  width: 100%;
  height: calc(225 / 750 * 100vw)
}

.loan__list {
  display: flex;
  flex-wrap: wrap
}

.loan__list li {
  margin-right: 1em;
  font-size: calc(19 / 750 * 100vw);
  line-height: 1.6em
}

#concept .loan__list li {
  font-size: calc(24 / 750 * 100vw)
}

.loan__list li:before {
  content: '●'
}

.loan__list li:last-child {
  margin-right: 0
}

@media screen and (min-width: 751px) {
  .loan__head {
    display: inline-block;
    padding: .5em 1.5em;
    background-color: #f07850;
    color: #fff;
    font-size: calc(24 / 1300 * 100vw);
    font-weight: 700;
    text-align: center
  }

  .loan__table {
    display: flex;
    justify-content: space-between;
    align-items: center
  }

  .loan__table li {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    height: calc(115 / 1300 * 100vw)
  }

  .loan__table li:nth-child(1) {
    margin-bottom: 0;
    width: calc(270 / 1300 * 100vw);
    height: calc(115 / 1300 * 100vw)
  }

  .loan__table li:nth-child(1) .loan__circle {
    margin-right: calc(10 / 1300 * 100vw);
    width: calc(70 / 1300 * 100vw);
    height: calc(70 / 1300 * 100vw)
  }

  .loan__table li:nth-child(1) .loan__circle p {
    font-size: calc(18 / 1300 * 100vw)
  }

  .loan__table li:nth-child(1) .loan__price {
    font-size: calc(18 / 1300 * 100vw)
  }

  .loan__table li:nth-child(1) .loan__price span {
    font-size: calc(60 / 1300 * 100vw)
  }

  .loan__table li:nth-child(2) {
    display: flex;
    align-items: center;
    width: calc(465 / 1300 * 100vw);
    border: calc(3 / 1300 * 100vw) solid #f07850
  }

  .loan__table li:nth-child(2) .loan__circle {
    margin-right: calc(10 / 1300 * 100vw);
    width: calc(60 / 1300 * 100vw);
    height: calc(60 / 1300 * 100vw)
  }

  .loan__table li:nth-child(2) .loan__circle p {
    font-size: calc(16 / 1300 * 100vw)
  }

  .loan__table li:nth-child(2) .loan__price {
    font-size: calc(16 / 1300 * 100vw);
    font-weight: 700
  }

  .loan__table li:nth-child(2) .loan__price span {
    font-size: calc(30 / 1300 * 100vw)
  }

  .loan__table__div1 {
    align-self: stretch;
    width: 16.15vw;
    height: 100%
  }

  .loan__table__div1>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 .7em;
    height: 50%;
    border-bottom: none
  }

  .loan__table__div1>div:nth-of-type(1) {
    border-bottom: calc(3 / 1300 * 100vw) solid #f07850;
    height: 70%;
  }

  .loan__price__label {
    font-size: calc(16 / 1300 * 100vw)
  }


  .loan__table__div1>div:nth-child(2) {
    height: 30%;
  }

  .loan__table__div1>div:nth-child(2) .loan__price__label {
    font-size: calc(10 / 1300 * 100vw);
  }

  .loan__table__div1>div:nth-child(2) .loan__price {
    font-size: calc(10 / 1300 * 100vw);
  }

  .loan__table__div1>div:nth-child(2) .loan__price span {
    font-size: calc(10 / 1300 * 100vw);
  }

  .loan__table__div2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    padding: 0 calc(15 / 1300 * 100vw);
    width: calc(100% - 16.15vw);
    height: 100%;
    border-left: calc(3 / 1300 * 100vw) solid #f07850
  }

  .loan__list {
    display: flex;
    align-items: center;
    flex-wrap: wrap
  }

  .loan__list li {
    margin-right: 1em;
    font-size: calc(14 / 1300 * 100vw)
  }

  #concept .loan__list li {
    font-size: calc(14 / 1300 * 100vw)
  }

  .loan__list li:last-child {
    margin-right: 0
  }
}

@media screen and (min-width: 1279px) {
  .loan__head {
    font-size: 24px;
    font-size: 2.4rem
  }

  .loan__table li {
    height: 115px
  }

  .loan__table li:nth-child(1) {
    width: 270px;
    height: 115px
  }

  .loan__table li:nth-child(1) .loan__circle {
    width: 70px;
    height: 70px
  }

  .loan__table li:nth-child(1) .loan__circle p {
    font-size: 18px;
    font-size: 1.8rem
  }

  .loan__table li:nth-child(1) .loan__price {
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem
  }

  .loan__table li:nth-child(1) .loan__price span {
    font-size: 60px;
    font-size: 6rem
  }

  .loan__table li:nth-child(2) {
    width: 465px;
    border: 3px solid #f07850
  }

  .loan__table li:nth-child(2) .loan__circle {
    margin-right: 10px;
    width: 60px;
    height: 60px
  }

  .loan__table li:nth-child(2) .loan__circle p {
    font-size: 16px;
    font-size: 1.6rem
  }

  .loan__table li:nth-child(2) .loan__price {
    color: #f07850;
    font-size: 16px;
    font-size: 1.6rem
  }

  .loan__table li:nth-child(2) .loan__price span {
    font-size: 30px;
    font-size: 3rem
  }

  .loan__table__div1 {
    width: 210px
  }

  .loan__table__div1>div:nth-of-type(1) {
    border-bottom: 3px solid #f07850
  }

  .loan__price__label {
    font-size: 16px;
    font-size: 1.6rem
  }

  .loan__table__div1>div:nth-child(2) .loan__price__label {
    font-size: 14px;
    font-size: 1.4rem;
  }

  .loan__table__div1>div:nth-child(2) .loan__price {
    font-size: 14px;
    font-size: 1.4rem;
  }

  .loan__table__div1>div:nth-child(2) .loan__price span {
    font-size: 14px;
    font-size: 1.4rem;
  }

  .loan__table__div2 {
    padding: 0 15px;
    width: calc(100% - 210px);
    border-left: 3px solid #f07850
  }

  .loan__list li {
    font-size: 14px;
    font-size: 1.4rem
  }

  #concept .loan__list li {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.company__idea__content {
  margin-bottom: calc(40 / 750 * 100vw)
}

.company__idea__image {
  position: relative
}

.company__idea__ceo {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1em 0;
  width: 100%;
  background-color: rgba(51, 51, 51, 0.8);
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  text-align: center
}

.company__idea__ceo span {
  margin-left: 2em;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .company__idea {
    display: flex;
    width: calc(900 / 1300 * 100vw)
  }

  .company__idea__image {
    width: calc(100% - 42.31vw)
  }

  .company__idea__content {
    margin: 0 3.85vw 0 0;
    width: 38.46vw
  }

  .company__idea__ceo {
    font-size: calc(16 / 1300 * 100vw)
  }

  .company__idea__ceo span {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .company__idea {
    width: 900px
  }

  .company__idea__image {
    width: calc(100% - 550px)
  }

  .company__idea__content {
    margin: 0 50px 0 0;
    width: 500px
  }

  .company__idea__ceo {
    font-size: 16px;
    font-size: 1.6rem
  }

  .company__idea__ceo span {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.company__promise {
  margin-bottom: calc(40 / 750 * 100vw);
  padding: 1.5em 0;
  background-color: #f5ede1
}

.company__promise dt {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(145 / 750 * 100vw);
  text-align: center
}

.company__promise dt img {
  width: calc(170 / 750 * 100vw);
  height: auto
}

.company__promise dt:after {
  content: '';
  position: absolute;
  display: inline-block;
  background-image: url(../img/company/promise_line_sp.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: calc(116 / 750 * 100vw);
  height: calc(4 / 750 * 100vw)
}

.company__promise dd {
  padding: 1em 1.5em 1.5em 1.5em;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (max-width: 750px) {
  .company__promise dt:after {
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}

@media screen and (min-width: 751px) {
  .company__promise {
    display: flex;
    align-items: center;
    margin-bottom: calc(10 / 750 * 100vw)
  }

  .company__promise dt {
    align-self: stretch;
    width: 12.31vw;
    height: auto
  }

  .company__promise dt img {
    width: calc(87 / 1300 * 100vw)
  }

  .company__promise dt:after {
    content: '';
    top: 50%;
    right: 0;
    background-image: url(../img/company/promise_line.png);
    width: calc(2 / 1300 * 100vw);
    height: calc(60 / 1300 * 100vw);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }

  .company__promise dd {
    padding: 0 3em;
    width: calc(100% - 12.31vw);
    height: auto;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .company__promise {
    display: flex;
    margin-bottom: 10px
  }

  .company__promise dt {
    width: 160px;
    height: auto
  }

  .company__promise dt img {
    width: 87px
  }

  .company__promise dt:after {
    width: 2px;
    height: 60px
  }

  .company__promise dd {
    width: calc(100% - 160px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.company__sec__thought {
  position: relative;
  padding: calc(80 / 750 * 100vw) 0
}

.company__sec__thought:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(2320 / 750 * 100vw);
  background-image: url(../img/company/bg_sp.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center
}

.company__thought__box {
  margin: 0 auto;
  padding: 2em;
  width: 100%;
  background-color: #fff
}

@media screen and (min-width: 751px) {
  .company__sec__thought {
    padding: calc(50 / 1300 * 100vw) 0
  }

  .company__sec__thought:before {
    height: calc(820 / 1300 * 100vw);
    background-image: url(../img/company/bg.jpg)
  }

  .company__thought__box {
    padding: 2.5em 3em;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .company__sec__thought {
    padding: 50px 0
  }

  .company__sec__thought:before {
    height: 820px
  }

  .company__thought__box {
    width: 800px
  }
}

.company__outline {
  margin: 0 auto;
  width: 100%
}

.company__outline th {
  padding: 1em 0 .5em 0;
  width: 100%;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: left;
  line-height: 1.8em;
  vertical-align: top
}

.company__outline td {
  padding-bottom: 1em;
  width: 100%;
  border-bottom: 1px solid #333;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (min-width: 751px) {
  .company__outline {
    width: calc(800 / 1300 * 100vw)
  }

  .company__outline th {
    padding: 1em 2em;
    width: 15.38vw;
    border-bottom: 3px solid #333;
    font-size: calc(18 / 1300 * 100vw)
  }

  .company__outline td {
    padding: 1em 2em;
    width: calc(100% - 15.38vw);
    border-bottom: 1px solid #333;
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .company__outline {
    width: 800px
  }

  .company__outline th {
    width: 200px;
    font-size: 18px;
    font-size: 1.8rem
  }

  .company__outline td {
    width: calc(100% - 200px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

@media screen and (max-width: 750px) {

  .company__outline th,
  .company__outline td {
    display: block
  }
}

.outline-list li {
  padding-left: 1em;
  text-indent: -1em
}

.outline-list li:before {
  content: '・'
}

.showroom__intro__image {
  margin-bottom: 4vw
}

.showroom__intro__head {
  margin: 1em 0;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .showroom__intro {
    display: flex
  }

  .showroom__intro__image {
    margin-bottom: 0;
    margin-right: 2.86vw;
    width: calc(480 / 1300 * 100vw)
  }

  .showroom__intro__content {
    width: calc(100% - 37.14vw)
  }

  .showroom__intro__head {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .showroom__intro__image {
    margin-right: 40px;
    width: 480px
  }

  .showroom__intro__content {
    width: calc(100% - 480px - 40px)
  }

  .showroom__intro__head {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.showroom__gallery a {
  display: block;
  margin-bottom: 4vw
}

.showroom__gallery__sub {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4vw
}

.showroom__gallery__sub a {
  display: block;
  margin-left: 4vw;
  margin-bottom: 4vw;
  width: calc(50% - 4vw)
}

@media screen and (min-width: 751px) {
  .showroom__gallery {
    display: flex;
    flex-wrap: wrap;
    margin-left: -2.86vw
  }

  .showroom__gallery,
  .showroom__gallery__sub {
    margin-left: -2.86vw
  }

  .showroom__gallery a {
    margin-left: 2.86vw;
    margin-bottom: 3.85vw;
    width: calc(50% - 2.86vw)
  }

  .showroom__gallery__sub a {
    margin-left: 2.86vw;
    margin-bottom: 3.85vw;
    width: calc(33.33333% - 2.86vw)
  }
}

@media screen and (min-width: 1279px) {

  .showroom__gallery,
  .showroom__gallery__sub {
    margin-left: -40px
  }

  .showroom__gallery a {
    margin-left: 40px;
    margin-bottom: 40px;
    width: calc(50% - 40px)
  }

  .showroom__gallery__sub a {
    margin-left: 40px;
    margin-bottom: 40px;
    width: calc(33.33333% - 40px)
  }
}

.concept__hero {
  position: relative
}

.concept__hero__baloon,
.concept__hero__flower {
  display: none
}

@media screen and (min-width: 751px) {
  .concept__hero__baloon {
    position: absolute;
    display: block;
    top: 0;
    right: -8.08vw;
    width: calc(203 / 1300 * 100vw)
  }

  .concept__hero__flower {
    position: absolute;
    display: block;
    bottom: calc(30 / 1300 * 100vw);
    left: -5.77vw;
    width: calc(108 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .concept__hero__baloon {
    right: -105px;
    width: 203px
  }

  .concept__hero__flower {
    bottom: 30px;
    left: -75px;
    width: 108px
  }
}

.concept__loan {
  position: relative;
  background-color: #ffe5dc;
  margin-left: -4.27vw;
  margin-bottom: calc(80 / 750 * 100vw);
  padding: calc(35 / 750 * 100vw) 4.27vw;
  width: calc(100% + 4.27vw + 4.27vw);
  text-align: center
}

@media screen and (min-width: 751px) {
  .concept__loan {
    position: relative;
    top: -7.31vw;
    background-color: #ffe5dc;
    margin: 0 auto;
    margin-bottom: -5vw;
    padding: 1.92vw 2.31vw;
    width: calc(800 / 1300 * 100vw);
    text-align: center
  }
}

@media screen and (min-width: 1279px) {
  .concept__loan {
    top: -95px;
    margin-bottom: -65px;
    padding: 25px 30px;
    width: 800px
  }
}

.concept__3div__container {
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

.concept__3div {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.73vw
}

.concept__3div>div {
  margin-left: 1.73vw;
  width: calc(33.33333% - 1.73vw)
}

@media screen and (min-width: 751px) {
  .concept__3div__container {
    margin-left: 0;
    width: 100%
  }

  .concept__3div {
    margin-left: -1.54vw
  }

  .concept__3div>div {
    margin-left: 1.54vw;
    width: calc(33.33333% - 1.54vw)
  }
}

@media screen and (min-width: 1279px) {
  .concept__3div {
    margin-left: -20px
  }

  .concept__3div>div {
    margin-left: 20px;
    width: calc(33.33333% - 20px)
  }
}

.concept__gaikan__image {
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

.concept__gaikan__content {
  margin-bottom: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .concept__gaikan {
    display: flex
  }

  .concept__gaikan__image {
    margin-left: 3.08vw;
    width: 35.38vw
  }

  .concept__gaikan__content {
    margin: 0;
    width: calc(100% - 35.38vw - 3.08vw)
  }
}

@media screen and (min-width: 1279px) {
  .concept__gaikan__image {
    margin-left: 40px;
    width: 460px
  }

  .concept__gaikan__content {
    width: calc(100% - 460px - 40px)
  }
}

.concept__efforts__image {
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

.concept__efforts__content {
  margin-top: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .concept__efforts {
    display: flex
  }

  .concept__efforts__image {
    margin-left: 0;
    margin-right: 3.08vw;
    width: 35.38vw
  }

  .concept__efforts__content {
    margin: 0;
    width: calc(100% - 35.38vw - 3.08vw)
  }
}

@media screen and (min-width: 1279px) {
  .concept__efforts__image {
    margin-right: 40px;
    width: 460px
  }

  .concept__efforts__content {
    width: calc(100% - 460px - 40px)
  }
}

.concept__sec__gallery {
  padding: 10.67vw 0;
  background-image: url(../img/concept/bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.concept__gallery__head {
  position: relative;
  top: -10.67vw;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-left: -4.27vw;
  padding-bottom: 1em;
  width: calc(100% + 4.27vw + 4.27vw);
  height: calc(160 / 750 * 100vw);
  background-color: #333;
  color: #fff;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1em
}

.concept__gallery__head span {
  position: relative
}

.concept__gallery__head span:after {
  content: '';
  position: absolute;
  top: -1em;
  right: -1em;
  display: inline-block;
  width: calc(62 / 750 * 100vw);
  height: calc(53 / 750 * 100vw);
  background-image: url(../img/concept/mark_sp.png);
  background-size: contain
}

.concept__gallery {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.67vw
}

.concept__gallery a {
  margin-left: 2.67vw;
  margin-bottom: 2.67vw;
  width: calc(50% - 2.67vw)
}

@media screen and (min-width: 751px) {
  .concept__sec__gallery {
    padding: 12.69vw 0 10.77vw 0
  }

  .concept__gallery__head {
    position: relative;
    top: -16.15vw;
    margin: 0 auto;
    margin-bottom: -10vw;
    width: calc(80 / 1300 * 100vw);
    height: calc(8 / 1300 * 100vw);
    font-size: calc(24 / 1300 * 100vw)
  }

  .concept__gallery__head span:after {
    width: calc(32 / 1300 * 100vw);
    height: calc(27 / 1300 * 100vw);
    background-image: url(../img/concept/mark.png)
  }

  .concept__gallery {
    margin-left: -1vw
  }

  .concept__gallery a {
    margin-left: 1vw;
    margin-bottom: 1vw;
    width: calc(25% - 1vw)
  }
}

@media screen and (min-width: 1279px) {
  .concept__sec__gallery {
    padding: 165px 0 140px 0
  }

  .concept__gallery__head {
    top: -210px;
    margin-bottom: -130px;
    width: 800px;
    height: 80px;
    font-size: 24px;
    font-size: 2.4rem
  }

  .concept__gallery__head span {
    position: relative
  }

  .concept__gallery__head span:after {
    width: 32px;
    height: 27px
  }

  .concept__gallery {
    margin-left: -13px
  }

  .concept__gallery a {
    margin-left: 13px;
    margin-bottom: 13px;
    width: calc(25% - 13px)
  }
}

.guarantee__hoken__content {
  margin-bottom: calc(40 / 750 * 100vw)
}

.guarantee__hoken__image {
  position: relative;
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

@media screen and (min-width: 751px) {
  .guarantee__hoken {
    display: flex
  }

  .guarantee__hoken__image {
    margin-left: 0;
    width: calc(100% - 40vw)
  }

  .guarantee__hoken__content {
    margin: 0 1.54vw 0 0;
    width: 38.46vw
  }
}

@media screen and (min-width: 1279px) {
  .guarantee__hoken__image {
    width: calc(100% - 520px)
  }

  .guarantee__hoken__content {
    margin: 0 20px 0 0;
    width: 500px
  }
}

.guarantee__performance {
  position: relative;
  margin-bottom: calc(160 / 750 * 100vw)
}

.guarantee__performance:after {
  content: '';
  position: absolute;
  bottom: -12vw;
  left: 50%;
  display: inline-block;
  background-image: url(../img/guarantee/line_sp.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: calc(690 / 750 * 100vw);
  height: calc(38 / 750 * 100vw);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.guarantee__performance:last-of-type:after {
  content: none
}

.guarantee__performance__content {
  margin-bottom: calc(40 / 750 * 100vw)
}

.guarantee__performance__image {
  position: relative
}

.guarantee__performance__head {
  margin-bottom: 1em;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 751px) {
  .guarantee__performance {
    display: flex;
    margin-bottom: calc(110 / 1300 * 100vw)
  }

  .guarantee__performance:after {
    bottom: -3.46vw;
    background-image: url(../img/guarantee/line.png);
    width: calc(376 / 1300 * 100vw);
    height: calc(10 / 1300 * 100vw)
  }

  .guarantee__performance__image {
    width: calc(100% - 40vw)
  }

  .guarantee__performance__content {
    margin: 0 1.54vw 0 0;
    width: 38.46vw
  }

  .guarantee__performance__head {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .guarantee__performance {
    margin-bottom: 110px
  }

  .guarantee__performance:after {
    bottom: -45px;
    width: 376px;
    height: 10px
  }

  .guarantee__performance__image {
    width: calc(100% - 520px)
  }

  .guarantee__performance__content {
    margin: 0 20px 0 0;
    width: 500px
  }

  .guarantee__performance__head {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.flow__step__bar__container {
  margin-bottom: calc(40 / 750 * 100vw)
}

.flow__step__bar__sp {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: calc(45 / 750 * 100vw);
  padding: 0 1em;
  height: calc(120 / 750 * 100vw);
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

.flow__step__bar__sp:after {
  content: '';
  position: absolute;
  top: 0;
  right: -8vw;
  border-left: 8vw solid #e8fcf2;
  border-top: calc(60 / 750 * 100vw) solid transparent;
  border-bottom: calc(60 / 750 * 100vw) solid transparent;
  z-index: 2
}

.flow__step__bar1 .flow__step__bar__sp {
  width: calc(630 / 750 * 100vw);
  background-color: #5ab486;
  color: #fff
}

.flow__step__bar1 .flow__step__bar__sp:after {
  border-left: 8vw solid #5ab486
}

.flow__step__bar2 .flow__step__bar__sp {
  width: calc(630 / 750 * 100vw);
  background-color: #e8fcf2;
  color: #5ab486
}

.flow__step__bar2 .flow__step__bar__sp:after {
  border-left: 8vw solid #e8fcf2
}

.flow__step__bar3 .flow__step__bar__sp {
  width: 100%;
  background-color: #5ab486;
  color: #fff
}

.flow__step__bar3 .flow__step__bar__sp:after {
  content: none
}

@media screen and (min-width: 751px) {
  .flow__step__bar {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%
  }

  .flow__step__bar li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4.62vw;
    font-size: calc(16 / 1300 * 100vw);
    font-weight: 700
  }

  .flow__step__bar li:after {
    content: '';
    position: absolute;
    top: 0;
    right: -2vw;
    border-left: 2vw solid #e8fcf2;
    border-top: 2.31vw solid transparent;
    border-bottom: 2.31vw solid transparent;
    z-index: 2
  }

  .flow__step__bar li:nth-child(1) {
    width: 34.23vw;
    background-color: #5ab486;
    color: #fff
  }

  .flow__step__bar li:nth-child(1):after {
    border-left: 2vw solid #5ab486
  }

  .flow__step__bar li:nth-child(2) {
    width: 26.54vw;
    background-color: #e8fcf2;
    color: #5ab486
  }

  .flow__step__bar li:nth-child(2):after {
    border-left: 2vw solid #e8fcf2
  }

  .flow__step__bar li:nth-child(3) {
    width: calc(100% - 34.23vw - 26.54vw);
    background-color: #5ab486;
    color: #fff
  }

  .flow__step__bar li:nth-child(3):after {
    content: none
  }
}

@media screen and (min-width: 1279px) {
  .flow__step__bar li {
    height: 60px;
    font-size: 16px;
    font-size: 1.6rem
  }

  .flow__step__bar li:after {
    right: -26px;
    border-left: 26px solid #e8fcf2;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent
  }

  .flow__step__bar li:nth-child(1) {
    width: 445px
  }

  .flow__step__bar li:nth-child(1):after {
    border-left: 26px solid #5ab486
  }

  .flow__step__bar li:nth-child(2) {
    width: 345px
  }

  .flow__step__bar li:nth-child(2):after {
    border-left: 26px solid #e8fcf2
  }

  .flow__step__bar li:nth-child(3) {
    width: calc(100% - 445px - 345px)
  }
}

.flow__step__navi {
  position: relative;
  display: flex;
  justify-content: space-between
}

.flow__step__navi__border {
  position: absolute;
  top: calc(72 / 750 * 100vw);
  left: 0;
  width: 100%;
  height: calc(6 / 1300 * 100vw);
  background-color: #333;
  z-index: 1
}

.flow__step__navi a {
  position: relative;
  width: calc(140 / 750 * 100vw);
  z-index: 2
}

.flow__step__navi a:hover {
  opacity: 0.9
}

.flow__step__bar3 .flow__step__navi {
  width: 50%
}

@media screen and (min-width: 751px) {
  .flow__step__navi {
    margin-bottom: 0
  }

  .flow__step__navi a {
    width: calc(70 / 1300 * 100vw)
  }

  .flow__step__navi__border {
    top: calc(33 / 1300 * 100vw);
    height: calc(3 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .flow__step__navi a {
    width: 70px
  }

  .flow__step__navi__border {
    top: 33px;
    height: 3px
  }
}

.flow__step__navi__head {
  margin-top: 1em;
  color: #333;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  line-height: calc(140 / 750 * 100vw);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl
}

@media screen and (min-width: 751px) {
  .flow__step__navi__head {
    font-size: calc(18 / 1300 * 100vw);
    line-height: calc(70 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .flow__step__navi__head {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 70px
  }
}

.flow__step__num {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(140 / 750 * 100vw);
  height: calc(140 / 750 * 100vw);
  border-radius: 50%
}

.flow__step__num p {
  margin-top: .3em;
  font-family: "Noteworthy", sans-serif;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4em;
  letter-spacing: 0
}

.flow__step__num span {
  font-size: calc(48 / 750 * 100vw)
}

.flow__step__num--main {
  background-color: #333;
  color: #fff
}

.flow__step__num--thin {
  background-color: #d2d2d2;
  color: #333
}

@media screen and (min-width: 751px) {
  .flow__step__num {
    width: calc(70 / 1300 * 100vw);
    height: calc(70 / 1300 * 100vw)
  }

  .flow__step__num p {
    font-size: calc(16 / 1300 * 100vw)
  }

  .flow__step__num p span {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .flow__step__num {
    width: 70px;
    height: 70px
  }

  .flow__step__num p {
    font-size: 16px;
    font-size: 1.6rem
  }

  .flow__step__num p span {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.flow__step__box {
  position: relative;
  margin: 0 0 calc(70 / 750 * 100vw) 0;
  padding: calc(50 / 750 * 100vw) calc(30 / 750 * 100vw);
  border: calc(6 / 750 * 100vw) solid #333
}

.flow__step__box__content {
  margin: calc(45 / 750 * 100vw) 0
}

.flow__step__box__image img {
  border-radius: 50%
}

@media screen and (min-width: 751px) {
  .flow__step__box {
    display: flex;
    justify-content: space-between;
    margin: 0 0 calc(30 / 1300 * 100vw) 0;
    padding: calc(30 / 1300 * 100vw);
    border: calc(3 / 1300 * 100vw) solid #333
  }

  .flow__step__box__content {
    margin: 1em 0 0 0;
    width: calc(470 / 1300 * 100vw)
  }

  .flow__step__box__image {
    width: calc(320 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .flow__step__box {
    margin: 0 0 30px 0;
    padding: 30px;
    border: 3px solid #333
  }

  .flow__step__box__content {
    width: 470px
  }

  .flow__step__box__image {
    width: 320px
  }
}

.lineup__image {
  margin: 0 0 6.67vw -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw)
}

@media screen and (min-width: 751px) {
  .lineup {
    display: flex
  }

  .lineup__image {
    margin: 0 2.31vw 0 0;
    width: 37.69vw
  }

  .lineup__content {
    width: calc(100% - 40vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__image {
    margin-right: 30px;
    width: 490px
  }

  .lineup__content {
    width: calc(100% - 520px)
  }
}

.lineup__catch {
  margin: 1em 0 .7em 0;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

.lineup__price__head {
  display: block;
  padding: .5em 0;
  background-color: #000;
  color: #fff;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

/*  front -- > #movie
-------------------------------------------------------------------------------*/
/* ------------------------------------------- section - */
.sec--movie {
  padding: 0 0 17.33333vw 0;
  z-index: 2;
  position: relative;
}

.sec--movie:after {
  content: '';
  /*position: absolute;*/
  display: block;
  top: 100%;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8vw 100vw 0 0;
  border-color: #fff transparent transparent transparent;
  z-index: 2;
}

@media screen and (min-width: 751px) {
  .sec--movie {
    padding: 0 0 3.47222vw 0;
  }

  .sec--movie:after {
    border-width: 8.33333vw 100vw 0 0;
  }
}

@media screen and (min-width: 1201px) {
  .sec--movie {
    padding: 0 0 50px 0;
  }

  .sec--movie:after {
    content: none;
  }
}

/* ------------------------------------------- content - */
.movie-headbox {
  position: relative;
  top: -9.33333vw;
  margin: 0 auto -9.33333vw auto;
  padding: 9.33333vw 0 10vw 0;
  width: 92vw;
  background-color: #fff;
}

@media screen and (min-width: 751px) {
  .movie-headbox {
    top: -5.55556vw;
    margin: 0 auto -5.55556vw auto;
    padding: 2.77778vw 0 5.20833vw 0;
    width: 55.55556vw;
  }
}

@media screen and (min-width: 1201px) {
  .movie-headbox {
    top: -80px;
    margin: 0 auto -80px auto;
    padding: 40px 0 75px 0;
    width: 800px;
  }
}

.movie-front-image {
  border: 0.8vw solid #ccc0b2;
  margin-bottom: 4.66667vw;
}

.movie-front-title {
  padding: .5em 0 .5em .3em;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: .3em;
}

@media screen and (min-width: 751px) {
  .movie-front-image {
    border: 0.20833vw solid #ccc0b2;
    margin-bottom: 1.04167vw;
  }

  .movie-front-title {
    font-size: 1.25vw;
  }
}

@media screen and (min-width: 1201px) {
  .movie-front-image {
    border: 3px solid #ccc0b2;
    margin-bottom: 15px;
  }

  .movie-front-title {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.movie-more-btn {
  margin: 6.66667vw 0 2.66667vw 0;
  text-align: center;
}

.movie-more-btn p {
  position: relative;
  display: inline-block;
  color: #6cb52a;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 10.66667vw;
}

.movie-more-btn p span {
  position: relative;
}

.movie-more-btn p:before {
  content: '';
  position: absolute;
  top: 50%;
  left: -14.66667vw;
  display: inline-block;
  width: 10.66667vw;
  height: 10.66667vw;
  background-image: url(../img/common/circle-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.movie-more-btn span:before,
.movie-more-btn span:after {
  content: '';
  position: absolute;
  left: 42vw;
  top: 50%;
  height: 1px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: .3s;
}

.movie-more-btn span:before {
  width: 8vw;
  background-color: #c6eda3;
  z-index: 2;
}

.movie-more-btn span:after {
  width: 16vw;
  background-color: #6cb52a;
  z-index: 1;
}

.movie-archive a:hover span:before,
.movie-archive a:hover span:after {
  transform: translateX(0.5em);
}

@media screen and (min-width: 751px) {
  .movie-more-btn {
    margin: 2.08333vw 0 0 0;
  }

  .movie-more-btn p {
    font-size: 1.25vw;
  }

  .movie-more-btn p:before {
    left: -3.68056vw;
    width: 2.77778vw;
    height: 2.77778vw;
  }

  .movie-more-btn span:before,
  .movie-more-btn span:after {
    left: 11.11111vw;
  }

  .movie-more-btn span:before {
    width: 2.08333vw;
  }

  .movie-more-btn span:after {
    width: 4.16667vw;
  }
}

@media screen and (min-width: 1201px) {
  .movie-more-btn {
    margin: 30px 0 0 0;
  }

  .movie-more-btn p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 40px;
  }

  .movie-more-btn p:before {
    left: -53px;
    width: 40px;
    height: 40px;
  }

  .movie-more-btn span:before,
  .movie-more-btn span:after {
    left: 160px;
  }

  .movie-more-btn span:before {
    width: 30px;
  }

  .movie-more-btn span:after {
    width: 60px;
  }
}

@media screen and (min-width: 751px) {
  .movie-slide .slick-slide {
    display: block;
  }

  .movie-slide {
    display: flex;
    margin-left: -1.38889vw;
  }

  .movie-slide li {
    margin-left: 1.38889vw;
    width: calc(33.33333% - 1.38889vw);
  }
}

@media screen and (min-width: 1201px) {
  .movie-slide {
    margin-left: -20px;
  }

  .movie-slide li {
    margin-left: 20px;
    width: calc(33.33333% - 20px);
  }
}

/* ---------------------------------- ホバー画像拡大 */
.img--scale {
  width: 100%;
  height: auto;
  overflow: hidden;
}

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

.img--scale__on,
.movie-front a:hover .img--scale img,
.movie-archive a:hover .img--scale img,
.service-slide>li:hover .img--scale:before,
.service a:hover .img--scale img,
.update-event a:hover .img--scale img,
.event-archive a:hover .img--scale img,
.update-blog a:hover .img--scale img,
.relation-blog a:hover .img--scale img,
.blog-archive a:hover .img--scale img,
.works-post a:hover .img--scale img,
.works-archive a:hover .img--scale img,
.works-single-point li:hover .img--scale img,
.lineup a:hover .img--scale img,
.lineup-single-point>li a:hover .img--scale img,
.staff a:hover .img--scale img,
.voice-archive a:hover .voice-archive-image img,
.recruit a:hover .img--scale img,
.recruit-single-pr-image a:hover .img--scale img,
.recruit-single-gallery li a:hover .img--scale img,
.partner a:hover .partner-image .img--scale img,
.partner-single-pr-image a:hover .img--scale img,
.partner-single-gallery li a:hover .img--scale img {
  transform: scale(1.1, 1.1);
  cursor: pointer;
}

/* ------------------------------------------- sp slick - */
@media screen and (max-width: 750px) {
  .movie-slide .slick-slide {
    margin: 0.66667vw;
  }

  .movie-slide-dots button {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .movie-slide-dots {
    position: absolute;
    bottom: -10vw;
    left: 50%;
    display: flex;
    justify-content: space-between;
    width: 17.33333vw;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .movie-slide-dots li {
    display: inline-block;
    width: 2vw;
    height: 2vw;
  }

  .movie-slide-dots li button {
    position: relative;
    text-indent: -9999px;
  }

  .movie-slide-dots li button:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 2vw;
    height: 2vw;
    background-color: #cccccc;
    border-radius: 50%;
  }

  .movie-slide-dots li.slick-active button:before {
    background-color: #382b25;
  }

  .movie-slide-slide {
    position: relative;
  }

  .movie-slide-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 10;
  }

  .movie-slide-arrow:before {
    content: '';
    display: inline-block;
    width: 10.4vw;
    height: 10.4vw;
    background-size: contain;
    background-repeat: no-repeat;
  }

  .movie-slide-arrow--prev {
    left: -4vw;
  }

  .movie-slide-arrow--next {
    right: -4vw;
  }

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

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

.movie-btn {
  margin: 20vw auto 0 0;
  width: 84vw;
}

@media screen and (min-width: 751px) {
  .movie-btn {
    margin: 4.16667vw auto 0 auto;
    width: 28.47222vw;
  }
}

@media screen and (min-width: 1201px) {
  .movie-btn {
    margin: 60px auto 0 auto;
    width: 410px;
  }
}

.lineup__price__content {
  padding: 3.33vw 0 4.00vw 0;
  background-color: #fff;
  border: 1px solid #333;
}

.lineup__price {
  margin-left: -4.27vw;
  width: calc(100% + 4.27vw + 4.27vw);
}

.lineup__price__label {
  margin-bottom: 1em;
  color: #333;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
}

.lineup__price__num {
  color: #333;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
}

.lineup__price__num span {
  margin-right: .2em;
  font-family: "langdon", sans-serif;
  font-size: calc(96 / 750 * 100vw);
  letter-spacing: .1em;
  color: #f50301;
}

.lineup__price__rate {
  color: #ccc;
  text-align: center
}

@media screen and (min-width: 751px) {
  .lineup__catch {
    margin: 1em 0 1.5em 0;
    font-size: calc(24 / 1300 * 100vw)
  }

  .lineup__price__head {
    font-size: calc(18 / 1300 * 100vw)
  }

  .lineup__price__content {
    padding: 1.54vw 2.69vw 1.92vw 2.69vw
  }

  .lineup__price__container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }

  .lineup__price__content .detail p {
    line-height: 140%;
  }

  .lineup__price {
    margin-left: 0;
    width: 100%
  }

  .lineup__price__label {
    margin-bottom: 0;
    font-size: calc(18 / 1300 * 100vw)
  }

  .lineup__price__num {
    font-size: calc(24 / 1300 * 100vw)
  }

  .lineup__price__num span {
    font-size: calc(48 / 1300 * 100vw)
  }

  .lineup__price__rate {
    font-size: calc(13 / 1300 * 100vw);
    text-align: right;
    line-height: 1.4em
  }
}

@media screen and (min-width: 1279px) {
  .lineup__catch {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup__price__head {
    font-size: 18px;
    font-size: 1.8rem
  }

  .lineup__price__content {
    padding: 20px 35px 25px 35px
  }

  .lineup__price__label {
    font-size: 18px;
    font-size: 1.8rem
  }

  .lineup__price__num {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup__price__num span {
    font-size: 48px;
    font-size: 4.8rem
  }

  .lineup__price__rate {
    font-size: 13px;
    font-size: 1.3rem
  }
}

@media screen and (max-width: 1280px) {
  #lineup-standard .lineup__content h3 img {
    width: calc(380 / 1300 * 100vw);
    height: auto
  }

  #lineup-match .lineup__content h3 img {
    width: calc(260 / 1300 * 100vw);
    height: auto
  }

  #lineup-vertical .lineup__content h3 img {
    width: calc(302 / 1300 * 100vw);
    height: auto
  }

  #lineup-bungalow .lineup__content h3 img {
    width: calc(384 / 1300 * 100vw);
    height: auto
  }
}

@media screen and (max-width: 750px) {

  #lineup-standard .lineup__content h3 img,
  #lineup-bungalow .lineup__content h3 img {
    width: 100%;
    height: auto
  }

  #lineup-match .lineup__content h3 img {
    width: calc(520 / 750 * 100vw);
    height: auto
  }

  #lineup-vertical .lineup__content h3 img {
    width: calc(604 / 750 * 100vw);
    height: auto
  }

  #lineup-calbun .lineup__content h3 img {
    width: 100%;
    height: auto
  }

  #lineup-dandan .lineup__content h3 img {
    width: 100%;
    height: auto
  }

  #lineup-lospa .lineup__content h3 img {
    width: 100%;
    height: auto
  }

  #lineup-stash .lineup__content h3 img {
    width: 100%;
    height: auto
  }

  #lineup-luana .lineup__content h3 img {
    width: 100%;
    height: auto
  }

}

.lineup__product__catch {
  font-size: calc(44 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .lineup__product__catch {
    font-size: calc(24 / 1300 * 100vw);
    font-weight: 700;
    line-height: 1.6em
  }
}

@media screen and (min-width: 1279px) {
  .lineup__product__catch {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.lineup__sec__product {
  position: relative
}

.lineup__sec__product:after {
  content: '';
  position: absolute;
  top: calc(285 / 750 * 100vw);
  left: 0;
  width: 100%;
  height: calc(345 / 750 * 100vw);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1
}

.lineup__sec__product__standard:after {
  background-image: url(../img/lineup/standard/main_bg.jpg)
}

.lineup__sec__product__match:after {
  background-image: url(../img/lineup/match/main_bg.jpg)
}

.lineup__sec__product__bungalow:after {
  background-image: url(../img/lineup/bungalow/main_bg.jpg);
}

.lineup__sec__product__calvun:after {
  background-image: url(../img/lineup/calvun/main_bg.jpg);
}

.lineup__sec__product__dandan:after {
  background-image: url(../img/lineup/dandan/main_bg.jpg);
}

.lineup__sec__product__vertical:after {
  background-image: url(../img/lineup/vertical/main_bg.jpg);
}

.lineup__sec__product__lospa:after {
  background-image: url(../img/lineup/lospa/main_bg.jpg);
}

.lineup__sec__product__stash:after {
  background-image: url(../img/lineup/stash/main_bg.jpg);
}

.lineup__sec__product__luana:after {
  background-image: url(../img/lineup/luana/main_bg.jpg);
}

@media screen and (min-width: 751px) {
  .lineup__sec__product {
    position: relative
  }

  .lineup__sec__product:after {
    content: '';
    position: absolute;
    top: calc(145 / 1300 * 100vw);
    left: 0;
    width: 100%;
    height: calc(530 / 1300 * 100vw);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: -1
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__product {
    margin-bottom: 0
  }

  .lineup__sec__product:after {
    top: 145px;
    height: 530px
  }
}

.lineup__product__main__image {
  position: relative;
  margin-bottom: calc(100 / 750 * 100vw);
  width: 100%
}

.lineup__product__main__content {
  position: relative;
  margin-left: -4.27vw;
  padding: calc(80 / 750 * 100vw) 4.27vw;
  width: calc(100% + 4.27vw + 4.27vw);
  background-color: #fff
}

.lineup__product__main__head img {
  max-width: 100%;
  height: auto
}


.lineup__product__main__subhead {
  padding-left: .5em;
  text-indent: -.5em;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700
}

.lineup__product__main__subhead:before {
  content: '#'
}
  @media screen and (max-width: 767px) {
    .lineup__product__main__head img {
      max-height: 75px;
    }
  }

@media screen and (min-width: 751px) {
  .lineup__product__main__image {
    margin-bottom: 0;
    width: calc(715 / 1300 * 100vw)
  }

  .lineup__product__main__content {
    top: -11.92vw;
    margin-left: auto;
    padding: calc(40 / 1300 * 100vw) calc(50 / 1300 * 100vw);
    width: calc(500 / 1300 * 100vw)
  }

  .lineup__product__main__head img {
    max-width: 100%;
    height: auto
  }

  .lineup__product__main__subhead {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__product__main__image {
    position: relative;
    width: 715px
  }

  .lineup__product__main__content {
    position: relative;
    top: -155px;
    margin-left: auto;
    padding: 40px 50px;
    width: 500px;
    background-color: #fff
  }

  .lineup__product__main__head img {
    max-width: 100%;
    height: auto
  }

  .lineup__product__main__subhead {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 700
  }
}

.lineup__sec__concept {
  position: relative;
  padding: calc(100 / 750 * 100vw) 0;
  width: 100%;
  background-position: center center;
  background-size: cover
}

.lineup__sec__concept__standard {
  background-image: url(../img/lineup/standard/concept_bg_sp.jpg)
}

.lineup__sec__concept__match {
  background-image: url(../img/lineup/match/concept_bg_sp.jpg)
}

.lineup__sec__concept__bungalow {
  background-image: url(../img/lineup/bungalow/concept_bg_sp.jpg)
}

.lineup__sec__concept__vertical {
  background-image: url(../img/lineup/vertical/concept_bg_sp.jpg)
}

.lineup__product__concept__logo {
  margin: 0 auto;
  width: calc(290 / 750 * 100vw)
}

.lineup__product__concept__image {
  margin-bottom: calc(75 / 750 * 100vw);
  width: 100%
}

.lineup__product__concept2__image {
  margin-bottom: calc(75 / 750 * 100vw);
  width: 100%
}

.lineup__product__concept__head {
  font-size: calc(60 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4em
}

.lineup__product__concept__catch {
  display: inline-block;
  padding: .5em 1em;
  color: #fff;
  font-size: calc(36 / 750 * 100vw);
  font-style: italic;
  font-weight: 700;
  text-align: center
}

.lineup__product__concept__catch__standard {
  background-color: #c8a063
}

.lineup__product__concept__catch__match {
  background-color: #d7daa2
}

.lineup__product__concept__catch__bungalow {
  background-color: #5ab486
}

.lineup__product__concept__catch__vertical {
  background-color: #c3b386
}

@media screen and (min-width: 751px) {
  .lineup__sec__concept {
    position: relative;
    padding: calc(50 / 1300 * 100vw) 0 calc(165 / 1300 * 100vw) 0;
    width: 100%;
    background-position: center center;
    background-size: cover
  }

  .lineup__sec__concept__standard {
    background-image: url(../img/lineup/standard/concept_bg.jpg)
  }

  .lineup__sec__concept__match {
    background-image: url(../img/lineup/match/concept_bg.jpg)
  }

  .lineup__sec__concept__bungalow {
    background-image: url(../img/lineup/bungalow/concept_bg.jpg)
  }

  .lineup__sec__concept__vertical {
    background-image: url(../img/lineup/vertical/concept_bg.jpg)
  }

  .lineup__product__concept__logo {
    margin: 0 auto;
    width: calc(145 / 1300 * 100vw)
  }

  .lineup__product__concept {
    display: flex
  }

  .lineup__product__concept__image {
    margin-right: 3.08vw;
    margin-bottom: 0;
    width: 38.46vw
  }

  .lineup__product__concept__content {
    width: calc(100% - 41.54vw)
  }

  .lineup__product__concept2__image {
    margin-right: 0;
    margin-left: 3.08vw;
    margin-bottom: 0;
    width: 38.46vw;
    order: 2
  }

  .lineup__product__concept2__content {
    width: calc(100% - 41.54vw);
    order: 1
  }

  .lineup__product__concept__head {
    font-size: calc(30 / 1300 * 100vw)
  }

  .lineup__product__concept__catch {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__concept {
    padding: 50px 0 165px 0
  }

  .lineup__product__concept__logo {
    width: 145px
  }

  .lineup__product__concept__image {
    margin-right: 40px;
    width: 500px
  }

  .lineup__product__concept__content {
    width: calc(100% - 540px)
  }

  .lineup__product__concept2__image {
    margin-left: 40px;
    width: 500px
  }

  .lineup__product__concept2__content {
    width: calc(100% - 540px)
  }

  .lineup__product__concept__head {
    font-size: 30px;
    font-size: 3rem
  }

  .lineup__product__concept__catch {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup__sec__feature {
  position: relative;
  padding: calc(100 / 750 * 100vw) 0;
  width: 100%;
  background-image: url(../img/lineup/feature_bg.jpg);
  background-repeat: repeat;
  background-size: 100%
}

.lineup__feature__head {
  display: block;
  padding: .5em 1em;
  width: 100%;
  background-color: #333;
  color: #fff;
  font-size: calc(48 / 750 * 100vw);
  font-style: italic;
  font-weight: 500;
  text-align: center;
  line-height: 2em
}

.lineup__product__feature {
  padding: calc(45 / 750 * 100vw) calc(40 / 750 * 100vw);
  background-color: #fff
}

.lineup__product__feature__image {
  margin-bottom: calc(40 / 750 * 100vw);
  width: 100%
}

.lineup__bungalow__feature__item {
  position: relative;
  margin: 0 auto calc(120 / 750 * 100vw) auto;
  width: calc(420 / 750 * 100vw)
}

.lineup__bungalow__feature__head {
  position: absolute;
  bottom: -6.67vw;
  left: calc(36 / 750 * 100vw);
  padding: .7em 1em .7em 2em;
  width: 100%;
  text-indent: -1.25em;
  background-color: #333;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.8em
}

.lineup__bungalow__feature__head:before {
  padding: 0 .25em;
  content: '#'
}

@media screen and (min-width: 751px) {
  .lineup__sec__feature {
    position: relative;
    padding: calc(160 / 1300 * 100vw) 0;
    width: 100%;
    background-image: url(../img/lineup/feature_bg.jpg);
    background-repeat: repeat;
    background-size: 100%
  }

  .lineup__feature__head {
    position: absolute;
    top: -1.5em;
    left: 50%;
    display: inline-block;
    padding: .5em 1em;
    width: auto;
    background-color: #333;
    color: #fff;
    font-size: calc(24 / 1300 * 100vw);
    font-style: italic;
    font-weight: 500;
    line-height: 2em;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }

  .lineup__product__feature {
    display: flex;
    padding: calc(35 / 1300 * 100vw) calc(30 / 1300 * 100vw);
    background-color: #fff
  }

  .lineup__product__feature__image {
    margin-right: calc(30 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(460 / 1300 * 100vw)
  }

  .lineup__product__feature__content {
    width: calc(100% - 37.69vw)
  }

  #standard .lineup__product__feature__image {
    margin-right: calc(45 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(440 / 1300 * 100vw)
  }

  #standard .lineup__product__feature__content {
    width: calc(100% - 37.31vw)
  }

  #match .lineup__product__feature__image {
    margin-right: calc(30 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(410 / 1300 * 100vw)
  }

  #match .lineup__product__feature__content {
    width: calc(100% - 33.85vw)
  }

  #vertical .lineup__product__feature__image {
    margin-right: calc(65 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(352 / 1300 * 100vw)
  }

  #vertical .lineup__product__feature__content {
    width: calc(100% - 32.08vw)
  }

  .lineup__bungalow__feature {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 1.38vw)
  }

  .lineup__bungalow__feature__item {
    position: relative;
    margin: 0;
    width: calc(210 / 1300 * 100vw)
  }

  .lineup__bungalow__feature__head {
    bottom: -1.92vw;
    left: calc(18 / 1300 * 100vw);
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__feature {
    padding: 160px 0
  }

  .lineup__feature__head {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup__product__feature {
    padding: 35px 30px
  }

  .lineup__product__feature__image {
    margin-right: 30px;
    width: 460px
  }

  .lineup__product__feature__content {
    width: calc(100% - 490px)
  }

  #standard .lineup__product__feature__image {
    margin-right: 45px;
    width: 440px
  }

  #standard .lineup__product__feature__content {
    width: calc(100% - 485px)
  }

  #match .lineup__product__feature__image {
    margin-right: 30px;
    width: 410px
  }

  #match .lineup__product__feature__content {
    width: calc(100% - 440px)
  }

  #vertical .lineup__product__feature__image {
    margin-right: 65px;
    width: 352px
  }

  #vertical .lineup__product__feature__content {
    width: calc(100% - 417px)
  }

  .lineup__bungalow__feature {
    width: calc(100% - 18px)
  }

  .lineup__bungalow__feature__item {
    width: 210px
  }

  .lineup__bungalow__feature__head {
    bottom: -25px;
    left: 18px;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.lineup__sec__plan {
  position: relative;
  padding: calc(270 / 750 * 100vw) 0 calc(80 / 750 * 100vw) 0;
  width: 100%;
  background-size: 100%
}

.lineup__sec__plan__style1 {
  background-image: url(../img/lineup/plan1_bg.jpg);
  background-repeat: repeat-y
}

.lineup__sec__plan__style2 {
  background-image: url(../img/lineup/plan2_bg.jpg);
  background-repeat: repeat-y
}

.lineup__plan__style1,
.lineup__plan__style2 {
  padding: calc(40 / 750 * 100vw) calc(40 / 750 * 100vw);
  background-color: #fff;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1)
}

.lineup__plan__madori__standard {
  margin-bottom: calc(180 / 750 * 100vw)
}

.lineup__plan__madori__standard:last-of-type {
  margin-bottom: calc(120 / 750 * 100vw) !important
}

.lineup__plan__madori__standard__image {
  margin-bottom: calc(40 / 750 * 100vw)
}

.lineup__plan__madori__vertical>div {
  margin-bottom: calc(100 / 750 * 100vw)
}

.lineup__plan__madori__vertical>div:last-of-type {
  margin-bottom: 0
}

.lineup__plan__head {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #333;
  padding: .7em 0;
  width: 100%;
  color: #fff;
  font-size: calc(48 / 750 * 100vw);
  font-style: italic;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em
}

.lineup__plan__box {
  padding: calc(60 / 750 * 100vw) calc(25 / 750 * 100vw);
  border: calc(6 / 750 * 100vw) solid #333
}

.lineup__plan__box__style2 {
  margin-bottom: calc(120 / 750 * 100vw);
  padding: calc(115 / 750 * 100vw) calc(40 / 750 * 100vw);
  background-color: #c8a063;
  color: #fff !important
}

.lineup__plan__box__style2--black {
  background-color: #333
}

.lineup__plan__box__head {
  display: flex;
  align-items: flex-end;
  margin-bottom: calc(40 / 750 * 100vw);
  padding: 0 0 1em 0;
  border-bottom: calc(4 / 750 * 100vw) solid #333
}

.lineup__plan__box__style2 .lineup__plan__box__head {
  margin-bottom: calc(40 / 750 * 100vw);
  border-bottom: calc(4 / 750 * 100vw) solid #fff
}

.lineup__plan__box__head__en {
  font-size: calc(72 / 750 * 100vw);
  font-weight: 700
}

.lineup__plan__box__head__jp {
  margin-left: .5em;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

.lineup__plan__box__madori {
  margin-bottom: .5em;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

.lineup__plan__box__area {
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.7em
}

.lineup__plan__box__price {
  display: flex;
  justify-content: space-around;
  align-items: flex-end;
  margin-top: calc(50 / 750 * 100vw)
}

.lineup__plan__box__label {
  margin-right: .3em;
  font-size: calc(34 / 750 * 100vw);
  font-weight: 700
}

.lineup__plan__box__num {
  top: .15em;
  position: relative;
  font-family: din-2014-narrow, sans-serif;
  font-size: calc(124 / 750 * 100vw);
  font-weight: 800;
  letter-spacing: 0
}

.lineup__plan__box__unit {
  margin-left: .2em;
  font-size: calc(34 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.1em
}

@media screen and (min-width: 751px) {
  .lineup__sec__plan {
    position: relative;
    padding: calc(130 / 1300 * 100vw) 0 calc(80 / 1300 * 100vw) 0;
    width: 100%;
    background-size: 100%
  }

  .lineup__sec__plan__style1 {
    background-image: url(../img/lineup/plan1_bg.jpg);
    background-repeat: repeat-y
  }

  .lineup__plan__style1 {
    padding: calc(50 / 1300 * 100vw) calc(100 / 1300 * 100vw)
  }

  .lineup__plan__style2 {
    position: relative;
    margin-left: auto;
    padding: calc(80 / 1300 * 100vw) calc(45 / 1300 * 100vw) calc(80 / 1300 * 100vw) calc(290 / 1300 * 100vw);
    width: calc(895 / 1300 * 100vw)
  }

  .lineup__plan__madori__standard__container {
    margin-bottom: calc(165 / 1300 * 100vw)
  }

  .lineup__plan__madori__standard__container:last-of-type {
    margin-bottom: 0 !important
  }

  .lineup__plan__madori__standard {
    display: flex;
    margin-bottom: calc(80 / 1300 * 100vw)
  }

  .lineup__plan__madori__standard:last-of-type {
    margin-bottom: 0 !important
  }

  .lineup__plan__madori__standard>div {
    margin-bottom: 0;
    width: 50%
  }

  .lineup__plan__madori__standard__image {
    margin-bottom: 0
  }

  .lineup__plan__madori__standard__content {
    padding: 0 0 0 1.5em
  }

  .lineup__plan__madori__standard:nth-of-type(even) .lineup__plan__madori__standard__image {
    order: 2
  }

  .lineup__plan__madori__standard:nth-of-type(even) .lineup__plan__madori__standard__content {
    padding: 0 1.5em 0 0;
    order: 1
  }

  .lineup__plan__madori__vertical {
    display: flex
  }

  .lineup__plan__madori__vertical>div {
    margin-bottom: 0;
    width: 50%
  }

  .lineup__plan__head {
    font-size: calc(24 / 1300 * 100vw)
  }

  .lineup__plan__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: calc(15 / 1300 * 100vw) calc(20 / 1300 * 100vw);
    border: calc(3 / 1300 * 100vw) solid #333
  }

  .lineup__plan__box__style2 {
    position: absolute;
    top: calc(80 / 1300 * 100vw);
    left: -8.08vw;
    margin-bottom: 0;
    padding: calc(50 / 1300 * 100vw) calc(45 / 1300 * 100vw)
  }

  .lineup__plan__box__head {
    align-items: flex-end;
    margin-right: calc(15 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(205 / 1300 * 100vw);
    border-bottom: calc(2 / 1300 * 100vw) solid #333
  }

  .lineup__plan__box__style2 .lineup__plan__box__head {
    margin-bottom: 1em;
    border-bottom: calc(2 / 1300 * 100vw) solid #fff
  }

  .lineup__plan__box__head__en {
    font-size: calc(35 / 1300 * 100vw)
  }

  .lineup__plan__box__head__jp {
    margin-left: .5em;
    font-size: calc(17 / 1300 * 100vw)
  }

  .lineup__plan__box__breadth {
    width: calc(260 / 1300 * 100vw)
  }

  .lineup__plan__box__madori {
    margin-bottom: .5em;
    font-size: calc(18 / 1300 * 100vw)
  }

  .lineup__plan__box__area {
    font-size: calc(14 / 1300 * 100vw)
  }

  .lineup__plan__box__price {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-top: 0;
    width: calc(275 / 1300 * 100vw)
  }

  .lineup__plan__box__label {
    font-size: calc(18 / 1300 * 100vw)
  }

  .lineup__plan__box__num {
    font-size: calc(60 / 1300 * 100vw)
  }

  .lineup__plan__box__unit {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__plan {
    padding: 130px 0 80px 0
  }

  .lineup__plan__style1 {
    padding: 50px 100px
  }

  .lineup__plan__style2 {
    padding: 80px 45px 80px 290px;
    width: 895px
  }

  .lineup__plan__madori__standard__container {
    margin-bottom: 165px
  }

  .lineup__plan__madori__standard {
    margin-bottom: 80px
  }

  .lineup__plan__madori__vertical {
    display: flex
  }

  .lineup__plan__madori__vertical {
    display: flex
  }

  .lineup__plan__head {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup__plan__box {
    padding: 15px 20px;
    border: 3px solid #333
  }

  .lineup__plan__box__style2 {
    top: 80px;
    left: -105px;
    padding: 50px 45px
  }

  .lineup__plan__box__head {
    margin-right: 13px;
    width: 210px;
    border-bottom: 2px solid #333
  }

  .lineup__plan__box__style2 .lineup__plan__box__head {
    border-bottom: 2px solid #fff
  }

  .lineup__plan__box__head__en {
    font-size: 36px;
    font-size: 3.6rem
  }

  .lineup__plan__box__head__jp {
    font-size: 18px;
    font-size: 1.8rem
  }

  .lineup__plan__box__breadth {
    width: 250px
  }

  .lineup__plan__box__madori {
    font-size: 18px;
    font-size: 1.8rem
  }

  .lineup__plan__box__area {
    font-size: 14px;
    font-size: 1.4rem
  }

  .lineup__plan__box__price {
    width: 275px
  }

  .lineup__plan__box__label {
    font-size: 18px;
    font-size: 1.8rem
  }

  .lineup__plan__box__num {
    font-size: 66px;
    font-size: 6.4rem
  }

  .lineup__plan__box__unit {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup__loan {
  position: relative;
  background-color: #ffe5dc;
  margin-bottom: calc(80 / 750 * 100vw);
  padding: calc(35 / 750 * 100vw) 4.27vw;
  text-align: center
}

@media screen and (min-width: 751px) {
  .lineup__loan {
    margin: 0 auto;
    padding: 1.92vw 2.31vw;
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__loan {
    padding: 25px 30px;
    width: 800px
  }
}

.lineup__bottom__catch {
  padding: 1.5em 0;
  width: 100%;
  color: #fff;
  font-size: calc(60 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.8em;
  text-align: center
}

.lineup__bottom__catch span {
  position: relative
}

.lineup__bottom__catch__mark:after {
  content: '';
  position: absolute;
  top: -1em;
  right: -1.5em;
  display: inline-block;
  width: calc(62 / 750 * 100vw);
  height: calc(53 / 750 * 100vw);
  background-image: url(../img/lineup/mark.png);
  background-size: contain
}

.lineup__bottom__catch__standard {
  background-color: #c8a063
}

.lineup__bottom__catch__bungalow {
  background-color: #5ab486
}

.lineup__bottom__catch__vertical {
  background-color: #c3b386
}

@media screen and (min-width: 751px) {
  .lineup__bottom__catch {
    font-size: calc(30 / 1300 * 100vw)
  }

  .lineup__bottom__catch__mark:after {
    width: calc(39 / 1300 * 100vw);
    height: calc(35 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__bottom__catch {
    font-size: 30px;
    font-size: 3.0rem
  }

  .lineup__bottom__catch__mark:after {
    width: 39px;
    height: 35px
  }
}

.lineup__sec__black {
  padding: calc(130 / 750 * 100vw) 0 calc(175 / 750 * 100vw) 0;
  background-image: url(../img/lineup/black_bg_sp.jpg);
  background-size: cover
}

.lineup__black__head {
  color: #fff;
  font-size: calc(48 / 750 * 100vw);
  font-style: italic;
  font-weight: 500;
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .lineup__sec__black {
    padding: calc(100 / 1300 * 100vw) 0 calc(130 / 1300 * 100vw) 0;
    background-image: url(../img/lineup/black_bg.jpg)
  }

  .lineup__black__head {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__black {
    padding: 100px 0 130px 0
  }

  .lineup__black__head {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.lineup__sec__standard {
  position: relative;
  padding: calc(130 / 750 * 100vw) 0 calc(175 / 750 * 100vw) 0;
  background-color: #fff
}

.lineup__sec__standard:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(4800 / 750 * 100vw);
  background-image: url(../img/lineup/black_bg_sp.jpg);
  background-size: cover
}

@media screen and (min-width: 751px) {
  .lineup__sec__standard {
    padding: calc(100 / 1300 * 100vw) 0 calc(130 / 1300 * 100vw) 0
  }

  .lineup__sec__standard:before {
    height: calc(850 / 1300 * 100vw);
    background-image: url(../img/lineup/black_bg.jpg)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__standard {
    padding: 100px 0 130px 0
  }

  .lineup__sec__standard:before {
    height: 850px
  }
}

.lineup__standard__item {
  margin: 0 auto calc(135 / 750 * 100vw) auto;
  width: calc(485 / 750 * 100vw)
}

.lineup__standard__item:last-of-type {
  margin-bottom: 0
}

.lineup__standard__image {
  border-bottom: 1px solid #838383
}

.lineup__standard__content {
  padding: 1.5em 1.3em 2em 1.3em;
  background-color: #fff
}

@media screen and (min-width: 751px) {
  .lineup__standard {
    display: flex;
    justify-content: space-between
  }

  .lineup__standard__item {
    margin-bottom: 0;
    width: calc(240 / 1300 * 100vw)
  }

  .lineup__standard__content {
    height: calc(290 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__standard__item {
    width: 240px
  }

  .lineup__standard__content {
    height: 290px
  }
}

.lineup__quality__item {
  margin: 0 auto calc(70 / 750 * 100vw) auto;
  width: calc(385 / 750 * 100vw)
}

.lineup__quality__item:last-of-type {
  margin-bottom: 0
}

.lineup__quality__num {
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(95 / 750 * 100vw);
  background-color: #333;
  color: #fff;
  font-family: "langdon", sans-serif;
  font-size: calc(60 / 750 * 100vw);
  text-align: center
}

.lineup__quality__head {
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(285 / 750 * 100vw);
  background-color: #fff;
  color: #333;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 751px) {
  .lineup__quality {
    display: flex;
    justify-content: space-between
  }

  .lineup__quality__item {
    margin-bottom: 0;
    width: calc(193 / 1300 * 100vw)
  }

  .lineup__quality__num {
    height: calc(50 / 1300 * 100vw);
    font-size: calc(30 / 1300 * 100vw)
  }

  .lineup__quality__head {
    height: calc(145 / 1300 * 100vw);
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__quality__item {
    width: 193px
  }

  .lineup__quality__num {
    height: 50px;
    font-size: 30px;
    font-size: 3.0rem
  }

  .lineup__quality__head {
    height: 145px;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup__product__spec {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.67vw
}

.lineup__product__spec>div {
  margin-left: 2.67vw;
  margin-bottom: calc(90 / 750 * 100vw);
  width: calc(50% - 2.67vw)
}

.lineup__product__spec__head {
  font-size: calc(33 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.6em;
  text-align: center;
  letter-spacing: 0
}

@media screen and (min-width: 751px) {
  .lineup__product__spec {
    margin-left: -1.15vw
  }

  .lineup__product__spec>div {
    margin-left: 1.15vw;
    margin-bottom: 0;
    width: calc(25% - 1.15vw);
    height: calc(345 / 1300 * 100vw)
  }

  .lineup__product__spec__head {
    font-size: calc(18 / 1300 * 100vw);
    text-align: left
  }
}

@media screen and (min-width: 1279px) {
  .lineup__product__spec {
    margin-left: -15px
  }

  .lineup__product__spec>div {
    margin-left: 15px;
    width: calc(25% - 15px);
    height: 345px
  }

  .lineup__product__spec__head {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup__sec__color {
  position: relative;
  padding: calc(322 / 750 * 100vw) 0 calc(105 / 750 * 100vw) 0
}

.lineup__color__image {
  margin: 0 auto;
  margin-bottom: calc(50 / 750 * 100vw);
  width: 60vw
}

.lineup__color__box {
  position: relative;
  margin-top: calc(75 / 750 * 100vw);
  padding: calc(90 / 750 * 100vw) calc(30 / 750 * 100vw) calc(70 / 750 * 100vw) calc(30 / 750 * 100vw);
  border: calc(6 / 750 * 100vw) solid #333
}

.lineup__color__box__inner {
  display: flex;
  justify-content: center;
  margin-left: -2vw
}

.lineup__color__box__inner>div {
  margin-left: 2vw;
  width: calc(20% - 2vw)
}

.lineup__color__box__head {
  position: absolute;
  top: -4vw;
  left: 50%;
  display: inline-block;
  padding: 0 1em;
  background-color: #fff;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.lineup__color__box__image {
  margin-bottom: 1em;
  transition: .3s
}

.lineup__color__box__image:hover {
  cursor: pointer;
  opacity: 0.8
}

.lineup__color__box__color {
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (max-width: 750px) {

  .lineup__color__box__inner>div:nth-of-type(4),
  .lineup__color__box__inner>div:nth-of-type(5) {
    margin-bottom: 0
  }
}

@media screen and (min-width: 751px) {
  .lineup__sec__color {
    padding: calc(205 / 1300 * 100vw) 0 calc(180 / 1300 * 100vw) 0
  }

  .lineup__color {
    display: flex
  }

  .lineup__color__image {
    margin-right: calc(110 / 1300 * 100vw);
    margin-bottom: 0;
    width: calc(310 / 1300 * 100vw)
  }

  .lineup__color__content {
    width: calc(100% - 32.69vw)
  }

  .lineup__color__box {
    justify-content: space-between;
    flex-wrap: nowrap;
    margin-top: calc(35 / 1300 * 100vw);
    margin-left: 0;
    padding: calc(45 / 1300 * 100vw) calc(30 / 1300 * 100vw);
    border: calc(3 / 1300 * 100vw) solid #333
  }

  .lineup__color__box__inner {
    justify-content: space-between;
    flex-wrap: nowrap;
    margin-left: 0
  }

  .lineup__color__box__inner>div {
    margin-left: 0;
    margin-bottom: 0;
    width: calc(85 / 1300 * 100vw)
  }

  .lineup__color__box__head {
    top: -1.08vw;
    left: 2.31vw;
    padding: 0 2em;
    font-size: calc(16 / 1300 * 100vw);
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }

  .lineup__color__box__color {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__sec__color {
    padding: 205px 0 180px 0
  }

  .lineup__color__image {
    margin-right: 110px;
    width: 310px
  }

  .lineup__color__content {
    width: calc(100% - 420px)
  }

  .lineup__color__box {
    margin-top: 35px;
    padding: 45px 30px;
    border: 3px solid #333
  }

  .lineup__color__box__inner>div {
    margin-bottom: 0;
    width: 85px
  }

  .lineup__color__box__head {
    top: -14px;
    left: 30px;
    font-size: 16px;
    font-size: 1.6rem
  }

  .lineup__color__box__color {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.lineup__standard__kikyu,
.lineup__standard__flag {
  display: none
}

@media screen and (min-width: 751px) {
  .lineup__standard__kikyu {
    display: block;
    position: absolute;
    top: calc(100 / 1300 * 100vw);
    left: -10vw;
    width: calc(92 / 1300 * 100vw)
  }

  .lineup__standard__flag {
    display: block;
    position: absolute;
    top: calc(147 / 1300 * 100vw);
    right: -13vw;
    width: calc(269 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .lineup__standard__kikyu {
    top: 100px;
    left: -165px;
    width: 92px
  }

  .lineup__standard__flag {
    top: 147px;
    right: -200px;
    width: 269px
  }
}

.sec__contact__book {
  position: relative
}

.sec__contact__book__illust__bird {
  position: absolute;
  top: -5vw;
  left: -2vw;
  width: calc(181 / 750 * 100vw);
  height: calc(95 / 750 * 100vw);
  z-index: 2
}

.sec__contact__book__illust__baloon {
  position: absolute;
  top: -6vw;
  right: -2vw;
  width: calc(207 / 750 * 100vw);
  height: calc(269 / 750 * 100vw);
  z-index: 2
}

@media screen and (min-width: 751px) {
  .sec__contact__book__illust__bird {
    top: -1.15vw;
    left: -9.23vw;
    width: calc(191 / 1300 * 100vw);
    height: calc(95 / 1300 * 100vw)
  }

  .sec__contact__book__illust__baloon {
    top: -6.54vw;
    right: -9.23vw;
    width: calc(220 / 1300 * 100vw);
    height: calc(269 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__contact__book__illust__bird {
    top: -15px;
    left: -120px;
    width: 191px;
    height: 95px
  }

  .sec__contact__book__illust__baloon {
    top: -85px;
    right: -120px;
    width: 220px;
    height: 269px
  }
}

.contact__book__head {
  position: relative;
  font-size: calc(56 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: .2em;
  line-height: 1.4em;
  z-index: 3
}

.contact__book__head__line {
  margin: 0 auto;
  width: calc(475 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .contact__book__head {
    font-size: calc(36 / 1300 * 100vw)
  }

  .contact__book__head__line {
    width: calc(237 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .contact__book__head {
    font-size: 36px;
    font-size: 3.6rem
  }

  .contact__book__head__line {
    width: 237px
  }
}

.comtact__book__list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4.8vw
}

.comtact__book__list li {
  position: relative;
  margin-left: 4.8vw;
  margin-bottom: 5vw;
  padding: 1.5em 1em;
  width: calc(50% - 4.8vw);
  border-radius: .5em;
  z-index: 3
}

.comtact__book__list li:nth-child(odd) {
  background-color: #d3eade
}

.comtact__book__list li:nth-child(even) {
  background-color: #eedcca
}

.contact__book__image {
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(350 / 750 * 100vw)
}

.contact__book__name {
  padding-left: 1.3em;
  font-family: din-2014, sans-serif;
  font-size: calc(34 / 750 * 100vw);
  font-weight: 700;
  text-indent: -1.3em;
  line-height: 1.2em
}

.contact__book__name:before {
  margin-right: .3em;
  content: '\f0c8';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.comtact__book__list li:nth-child(odd) .contact__book__name:before {
  color: #5ab486
}

.comtact__book__list li:nth-child(even) .contact__book__name:before {
  color: #f8b551
}

.comtact__book__list li .image img {
  border-radius: .7em
}

@media screen and (min-width: 751px) {
  .comtact__book__list {
    flex-wrap: nowrap;
    margin-left: -2.5vw
  }

  .comtact__book__list li {
    margin-left: 2.5vw;
    margin-bottom: 0;
    width: calc(25% - 2.5vw)
  }

  .contact__book__image {
    height: calc(250 / 1300 * 100vw)
  }

  .contact__book__name {
    font-size: calc(20 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .comtact__book__list {
    margin-left: -25px
  }

  .comtact__book__list li {
    margin-left: 25px;
    width: calc(25% - 25px)
  }

  .contact__book__image {
    height: 250px
  }

  .contact__book__name {
    font-size: 20px;
    font-size: 2.0rem
  }
}

.contact__book__message__container {
  position: relative;
  padding: calc(40 / 750 * 100vw) 0;
  width: 100%
}

.contact__book__illust__tree1 {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(86 / 750 * 100vw);
  height: calc(157 / 750 * 100vw)
}

.contact__book__illust__tree2 {
  position: absolute;
  top: calc(15 / 750 * 100vw);
  right: 0;
  width: calc(119 / 750 * 100vw);
  height: calc(130 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .contact__book__message__container {
    position: relative;
    padding: calc(40 / 1300 * 100vw) 0;
    width: 100%
  }

  .contact__book__illust__tree1 {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(86 / 1300 * 100vw);
    height: calc(157 / 1300 * 100vw)
  }

  .contact__book__illust__tree2 {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(119 / 1300 * 100vw);
    height: calc(130 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .contact__book__message__container {
    padding: 40px 0
  }

  .contact__book__illust__tree1 {
    width: 86px;
    height: 157px
  }

  .contact__book__illust__tree2 {
    width: 119px;
    height: 130px
  }
}

.contact__book__message {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4em
}

.contact__movie__head {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4em
}

@media screen and (min-width: 751px) {
  .contact__book__message {
    font-size: calc(26 / 1300 * 100vw)
  }

  .contact__movie__head {
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .contact__book__message {
    font-size: 26px;
    font-size: 2.6rem
  }

  .contact__movie__head {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.contact__movie {
  margin: 0 auto;
  width: 100%
}

@media screen and (min-width: 751px) {
  .contact__movie {
    width: calc(560 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .contact__movie {
    width: 560px
  }
}

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

.movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.raiten__message__container {
  margin: 0 auto;
  width: calc(690 / 750 * 100vw)
}

.raiten__message__image {
  margin: 0 auto calc(80 / 750 * 100vw) auto;
  width: calc(600 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .raiten__message__container {
    width: calc(800 / 1300 * 100vw)
  }

  .raiten__message {
    display: flex
  }

  .raiten__message__image {
    margin-right: 1.54vw;
    margin-bottom: 0;
    width: 23.08vw
  }

  .raiten__message__content {
    width: calc(100% - 23.08vw - 1.54vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__message__container {
    width: 800px
  }

  .raiten__message__image {
    margin-right: 20px;
    width: 300px
  }

  .raiten__message__content {
    width: calc(100% - 300px - 20px)
  }
}

.raiten__book__head {
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.6em
}

.raiten__book__head span.raiten__book__head__color {
  color: #5ab486
}

@media screen and (min-width: 751px) {
  .raiten__book__head {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__book__head {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.raiten__sec__flow {
  padding: calc(60 / 750 * 100vw) 0;
  background-color: #fff5e6
}

.raiten__flow__head {
  color: #c8a063;
  font-size: calc(48 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.6em
}

@media screen and (min-width: 751px) {
  .raiten__sec__flow {
    padding: calc(40 / 1300 * 100vw) 0
  }

  .raiten__flow__head {
    font-size: calc(24 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__sec__flow {
    padding: 40px 0
  }

  .raiten__flow__head {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.raiten__flow__item {
  position: relative;
  margin: 0 auto calc(90 / 750 * 100vw) auto;
  width: calc(700 / 750 * 100vw);
}

.raiten__flow__item:after {
  position: absolute;
  color: #c8a063;
  font-family: "Font Awesome 5 Free";
  font-size: calc(60 / 750 * 100vw);
  font-weight: 900
}

.raiten__flow__item:last-of-type::after {
  content: none
}

@media screen and (max-width: 750px) {
  .raiten__flow__item:after {
    bottom: -10vw;
    left: 50%;
    content: '\f0d7';
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}

@media screen and (min-width: 751px) {
  .raiten__flow {
    display: flex;
    justify-content: space-between
  }

  .raiten__flow__item {
    margin: 0;
    width: calc(165 / 1300 * 100vw)
  }

  .raiten__flow__item:after {
    top: calc(70 / 1300 * 100vw);
    right: -2.31vw;
    content: '\f0da';
    font-size: calc(26 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__flow__item {
    width: 165px
  }

  .raiten__flow__item:after {
    top: 70px;
    right: -30px;
    font-size: 26px;
    font-size: 2.6rem
  }
}

.raiten__flow__image {
  position: relative;
  margin-bottom: calc(30 / 750 * 100vw);
  border: calc(6 / 750 * 100vw) solid #c8a063
}

.raiten__flow__title {
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: 1.6em;
}

@media screen and (max-width: 414px) {
  .raiten__flow__title {
    font-size: calc(32 / 750 * 100vw);
    font-weight: 700;
    text-align: center;
    line-height: 0.6em;
  }
}

.raiten__flow__title span {
  color: #c8a063
}

@media screen and (min-width: 751px) {
  .raiten__flow__image {
    margin-bottom: calc(10 / 750 * 100vw);
    border: calc(3 / 1300 * 100vw) solid #c8a063
  }

  .raiten__flow__title {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__flow__image {
    margin-bottom: 10px;
    border: 3px solid #c8a063
  }

  .raiten__flow__title {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.raiten__flow__list {
  margin: 0 auto;
  width: 100%
}

.raiten__flow__list li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.8em
}

.raiten__flow__list li:before {
  content: '※'
}

@media screen and (min-width: 751px) {
  .raiten__flow__list {
    width: calc(800 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .raiten__flow__list {
    width: 800px
  }
}

.sitemap__box {
  margin-bottom: 50px
}

@media screen and (min-width: 751px) {
  .sitemap__container {
    display: flex;
    flex-wrap: wrap;
    margin-left: 2.69vw
  }

  .sitemap__box {
    margin-left: 2.69vw;
    margin-bottom: 3.85vw;
    width: calc(33.33333% - 2.69vw)
  }
}

@media screen and (min-width: 1279px) {
  .sitemap__container {
    margin-left: -35px
  }

  .sitemap__box {
    margin-left: 35px;
    margin-bottom: 50px;
    width: calc(33.33333% - 35px)
  }
}

.sitemap__title {
  display: block;
  margin-bottom: 1em;
  padding: .5em;
  background-color: #5ab486;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.sitemap a {
  display: block;
  padding: .7em 1em;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

.sitemap a:hover {
  opacity: 0.6
}

.sitemap a:before {
  margin-right: 1em;
  color: #5ab486;
  content: '\f105';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

@media screen and (min-width: 751px) {
  .sitemap__title {
    font-size: calc(18 / 1300 * 100vw)
  }

  .sitemap a {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sitemap__title {
    font-size: 18px;
    font-size: 1.8rem
  }

  .sitemap a {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.policy__content {
  margin-bottom: calc(83 / 750 * 100vw)
}

.policy__content a {
  text-decoration: underline
}

.policy__content a:hover {
  color: #5ab486
}

.policy__content strong {
  font-weight: 700
}

.policy__content>p,
.policy__content ul,
.policy__content ol {
  padding: 0 .5em
}

.policy__content p {
  margin-bottom: 1.5em;
  line-height: 1.6em
}

.policy__content p:last-of-type {
  margin-bottom: 0
}

.policy__content ol {
  margin-bottom: 3em;
  counter-reset: number 0
}

.policy__content ol li {
  position: relative;
  margin-bottom: 1em;
  padding-left: 2em;
  line-height: 1.6em
}

.policy__content ol li:before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: number 1;
  content: "("counter(number, decimal) ")"
}

.policy__content:last-of-type {
  margin-bottom: 0
}

@media screen and (min-width: 751px) {
  .policy__content {
    margin-bottom: calc(50 / 1300 * 100vw)
  }

  .policy__content>p,
  .policy__content ul,
  .policy__content ol {
    padding: 0 1.5em
  }
}

@media screen and (min-width: 1279px) {
  .policy__content {
    margin-bottom: 50px
  }
}

.sec__mig__service {
  position: relative;
  padding: 28.6vw 0 6vw 0
}

.sec__mig__service__illust__bird {
  position: absolute;
  top: -22vw;
  left: 2vw;
  width: calc(292 / 750 * 100vw);
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__mig__service {
    padding: calc(80 / 1300 * 100vw) 0 calc(25 / 1300 * 100vw) 0
  }

  .sec__mig__service__illust__bird {
    top: calc(40 / 1300 * 100vw);
    left: calc(100 / 1300 * 100vw);
    width: calc(191 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__mig__service {
    padding: 80px 0 25px 0
  }

  .sec__mig__service__illust__bird {
    top: 40px;
    left: 100px;
    width: 191px
  }
}

.sec__mig__lineup {
  position: relative;
  padding: 32.67vw 0 0 0
}

.sec__mig__lineup__illust__kikyu {
  position: absolute;
  top: -33.33vw;
  left: 4vw;
  width: calc(157 / 750 * 100vw);
  z-index: 3
}

.sec__mig__lineup__illust__flag {
  position: absolute;
  top: -26.67vw;
  right: -4vw;
  width: calc(358 / 750 * 100vw);
  z-index: 3
}

@media screen and (min-width: 751px) {
  .sec__mig__lineup {
    padding: calc(25 / 1300 * 100vw) 0
  }

  .sec__mig__lineup__illust__kikyu {
    top: calc(7 / 1300 * 100vw);
    left: calc(30 / 1300 * 100vw);
    width: calc(112 / 1300 * 100vw)
  }

  .sec__mig__lineup__illust__flag {
    top: calc(10 / 1300 * 100vw);
    right: 0;
    width: calc(266 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__mig__lineup {
    padding: 25px 0
  }

  .sec__mig__lineup__illust__kikyu {
    top: 7px;
    left: 30px;
    width: 112px
  }

  .sec__mig__lineup__illust__flag {
    top: 10px;
    right: 0;
    width: 266px
  }
}

.sec__mig__lineup__container a {
  margin-bottom: 5vw;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2)
}

@media screen and (min-width: 751px) {
  .sec__mig__lineup__container {
    display: flex;
    margin-left: -0.77vw
  }

  .sec__mig__lineup__container a {
    margin-left: 0.77vw;
    margin-bottom: 0;
    width: calc(25% - 0.77vw)
  }
}

@media screen and (min-width: 1279px) {
  .sec__mig__lineup__container {
    margin-left: -10px
  }

  .sec__mig__lineup__container a {
    margin-left: 10px;
    width: calc(25% - 10px)
  }
}

.breadcrumb__container {
  margin: 4.6vw 0
}

.breadcrumb {
  margin: 0 auto;
  display: flex;
  align-items: center
}

.breadcrumb li {
  position: relative;
  margin-right: 1em;
  font-size: calc(24 / 750 * 100vw);
  line-height: 1.4em
}

.breadcrumb li a {
  position: relative;
  font-weight: 700
}

.breadcrumb li:after {
  position: relative;
  margin-left: 1em;
  content: '\f105';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.breadcrumb li:last-child {
  margin-right: 0
}

.breadcrumb li:last-child:after {
  content: ''
}

@media screen and (min-width: 751px) {
  .breadcrumb__container {
    margin: 2.2vw 0;
    padding: 0 2vw
  }

  .breadcrumb {
    flex-wrap: wrap
  }

  .breadcrumb li {
    font-size: calc(12 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .breadcrumb__container {
    margin: 25px 0;
    padding: 0;
    width: 1000px
  }

  .breadcrumb li {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.breadcrumb__home:before {
  content: '';
  display: inline-block;
  width: calc(34 / 750 * 100vw);
  height: calc(30 / 750 * 100vw);
  background-image: url(../img/header/home_g.png);
  background-size: contain;
  background-repeat: no-repeat
}

@media screen and (min-width: 751px) {
  .breadcrumb__home:before {
    width: calc(17 / 1300 * 100vw);
    height: calc(15 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .breadcrumb__home:before {
    width: 17px;
    height: 15px
  }
}

@media screen and (max-width: 750px) {
  .breadcrumb__container {
    width: 100%
  }

  .breadcrumb {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch
  }

  .breadcrumb li {
    white-space: nowrap
  }
}

.pagecount__container {
  display: flex;
  justify-content: space-between;
  align-items: center
}

.pagecount__container .pagecount {
  width: 18vw;
  color: #5ab486;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

.pagecount__container .pagenation__container {
  width: calc(100% - 18vw - 2em)
}

@media screen and (min-width: 751px) {
  .pagecount__container .pagecount {
    width: 11.5vw;
    font-size: calc(18 / 1300 * 100vw)
  }

  .pagecount__container .pagenation__container {
    width: calc(100% - 11.5vw - 2em)
  }
}

@media screen and (min-width: 1279px) {
  .pagecount__container .pagecount {
    width: 115px;
    font-size: 18px;
    font-size: 1.8rem
  }

  .pagecount__container .pagenation__container {
    width: calc(100% - 115px - 2em)
  }
}

.pagenation {
  width: 100%
}

.pagenation ul {
  display: flex;
  justify-content: flex-end;
  align-items: center
}

.pagenation ul li {
  margin-bottom: .3em
}

.pagenation ul li span,
.pagenation ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  width: 12vw;
  height: 12vw;
  color: #5ab486;
  font-family: din-2014, sans-serif;
  font-size: calc(36 / 750 * 100vw);
  line-height: 1em;
  font-weight: 700
}

.pagenation ul li.is-active span {
  background-color: #5ab486;
  color: #fff
}

.pagenation ul li span:hover,
.pagenation ul li a:hover {
  background-color: #5ab486;
  color: #fff
}

.pagenation__prev a:before {
  content: '\f104';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.pagenation__next a:before {
  content: '\f105';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

@media screen and (min-width: 751px) {

  .pagenation ul li span,
  .pagenation ul li a {
    width: 5vw;
    height: 5vw;
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {

  .pagenation ul li span,
  .pagenation ul li a {
    width: 50px;
    height: 50px;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.pagenavi {
  margin: 0 auto;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.pagenavi__prev,
.pagenavi__next {
  margin-top: calc(160 / 750 * 100vw);
  width: 45vw
}

.pagenavi__back {
  position: absolute;
  top: 0;
  left: 50%;
  width: calc(520 / 750 * 100vw);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.pagenavi__prev a,
.pagenavi__next a,
.pagenavi__back a {
  display: block;
  padding: .7em 0;
  border-radius: 2em;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.pagenavi__back a {
  border: 0.4vw solid #5ab486;
  background-color: #5ab486;
  color: #fff
}

.pagenavi__back a:hover {
  background-color: #fff;
  color: #5ab486
}

.pagenavi__prev a,
.pagenavi__next a {
  position: relative;
  border: 0.4vw solid #5ab486;
  background-color: #fff;
  color: #5ab486
}

.pagenavi__prev a:before {
  content: '\f104';
  position: absolute;
  top: 50%;
  left: 1em;
  color: #5ab486;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.pagenavi__next a:after {
  content: '\f105';
  position: absolute;
  top: 50%;
  right: 1em;
  color: #5ab486;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.pagenavi__prev a:hover::before {
  color: #fff
}

.pagenavi__next a:hover::after {
  color: #fff
}

.pagenavi__prev a:hover,
.pagenavi__next a:hover {
  background-color: #5ab486;
  color: #fff
}

@media screen and (min-width: 751px) {
  .pagenavi {
    justify-content: center
  }

  .pagenavi>div {
    margin-left: 0;
    margin-right: calc(30 / 1300 * 100vw)
  }

  .pagenavi>div:last-of-type {
    margin-right: 0 !important
  }

  .pagenavi__prev,
  .pagenavi__next {
    margin-top: 0;
    width: calc(200 / 1300 * 100vw)
  }

  .pagenavi__back {
    position: relative;
    top: 0;
    left: 0;
    width: calc(260 / 750 * 100vw);
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }

  .pagenavi__back {
    width: calc(260 / 1300 * 100vw)
  }

  .pagenavi__prev a,
  .pagenavi__next a,
  .pagenavi__back a {
    border: 2px solid #5ab486;
    font-size: calc(18 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .pagenavi>div {
    margin-right: calc(30 / 1300 * 100vw)
  }

  .pagenavi__prev,
  .pagenavi__next {
    width: 200px
  }

  .pagenavi__back {
    width: 260px
  }

  .pagenavi__prev a,
  .pagenavi__next a,
  .pagenavi__back a {
    font-size: 18px;
    font-size: 1.8rem
  }
}

#event-post .pagenavi__back {
  position: relative
}

.btn__container {
  position: absolute;
  bottom: 1.5em;
  left: 50%;
  width: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.btn {
  position: relative;
  display: inline-block;
  padding: 1.3em 1em;
  width: 100%;
  border-radius: 2em;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  transition: all .3s
}

.btn--low {
  padding: .8em 1em
}

.btn--green {
  border: 2px solid #5ab486;
  background-color: #5ab486;
  color: #fff
}

.btn--green:hover {
  background-color: #fff;
  color: #5ab486
}

.btn--orange {
  border: 2px solid #f19149;
  background-color: #f19149;
  color: #fff
}

.btn--orange:hover {
  background-color: #fff;
  color: #f19149
}

.btn--white {
  border: 2px solid #fff;
  background-color: #fff;
  color: #5ab486
}

.btn--white:hover {
  background-color: #5ab486;
  color: #fff
}

.btn--gray {
  border: 2px solid #a0a0a0;
  background-color: #a0a0a0;
  color: #fff
}

.btn--red {
  border: 2px solid #d43941;
  background-color: #d43941;
  color: #fff
}

.btn--red:hover {
  background-color: #fff;
  color: #d43941
}

.btn--pickup {
  font-size: calc(50 / 750 * 100vw);
  padding: .8em 1em;
  border-radius: 10px;
}

@media screen and (min-width: 751px) {
  .btn {
    font-size: calc(18 / 1300 * 100vw)
  }

  .btn--low {
    padding: 1em
  }

  .btn--430 {
    width: 33.08vw
  }
  
}

@media screen and (min-width: 1279px) {
  .btn {
    font-size: 1.8rem
  }

  .btn--430 {
    width: 430px
  }
}

.form__head__container {
  text-align: center
}

.form__head {
  position: relative;
  display: block;
  margin-bottom: 1em;
  padding-bottom: .5em;
  font-size: calc(46 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em;
  letter-spacing: .1em
}

.form__head:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 86.25vw;
  height: 1px;
  border-bottom: 1px dashed #5b5b5b;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

@media screen and (min-width: 751px) {
  .form__head {
    font-size: calc(36 / 1300 * 100vw)
  }

  .form__head:after {
    width: calc(350 / 1300 * 100vw)
  }
}

.f_l {
  float: left;
}

@media screen and (min-width: 1279px) {
  .form__head {
    font-size: 36px;
    font-size: 3.6rem
  }

  .form__head:after {
    width: 350px
  }
}

.form {
  width: 100%;
  letter-spacing: .1em;
}

.form tr {
  border-bottom: 1px solid #cccccc
}

.form tr:last-child {
  border-bottom: none
}

.form th {
  position: relative;
  padding: 1em;
  padding-right: 1em;
  background-color: #f6f6f6;
  width: 250px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  vertical-align: top;
  line-height: 1.4em
}

.form td {
  position: relative;
  padding: 1em;
  vertical-align: middle;
  /*width: calc(100% - 250px)*/
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="date"],
.form select {
  padding: 1em .5em;
  background-color: #f7f7f7;
  border-radius: 0;
  width: 100%;
  color: #313131;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
}

.form .input__required {
  background-color: #fef5f6 !important
}

.form select {
  width: 100%
}

.form input[type="radio"],
.form input[type="checkbox"] {
  margin-right: .3em
}

.form textarea {
  padding: 1em .5em;
  width: 100%;
  height: 180px;
  background-color: #f7f7f7;
  border: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.8em;
}

@media screen and (max-width: 1280px) {
  .form th {
    width: 25vw;
    font-size: calc(16 / 1300 * 100vw)
  }

  .form td {
    /*width: calc(100% - 25vw)*/
  }

  .form input[type="text"],
  .form input[type="email"],
  .form input[type="tel"],
  .form input[type="date"],
  .form select {
    font-size: calc(16 / 1300 * 100vw)
  }

  .form textarea {
    height: 23.1vw;
    font-size: calc(16 / 1300 * 100vw)
  }
}

.form__hosoku {
  text-indent: -1em;
  padding-left: 1em;
  margin-top: .5em;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

.form__hosoku:before {
  content: '※'
}

.form__hosoku__top {
  margin-top: 0
}

.form__hosoku--red {
  color: #e60012
}

@media screen and (min-width: 751px) {
  .form__hosoku {
    font-size: calc(14 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .form__hosoku {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.form__required {
  position: absolute;
  top: 23px;
  right: 1em;
  margin-top: -1em;
  display: inline-block;
  padding: 0 .8em;
  background-color: #e60012;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  text-align: center;
  line-height: 2em
}

.form__unrequired {
  position: absolute;
  top: 23px;
  right: 1em;
  margin-top: -1em;
  display: inline-block;
  padding: 0 .8em;
  background-color: #d2d2d2;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  text-align: center;
  line-height: 2em;
}

@media screen and (min-width: 751px) {

  .form__required,
  .form__unrequired {
    top: 1.5em;
    right: 1em;
    margin-top: 0;
    font-size: calc(12 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {

  .form__required,
  .form__unrequired {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.form__date {
  display: flex;
  align-items: flex-end
}

.form__date li {
  margin-right: .3em
}

.form__date li:last-child {
  margin-right: 0
}

.form__multi__sp__block div:last-child {
  margin-top: 5px
}

.form__multi__sp__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.form__multi__sp__block li {
  margin-right: 5px
}

.form__multi__sp__block li:last-child {
  margin-right: 0
}

.form__input--small {
  width: 4em
}

.form__input--middle {
  max-width: 100%
}

@media screen and (min-width: 751px) {
  .form__input--small {
    width: 5em
  }

  .form__input--middle {
    width: 22vw !important
  }
}

@media screen and (min-width: 1279px) {
  .form__input--middle {
    width: 250px !important
  }
}

.form__select {
  position: relative;
  line-height: 1em
}

.form__select:before {
  position: absolute;
  right: .5em;
  top: 50%;
  content: '\f0d7';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  pointer-events: none;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1
}

input::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #ccc;
  font-weight: 700
}

input:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #ccc;
  font-weight: 700
}

input::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
  color: #ccc;
  font-weight: 700
}

.wpcf7-list-item-label {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 600
}

@media screen and (min-width: 751px) {
  .wpcf7-list-item-label {
    font-size: 16px;
    font-size: 1.6rem
  }
}

@media screen and (min-width: 1279px) {
  .wpcf7-list-item-label {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.form__checkbox__block span.wpcf7-list-item {
  display: block;
  margin-top: .5em;
  line-height: 1.8em
}

.form__checkbox__block span.wpcf7-list-item:last-child {
  margin-bottom: .5em
}

@media screen and (min-width: 751px) {
  .form__checkbox__block span.wpcf7-list-item {
    display: inline-block;
    margin-top: 0
  }

  .form__checkbox__block span.wpcf7-list-item:last-child {
    margin-bottom: 0
  }
}

.form__checkbox__block .wpcf7-checkbox label {
  display: inline-block
}

.wpcf7-checkbox label {
  line-height: 2.6em
}

.form__confirm,
.form__back,
.form__submit {
  position: relative;
  margin: 0 auto;
  width: 100%;
  text-align: center;
  line-height: 1em
}

.form__btn__container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  width: 100%
}

@media screen and (min-width: 751px) {
  .form__confirm {
    width: calc(320 / 1300 * 100vw)
  }

  .form__btn__container {
    width: calc(560 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .form__confirm {
    width: 320px
  }

  .form__btn__container {
    width: 560px
  }
}

@media screen and (max-width: 750px) {
  .form__btn__container {
    margin-bottom: 26vw
  }
}

.form__back {
  margin-right: 1em;
  width: calc(40% - 1em)
}

.form__submit {
  width: calc(100% - 40% - 1em)
}

.form__btn__submit {
  position: relative;
  display: block;
  padding: .7em 0;
  width: 100%;
  background-color: #5ab486;
  border: 3px solid #5ab486;
  border-radius: 2.5em;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  letter-spacing: .1em;
  transition: .3s
}

.form__btn__submit:hover {
  background-color: #fff;
  color: #5ab486
}

.form__btn__back {
  position: relative;
  display: block;
  padding: .7em 0;
  color: #5ab486;
  border: 3px solid #5ab486;
  border-radius: 2.5em;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  letter-spacing: .1em
}

.form__btn__back:hover {
  background-color: #5ab486;
  color: #fff
}

@media screen and (min-width: 751px) {
  .form__btn__submit {
    padding: .7em 0;
    font-size: calc(18 / 1300 * 100vw)
  }

  .form__btn__back {
    padding: .7em 0;
    font-size: 18px;
    font-size: 1.6rem
  }
}

@media screen and (min-width: 1279px) {
  .form__btn__submit {
    font-size: 18px;
    font-size: 1.8rem
  }

  .form__btn__back {
    font-size: 18px;
    font-size: 1.8rem
  }
}

div.wpcf7 .ajax-loader {
  display: none !important
}

.form__step__container {
  margin: calc(60 / 750 * 100vw) 0
}

.form__step {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.form__step>div {
  position: relative;
  padding: 1em;
  width: calc(210 / 750 * 100vw);
  height: calc(170 / 750 * 100vw);
  background-color: #e8fcf2
}

.form__step1:after,
.form__step2:after {
  content: '';
  position: absolute;
  top: 0;
  right: -2.4vw;
  border-left: 2.4vw solid #e8fcf2;
  border-top: calc(85 / 750 * 100vw) solid transparent;
  border-bottom: calc(85 / 750 * 100vw) solid transparent
}

.form__step__num {
  margin-bottom: .5em;
  color: #5ab486;
  font-family: din-2014, sans-serif;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700
}

.form__step__title {
  color: #5ab486;
  font-size: calc(29 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.2em
}

@media screen and (min-width: 751px) {
  .form__step__container {
    margin: calc(45 / 1300 * 100vw) 0
  }

  .form__step>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 1em;
    width: calc(310 / 1300 * 100vw);
    height: calc(60 / 1300 * 100vw)
  }

  .form__step1:after,
  .form__step2:after {
    right: -2vw;
    border-left: calc(26 / 1300 * 100vw) solid #e8fcf2;
    border-top: calc(30 / 1300 * 100vw) solid transparent;
    border-bottom: calc(30 / 1300 * 100vw) solid transparent
  }

  .form__step__num {
    margin-bottom: 0;
    font-size: calc(24 / 1300 * 100vw)
  }

  .form__step__num span {
    font-size: calc(18 / 1300 * 100vw)
  }

  .form__step__title {
    font-size: calc(18 / 1300 * 100vw);
    line-height: 1em
  }
}

@media screen and (min-width: 1279px) {
  .form__step__container {
    margin: 45px 0
  }

  .form__step>div {
    width: 310px;
    height: 60px
  }

  .form__step1:after,
  .form__step2:after {
    content: '';
    position: absolute;
    top: 0;
    right: -26px;
    border-left: 26px solid #e8fcf2;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent
  }

  .form__step__num {
    font-size: 24px;
    font-size: 2.4rem
  }

  .form__step__num span {
    font-size: 18px;
    font-size: 1.8rem
  }

  .form__step__title {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.wpcf7c-elm-step1 .form__step1 {
  background-color: #5ab486
}

.wpcf7c-elm-step1 .form__step1:after {
  border-left: 2.4vw solid #5ab486
}

.wpcf7c-elm-step1 .form__step1 .form__step__num,
.wpcf7c-elm-step1 .form__step1 .form__step__title {
  color: #fff
}

.wpcf7c-elm-step2 .form__step2 {
  background-color: #5ab486
}

.wpcf7c-elm-step2 .form__step2:after {
  border-left: 2.4vw solid #5ab486
}

.wpcf7c-elm-step2 .form__step2 .form__step__num,
.wpcf7c-elm-step2 .form__step2 .form__step__title {
  color: #fff
}

.wpcf7c-elm-step3 .form__step3 {
  background-color: #5ab486
}

.wpcf7c-elm-step3 .form__step3 .form__step__num,
.wpcf7c-elm-step3 .form__step3 .form__step__title {
  color: #fff
}

@media screen and (min-width: 751px) {
  .wpcf7c-elm-step1 .form__step1:after {
    border-left: 2vw solid #5ab486
  }

  .wpcf7c-elm-step2 .form__step2:after {
    border-left: 2vw solid #5ab486
  }
}

@media screen and (min-width: 1279px) {
  .wpcf7c-elm-step1 .form__step1:after {
    border-left: 26px solid #5ab486
  }

  .wpcf7c-elm-step2 .form__step2:after {
    border-left: 26px solid #5ab486
  }
}

.wpcf7-validation-errors {
  border: 2px solid #5ab486 !important
}

.form__bookcaption {
  line-height: 1.5;
  font-size: 0.8em;
  color: #e60012;
}

.form__checkbox__block__book .wpcf7-list-item {
  display: block !important;
}

.mt05 {
  margin-top: calc(8 / 750 * 100vw)
}

.mt10 {
  margin-top: calc(13 / 750 * 100vw)
}

.mt12 {
  margin-top: calc(15 / 750 * 100vw)
}

.mt15 {
  margin-top: calc(18 / 750 * 100vw)
}

.mt20 {
  margin-top: calc(23 / 750 * 100vw)
}

.mt25 {
  margin-top: calc(28 / 750 * 100vw)
}

.mt30 {
  margin-top: calc(33 / 750 * 100vw)
}

.mt35 {
  margin-top: calc(38 / 750 * 100vw)
}

.mt40 {
  margin-top: calc(43 / 750 * 100vw)
}

.mt45 {
  margin-top: calc(48 / 750 * 100vw)
}

.mt50 {
  margin-top: calc(53 / 750 * 100vw)
}

.mt55 {
  margin-top: calc(58 / 750 * 100vw)
}

.mt60 {
  margin-top: calc(63 / 750 * 100vw)
}

.mt65 {
  margin-top: calc(68 / 750 * 100vw)
}

.mt70 {
  margin-top: calc(73 / 750 * 100vw)
}

.mt80 {
  margin-top: calc(83 / 750 * 100vw)
}

.mt90 {
  margin-top: calc(93 / 750 * 100vw)
}

.mt100 {
  margin-top: calc(103 / 750 * 100vw)
}

.mb05 {
  margin-bottom: calc(8 / 750 * 100vw)
}

.mb10 {
  margin-bottom: calc(13 / 750 * 100vw)
}

.mb12 {
  margin-bottom: calc(15 / 750 * 100vw)
}

.mb15 {
  margin-bottom: calc(18 / 750 * 100vw)
}

.mb20 {
  margin-bottom: calc(23 / 750 * 100vw)
}

.mb25 {
  margin-bottom: calc(28 / 750 * 100vw)
}

.mb30 {
  margin-bottom: calc(33 / 750 * 100vw)
}

.mb35 {
  margin-bottom: calc(38 / 750 * 100vw)
}

.mb40 {
  margin-bottom: calc(43 / 750 * 100vw)
}

.mb45 {
  margin-bottom: calc(48 / 750 * 100vw)
}

.mb50 {
  margin-bottom: calc(53 / 750 * 100vw)
}

.mb55 {
  margin-bottom: calc(58 / 750 * 100vw)
}

.mb60 {
  margin-bottom: calc(63 / 750 * 100vw)
}

.mb65 {
  margin-bottom: calc(68 / 750 * 100vw)
}

.mb70 {
  margin-bottom: calc(73 / 750 * 100vw)
}

.mb80 {
  margin-bottom: calc(83 / 750 * 100vw)
}

.mb90 {
  margin-bottom: calc(93 / 750 * 100vw)
}

.mb100 {
  margin-bottom: calc(103 / 750 * 100vw)
}

.mb120 {
  margin-bottom: calc(123 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .mt05 {
    margin-top: calc(5 / 1300 * 100vw)
  }

  .mt10 {
    margin-top: calc(10 / 1300 * 100vw)
  }

  .mt15 {
    margin-top: calc(15 / 1300 * 100vw)
  }

  .mt20 {
    margin-top: calc(20 / 1300 * 100vw)
  }

  .mt25 {
    margin-top: calc(25 / 1300 * 100vw)
  }

  .mt30 {
    margin-top: calc(30 / 1300 * 100vw)
  }

  .mt35 {
    margin-top: calc(35 / 1300 * 100vw)
  }

  .mt40 {
    margin-top: calc(40 / 1300 * 100vw)
  }

  .mt45 {
    margin-top: calc(45 / 1300 * 100vw)
  }

  .mt50 {
    margin-top: calc(50 / 1300 * 100vw)
  }

  .mt60 {
    margin-top: calc(60 / 1300 * 100vw)
  }

  .mt70 {
    margin-top: calc(70 / 1300 * 100vw)
  }

  .mt80 {
    margin-top: calc(80 / 1300 * 100vw)
  }

  .mt90 {
    margin-top: calc(90 / 1300 * 100vw)
  }

  .mt100 {
    margin-top: calc(100 / 1300 * 100vw)
  }

  .mb05 {
    margin-bottom: calc(5 / 1300 * 100vw)
  }

  .mb10 {
    margin-bottom: calc(10 / 1300 * 100vw)
  }

  .mb15 {
    margin-bottom: calc(15 / 1300 * 100vw)
  }

  .mb20 {
    margin-bottom: calc(20 / 1300 * 100vw)
  }

  .mb25 {
    margin-bottom: calc(25 / 1300 * 100vw)
  }

  .mb30 {
    margin-bottom: calc(30 / 1300 * 100vw)
  }

  .mb35 {
    margin-bottom: calc(35 / 1300 * 100vw)
  }

  .mb40 {
    margin-bottom: calc(40 / 1300 * 100vw)
  }

  .mb45 {
    margin-bottom: calc(45 / 1300 * 100vw)
  }

  .mb50 {
    margin-bottom: calc(50 / 1300 * 100vw)
  }

  .mb60 {
    margin-bottom: calc(60 / 1300 * 100vw)
  }

  .mb70 {
    margin-bottom: calc(70 / 1300 * 100vw)
  }

  .mb80 {
    margin-bottom: calc(80 / 1300 * 100vw)
  }

  .mb90 {
    margin-bottom: calc(90 / 1300 * 100vw)
  }

  .mb100 {
    margin-bottom: calc(100 / 1300 * 100vw)
  }

  .mb120 {
    margin-bottom: calc(120 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .mt05 {
    margin-top: 5px
  }

  .mt10 {
    margin-top: 10px
  }

  .mt15 {
    margin-top: 15px
  }

  .mt20 {
    margin-top: 20px
  }

  .mt25 {
    margin-top: 25px
  }

  .mt30 {
    margin-top: 30px
  }

  .mt35 {
    margin-top: 35px
  }

  .mt40 {
    margin-top: 40px
  }

  .mt45 {
    margin-top: 45px
  }

  .mt50 {
    margin-top: 50px
  }

  .mt60 {
    margin-top: 60px
  }

  .mt70 {
    margin-top: 70px
  }

  .mt80 {
    margin-top: 80px
  }

  .mt90 {
    margin-top: 90px
  }

  .mt100 {
    margin-top: 100px
  }

  .mb05 {
    margin-bottom: 5px
  }

  .mb10 {
    margin-bottom: 10px
  }

  .mb15 {
    margin-bottom: 15px
  }

  .mb20 {
    margin-bottom: 20px
  }

  .mb25 {
    margin-bottom: 25px
  }

  .mb30 {
    margin-bottom: 30px
  }

  .mb35 {
    margin-bottom: 35px
  }

  .mb40 {
    margin-bottom: 40px
  }

  .mb45 {
    margin-bottom: 45px
  }

  .mb50 {
    margin-bottom: 50px
  }

  .mb60 {
    margin-bottom: 60px
  }

  .mb70 {
    margin-bottom: 70px
  }

  .mb80 {
    margin-bottom: 80px
  }

  .mb90 {
    margin-bottom: 90px
  }

  .mb100 {
    margin-bottom: 100px
  }

  .mb120 {
    margin-bottom: 120px
  }
}

.bold {
  font-weight: 700
}

.text {
  margin-bottom: 1.5em;
  font-size: calc(32 / 750 * 100vw);
  line-height: 1.6em
}

.text:last-of-type {
  margin-bottom: 0
}

@media screen and (min-width: 751px) {
  .text {
    font-size: calc(16 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .text {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.left {
  text-align: left
}

.right {
  text-align: right
}

.center {
  text-align: center
}

@media screen and (max-width: 750px) {
  .none__sp {
    display: none !important
  }

  .br__pc {
    display: inline
  }

  .br__sp {
    display: block
  }
}

@media screen and (min-width: 751px) {
  .none__pc {
    display: none !important
  }

  .br__pc {
    display: block
  }

  .br__sp {
    display: inline
  }
}

.img__maxfit {
  max-width: 100%;
  height: auto
}

.img__fit {
  width: 100%;
  max-width: 100%;
  height: auto
}

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

.ofi {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.ofi__event {
  height: calc(160 / 750 * 100vw)
}

.ofi__event--archive {
  height: calc(185 / 750 * 100vw)
}

.ofi__event--detail {
  height: calc(185 / 750 * 100vw)
}

.ofi__seko,
.ofi__seko--archive,
.ofi__voice {
  height: calc(220 / 750 * 100vw)
}

.ofi--seko--point {
  height: calc(220 / 750 * 100vw)
}

.ofi__staff {
  height: calc(960 / 750 * 100vw)
}

@media screen and (min-width: 751px) {
  .ofi__event {
    height: calc(80 / 1300 * 100vw)
  }

  .ofi__event--archive {
    height: calc(180 / 1300 * 100vw)
  }

  .ofi__event--detail {
    height: calc(235 / 1300 * 100vw)
  }

  .ofi__seko,
  .ofi__seko--archive,
  .ofi__voice {
    height: calc(180 / 1300 * 100vw)
  }

  .ofi--seko--point {
    height: calc(180 / 1300 * 100vw)
  }

  .ofi__staff {
    height: calc(500 / 1300 * 100vw)
  }
}

@media screen and (min-width: 1279px) {
  .ofi__event {
    height: 80px
  }

  .ofi__event--archive {
    height: 180px
  }

  .ofi__event--detail {
    height: 235px
  }

  .ofi__seko,
  .ofi__seko--archive,
  .ofi__voice {
    height: 180px
  }

  .ofi--seko--point {
    height: 180px
  }

  .ofi__staff {
    height: 500px
  }
}

.top_easy {
  position: absolute;
  top: 10vh;
  left: 10vw;
  width: 10vw;
}

@media screen and (max-width: 750px) {
  .top_easy {
    position: absolute;
    top: 10vh;
    left: 1vw;
    width: 20vw;
  }
}

.staff_space {
  margin-bottom: 2rem;
}

.staff_space img {
  width: 20%;
  display: inline-block;
  margin-right: 2%;
}

.staff_space p {
  width: 77%;
  display: inline-block;
  vertical-align: top;
  line-height: 172%;
  font-size: 136%;
}

.free_space {}

.free_space img {
  width: 13%;
  display: inline-block;
  margin-right: 2%;
}

.free_space p {
  width: 83%;
  display: inline-block;
  vertical-align: top;
  line-height: 140%;
  font-weight: 900;
  font-size: 180%;
}

.contact_promiss {
  background-color: #ffffff;
  padding: 30px;
  height: 200px;
}

.contact_promiss h4 {
  font-weight: 900;
  text-align: center;
  font-size: 140%;
  margin-bottom: 3rem;
  border-bottom: 2px dashed #ccc;
  padding-bottom: 1rem;
}

.contact_promiss ul {
  list-style: none;
  list-style-position: inside;
  margin-left: 40px;
  counter-reset: li;
}

.contact_promiss ul li {
  list-style: none;
  position: relative;
  padding-left: 2.5em;
  margin-bottom: 1rem;
  line-height: 1.6rem;
  font-weight: 700;
}

.contact_promiss ul li:before {
  counter-increment: li;
  content: counter(li);
  margin-right: 1em;
  background: #55b487;
  color: #fff;
  text-align: center;
  width: 1.3em;
  height: 1.3em;
  position: absolute;
  left: 0em;
  top: 2px;
  line-height: 1.4;
}

@media screen and (min-width: 1025px) {
  .block td {
    display: block;
  }
}

@media screen and (max-width: 480px) {
  .staff_space img {
    width: 30%;
    display: inline-block;
    margin-right: 2%;
  }

  .staff_space p {
    width: 65%;
    display: inline-block;
    vertical-align: top;
    line-height: 160%;
    font-size: 100%;
  }

  .free_space img {
    width: 24%;
    display: inline-block;
    margin-right: 2%;
  }

  .free_space p {
    width: 72%;
    display: inline-block;
    vertical-align: top;
    line-height: 140%;
    font-weight: 900;
    font-size: 120%;
  }

  .comtact__book__list li {
    position: relative;
    margin-left: 4.8vw;
    margin-bottom: 5vw;
    padding: 1.5em 1em;
    width: calc(100% - 4.8vw);
    border-radius: .5em;
    z-index: 3;
    display: flex;
  }

  .contact__book__image {
    display: flex;
    /* justify-content: center; */
    /* align-items: center; */
    height: auto;
    width: 40%;
    margin-right: 4%;
  }

  .comtact__book__list li p.text {
    margin-bottom: 1.5em;
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.6em;
  }

  .contact_promiss ul {
    margin-left: 0;
  }

  .contact_promiss {
    padding: 14px;
    height: 200px;
    margin-bottom: 5em;
  }
}

@media screen and (max-width: 750px) {
  .form tr {
    border-bottom: none;
    background-color: #f6f6f6;
  }

  .form th {
    display: block;
    padding: .7em 1em;
    width: 100%;
    font-size: 4vw;
  }

  .form td {
    display: block;
    padding: .5em .5em 1em .5em;
    width: 100%;
    margin: 0;
    background: #fff;
  }

  .form input[type="text"],
  .form input[type="email"],
  .form input[type="tel"],
  .form input[type="date"],
  .form select {
    padding: 1em .5em;
    background-color: #eee;
    border: 0;
    border-radius: 0;
    width: 100%;
    color: #666;
    font-size: calc(30 / 750 * 100vw)
  }

  .form textarea {
    height: 50vw;
    font-size: calc(30 / 750 * 100vw)
  }
}

@media screen and (max-width: 414px) {
  .sec__banner__illust__bird {
    top: 473vw;
    left: 2vw;
  }

  .sec__event__illust__mega {
    top: -85vw;
    left: 2vw;
  }

  .sec__event__illust__movie {
    top: -17vw;
    right: 2vw;
  }

  .sec__banner {
    position: relative;
    padding: 6.6vw 0 4vw 0;
  }
}

@media screen and (max-width: 414px) {

  .banner__container a:nth-of-type(1),
  .banner__container a:nth-of-type(2),
  .banner__container a:nth-of-type(3) {
    width: 48%;
  }

  .banner__container a:nth-of-type(4) {
    width: 100%;
  }

  .banner__container a:nth-of-type(5) {
    position: absolute;
    top: 31%;
    right: 18px;
    width: 44%;
  }

  .banner__container_kaiyu a:nth-of-type(1),
  .banner__container_kaiyu a:nth-of-type(2),
  .banner__container_kaiyu a:nth-of-type(3) {
    width: 48%;
  }

  .banner__container_kaiyu a:nth-of-type(4) {
    width: 100%;
  }

  .banner__container_kaiyu a:nth-of-type(5) {
    position: absolute;
    top: 31%;
    right: 18px;
    width: 44%;
  }

  .banner__container_kaiyu_s a:nth-of-type(1),
  .banner__container_kaiyu_s a:nth-of-type(2),
  .banner__container_kaiyu_s a:nth-of-type(3) {
    width: 48%;
    order: 1;
  }

  .banner__container_kaiyu_s a:nth-of-type(4) {
    order: 3;
    width: 100%;
  }

  .banner__container_kaiyu_s a:nth-of-type(5) {
    order: 2;
    width: 48%;
  }
}

.footBnr {
  display: none;
}

@media screen and (max-width: 750px) {
  .footBnr {
    display: flex;
    padding: 5px;
    position: fixed;
    width: 100%;
    background: #fff;
    z-index: 9999;
    bottom: 0px;
    left: 0px;
  }

  .footBnr a {
    width: 32.3%;
    margin-right: 1.5%
  }

  .footBnr a img {
    width: 100%
  }

  .footBnr a:last-of-type {
    margin-right: 0
  }

  footer {
    margin-bottom: 24%
  }
}

#blog {
  vertical-align: top;
}

.blog__container {
  margin-top: 5%;
}

.blog__container a {
  display: flex;
  justify-content: space-between;
  padding-bottom: 5%;
  padding-top: 5%;
  border-bottom: 1px dashed #ccc;
}

.blog__image {
  width: 30%;
  height: auto;
  margin-right: 2%;
}

.blog__content {
  width: 68%;
  line-height: 120%;
}

.scroll_box {
  height: 16rem;
  overflow-y: scroll;
}

@media screen and (max-width: 414px) {
  .sec__lineup__illust__flag {
    top: 200vw;
  }

  .sec__lineup__illust__kikyu {
    top: 190vw;
  }

  .banner__container_top {
    padding-bottom: 10%;
  }
}

.update__container #event {
  position: relative;
}

.btn---event {
  position: absolute;
  bottom: 30px;
  left: 30px;
}

@media screen and (max-width: 414px) {
  .btn---event {
    position: static;
    /*bottom: 30px;
	left:30px;*/
  }
}

@media screen and (max-width: 414px) {
  .lineup__price__content {
    padding: 3.33vw 0 4.00vw 0;
    background-color: #fff;
    border: 1px solid #333;
    line-height: 150%;
  }

  .lineup__price__container {
    width: 96%;
    margin: 3vh 2% 0 2%;
    /*display:flex;*/
  }

  .lineup__price__label {
    font-size: calc(30 / 750 * 100vw);
  }

  .lineup__price {
    margin: 0 2%;
    width: calc(88% + 4.27vw + 4.27vw);
  }

  .lineup__price__num span {
    margin-right: .2em;
    font-family: "langdon", sans-serif;
    font-size: calc(80 / 750 * 100vw);
    letter-spacing: .1em;
    color: #f50301;
  }

  .sp_none {
    display: none;
  }
}

.souzou {
  margin-bottom: 5em;
  text-align: center;
}

.souzou .souzou_tit {
  color: #55b487;
  font-size: calc(20 / 750 * 100vw);
  font-weight: 700;
  margin-bottom: 1em;
}

.souzou .souzou_tit2 {
  font-size: calc(18 / 750 * 100vw);
  line-height: 1.6em;
  font-weight: 700;
  margin-bottom: 2em;
}

.souzou .pf_box {
  margin-bottom: 2em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.souzou .pf_box img {
  width: 32%;
  margin-bottom: 1em;
}

.naze {
  margin-bottom: 5em;
  text-align: center;
}

.naze .naze_select {
  margin-bottom: 3em;
  background-color: #bbe2ce;
  padding: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
}

.naze .naze_select p {
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
}

.naze .naze_select img {
  width: 20%;
}

.naze .v_box {
  display: flex;
  justify-content: space-between;
}

.naze .v_box .w45 {
  width: 45%;
  text-align: center;
}

.naze .v_box img {
  margin-bottom: 1em;
}

.naze .v_box .tit {
  font-size: 1.6rem;
  margin-bottom: 1em;
}

.naze .v_box .tit2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2em;
  margin-bottom: 1em;
}

.naze .v_box .p_box {
  font-size: 1.6rem;
  text-align: left;
  line-height: 1.6em;
}

@media screen and (max-width: 750px) {
  .souzou .souzou_tit {
    color: #55b487;
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    margin-bottom: 1em;
  }

  .souzou .souzou_tit2 {
    font-size: calc(36 / 750 * 100vw);
    line-height: 1.6em;
    font-weight: 700;
    margin-bottom: 2em;
  }

  .souzou .pf_box {
    margin-bottom: 2em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }

  .souzou .pf_box img {
    width: 48%;
    margin-bottom: 1em;
  }

  .naze .naze_select {
    margin-bottom: 3em;
    background-color: #bbe2ce;
    padding: 1em;
    display: block;
    text-align: center;
  }

  .naze .naze_select p {
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    margin-bottom: 1em;
  }

  .naze .naze_select img {
    width: 60%;
    margin-bottom: 2em;
  }

  .naze .v_box {
    display: block;
  }

  .naze .v_box .w45 {
    width: 100%;
    text-align: center;
    margin-bottom: 2em;
  }

  .naze .v_box .tit {
    font-size: calc(26 / 750 * 100vw);
    margin-bottom: 1em;
  }

  .naze .v_box .tit2 {
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    line-height: 1.6em;
    margin-bottom: 1em;
  }

  .naze .v_box .p_box {
    font-size: calc(26 / 750 * 100vw);
    text-align: left;
    line-height: 1.6em;
  }
}

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

@media only screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }
}

.lc__bnr {
  padding: 30px 0 0 0;
  position: relative;
}

.mv_bottom_box {
  background-color: #fff;
  box-shadow: 0px 0px 10px #ccc;
  border: 1px solid #fff;
  font-size: 180%;
  line-height: 1.6em;
  margin: -180px auto;
  z-index: 3;
  position: absolute;
  left: 50%;
  width: calc(1000 / 1300 * 100vw);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 1000px;
}

.mv_bottom_box p {
  width: 82%;
  margin: 20px auto;
}

.lc_tit {
  color: #55b487;
  font-size: 200%;
  font-weight: 700;
  margin-bottom: 1em;
  text-align: center;
}

.lc_tit span {
  color: #55b487;
  font-size: 150%;
  font-weight: 700;
  background: linear-gradient(transparent 75%, #fff527 75%);
}

.lc_tit2 {
  background-color: #55b487;
  padding: .5em 0;
  width: 100%;
  color: #fff;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.lc_tit3 {
  background-color: #b98754;
  padding: .3em 0;
  width: 100%;
  color: #fff;
  font-size: 160%;
  font-weight: 500;
  text-align: left;
  line-height: 1.4em;
  margin-bottom: 20px;
}

.lc_tit3 .inner {
  max-width: 520px;
  width: 70%;
  margin: 0 auto;
  white-space: nowrap;
}

.lc_banner__container_top {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 3%;
  padding-bottom: 3%;
}

@media screen and (max-width: 750px) {
  .lc__bnr {
    padding: 30px 0 0 0;
    position: relative;
  }

  .lc__bnr img {
    width: 100%;
  }

  .mv_bottom_box {
    width: 90%;
    margin: -80px auto 30px;
    background-color: #fff;
    box-shadow: 0px 0px 10px #ccc;
    border: 1px solid #fff;
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.6em;
  }

  .mv_bottom_box p {
    width: 90%;
    margin: 10px auto;
  }

  .lc_tit {
    color: #55b487;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    margin-bottom: 1em;
    text-align: center;
  }

  .lc_tit span {
    color: #55b487;
    font-size: calc(40 / 750 * 100vw);
    font-weight: 700;
    background: linear-gradient(transparent 75%, #fff527 75%);
  }

  .lc_tit2 {
    background-color: #55b487;
    padding: .7em 0;
    width: 100%;
    color: #fff;
    font-size: calc(40 / 750 * 100vw);
    font-weight: 500;
    text-align: center;
    line-height: 1.8em;
    margin-bottom: 20px;
  }

  .lc_banner__container_top a {
    width: 100%;
    margin-bottom: 20px;
  }
}

#oshirase {
  max-width: 1000px;
  border: double 5px #F00;
  padding: 10px;
  margin: 20px auto;
  line-height: 1.6em;
  background: #fff;
}

@media screen and (max-width: 768px) {
  #oshirase {
    width: 100%;
    border: double 5px #F00;
    padding: 10px;
    margin: 20px auto;
    line-height: 1.6em;
    background: #fff;
  }
}

.covid19_caution {
  width: 92%;
  padding: 2% 2% 0 2%;
  margin: 0 auto 3rem auto;
  border: 4px solid #55b587;
  text-align: left;
}

.covid19_caution p {
  color: #333;
  font-weight: bold;
  line-height: 2rem;
  margin-bottom: 2rem;
}

.covid19_caution p.caution {
  color: #b50303;
  margin-bottom: 1rem;
}

.covid19_caution .btn {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0;
}

.covid19_caution .btn p {
  padding: 2rem 0;
  width: 49%;
  background: #55b587;
  color: #fff;
  font-weight: bold;
  margin-bottom: 1.4rem;
}

.top_raiten_bnr_wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0;
  width: 92%;
  padding: 0;
  margin: 0 auto 3rem auto;
}

.top_raiten_bnr_wrap a {
  width: 49%;
}

.top_raiten_bnr_wrap a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 414px) {
  .covid19_caution .btn p {
    padding: 1rem 0;
  }

  .lc_tit3 {
    text-align: center;
  }

  .top_raiten_bnr_wrap {
    display: block;
  }

  .top_raiten_bnr_wrap a {
    width: 100%;
    margin-bottom: 2rem;
    display: block;
  }
}

.top_book_wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0;
  width: 92%;
  padding: 0;
  margin: 0 auto 3rem auto;
  max-width: 800px;
}

.top_book_wrap .left {
  width: 60%;
}

.top_book_wrap .left a {
  width: 70%;
  display: block;
  margin: 2.4rem auto;
}

.top_book_wrap .left a:hover {
  opacity: 0.7;
}

.top_book_wrap .right {
  width: 38%;
}

@media screen and (max-width: 414px) {
  .top_book_wrap .left {
    width: 57%;
  }

  .top_book_wrap .right {
    width: 41%;
  }
}

/* new-staffblog */
.sb-products-cat {
  margin-bottom: 30px;
}

.sb-products-cat ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.sb-products-cat ul li {
  width: 24%;
}

.sb-products-cat ul li a {
  display: block;
  width: 100%;
  border: 2px solid #f19149;
  background: #f19149;
  color: #fff;
  padding: 15px 0;
  border-radius: 2em;
  line-height: 1;
  text-align: center;
  margin-bottom: 10px;
  transition: all .3s;
  font-weight: 700;
}

.sb-products-cat ul li a:hover {
  background: #fff;
  color: #f19149;
}

.sb-archive a {
  margin-bottom: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 2px dashed #ccc;
  padding-bottom: 15px;
}

.sb-archive a:hover {
  opacity: 0.8;
}

.sb-archive a .img {
  width: 22%;
}

.sb-archive a .img .img-trim {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}

.sb-archive a .img .img-trim img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: 'object-fit: cover;'
}

.sb-archive a .txt {
  width: 75%;
}

.sb-archive a .txt .txt-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.sb-archive a .txt-header p {
  font-weight: 700;
  color: #55b587;
}

.sb-archive a .txt-header p.count {
  background: #55b587;
  color: #fff;
  padding: 1rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 14rem;
  margin: 0 0 0 auto;
}

.sb-archive a .txt-header p.count span {
  font-weight: 400;
}

.sb-archive a .txt .txt-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.sb-archive a .txt .txt-content .txt-content-child {
  width: 76%;
}

.sb-archive a .txt .txt-content .txt-content-child h4 {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.6;
}

.sb-archive a .txt .txt-content .txt-content-child p {
  line-height: 1.6;
}

.sb-archive a .txt-content-thumb {
  width: 14%;
  text-align: right;
}

.sb-archive a .txt-content-thumb .img-trim {
  position: relative;
  overflow: hidden;
  padding-top: 125%;
}

.sb-archive a .txt-content-thumb .img-trim img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: 'object-fit: cover;'
}

.staff-blog-profile {
  margin: 50px 0;
}

.sb-archive a .txt-content-thumb .img-trim p {
  margin: 10px 0 0 0;
  font-size: 1.2rem;
}

.staff-blog-profile .profile-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.staff-blog-profile .profile-inner .img {
  width: 250px;
}

.staff-blog-profile .profile-inner .txt {
  width: calc(100% - 280px);
}

.staff-blog-profile .profile-inner .txt h5 {
  border-bottom: 3px solid #55b587;
  padding: 15px 20px;
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 15px;
  font-weight: 700;
  color: #55b587;
  background: #f9f9f9;
}

.staff-blog-profile .profile-inner .txt h6 {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1;
  margin-bottom: 15px;
  background: #E8FCF3;
  color: #55b587;
  padding: 10px 15px;
}

.staff-blog-profile .profile-inner .txt p {
  line-height: 1.6;
  margin-bottom: 15px;
}

.staff-blog-profile .profile-inner .txt .btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.staff-blog-profile .profile-inner .txt .btn-wrap a {
  background: #55b587;
  color: #fff;
  padding: 15px;
  font-weight: 700;
  font-size: 1.5rem;
  width: 60%;
  text-align: center;
}

.staff-blog-profile .profile-inner .txt .btn-wrap a:hover {
  opacity: 0.8;
}

@media (max-width: 560px) {
  .sb-products-cat ul li {
    width: 49%;
  }

  .sb-products-cat ul li a {
    font-size: 12px;
  }

  .area-cat-child.area-cat-child-old>div {
    width: 49%;
  }

  .sb-archive a {
    border-bottom: 2px dashed #ccc;
    padding-bottom: 15px;
  }

  .sb-archive a .img {
    width: 100%;
    margin: 0 0 15px 0;
  }

  .sb-archive a .img .img-trim {
    padding-top: 56.25%;
  }

  .sb-archive a .txt {
    width: 100%;
  }

  .sb-archive a .txt .txt-header {
    margin-bottom: 10px
  }

  .sb-archive a .txt .txt-header p {
    font-size: 14px;
  }

  .sb-archive a .txt .txt-header p.count {
    padding: 5px 10px;
  }

  .sb-archive a .txt h4 {
    font-size: 1.6rem;
    margin: 0 0 10px 0;
  }

  .sb-archive a .txt>p {
    font-size: 1.4rem;
  }

  .sb-archive a .txt .txt-content .txt-content-child {
    width: 100%;
    margin-bottom: 10px;
  }

  .sb-archive a .txt .txt-content .txt-content-thumb {
    width: 20%;
    margin: 0 0 0 auto;
  }

  .staff-blog-profile .profile-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .staff-blog-profile .profile-inner .img {
    width: 60%;
    margin: 0 auto 25px;
  }

  .staff-blog-profile .profile-inner .txt {
    width: 100%;
  }

  .staff-blog-profile .profile-inner .txt .btn-wrap a {
    width: 100%;
  }
}

.rm_bnr {
  background-color: #e2f5ed;
  padding: 20px;
  width: 920px;
  margin: 0 auto 50px;
  text-align: center;
}

.rm_bnr .fl_box {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .rm_bnr {
    background-color: #e2f5ed;
    width: 100%;
    padding: 2%;
    margin: 0 auto 50px;
    text-align: center;
  }

  .rm_bnr .fl_box {
    display: block;
  }

  .rm_bnr .fl_box img {
    margin-bottom: 20px;
    width: 100%;
  }
}

#modelroom {}

#modelroom section {
  position: relative;
}

#modelroom section .deco01 {
  position: absolute;
  margin: 0 auto;
  /* max-width: 1350px; */
  /* text-align: center; */
  max-width: 1350px;
  width: 100%;
  z-index: 999;
  top: 5%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#modelroom section .deco02 {
  position: absolute;
  margin: 0 auto;
  /* max-width: 1350px; */
  /* text-align: center; */
  max-width: 1350px;
  width: 100%;
  z-index: 999;
  top: 5%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#modelroom section .deco03 {
  position: absolute;
  margin: 0 auto;
  /* max-width: 1350px; */
  /* text-align: center; */
  max-width: 1350px;
  width: 100%;
  z-index: 999;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#modelroom section .deco04 {
  position: absolute;
  margin: 0 auto;
  /* max-width: 1350px; */
  /* text-align: center; */
  max-width: 1350px;
  width: 100%;
  z-index: 999;
  top: -5%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#modelroom .full_width {
  width: 100%;
}

#modelroom .bg_edf7f2 {
  background: #edf7f2;
  padding: 5rem 0;
}

#modelroom h3 {
  text-align: center;
  font-size: 130%;
  font-weight: 900;
  margin-bottom: 5rem;
}

#modelroom .flex_subtitle01 {
  display: flex;
  justify-content: center;
}

#modelroom .flex_subtitle01 p {
  text-align: center;
  font-size: 140%;
  font-weight: 700;
  line-height: 160%;
  padding: 0 5rem;
}

#modelroom .flex_subtitle01 img {
  max-width: 134px;
  height: auto;
}

#modelroom .flex_subtitle02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#modelroom .flex_subtitle02 picture {
  width: 54%;
  margin-right: 4%;
}

#modelroom .flex_subtitle02 img {
  width: 100%;
  max-width: 520px;
  height: auto;
}

#modelroom .flex_subtitle02 p {
  width: 42%;
  line-height: 180%;
}

#modelroom .flex_subtitle03 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#modelroom .flex_subtitle03 h4 {
  display: flex;
  justify-content: flex-start;
  align-content: space-around;
}

#modelroom .flex_subtitle03 h4 .point {
  color: #53b081;
  text-align: center;
  font-weight: 900;
  margin-right: 1rem;
  font-size: 160%;
  font-family: 'Century Gothic';
  line-height: 100%;
}

#modelroom .flex_subtitle03 div {
  width: 30%;
}

#modelroom .flex_subtitle03 div picture {
  margin: 1rem 0;
  display: block;
}

#modelroom .flex_subtitle03 div p {
  line-height: 160%;
}

#modelroom .flex_subtitle04 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#modelroom h4.mini_ff {
  font-family: "langdon", sans-serif;
  text-align: center;
  font-size: 160%;
  margin-bottom: 5rem;
}

#modelroom h3.modelroom_annai {
  padding: 0;
  margin: 0;
}

#modelroom .flex_subtitle04 picture {
  margin: 0 0 5% 0;
  width: 56%;
  display: block;
}

#modelroom .flex_subtitle04 p {
  width: 39%;
  line-height: 180%;
}

#modelroom frame {
  width: 100%;
  height: 20vh;
}

#modelroom a.to_form {
  margin: 0 auto;
  text-align: center;
  display: block;
  position: relative;
  z-index: 10000;
}

.section__front__subhead_modelroom {
  position: relative;
  display: block;
  margin-bottom: .5em;
  font-family: "langdon", sans-serif;
  font-size: calc(30 / 750 * 100vw);
}

#modelroom .pc_none {
  display: none;
}

#modelroom .form {
  text-align: center;
  width: 100%;
  margin: 0 auto;
  max-width: 1000px;
}

#modelroom .form li {
  margin: 0 0 2rem 0;
  padding: 0;
}

#modelroom .form p {
  line-height: 180%;
  text-align: left;
}

#modelroom .form table td {
  text-align: left;
}

#modelroom .form h3.flower {
  font-size: 200%;
  position: relative;
  display: block;
  margin: 0 auto 7rem auto;
  background: url(../img/modelroom/modelroom_pc_09.png) no-repeat center;
  background-size: contain;
}

#modelroom .form h3.flower:before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px;
  display: inline-block;
  width: 140px;
  /* height: 5px; */
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  /* background-color: black; */
  /* border-radius: 2px; */
  border-bottom: 1px dashed #333;
}

#modelroom .form .left {
  text-align: left;
  margin-top: 2rem;
}

@media screen and (max-width: 750px) {
  #modelroom .flex_subtitle03 div {
    width: 100%;
    margin-bottom: 2rem;
  }
#modelroom .flex_subtitle02 picture {
  width: 100%;
  margin-right: 0;
}

#modelroom .flex_subtitle02 img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
#modelroom .flex_subtitle02 p {
  width: 100%;
}
#modelroom .flex_subtitle04 picture {
  margin: 0;
  width: 100%;
  display: block;
}
#modelroom .flex_subtitle04 p {
  width: 100%;
}
}

@media screen and (max-width: 414px) {
  #modelroom .pc_none {
    display: block;
  }

  .section__front__subhead_modelroom {
    position: relative;
    display: block;
    margin-bottom: .5em;
    font-family: "langdon", sans-serif;
    font-size: calc(120 / 750 * 100vw);
  }

  #modelroom .flex_subtitle02 {
    display: block;
  }

  #modelroom .flex_subtitle02 p {
    width: 100%;
  }

  #modelroom .flex_subtitle03 {
    display: block;
  }

  #modelroom .flex_subtitle03 div h4 {
    font-size: 160%;
  }

  #modelroom .flex_subtitle04 {
    display: block;
  }

  #modelroom .flex_subtitle04 picture {
    width: 100%;
  }

  #modelroom .flex_subtitle04 p {
    width: 100%;
  }

  #modelroom .form {
    width: 100%;
    margin: 0 auto;
  }

  #modelroom section .deco01 {
    top: -77%;
  }

  #modelroom section .deco02 {
    top: -40%;
  }

  #modelroom section .deco03 {
    top: 143%;
  }

  #modelroom section .deco04 {
    top: -7%;
  }

  #modelroom .flex_subtitle01 p {
    padding: 0 1rem;
  }

  #modelroom .flex_subtitle01 picture {
    width: 15%;
    display: block;
  }

  #modelroom h3 {
    font-size: 175%;
  }

  #modelroom .form p.form__step__num,
  #modelroom .form p.form__step__title {
    line-height: 110%;
    text-align: left;
  }

  #modelroom .form .left {
    text-align: left;
    margin-top: 2rem;
    line-height: 160%;
    font-size: 120%;
  }

  .form__date {
    display: block;
  }

  .form__date li:nth-of-type(1) {
    display: block;
    margin-bottom: .5em;
  }

  .form__date li:nth-of-type(2),
  .form__date li:nth-of-type(3),
  .form__date li:nth-of-type(4),
  .form__date li:nth-of-type(5) {
    display: inline-block;
  }
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.vp_tit1 {
  background-color: #55b487;
  padding: .5em 0;
  width: 100%;
  color: #fff;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.vp_tit2 {
  background-color: #c89f62;
  padding: .5em 0;
  width: 100%;
  color: #fff;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.vp_tit3 {
  background-color: #313131;
  padding: .5em 0;
  width: 100%;
  color: #fff;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.vp_tit4 {
  background-color: #f4904d;
  padding: .5em 0;
  width: 100%;
  color: #fff;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.vp_tit5 {
  background-color: #fff;
  padding: .5em 0;
  width: 100%;
  border-bottom: 3px solid #5ab486;
  color: #000;
  font-size: 200%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8em;
  margin-bottom: 20px;
}

.f_it {
  font-style: italic;
}

.g_box {
  position: relative;
  padding: 10px;
}

.g_box .s_tit {
  position: absolute;
  bottom: 5px;
  width: 60%;
  border: 2px solid #5ab486;
  padding: 5px;
  text-align: center;
  margin: -10px auto 0;
  background-color: #fff;
  left: 20%;
  color: #5ab486;
}

.s_box {
  position: relative;
  padding: 10px;
}

.s_box .s_tit {
  position: absolute;
  bottom: 5px;
  width: 60%;
  border: 2px solid #c89f62;
  padding: 5px;
  text-align: center;
  margin: -10px auto 0;
  background-color: #fff;
  left: 20%;
  color: #c89f62;
}

.p_box {
  position: relative;
  padding: 10px;
}

.p_box .s_tit {
  position: absolute;
  bottom: 5px;
  width: 60%;
  border: 2px solid #313131;
  padding: 5px;
  text-align: center;
  margin: -10px auto 0;
  background-color: #fff;
  left: 20%;
  color: #313131;
}

.k_box {
  padding: 10px;
}

.k_box .s_tit {
  margin-top: 5px;
  margin-left: 1em;
  position: relative;
  line-height: 1.6em;
}

.k_box .s_tit:before {
  position: absolute;
  content: '';
  top: 0.5em;
  left: -1em;
  height: 0;
  width: 0;
  border-style: solid;
  border-width: 6px 0 6px 9px;
  border-color: transparent transparent transparent #5ab486;
}

#loop-slide-v01,
#loop-slide-v02,
#loop-slide-v03 {
  position: relative;
  margin: 40px auto;
}

#loop-slide-v04 {
  position: relative;
  margin: 40px auto 80px;
}

#loop-slide-v01 .prev-arrow,
#loop-slide-v02 .prev-arrow,
#loop-slide-v03 .prev-arrow,
#loop-slide-v04 .prev-arrow {
  position: absolute;
  top: 40%;
  left: -3%;
  z-index: 999;
}

#loop-slide-v01 .next-arrow,
#loop-slide-v02 .next-arrow,
#loop-slide-v03 .next-arrow,
#loop-slide-v04 .next-arrow {
  position: absolute;
  top: 40%;
  right: -3%;
  z-index: 999;
}

.vp_lineup__loan {
  background-color: #ffe5dc;
  margin-bottom: 5vw;
  padding: 5vw;
}

.vp_lineup__loan .f_box {
  line-height: 1.6;
}

.vp_lineup__loan .f_box .box1 {
  text-align: center;
  margin-bottom: 5vw;
}

.vp_lineup__loan .f_box .box1 img {
  margin: 4vw auto 0;
}

.vp_lineup__loan .f_box .box2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.vp_lineup__loan .f_box .box2 .w48 {
  width: 49%;
  background: #fff;
  padding: .5em;
  margin-bottom: .5em;
}

.vp_lineup__loan .f_box .box2 .w100 {
  width: 100%;
  background: #fff;
}

.vp_lineup__loan .f_box .box3 .box-child {
  margin-bottom: 5vw;
  padding: 4vw;
  background: #fff;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.vp_lineup__loan .f_box .box3 .box-child .formula {
  position: absolute;
  bottom: -9vw;
  right: 25vw;
  content: "";
  z-index: 2;
  background: #f4904d;
  width: 13vw;
  height: 13vw;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  opacity: 0.7;
}

.vp_lineup__loan .f_box .box3 .box-child .formula i {
  font-size: 3rem;
  color: #fff;
  line-height: 1;
  text-align: center;
}

.vp_lineup__loan .f_box .box3 .box-child:last-child {
  margin-bottom: 0;
}

.vp_lineup__loan .f_box .box3 .box-child .title {
  width: 38%;
}

.vp_lineup__loan .f_box .box3 .box-child .title p {
  display: block;
  background: #f4904d;
  color: #fff;
  font-size: 1.25rem;
  padding: 0.25em 0;
  text-align: center;
  font-weight: 700;
}

.vp_lineup__loan .f_box .box3 .box-child .price {
  width: 60%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.vp_lineup__loan .f_box .box3 .box-child .price p:first-child {
  font-size: 3.5rem;
  margin-right: 0.5vw;
  line-height: 1;
}

.vp_lineup__loan .f_box .box3 .box-child .price p:last-child {
  font-size: 1.25rem;
  line-height: 1.2;
  text-align: center;
}

.vp_lineup__loan .f_box .box3 .box-child:first-child .price p {
  font-weight: 900;
}

.vp_lineup__loan .f_box .box3 .box-child:last-child .price p {
  font-weight: 900;
  color: #D23130;
}

.vp_lineup__loan .f_box .box3 .box-child .txt {
  width: 100%;
  margin-top: 0.75vw;
}

.vp_lineup__loan .f_box .box3 .box-child .txt p {
  text-align: left;
}

@media screen and (min-width: 751px) {

  .vp_lineup__loan {
    padding: 2vw;
    margin-bottom: 2vw;
  }

  .vp_lineup__loan .f_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    line-height: 1.6;
  }

  .vp_lineup__loan .f_box .box1 {
    width: calc(340 / 1000 * 100vw);
    text-align: center;
  }

  .vp_lineup__loan .f_box .box1 img {
    margin: 1em auto;
  }

  .vp_lineup__loan .f_box .box2,
  .vp_lineup__loan .f_box .box3 {
    width: calc(100% - (340 / 1000 * 100vw) - (25 / 1000 * 100vw));
  }

  .vp_lineup__loan .f_box .box3 .box-child {
    margin-bottom: 25px;
    padding: 20px;
  }

  .vp_lineup__loan .f_box .box3 .box-child .formula {
    position: absolute;
    bottom: -40px;
    right: 30%;
    content: "";
    z-index: 2;
    width: 60px;
    height: 60px;
  }

  .vp_lineup__loan .f_box .box3 .box-child .formula i {
    font-size: 3rem;
  }

  .vp_lineup__loan .f_box .box3 .box-child:last-child {
    margin-bottom: 0;
  }

  .vp_lineup__loan .f_box .box3 .box-child .title {
    width: 38%;
  }

  .vp_lineup__loan .f_box .box3 .box-child .title p {
    font-size: 1.5rem;
    padding: 0.5em 0;
  }

  .vp_lineup__loan .f_box .box3 .box-child .price {
    width: 60%;
  }

  .vp_lineup__loan .f_box .box3 .box-child .price p:first-child {
    font-size: 5rem;
    margin-right: 5px;
  }

  .vp_lineup__loan .f_box .box3 .box-child .price p:last-child {
    font-size: 1.5rem;
    line-height: 1.2;
  }

  .vp_lineup__loan .f_box .box3 .box-child .txt {
    width: 100%;
    margin-top: 5px;
  }

}

@media screen and (min-width: 1279px) {

  .vp_lineup__loan .f_box .box1 {
    width: 462px;
  }

  .vp_lineup__loan .f_box .box2,
  .vp_lineup__loan .f_box .box3 {
    width: calc(100% - 462px - 25px);
  }

  .vp_lineup__loan .f_box .box3 .box-child .price {
    width: 58%;
  }

  .vp_lineup__loan .f_box .box3 .box-child .price p:first-child {
    font-size: 5.5rem;
  }

  .vp_lineup__loan .f_box .box3 .box-child .price p:last-child {
    font-size: 2rem;
  }

}



.b_bd {
  border-bottom: 2px solid #f07850;
  font-size: calc(12 / 750 * 100vw);
  padding: .5vw
}

.fcor {
  color: #f07850;
}

.fcrd {
  color: #ff0000;
}

.fs120 {
  font-size: 120%;
}

.fs160 {
  font-size: 160%;
  font-weight: 700;
}

.fs200 {
  font-size: 200%;
  font-weight: 700;
}

.fs260 {
  font-size: 260%;
  font-weight: 700;
}

.vp_loan__head {
  display: block;
  padding: .2em;
  background-color: #fff;
  border: 2px solid #f07850;
  color: #f07850;
  font-size: calc(12 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  border-radius: 3px;
}

.vp_loan__head2 {
  display: block;
  padding: .5em 1.5em;
  background-color: #f07850;
  color: #fff;
  font-size: calc(10 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  margin-bottom: .5em;
}

.step {
  list-style-type: none;
  display: table;
  width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  height: 100%;
}

.step li {
  display: table-cell;
  position: relative;
  background: #fff;
  padding: 1em 0.5em 1em 2em;
  color: #ff0000;
  vertical-align: middle;
}

.step li:last-child {
  padding-right: 1em;
}

.step li:last-child:before,
.step li:last-child:after {
  display: none;
}

.step li:before,
.step li:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
}


.step li.is-current {
  background: url(../img/lineup/kakaku_arrow.png) no-repeat right;
  background-size: cover;
  font-weight: bold;
  color: #fff;
  font-size: 1.8rem;
  padding-right: 2rem;
}

.step_sogaku {
  list-style-type: none;
  display: table;
  width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  height: 100%;
}

.step_sogaku li {
  display: table-cell;
  position: relative;
  background: #fff;
  padding: 1em 0.5em 1em 2em;
  color: #ff0000;
  vertical-align: middle;
}

.step_sogaku li:last-child {
  padding-right: 1em;
}

.step_sogaku li:last-child:before,
.step_sogaku li:last-child:after {
  display: none;
}

.step_sogaku li:before,
.step_sogaku li:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
}

.step_sogaku li:before {
  top: -15px;
  right: -1em;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 40px 0 40px 1em;
  z-index: 10;
}

.step_sogaku li:after {
  top: 0px;
  right: -0.8em;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 45px 0 45px .8em;
  z-index: 10;
  border-top: calc(47 / 1500 * 100vw) solid transparent;
  border-bottom: calc(47 / 1500 * 100vw) solid transparent;
}

.step_sogaku li.is-current {
  background: #f07850;
  font-weight: bold;
  color: #fff;
  font-size: 1.8rem;
}

.step_sogaku li.is-current:after {
  border-color: transparent transparent transparent #f07850;
}



@media screen and (max-width: 759px) {
  .vp_lineup__loan {
    margin: 0 auto 2rem auto;
    padding: 5vw;
  }

  .vp_loan__head {
    display: inline-block;
    padding: .2em 1.5em;
    background-color: #fff;
    border: 2px solid #f07850;
    color: #f07850;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    border-radius: 3px;
    margin-bottom: .2em;
  }

  .vp_loan__head2 {
    font-size: 1.4rem;
  }

  .b_bd {
    font-size: 20px;
    font-size: 2rem;
  }

  .step li:after {
    top: 0px;
    right: -1.4rem;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 1.5em 0 1.5em .8em;
    z-index: 10;
    border-top: calc(100 / 1500 * 100vw) solid transparent;
    border-bottom: calc(100 / 1500 * 100vw) solid transparent;
  }

  .step li {
    display: table-cell;
    position: relative;
    background: #fff;
    padding: 1em 0.5em 1em 1em;
    color: #ff0000;
    vertical-align: middle;
  }

  .step_sogaku li:after {
    top: 0px;
    right: -1.4rem;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 1.5em 0 1.5em .8em;
    z-index: 10;
    border-top: calc(100 / 1500 * 100vw) solid transparent;
    border-bottom: calc(100 / 1500 * 100vw) solid transparent;
  }

  .step_sogaku li {
    display: table-cell;
    position: relative;
    background: #fff;
    padding: 1em 0.5em 1em 1em;
    color: #ff0000;
    vertical-align: middle;
  }
}

@media screen and (min-width: 1279px) {
  .vp_loan__head {
    font-size: 24px;
    font-size: 2.4rem;
  }

  .b_bd {
    font-size: 20px;
    font-size: 2rem;
  }

  .vp_loan__head2 {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 414px) {
  .step_sogaku li:after {
    top: 0px;
    right: -1.4rem;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 1.5em 0 1.5em .8em;
    z-index: 10;
    border-top: calc(115 / 1500 * 100vw) solid transparent;
    border-bottom: calc(100 / 1500 * 100vw) solid transparent;
  }
}

@media screen and (min-width: 750px) {
  .step_sogaku li:after {
    top: 0px;
    right: -1.4rem;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 1.5em 0 1.5em .8em;
    z-index: 10;
    border-top: calc(56 / 1500 * 100vh) solid transparent;
    border-bottom: calc(56 / 1500 * 100vh) solid transparent;
  }
}

@media screen and (min-width: 1200px) {
  .step_sogaku li:after {
    top: 0px;
    right: -1.4rem;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 1.5em 0 1.5em .8em;
    z-index: 10;
    border-top: calc(66 / 1500 * 100vh) solid transparent;
    border-bottom: calc(66 / 1500 * 100vh) solid transparent;
  }
}

/*  movie --> アーカイブ
-------------------------------------------------------*/
.movie-archive a {
  position: relative;
  display: block;
  margin: 0 auto 13.33333vw auto;
  width: 85.33333vw;
}

@media screen and (max-width: 750px) {
  #movie {
    margin-bottom: 50px;
  }

  .movie-archive a:last-child {
    margin-bottom: 0;
  }

  #movie .pagecount__container {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  .movie-archive {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -1.38889vw;
  }

  .movie-archive a {
    margin: 0 0 4.86111vw 1.38889vw;
    width: calc(33.33333% - 1.38889vw);
  }
}

@media screen and (min-width: 1201px) {
  .movie-archive {
    margin: 0 0 0 -20px;
  }

  .movie-archive a {
    margin: 0 0 70px 20px;
    width: calc(33.33333% - 20px);
  }
}

/*  modelhouse
-------------------------------------------------------*/
@media screen and (max-width: 750px) {
  .adjust-sp__padding {
    padding: 0;
  }
}

@media screen and (min-width: 751px) {
  #modelhouse .pcnone {
    display: none;
  }
}

#modelhouse figure {
  text-align: center;
}

#modelhouse figure img {
  width: 100%;
}

#modelhouse .catch-area {
  position: relative;
}

#modelhouse .catch-area .deco01 {
  position: absolute;
  margin: 0 auto;
  max-width: 1350px;
  width: 100%;
  z-index: 999;
  top: 5%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#modelhouse .wrap .head {
  background: #95D5BC;
  max-width: 1350px;
  width: 100%;
  padding: 30px;
  text-align: center;
  margin: 0 auto;
}

#modelhouse .head .midashi {
  display: inline-block;
  background: #4EB890;
  padding: 10px;
  color: #fff;
  font-weight: bold;
  margin: 0 0 15px 0;
}

#modelhouse .head .place {
  font-size: 135%;
  padding: 5px;
  width: 12em;
  display: inline-block;
}

#modelhouse .head .new {
  background: #fff;
  color: #4eb890;
  width: 14em;
  display: inline-block;
  font-size: 150%;
  padding: 5px;
}

#modelhouse .head .separate {
  width: 670px;
  margin: 0 auto 2%;
  display: flex;
  justify-content: space-between;
}

#modelhouse .head .separate figure {
  width: 17%;
}

#modelhouse .head .separate .title-block {
  width: 80%;
  text-align: center;
}

#modelhouse .head .separate .title-block p {
  font-weight: bold;
  font-size: 107%;
  margin: 0 0 10px 0;
}

#modelhouse .head .separate .title-block h3 {
  font-size: 4rem;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  text-shadow: 5px 1px 0 #4eb890;
}

#modelhouse .head .separate-child {
  width: 670px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

#modelhouse .head .separate-child .reserve {
  font-weight: bold;
  color: #F0473A;
  border: 2px solid #F0473A;
  padding: 5px 30px;
  font-size: 150%;
  margin: 0 10px 0 0;
}

#modelhouse .head .separate-child .worktime {
  font-weight: bold;
  font-size: 150%;
  display: flex;
  align-items: baseline;
}

#modelhouse .head .separate-child .worktime .year {
  font-size: 13px;
  margin: 0 0 0 10px;
}

#modelhouse .img-area {
  display: flex;
  max-width: 1350px;
  width: 100%;
  margin: 0 auto;
}

#modelhouse .img-area figure {
  width: 20%;
}

#modelhouse .modelhouse-contact {
  max-width: 1350px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

#modelhouse .modelhouse-contact .content {
  position: relative;
}

#modelhouse .modelhouse-contact .content:before {
  background: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

#modelhouse .pos-center {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  display: inline-block;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 100%;
}

#modelhouse .pos-center h3 {
  color: #fff;
  font-weight: bold;
  font-size: 400%;
  margin: 0 0 2% 0;
  line-height: 1;
  font-family: din-2014, sans-serif;
}

#modelhouse .pos-center .open {
  font-weight: bold;
  background: #fff;
  padding: 10px 30px;
  display: inline-block;
  font-size: 150%;
  margin: 0 0 20px 0;
  font-family: din-2014, sans-serif;
}

#modelhouse .pos-center .denwa {
  color: #fff;
  margin: 0 0 30px 0;
}

#modelhouse .pos-center .denwa span {
  border-bottom: 1px solid #fff;
  padding: 0 0 3px 0;
  font-weight: bold;
  font-size: 110%;
}

#modelhouse .pos-center .separate {
  display: flex;
  justify-content: center;
  color: #fff;
  align-items: end;
}

#modelhouse .pos-center .separate .left-side a {
  font-weight: bold;
  font-size: 250%;
  width: 100%;
  display: inline-block;
  text-align: center;
  font-family: din-2014, sans-serif;
}

#modelhouse .pos-center .separate .left-side .tel {
  display: flex;
  position: relative;
  margin: 0 0 5px 0;
}

#modelhouse .pos-center .separate .left-side .tel:before {
  background-image: url(../img/common/tel-white.png);
  content: '';
  display: inline-block;
  width: 4rem;
  height: 4rem;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: -6%;
  left: -35px;
}

#modelhouse .pos-center .separate .left-side p {
  font-size: 70%;
  text-align: center;
  font-weight: 600;
}

#modelhouse .pos-center .separate .reserve {
  background: #F54238;
  padding: 15px;
  width: 250px;
  border-radius: 5px;
  color: #fff;
  font-weight: bold;
  font-size: 125%;
  box-shadow: 0 0 0px #fff, 3px 3px 3px rgba(255, 255, 255, 0.7);
  margin: 0 0 0 20px;
}

#modelhouse .modelhouse-debut .appeal {
  display: flex;
  justify-content: center;
  margin: 50px auto 4rem;
  max-width: 1000px;
}

#modelhouse .modelhouse-debut .appeal figure {
  width: 40%;
}

#modelhouse .modelhouse-debut .appeal figure img {
  width: 60%;
}

#modelhouse .modelhouse-debut .kochi-new {
  position: relative;
  font-size: 200%;
  font-weight: bold;
}

#modelhouse .modelhouse-debut .kochi-new:before {
  position: absolute;
  background-image: url(../img/match/dot.png);
  content: '';
  top: -20px;
  right: 32%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 20%;
  height: 100%;
}

#modelhouse .modelhouse-debut .appeal .img__fit {
  max-width: 134px;
  height: auto;
}

#modelhouse .modelhouse-debut .appeal .new {
  font-size: 200%;
  font-weight: bold;
}

#modelhouse .modelhouse-debut h4 {
  color: #F5483C;
  font-weight: bold;
  font-size: 115%;
  margin: 0 0 30px 0;
}

#modelhouse .modelhouse-debut .new-head {
  max-width: 1000px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

#modelhouse .modelhouse-debut .open-text {
  line-height: 2;
  margin: 0 0 40px 0;
}

#modelhouse .modelhouse-debut .open-text .bold {
  font-weight: bold;
  font-size: 18px;
  margin: 0 0 50px 0;
}

#modelhouse .staff-intro {
  max-width: 1000px;
  width: 100%;
  text-align: center;
  margin: 0 auto 70px;
  background: #F4ECE1;
  padding: 30px;
}

#modelhouse .staff-intro h4 {
  background: #4EB890;
  display: inline-block;
  color: #fff;
  padding: 7px 50px;
  font-size: 150%;
  border-radius: 5px;
  font-weight: bold;
  position: relative;
  margin: 0 0 40px 0;
}

#modelhouse .staff-intro h4:after {
  content: '';
  display: inline-block;
  position: absolute;
  bottom: -20px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 15px 0 15px;
  border-color: #4eb88f transparent transparent transparent;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}

#modelhouse .staff-intro .separate {
  display: flex;
  justify-content: space-between;
}

#modelhouse .staff-intro .separate figure {
  border: 10px solid #fff;
  position: relative;
}

#modelhouse .staff-intro .separate figure:before {
  position: absolute;
  top: -4rem;
  left: 0;
  display: inline-block;
  content: '';
  background-image: url(../img/match/clover.png);
  width: 7rem;
  height: 7rem;
  background-repeat: no-repeat;
  background-size: contain;
}

#modelhouse .sp-separate {
  position: relative;
}

#modelhouse .sp-separate:after {
  display: inline-block;
  content: '';
  position: absolute;
  top: -5rem;
  right: 0;
  background-image: url(../img/match/niji.png);
  width: 16rem;
  height: 10rem;
  background-repeat: no-repeat;
  background-size: contain;
}

#modelhouse .staff-intro .separate-right {
  margin: 0 0 0 20px;
  text-align: left;
}

#modelhouse .staff-intro .separate-right span {
  display: block;
  color: #4eb890;
  font-weight: bold;
  font-size: 18px;
  margin: 0 0 15px 0;
}

#modelhouse .staff-intro .separate-right h5 {
  font-weight: bold;
  font-size: 170%;
  line-height: 1;
  padding: 0 0 15px 0;
  border-bottom: 1px solid #4eb890;
  margin: 0 0 20px 0
}

#modelhouse .staff-intro .separate-right p {
  line-height: 2;
}

#modelhouse .modelhouse-access h4 {
  color: #F49C7F;
  font-weight: bold;
  font-size: 180%;
  padding: 0 0 10px 0;
  border-bottom: 1px solid #f49c7f;
  margin: 0 0 30px 0;
}

#modelhouse .modelhouse-access .gentei {
  font-weight: bold;
  line-height: 2;
  margin: 0 0 40px 0;
  font-size: 110%;
}

#modelhouse .modelhouse-access .separate {
  display: flex;
  justify-content: space-between;
}

#modelhouse .modelhouse-access .separate figure {
  width: 40%;
}

#modelhouse .modelhouse-access .right-content {
  width: 55%;
  text-align: left;
}

#modelhouse .modelhouse-access .right-content .table {
  border: 1px solid #e0e0e0;
  margin: 0 0 20px 0;
}

#modelhouse .modelhouse-access .right-content dl {
  display: flex;
}

#modelhouse .modelhouse-access .right-content dl:first-of-type {
  border-bottom: 1px solid #e0e0e0;
}

#modelhouse .modelhouse-access .right-content dl dt {
  padding: 20px;
  background: #E7E7E7;
  font-weight: bold;
  width: 140px;
}

#modelhouse .modelhouse-access .right-content dl dd {
  padding: 20px;
  font-weight: bold;
  font-family: din-2014, sans-serif;
  display: flex;
  align-items: center;
}

#modelhouse .modelhouse-access .right-content dl dd .no-holiday {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 70%;
}

#modelhouse .modelhouse-access .tel-box {
  text-align: center;
  border: 3px dotted #F49C7F;
  padding: 10px;
}

#modelhouse .modelhouse-access .tel-box span {
  display: block;
  padding: 7px;
  background: #F49C7F;
  border-radius: 5px;
  color: #FFf;
  font-weight: bold;
  font-size: 12px;
  width: 80%;
  margin: 0 auto 10px;
}

#modelhouse .modelhouse-access .tel-box {
  display: block;
  font-weight: bold;
  font-size: 250%;
}

#modelhouse .modelhouse-access .tel-box a {
  line-height: 1;
  font-size: 110%;
  font-weight: bold;
  position: relative;
  font-family: din-2014, sans-serif
}

#modelhouse .modelhouse-access .tel-box a:before {
  position: absolute;
  top: 15%;
  left: -12%;
  background-image: url(../img/common/tel1.png);
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
}

#modelhouse .form {
  max-width: 1000px;
  margin: 0 auto;
}

#modelhouse .form h3 {
  text-align: center;
  color: #4EB890;
  font-weight: bold;
  font-size: 180%;
  padding: 0 0 10px 0;
  border-bottom: 1px solid #4eb890;
  margin: 0 0 40px 0;
}

#modelhouse .form .left ul {
  line-height: 2;
  margin: 0 0 20px 0;
}

#modelhouse .form .left p {
  line-height: 2;
}

#modelhouse .modelhouse-access {
  max-width: 1000px;
  width: 100%;
  padding: 50px 30px;
  text-align: center;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  #modelhouse .spnone {
    display: none;
  }

  #modelhouse .wrap .head {
    max-width: none;
    padding: 30px 3%;
  }

  #modelhouse .head .separate {
    width: auto;
  }

  #modelhouse .head .midashi {
    margin: 0 0 15px 0;
    width: 100%;
  }

  #modelhouse .head .place,
  #modelhouse .head .new {
    width: 100%;
  }

  #modelhouse .head .separate {
    position: relative;
    padding: 0 0 4rem 0;
    margin: 0 0 25vw 0;
  }

  #modelhouse .head .separate .title-block h3 {
    position: absolute;
    bottom: -17vw;
    left: 50%;
    width: 100%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    font-size: 14vw;
  }

  #modelhouse .head .separate-child {
    display: block;
    width: 100%;
  }

  #modelhouse .head .separate-child .reserve {
    width: 80%;
    margin: 0 auto 15px;
  }

  #modelhouse .head .separate-child .worktime {
    display: block;
  }

  #modelhouse .img-area {
    max-width: none;
    flex-wrap: wrap;
  }

  #modelhouse .img-area figure {
    width: 50%;
  }

  #modelhouse .img-area figure:last-of-type {
    display: none;
  }

  #modelhouse .pos-center .denwa {
    margin: 0 0 15px 0;
  }

  #modelhouse .pos-center .denwa span {
    line-height: 2;
    font-size: 120%;
  }

  #modelhouse .pos-center .separate {
    display: block;
  }

  #modelhouse .pos-center .left-side {
    margin: 0 0 20px 0;
  }

  #modelhouse .pos-center .separate .left-side .tel:before {
    width: 6vw;
    height: 8vw;
  }

  #modelhouse .pos-center .separate .left-side .tel {
    display: block;
    margin: 0 0 5px 0;
  }

  #modelhouse .pos-center .separate .reserve {
    display: block;
    width: 85%;
    margin: 0 auto;
  }

  #modelhouse .modelhouse-debut {
    max-width: none;
    padding: 0 3%;
    margin: 0 auto 40px;
  }

  #modelhouse .modelhouse-debut h4 {
    margin: 0 0 15px 0;
  }

  #modelhouse .staff-intro {
    padding: 20px 3%;
    margin: 0 0 2rem;
  }

  #modelhouse .staff-intro h4 {
    display: block;
    margin: 0 0 4rem 0;
  }

  #modelhouse .staff-intro .separate {
    display: block;
  }

  #modelhouse .staff-intro .separate figure {
    margin: 0 0 10px 0;
  }

  #modelhouse .sp-separate {
    display: flex;
    border-bottom: 1px solid #4eb890;
    padding: 0 0 5px 0;
    align-items: center;
    margin: 0 0 20px 0;
  }

  #modelhouse .staff-intro .separate-right span {
    margin: 0 10px 0 0;
    font-size: 14px;
  }

  #modelhouse .staff-intro .separate-right h5 {
    margin: 0;
    border-bottom: none;
    padding: 0;
  }

  #modelhouse .modelhouse-access .separate {
    display: block;
  }

  #modelhouse .modelhouse-access .separate figure {
    width: 100%;
    margin: 0 0 30px 0;
  }

  #modelhouse .modelhouse-access .right-content {
    width: 100%;
  }

  #modelhouse .modelhouse-access .right-content dl {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 14px;
  }

  #modelhouse .modelhouse-access .right-content dl dd {
    justify-content: center;
  }

  #modelhouse .modelhouse-access .tel-box span {
    width: 85%;
    display: block;
    font-size: 14px;
    margin: 0 auto 10px;
  }

  #modelhouse .form {
    max-width: none;
    margin: 0 auto;
    width: 100%;
    padding: 0 3%;
  }

  #modelhouse .modelhouse-debut .appeal figure {
    width: 50%;
  }

  #modelhouse .staff-intro .separate figure:before {
    width: 5rem;
    height: 5rem;
  }

  #modelhouse .sp-separate:after {
    width: 7rem;
    height: 7rem;
    top: -1rem;
  }

  #modelhouse .modelhouse-access {
    padding: 50px 0 2rem 0;
  }

  #modelhouse .modelhouse-access .right-content dl dt {
    width: 100%;
  }

  #modelhouse .modelhouse-access .tel-box a:before {
    left: -15%;
    width: 2rem;
    height: 4rem;
    top: 10%;
  }

  #modelhouse .head .separate .title-block {
    line-height: 1.5;
  }

  #modelhouse .modelhouse-debut .appeal figure img {
    width: 100%;
  }

  #modelhouse .modelhouse-debut .appeal .img__fit {
    max-width: 12vw;
    margin: 0 3vw;
  }

  #modelhouse .modelhouse-debut .kochi-new:before {
    width: 15vw;
    right: 17%;
  }

  /* スマホ版のEvent表示を訂正 */
  .event {
    position: relative;
    display: block;
    padding: 1em 0;
    background-color: #fff;
    border-bottom: 1px dashed #dfdfdf
  }

  .news__container,
  .event__container,
  .blog__container {
    display: block;
    height: auto;
    overflow-y: auto
  }

  .event__image {
    width: 100%;
    margin: 0;
  }

  .ofi__event {
    height: auto;
  }

  .lc__bnr img {
    width: 100%;
    height: auto;
  }

  /* タイトルと日時の整形 */
  .event__title {
    font-size: 16px;
    font-weight: 700;
  }

  .event__content {
    width: 100%;
    margin-top: 20px;
  }

  .event__date {
    color: #5ab486;
    font-size: calc(24 / 750 * 100vw);
    font-weight: 700;
    margin-top: 10px;
  }

  /* 詳しく見るボタン */
  .event_button_area {
    text-align: right;
    margin-top: 20px;
  }

  .event_button {
    color: #FFF;
    background-color: #F19149;
    padding: 5px 20px;
    display: inline-block;
    font-weight: bold;
    border-radius: 5px;
  }

  /* イベントの鳥と旗と気球を整形 */
  .sec__banner__illust__bird {
    display: none;
  }

  .sec__lineup__illust__kikyu {
    top: 271vw;
  }

  .sec__lineup__illust__flag {
    top: 270vw;
  }

  /* ブログの整形 */
  .blog__container a {
    display: block;
    justify-content: space-between;
    padding-bottom: 5%;
    padding-top: 5%;
    border-bottom: 1px dashed #ccc;
  }

  .blog__image {
    width: 100%;
    height: auto;
    margin-right: 0;
  }

  /* タイトルと日時の整形 */
  .blog__content {
    width: 100%;
    line-height: 120%;
    margin-bottom: 10px
  }

  .news__date {
    margin-bottom: .5em;
    color: #5ab486;
    font-size: calc(24 / 750 * 100vw);
    font-weight: 700;
    margin-bottom: 10px;
  }

  /* イベントの鳥と旗と気球を整形 */
  .down1 {
    top: 312vw;
  }

  .down2 {
    top: 312vw;
  }
}

/* 20201222 */
.covid19_banner {
  width: 70%;
  margin: 0 auto;
}

.online_bnr {
  position: relative;
}

.online_bnr>a {
  position: absolute;
  left: 240px;
  bottom: 15px;
  display: block;
  width: 280px;
  padding: 1em 0;
}

.top_raiten_bnr_wrap {
  margin: 0 auto;
}

@media screen and (max-width: 428px) {
  .lc_tit3 .inner {
    width: 100%;
  }

  .covid19_banner {
    width: 100%;
  }

  .online_bnr>a {
    width: 96%;
    left: 2%;
    bottom: 10px;
    padding: 0.75em 0;
  }

  .banner__container_kaiyu a {
    width: 100% !important;
  }

  .banner__container_kaiyu a:nth-of-type(5) {
    position: relative;
    top: 0;
    right: 0;
  }

  .sec__banner {
    padding: 0 0 4vw;
  }

  .sec--movie {
    padding: 0;
  }

  .sec--movie:after {
    content: none;
  }
}

@media screen and (min-width: 1279px) {
  .sec__banner {
    padding: 10px 0 45px;
  }
}

/*  スタッフ紹介  --> アーカイブ・詳細
-------------------------------------------------------*/
.staff a {
  display: block;
  margin: 0 auto 10.66667vw auto;
  width: 85.33333vw;
}

.staff-image {
  position: relative;
}

.staff-image .img--scale {
  border-radius: 2.66667vw;
}

.staff-image .img--scale img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 106.66667vw;
  border-radius: 2.66667vw;
}

.staff-tantou {
  position: absolute;
  left: 0;
  bottom: 5.33333vw;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1.5em;
  height: 8vw;
  background-color: #333333;
  color: #fff;
  font-weight: 600;
  letter-spacing: .3em;
}

.staff-name {
  margin: 1em 0;
  font-size: 4.8vw;
  font-weight: 600;
  letter-spacing: .3em;
}

@media screen and (min-width: 751px) {
  .staff {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1.38889vw;
  }

  .staff a {
    margin: 0 0 2.43056vw 1.38889vw;
    width: calc(33.33333% - 1.38889vw);
  }

  .staff-image .img--scale {
    border-radius: 1.38889vw;
  }

  .staff-image .img--scale img {
    height: 27.77778vw;
    border-radius: 1.38889vw;
  }

  .staff-tantou {
    bottom: 1.38889vw;
    height: 2.08333vw;
  }

  .staff-name {
    font-size: 1.25vw;
  }
}

@media screen and (min-width: 1201px) {
  .staff {
    margin-left: -20px;
  }

  .staff a {
    margin: 0 0 35px 20px;
    width: calc(33.33333% - 20px);
  }

  .staff-image .img--scale {
    border-radius: 20px;
  }

  .staff-image .img--scale img {
    height: 400px;
    border-radius: 20px;
  }

  .staff-tantou {
    bottom: 20px;
    height: 30px;
  }

  .staff-name {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/*  スタッフ紹介  --> 詳細
-------------------------------------------------------*/
.staff-single {
  width: 100%;
}

.staff-single-image {
  margin: 0 auto 8vw auto;
  width: 85.33333vw;
}

.staff-single-image img {
  border-radius: 5.33333vw;
}

@media screen and (min-width: 751px) {
  .staff-single {
    display: flex;
    justify-content: space-between;
  }

  .staff-single-image {
    margin: 0;
    width: 22.22222vw;
  }

  .staff-single-image img {
    border-radius: 1.38889vw;
  }

  .staff-single-content {
    width: 45.13889vw;
  }
}

@media screen and (min-width: 1201px) {
  .staff-single-image {
    width: 320px;
  }

  .staff-single-image img {
    border-radius: 20px;
  }

  .staff-single-content {
    width: 650px;
  }
}

/* ----------------- スタッフ名 - */
.staff-single-name {
  display: flex;
  align-items: center;
  margin-bottom: .5em;
  padding: 0 1em;
  width: 100%;
  height: 16vw;
  background-color: #333333;
  color: #fff;
  font-size: 4.8vw;
  font-weight: 600;
  letter-spacing: .3em;
}

@media screen and (min-width: 751px) {
  .staff-single-name {
    height: 4.16667vw;
    font-size: 1.25vw;
  }
}

@media screen and (min-width: 1201px) {
  .staff-single-name {
    height: 60px;
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/* ----------------- テーブル - */
.staff-single-data {
  display: flex;
  padding: .5em 0;
  border-bottom: 1px solid #333333;
}

.staff-single-data dt {
  position: relative;
  padding: 1em 1em 1em 1.5em;
  width: 30.66667vw;
  font-size: 4vw;
  font-weight: 600;
  text-align: left;
  line-height: 1.6em;
}

.staff-single-data dd {
  padding: 1em 0 .1em 1em;
  width: calc(100% - 30.66667vw);
  border-left: 1px solid #333333;
  font-size: 4vw;
  line-height: 1.6em;
}

@media screen and (min-width: 751px) {
  .staff-single-data dt {
    width: 7.63889vw;
    font-size: 1.04167vw;
  }

  .staff-single-data dd {
    align-self: stretch;
    width: calc(100% - 7.63889vw);
    font-size: 1.04167vw;
  }
}

@media screen and (min-width: 1201px) {
  .staff-single-data dt {
    width: 110px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .staff-single-data dd {
    width: calc(100% - 110px);
    font-size: 15px;
    font-size: 1.5rem;
  }
}

/* ----------------- MY FAVORITE - */
.staff-photo {
  margin: 8vw 0;
}

.staff-photo .staff-photo-content .staff-photo-full {
  width: 100%;
  height: 56vw;
  margin-bottom: 1.33333vw;
  background-size: cover;
  background-position: center;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item {
  width: 19.2%;
  height: 17.33333vw;
  margin: 0 1% 1.33333vw 0;
  border-radius: 1.38889vw;
  background-size: cover;
  background-position: center;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item:nth-child(5n) {
  margin: 0 0 1.33333vw;
}

@media screen and (min-width: 751px) {
  .staff-photo {
    margin: 1.73611vw 0;
  }
}

@media screen and (min-width: 1201px) {
  .staff-photo {
    margin: 25px 0;
  }

  .staff-photo .staff-photo-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 15px;
  }

  .staff-photo .staff-photo-content .staff-photo-full {
    width: 480px;
    height: 320px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items {
    width: 470px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item {
    width: calc(20% - 10px);
    height: 86px;
    margin: 0 10px 10px 0;
    border-radius: 20px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item:nth-child(5n) {
    margin: 0 0 10px;
  }
}

/* ----------------- その他のフィールド - */
.staff-single-cmn-head {
  margin-bottom: .5em;
  font-size: 5vw;
  font-weight: 600;
  line-height: 1.8em;
}

.staff-single-cmn-head.underline {
  padding-bottom: .5em;
  margin-bottom: 1em;
}

.staff-single-cmn-head.underline:after {
  content: '';
  display: block;
  width: 50px;
  height: 1px;
  background-color: #333;
}

.staff-single-textarea {
  margin: 0 0 8vw 0;
  padding: 4.66667vw 5.33333vw;
  background-color: #f8f8f8;
}

.staff-single-textarea p {
  line-height: 1.8em;
}

@media screen and (min-width: 751px) {
  .staff-single-cmn-head {
    font-size:2.5vmin;
  }
  .staff-single-textarea {
    margin: 0 0 1.73611vw 0;
    padding: 1.73611vw 2.77778vw;
  }
}

@media screen and (min-width: 1201px) {
  .staff-single-cmn-head {
    font-size: 2.4rem;
  }

  .staff-single-textarea {
    margin: 0 0 25px 0;
    padding: 25px 40px;
  }
}

.img--fit {
  width: 100%;
  max-width: 100%;
  height: auto;
}

/* ----------------- pega head - */
.page-head {
  position: relative;
  margin-bottom: 1em;
  padding-bottom: 1em;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: .3em;
}

.page-head:before,
.page-head:after {
  content: '';
  position: absolute;
  top: 100%;
  width: 8vw;
  height: 1px;
}

.page-head:before {
  left: 8vw;
  background-color: #666666;
}

.page-head:after {
  left: 0;
  background-color: #ab9a86;
}

@media screen and (min-width: 751px) {
  .page-head {
    font-size: 1.66667vw;
  }

  .page-head:before,
  .page-head:after {
    width: 2.08333vw;
  }

  .page-head:before {
    left: 2.08333vw;
  }
}

@media screen and (min-width: 1201px) {
  .page-head {
    font-size: 24px;
    font-size: 2.4rem;
  }

  .page-head:before,
  .page-head:after {
    width: 30px;
  }

  .page-head:before {
    left: 30px;
  }
}

/*  スタッフブログ  --> relation
-------------------------------------------------------*/
.relation-blog a {
  position: relative;
  display: flex;
  justify-content: space-between;
  padding: 5.33333vw 0;
}

.relation-blog a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  display: inline-block;
  width: 100%;
  height: 1.06667vw;
  background-image: url(../img/common/line.png);
  background-size: auto 1.06667vw;
  background-repeat: repeat-x;
}

.relation-blog a:nth-child(1) {
  padding-top: 0;
}

.relation-blog-image {
  align-self: flex-start;
  width: 25.33333vw;
}

.relation-blog-image .img--scale {
  border-radius: 2.66667vw;
}

.relation-blog-image img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 21.33333vw;
  border-radius: 2.66667vw;
}

.relation-blog-content {
  width: 54.66667vw;
}

.relation-blog-header {
  display: flex;
  align-items: center;
  margin-bottom: .5em;
}

.relation-blog-date {
  margin-right: 1em;
  color: #000;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

.relation-blog-cat {
  padding: .5em .7em;
  background-color: #333333;
  color: #fff;
  font-size: .86em;
  font-weight: 600;
  text-align: center;
}

.relation-blog-title {
  min-height: calc(2 * 1.4em);
  line-height: 1.4em;
}

.relation-blog-expert {
  display: none;
}

.relation-blog-more-btn {
  width: 5.33333vw;
}

@media screen and (min-width: 751px) {
  .relation-blog a {
    padding: 1.38889vw 0;
  }

  .relation-blog a:after {
    height: 0.34722vw;
    background-size: auto 0.34722vw;
  }

  .relation-blog-image {
    width: 13.88889vw;
  }

  .relation-blog-image .img--scale {
    border-radius: 0.69444vw;
  }

  .relation-blog-image img {
    height: 11.11111vw;
    border-radius: 0.69444vw;
  }

  .relation-blog-content {
    width: 48.61111vw;
  }

  .relation-blog-title {
    margin-top: 1em;
    min-height: calc(1 * 1.4em);
    font-weight: 600;
  }

  .relation-blog-expert {
    display: block;
    margin-top: .7em;
  }

  .relation-blog-expert p {
    line-height: 1.8em;
  }

  .relation-blog-more-btn {
    width: 1.38889vw;
  }
}

@media screen and (min-width: 1201px) {
  .relation-blog a {
    padding: 20px 0;
  }

  .relation-blog a:after {
    height: 5px;
    background-size: auto 5px;
  }

  .relation-blog-image {
    width: 200px;
  }

  .relation-blog-image .img--scale {
    border-radius: 10px;
  }

  .relation-blog-image img {
    height: 160px;
    border-radius: 10px;
  }

  .relation-blog-content {
    width: 700px;
  }

  .relation-blog-more-btn {
    width: 20px;
  }
}

/*  works --> アーカイブ・関連記事
-------------------------------------------------------*/
.works-archive {
  margin: 16vw 0 0 0;
}

.works-archive a {
  position: relative;
  display: block;
  margin: 0 auto 13.33333vw auto;
  width: 85.33333vw;
}

@media screen and (max-width: 750px) {
  .works-archive a:last-child {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 751px) {
  .works-archive {
    display: flex;
    flex-wrap: wrap;
    margin: 4.51389vw 0 0 -1.38889vw;
  }

  .works-archive a {
    margin: 0 0 3.47222vw 1.38889vw;
    width: calc(33.33333% - 1.38889vw);
  }
}

@media screen and (min-width: 1201px) {
  .works-archive {
    margin: 65px 0 0 -20px;
  }

  .works-archive a {
    margin: 0 0 50px 20px;
    width: calc(33.33333% - 20px);
  }
}

/*  works --> common
-------------------------------------------------------*/
.works-image {
  position: relative;
  width: 100%;
}

.works-image img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  border-radius: 5.33333vw;
}

.works-post .works-image img {
  height: 61.33333vw;
}

.works-archive .works-image img {
  height: 56.66667vw;
}

.works-image .img--scale {
  border-radius: 5.33333vw;
}

.works-content {
  position: relative;
  padding: 6vw 0;
  width: 100%;
}

.works-new {
  position: absolute;
  top: -6vw;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: .3em;
  width: 23.73333vw;
  height: 23.73333vw;
  background-color: #6cb52a;
  border-radius: 50%;
  color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 4vw;
  font-weight: 700;
  letter-spacing: .3em;
  z-index: 2;
}

.works-new:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% - 1em);
  height: calc(100% - 1em);
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.works-title {
  margin-bottom: .8em;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 1.4em;
  letter-spacing: .3em;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.works-name {
  position: absolute;
  top: 0;
  right: 4.66667vw;
  display: flex;
  align-items: center;
  padding: 1em 0;
  width: 8vw;
  max-height: 53.33333vw;
  background-color: #fff;
  color: #6cb52a;
  font-size: 3.2vw;
  font-weight: 600;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.works-data {
  display: flex;
  align-items: center;
  font-size: 3.2vw;
  font-weight: 700;
  text-align: right;
}

.works-data dt {
  padding: .5em;
  margin-right: .5em;
  background-color: #382b25;
  color: #fff;
  font-weight: 600;
  text-align: center;
  text-indent: .3em;
  letter-spacing: .3em;
}

.works-data dd {
  font-family: "Lato", sans-serif, "Noto Sans JP", sans-serif;
  font-weight: 600;
}

.works-data dd span {
  font-size: 1.6em;
}

.works-data dt:nth-of-type(2) {
  margin-left: 1em;
}

@media screen and (min-width: 751px) {
  .works-image img {
    border-radius: 1.04167vw;
  }

  .works-post .works-image img {
    height: 16.31944vw;
  }

  .works-archive .works-image img {
    height: 14.93056vw;
  }

  .works-image .img--scale {
    border-radius: 1.04167vw;
  }

  .works .works-post:nth-child(1) {
    width: 27.77778vw !important;
  }

  .works .works-post:nth-child(1) .works-image img {
    height: 18.40278vw;
  }

  .works-content {
    padding: 1.73611vw 0;
    width: 100%;
  }

  .works-new {
    top: -1.73611vw;
    left: -0.13889vw;
    width: 6.25vw;
    height: 6.25vw;
    font-size: 1.04167vw;
  }

  .works-title {
    margin-bottom: .8em;
    font-size: 1.25vw;
    line-height: 1.6em;
  }

  .works-name {
    right: 1.73611vw;
    width: 2.08333vw;
    max-height: 13.88889vw;
    font-size: 1.04167vw;
  }

  .works-data {
    font-size: 0.90278vw;
  }
}

@media screen and (min-width: 1201px) {
  .works-image img {
    border-radius: 15px;
  }

  .works-post .works-image img {
    height: 235px;
  }

  .works-archive .works-image img {
    height: 215px;
  }

  .works-image .img--scale {
    border-radius: 15px;
  }

  .works .works-post:nth-child(1) {
    width: 400px !important;
  }

  .works .works-post:nth-child(1) .works-image img {
    height: 265px;
  }

  .works-content {
    padding: 25px 0;
    width: 100%;
  }

  .works-new {
    top: -25px;
    left: -2px;
    width: 90px;
    height: 90px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .works-title {
    font-size: 18px;
    font-size: 1.8rem;
  }

  .works-name {
    right: 25px;
    width: 30px;
    max-height: 200px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .works-data {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

/*  施工事例  --> 詳細ページ
-------------------------------------------------------*/
/* ----------------- メイン画像 - */
.works-single-main {
  margin-bottom: 5.33333vw;
}

.works-photo-main {
  position: relative;
  margin-bottom: 3.33333vw;
  width: 100%;
  height: 48vw;
}

.works-photo-main div {
  height: 100%;
  background-size: contain;
  background-position: center;
}

.works-photo-main .slick-prev {
  position: absolute;
  top: calc(50% - 19px);
  left: -10px;
  display: block;
  width: 38px;
  height: 38px;
  background-image: url(../img/works/arrow-prev_sp.png);
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
  z-index: 999;
}

.works-photo-main .slick-prev:hover {
  opacity: 0.7;
}

.works-photo-main .slick-next {
  position: absolute;
  top: calc(50% - 19px);
  right: -10px;
  display: block;
  width: 38px;
  height: 38px;
  background-image: url(../img/works/arrow-next_sp.png);
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
  z-index: 999;
}

.works-photo-main .slick-next:hover {
  opacity: 0.7;
}

.works-photo-thumb {
  width: 90%;
  margin: 0 auto;
}

.works-photo-thumb .slick-slide {
  margin: 0 0 1.33333vw 2.66667vw;
  width: calc(25% - 2.66667vw);
  height: 16vw;
  transition: .3s;
}

.works-photo-thumb .slick-slide div {
  width: 100%;
  height: 100%;
}

.works-photo-thumb .slick-slide div li {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}

.works-photo-thumb .slick-prev {
  position: absolute;
  top: calc(50% - 10px);
  left: -25px;
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(../img/works/arrow-prev_sp.png);
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
  z-index: 999;
}

.works-photo-thumb .slick-prev:hover {
  opacity: 0.7;
}

.works-photo-thumb .slick-next {
  position: absolute;
  top: calc(50% - 10px);
  right: -25px;
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(../img/works/arrow-next_sp.png);
  background-size: 100% auto;
  cursor: pointer;
  text-indent: -9999px;
  z-index: 999;
}

.works-photo-thumb .slick-next:hover {
  opacity: 0.7;
}

.works-photo-thumb .slick-slide:hover {
  opacity: 0.7;
  cursor: pointer;
}

@media screen and (min-width: 751px) {
  .works-single-main {
    margin-bottom: 2.08333vw;
  }

  .works-photo-main {
    margin-bottom: 2.08333vw;
    height: 41.66667vw;
  }

  .works-photo-main .slick-prev {
    top: calc(50% - 39px);
    left: -40px;
    width: 78px;
    height: 78px;
  }

  .works-photo-main .slick-next {
    top: calc(50% - 39px);
    right: -40px;
    width: 78px;
    height: 78px;
  }

  .works-photo-thumb {
    width: 100%;
    margin-left: -0.69444vw;
  }

  .works-photo-thumb .slick-slide {
    margin: 0 0 0.69444vw 0.69444vw;
    width: calc(10% - 0.69444vw);
    height: 6.25vw;
  }

  .works-photo-thumb .slick-prev {
    top: calc(50% - 20px);
    left: -40px;
    width: 40px;
    height: 40px;
  }

  .works-photo-thumb .slick-next {
    top: calc(50% - 20px);
    right: -50px;
    width: 40px;
    height: 40px;
  }
}

@media screen and (min-width: 1201px) {
  .works-single-main {
    margin-bottom: 30px;
  }

  .works-photo-main {
    margin-bottom: 30px;
    height: 600px;
  }

  .works-photo-thumb {
    margin-left: -10px;
  }

  .works-photo-thumb .slick-slide {
    margin: 0 0 10px 10px;
    width: calc(10% - 10px);
    height: 90px;
  }
}

/* ----------------- 詳細データ - */
.works-single-datas {
  margin: 8vw 0 8vw 0;
}

.works-single-data {
  display: flex;
  justify-content: space-between;
  padding: 2vw 0;
  border-bottom: 1px solid #333333;
}

.works-single-datas dl:last-child {
  border-bottom: none;
}

.works-single-data dt {
  display: flex;
  align-items: center;
  padding: .8em 0;
  width: 24.66667vw;
  font-size: 4vw;
  font-weight: 600;
  line-height: 1.6em;
}

.works-single-data dd {
  display: block;
  padding: 1em;
  border-left: 1px solid #333333;
  width: 67.33333vw;
  font-size: 4vw;
  line-height: 1.6em;
}

@media screen and (min-width: 751px) {
  .works-single-datas {
    margin: 3.125vw 0 3.81944vw 0;
  }

  .works-single-data {
    padding: 0.83333vw 0;
  }

  .works-single-data {
    margin: 0 auto;
  }

  .works-single-data dt {
    padding: 1em;
    width: 10.76389vw;
    font-size: 1.04167vw;
  }

  .works-single-data dd {
    padding: 1em;
    width: 58.68056vw;
    font-size: 1.04167vw;
  }
}

@media screen and (min-width: 1201px) {
  .works-single-datas {
    margin: 45px 0 55px 0;
  }

  .works-single-data {
    padding: 12px 0;
  }

  .works-single-data dt {
    width: 155px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .works-single-data dd {
    width: 845px;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.relation-btn {
  margin: 8vw auto 0 auto;
  width: 53.33333vw;
}

@media screen and (max-width: 750px) {
  .relation-btn a {
    height: 10.66667vw;
  }
}

@media screen and (min-width: 751px) {
  .relation-btn {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    width: 13.88889vw;
  }
}

@media screen and (min-width: 1201px) {
  .relation-btn {
    width: 200px;
  }
}

/*  ボタン
-------------------------------------------------------*/
/* ------------------------------------------- 共通スタイル - */
.btn {
  margin: 0 auto;
  font-weight: 700;
  text-align: center;
  transition: .3s;
}

/* ------------------------------------------- スタイル１ - */
.btn--sty01 {
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

.btn--sty01:before,
.btn--sty01:after {
  content: '';
  position: absolute;
  top: 50%;
  height: 1px;
  transition: .3s;
}

.btn--sty01:before {
  right: 0;
  width: 7.33333vw;
  background-color: #fff;
  z-index: 2;
}

.btn--sty01:after {
  right: -7.33333vw;
  width: 14.66667vw;
  z-index: 1;
}

.btn--sty01:hover::before {
  width: 0;
}

.btn:hover::before,
.btn:hover::after {
  transform: translateX(2.66667vw);
}

.btn--sty01--hign {
  height: 16vw;
}

.btn--sty01--low {
  height: 16vw;
}

.btn--sty01--low50 {
  height: 17vw;
}

.btn--sty01--main {
  background-color: #5ab486;
  border: 1px solid #5ab486;
  color: #fff;
}

.btn--sty01--main:hover {
  background-color: #fff;
  color: #5ab486;
}

.btn--sty01--main:after {
  background-color: #5ab486;
}

.btn--sty01--brown {
  background-color: #5ab486;
  border: 2px solid #5ab486;
  color: #fff;
}

.btn--sty01--brown:hover {
  background-color: #fff;
  color: #5ab486;
}

.btn--sty01--brown:after {
  background-color: #5ab486;
}

@media screen and (min-width: 751px) {
  .btn--sty01:before {
    width: 2.08333vw;
  }

  .btn--sty01:after {
    right: -2.08333vw;
    width: 4.16667vw;
  }

  .btn--sty01:hover::before,
  .btn--sty01:hover::after {
    transform: translateX(0.69444vw);
  }

  .btn--sty01--hign {
    height: 4.16667vw;
  }

  .btn--sty01--low {
    height: 2.77778vw;
  }

  .btn--sty01--low50 {
    height: 3.5vw;
  }
}

@media screen and (min-width: 1201px) {
  .btn--sty01:before {
    width: 30px;
  }

  .btn--sty01:after {
    right: -30px;
    width: 60px;
  }

  .btn--sty01:hover::before,
  .btn--sty01:hover::after {
    transform: translateX(10px);
  }

  .btn--sty01--hign {
    height: 60px;
  }

  .btn--sty01--low {
    height: 40px;
  }

  .btn--sty01--low50 {
    height: 50px;
  }
}

.sec__in {
  position: relative;
  margin: 0 auto 10vh auto;
  width: 92vw;
}

@media screen and (min-width: 751px) {
  .sec__in {
    width: 69.44444vw;
  }
}

@media screen and (min-width: 1201px) {
  .sec__in {
    width: 1000px;
  }
}

/*  ページナビ
-------------------------------------------------------*/
.pagenavi {
  position: relative;
  margin: 9.33333vw auto 0 auto;
  width: 92vw;
  height: 32vw;
}

.pagenavi a {
  margin: 0 auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 4.26667vw;
  font-weight: 700;
}

.pagenavi-prev,
.pagenavi-next {
  position: absolute;
  top: 23.33333vw;
  width: 34.66667vw;
}

.pagenavi-prev {
  left: 8.66667vw;
}

.pagenavi-next {
  right: 8.66667vw;
}

.pagenavi-prev a,
.pagenavi-next a {
  width: 100%;
  height: 13.33333vw;
  background-color: #5ab486;
  border: 2px solid #5ab486;
  color: #fff;
}

.pagenavi-prev a:before,
.pagenavi-next a:before,
.pagenavi-prev a:after,
.pagenavi-next a:after {
  content: '';
  position: absolute;
  top: 50%;
  height: 1px;
  transition: .3s;
}

.pagenavi-prev a:before,
.pagenavi-next a:before {
  width: 8vw;
}

.pagenavi-prev a:after,
.pagenavi-next a:after {
  width: 16vw;
}

.pagenavi-prev a:before,
.pagenavi-next a:before {
  background-color: #5ab486;
  z-index: 2;
}

.pagenavi-prev a:after,
.pagenavi-next a:after {
  background-color: #fff;
  z-index: 1;
}

.pagenavi-prev a:hover::after,
.pagenavi-next a:hover::after {
  background-color: #5ab486;
  z-index: 1;
}

.pagenavi-prev a:before,
.pagenavi-prev a:after {
  left: -8vw;
}

.pagenavi-next a:before,
.pagenavi-next a:after {
  right: -8vw;
}

.pagenavi-prev a:hover::before,
.pagenavi-prev a:hover::after {
  transform: translateX(-2vw);
}

.pagenavi-next a:hover::before,
.pagenavi-next a:hover::after {
  transform: translateX(2vw);
}

.pagenavi-prev a:hover::before,
.pagenavi-next a:hover::before {
  width: 10vw;
}

.pagenavi-back a {
  width: 100%;
  height: 13.33333vw;
  background-color: #5ab486;
  border: 2px solid #5ab486;
  color: #fff;
  text-align: center;
  transition: all .3s;
}

.pagenavi-prev a:hover,
.pagenavi-next a:hover,
.pagenavi-back a:hover {
  background-color: #fff;
  color: #5ab486;
}

@media screen and (max-width: 750px) {
  .pagenavi-back {
    top: 0;
    width: 100%;
    margin-bottom: 10vh;
  }
}

@media screen and (min-width: 751px) {
  .pagenavi {
    margin: 6.25vw auto 0 auto;
    width: 65.27778vw;
    height: 3.47222vw;
  }

  .pagenavi a {
    font-size: 1.25vw;
  }

  .pagenavi-prev,
  .pagenavi-next {
    top: 50%;
    width: 9.02778vw;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .pagenavi-prev {
    left: 0;
  }

  .pagenavi-next {
    right: 0;
  }

  .pagenavi-prev a,
  .pagenavi-next a {
    height: 3.47222vw;
  }

  .pagenavi-prev a:before,
  .pagenavi-next a:before {
    width: 2.08333vw;
  }

  .pagenavi-prev a:after,
  .pagenavi-next a:after {
    width: 4.16667vw;
  }

  .pagenavi-prev a:before,
  .pagenavi-prev a:after {
    left: -2.08333vw;
  }

  .pagenavi-next a:before,
  .pagenavi-next a:after {
    right: -2.08333vw;
  }

  .pagenavi-prev a:hover::before,
  .pagenavi-prev a:hover::after {
    transform: translateX(-1.04167vw);
  }

  .pagenavi-next a:hover::before,
  .pagenavi-next a:hover::after {
    transform: translateX(1.04167vw);
  }

  .pagenavi-prev a:hover::before,
  .pagenavi-next a:hover::before {
    width: 3.125vw;
  }

  .pagenavi-back a {
    width: 23.95833vw;
    height: 3.47222vw;
  }
}

@media screen and (min-width: 1201px) {
  .pagenavi {
    margin: 90px auto 0 auto;
    width: 940px;
    height: 50px;
  }

  .pagenavi a {
    font-size: 15px;
    font-size: 1.5rem;
  }

  .pagenavi-prev,
  .pagenavi-next {
    width: 130px;
  }

  .pagenavi-prev a,
  .pagenavi-next a {
    height: 50px;
  }

  .pagenavi-prev a:before,
  .pagenavi-next a:before {
    width: 30px;
  }

  .pagenavi-prev a:after,
  .pagenavi-next a:after {
    width: 60px;
  }

  .pagenavi-prev a:before,
  .pagenavi-prev a:after {
    left: -30px;
  }

  .pagenavi-next a:before,
  .pagenavi-next a:after {
    right: -30px;
  }

  .pagenavi-prev a:hover::before,
  .pagenavi-prev a:hover::after {
    transform: translateX(-15px);
  }

  .pagenavi-next a:hover::before,
  .pagenavi-next a:hover::after {
    transform: translateX(15px);
  }

  .pagenavi-prev a:hover::before,
  .pagenavi-next a:hover::before {
    width: 45px;
  }

  .pagenavi-back a {
    width: 345px;
    height: 50px;
  }
}

/* ----------------- MY FAVORITE - */
.staff-photo {
  margin: 8vw 0;
}

.staff-photo .staff-photo-content .staff-photo-full {
  width: 100%;
  height: 56vw;
  margin-bottom: 1.33333vw;
  background-size: cover;
  background-position: center;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item {
  width: 19.2%;
  height: 17.33333vw;
  margin: 0 1% 1.33333vw 0;
  border-radius: 1.38889vw;
  background-size: cover;
  background-position: center;
}

.staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item:nth-child(5n) {
  margin: 0 0 1.33333vw;
}

@media screen and (min-width: 751px) {
  .staff-photo {
    margin: 1.73611vw 0;
  }
}

@media screen and (min-width: 1201px) {
  .staff-photo {
    margin: 25px 0;
  }

  .staff-photo .staff-photo-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 15px;
  }

  .staff-photo .staff-photo-content .staff-photo-full {
    width: 480px;
    height: 320px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items {
    width: 470px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item {
    width: calc(20% - 10px);
    height: 86px;
    margin: 0 10px 10px 0;
    border-radius: 20px;
  }

  .staff-photo .staff-photo-content .staff-photo-thumb-items .staff-photo-thumb-item:nth-child(5n) {
    margin: 0 0 10px;
  }
}

@media screen and (min-width: 768px) {
  .cal_ma_-50 {
    margin-top: -50px;
  }

  .cal_ma_-80 {
    margin-top: -80px;
  }

  .cal_ma_-100 {
    margin-top: -100px;
  }

  .cal_ma_-150 {
    margin-top: -150px;
  }
}

.vp_loan__head_cal {
  display: block;
  padding: .6em .2em;
  background-color: #fff;
  border: 2px solid #f07850;
  color: #f07850;
  font-size: calc(10 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  border-radius: 3px;
}

@media screen and (min-width: 1279px) {
  .vp_loan__head_cal {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

@media screen and (max-width: 759px) {
  .vp_loan__head_cal {
    display: inline-block;
    padding: 0.5em 1em;
    background-color: #fff;
    border: 2px solid #f07850;
    color: #f07850;
    font-size: 3.999999vw;
    font-weight: 700;
    text-align: center;
    border-radius: 3px;
    margin-bottom: .2em;
    line-height: 1.5;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .sp_ma_30 {
    margin-top: calc(23 / 750 * 100vw);
  }

  .line_up_pc_none {
    display: block !important;
  }

  .line_up_sp_none {
    display: none !important;
  }

  .no_wrap {
    white-space: nowrap;
    width: 65% !important;
  }
}

.line_up_pc_none {
  display: none;
}

.line_up_sp_none {
  display: block;
}

@media screen and (max-width: 767px) {
  .lineup__sec__product__lospa:after {
    background-image: url(../img/lineup/lospa/main_bg_sp.jpg);
  }
}

li.img_arrow {
  background: url(../img/lineup/kakaku_arrow.png) no-repeat right;
  background-size: cover;
  font-weight: bold;
  color: #fff;
  font-size: 1.8rem;
  padding-right: 2rem;
}

/* トップページバナー差し替え */

h2.top_modelhouse {
  color: #F00;
  font-weight: bold;
  font-size: 160%;
  text-align: center;
  margin-bottom: 1rem;
}

h2.top_modelhouse:before {
  content: "＼";
}

h2.top_modelhouse:after {
  content: "／";
}

.bnr_wrapsection_modelhouse {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem;
}

.bnr_wrapsection_modelhouse a {
  display: block;
  width: 49%;
}

@media screen and (max-width: 767px) {
  h2.top_modelhouse {
    display: none;
  }

  .bnr_wrapsection_modelhouse {
    display: block;
  }

  .bnr_wrapsection_modelhouse a {
    width: 100%;
    margin-bottom: 2rem;
  }
}

/*回遊スライド*/
.lineup__front__container a{
  display: block;
}

.lineup__front__container .lineup__common__slide .slick-prev,
.lineup__front__container .lineup__common__slide .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 40%;
  display: block;
  width: 35px;
  height: 58px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

.lineup__front__container .lineup__common__slide .slick-prev {
  left: 0;
  z-index: 9;
}

.lineup__front__container .lineup__common__slide .slick-next {
  right: 0;
}

.lineup__front__container .lineup__common__slide .slick-next:before,
.lineup__front__container .lineup__common__slide .slick-prev:before {
  content: '';
  display: block;
}

.lineup__front__container .lineup__common__slide .slick-next:before {
  width: 0;
  height: 0;
  border-style: solid;
  /*border-width: 29px 0 29px 35.6px;*/
  border-width: 20px 0 20px 22.6px;
  border-color: transparent transparent transparent #b98855;
  font-size: 0;
}

.lineup__front__container .lineup__common__slide .slick-prev:before {
  width: 0;
  height: 0;
  border-style: solid;
  /*border-width: 29px 35.6px 29px 0;*/
  border-width: 20px 22.6px 20px 0;
  border-color: transparent #b98855 transparent transparent;
  font-size: 0;
}

@media screen and (max-width: 750px) {
  .lineup__front__container .lineup__common__slide .slick-slide {
    height: 100vw !important;
  }

  .lineup__front__container .lineup__common__slide .slick-next:before {
    border-color: transparent transparent transparent #fff;
  }

  .lineup__front__container .lineup__common__slide .slick-prev:before {
    border-color: transparent #fff transparent transparent;
  }
}

@media screen and (min-width: 751px) {
  .lineup__front__container {
    display: flex;
    flex-wrap: wrap;
    margin-left: -0.6vw
  }

  .lineup__front__container a {
    margin-left: 1.54vw;
    margin-bottom: calc(40 / 1300 * 100vw);
    width: calc(50% - 1.54vw)
  }

  .lineup__front__container .lineup__common__slide .slick-prev,
  .lineup__front__container .lineup__common__slide .slick-next {
    top: 50%;
  }

  .lineup__front__container .lineup__common__slide .slick-prev:before {
    border-width: 29px 35.6px 29px 0;
  }

  .lineup__front__container .lineup__common__slide .slick-next:before {
    border-width: 29px 0 29px 35.6px;
  }

  .lineup__front__container .lineup__common__slide .slick-prev {
    left: -45px;
  }

  .lineup__front__container .lineup__common__slide .slick-next {
    right: -45px;
  }

  .lineup__front__container .lineup__common__slide .slider {
    height: 30vw;
    margin: 0;
    padding: 0 5px;
  }
    .lineup__front__container .lineup__common__slide .slider a{
      display: block;
    }

}

@media screen and (min-width: 1279px) {
  .lineup__front__container {
    margin-left: -7px
  }

  .lineup__front__container a {
    margin-left: 20px;
    margin-bottom: 40px;
    width: calc(50% - 20px)
  }

  .lineup__front__container .lineup__common__slide .slider {
    height: 400px;

  }
}

/*  採用情報  --> アーカイブ
-------------------------------------------------------*/
/* ----------------- カテゴリーメニュー - */
.recruit-menu {
  margin: 0 0 9.33333vw 0;
}

.recruit-menu a {
  margin-bottom: 5.33333vw;
  width: 69.33333vw;
}

.recruit-menu a:last-of-type {
  /* margin-bottom: 0; */
}

.recruit-menu .btn:before {
  width: 100%;
}

@media screen and (max-width: 750px) {
  .recruit-menu {
    margin: 0 3vw 3.33333vw 3vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .recruit-menu a {
    margin-bottom: 5.33333vw;
    width: 47%;
  }

  .recruit-menu:after {
    content: "";
    display: block;
    width: 50%;
  }
}

.recruit-content {
  width: 48%;
}

.recruit-content__btn {
  margin-top: 30px;
}

@media screen and (max-width: 750px) {
  .recruit-content {
    width: 100%;
  }
}

.recruit-content__more {
  text-align: right;
  margin: 1rem 0 0 0;
}

.recruit-content__more span {
  background: #87C8A7;
  color: #fff;
  padding: 5px 0;
  text-align: center;
  display: inline-block;
  width: 61%;
}

@media screen and (min-width: 751px) {
  .recruit-menu {
    display: flex;
    justify-content: start;
    flex-wrap: wrap;
    margin: 0 0 4.86111vw -3.47222vw;
    width: 71.52778vw;
  }

  .recruit-menu a {
    margin: 0 0 0 3.47222vw;
    width: calc(33.33333% - 3.47222vw);
  }

  .recruit-content__more span {
    width: 250px;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-menu {
    margin: 0 0 70px -50px;
    width: 1030px;
  }

  .recruit-menu a {
    margin: 0 0 0 50px;
    width: calc(33.33333% - 50px);
  }
}

.recruit a {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 9.33333vw auto;
}

.recruit a:hover .recruit-image img {
  transform: scale(1.3, 1.3);
  cursor: pointer;
}

@media screen and (max-width: 750px) {
  .recruit a {
    display: block;
    justify-content: unset;
  }
}

@media screen and (min-width: 751px) {
  .recruit {
    margin-left: -1.38889vw;
  }

  .recruit a {
    margin: 0 0 3.125vw 1.38889vw;
  }
}

@media screen and (min-width: 1201px) {
  .recruit {
    margin-left: -20px;
  }

  .recruit a {
    margin: 0 0 45px 20px;
  }
}

.recruit-image {
  position: relative;
  width: 48%;
}

@media screen and (max-width: 750px) {
  .recruit-image {
    width: 100%;
  }
}

.recruit-image img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 56.66667vw;
}

.recruit-jobtype {
  font-weight: 700;
  color: #87C8A7;
  font-size: 1.5rem;
}

.recruit-jobtype:before {
  display: none !important;
}

@media screen and (max-width: 750px) {
  .recruit-jobtype {
    margin: 1rem 0;
  }
}

.recruit-cat {
  position: absolute;
  top: 0;
  left: 4.66667vw;
  display: flex;
  align-items: center;
  padding: 1em 0;
  width: 8vw;
  max-height: 53.33333vw;
  background-color: #87C8A7;
  color: #fff;
  font-family: initial;
  font-size: 3.2vw;
  font-weight: 600;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

@media screen and (min-width: 751px) {
  .recruit-image img {
    height: 23rem;
  }

  .recruit-jobtype {
    font-size: 2rem;
    margin-bottom: 10px;
  }

  .recruit-cat {
    left: 1.73611vw;
    width: 2.08333vw;
    max-height: 14rem;
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-image img {
    height: 226px;
  }

  .recruit-cat {
    left: 25px;
    width: 30px;
    max-height: 200px;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.recruit-data {
  display: flex;
  justify-content: space-between;
  padding: 1rem;
}

.recruit-data:nth-of-type(odd) {
  background-color: #f1f1f1;
}

.recruit-data:last-of-type {
  margin-bottom: 0;
}

.recruit-data dt {
  font-weight: 700;
  line-height: 2.25em;
  width: 30%;
}

.recruit-data dd {
  display: flex;
  padding: .3em 0;
  width: 70%;
  line-height: 1.4em;
  vertical-align: top;
}

@media screen and (min-width: 1201px) {
  .recruit-data dt {
    width: 80px;
  }

  .recruit-data dd {
    width: 225px;
  }
}

.recruit-not_box {
  line-height: 1.4em;
  width: 100%;
  margin: 0 auto 6vw;
  display: flex;
}

.recruit-not_box p {
  margin: 0 auto;
  display: block;
}

@media screen and (min-width: 751px) {
  .recruit-not_box {
    margin: -6vw auto 4vw;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-not_box {
    margin: -80px auto 0;
  }
}

/*  採用情報  --> 詳細
-------------------------------------------------------*/
#recruit-main-content h4 {
  padding-left: 0;
  margin-top: 0;
  font-size: 2.4rem;
  font-weight: 400;
}

#recruit.page-content h4:before {
  width: 0;
}

@media screen and (max-width: 750px) {
  #recruit-main-content h4 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }

  .recruit-main {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 751px) {
  .recruit-main {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
  }

  .recruit-main-image {
    margin-bottom: 0;
    order: 2;
    width: 27.22222vw;
  }

  .recruit-main-content {
    order: 1;
    width: 47.79167vw;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-main {
    margin-bottom: 100px;
  }

  .recruit-main-content {
    width: 63%;
  }

  .recruit-main-image {
    width: 33%;
  }
}

.recruit-main-datas {
  margin-bottom: 4vw;
}

.recruit-single-cat {
  display: inline-block;
  margin-bottom: 4vw;
  padding: .4em .7em;
  background-color: #333333;
  color: #fff;
  font-weight: 600;
  white-space: nowrap;
}

.recruit-single-jobtype {
  display: block;
  padding: .5em 0;
  font-size: 4.26667vw;
  font-weight: 600;
  line-height: 1.5em;
  letter-spacing: .3em;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.recruit-single-title {
  margin-bottom: 1em;
  font-size: 4.26667vw;
  font-weight: 600;
  line-height: 1.5em;
}

.recruit-single-intro {
  line-height: 1.8em;
}

.recruit-single-btn {
  margin: 5.33333vw auto 0;
  width: 84vw;
}

@media screen and (min-width: 751px) {
  .recruit-single-title {
    font-size: 1.25vw;
  }

  .recruit-single-btn {
    margin: 1.73611vw auto 0;
    width: 28.47222vw;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-single-title {
    font-size: 18px;
    font-size: 1.8rem;
  }

  .recruit-single-btn {
    margin: 25px auto 0 auto;
    width: 410px;
  }
}

/* ----------------- メイン画像 - */
.recruit-photo-main {
  position: relative;
  margin-bottom: 3.33333vw;
  width: 100%;
  height: 53.33333vw;
  background-size: contain;
  background-position: center;
  transition: .05s;
}

.recruit-photo-thumb {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.66667vw;
}

.recruit-photo-thumb li {
  margin: 0 0 1.33333vw 2.66667vw;
  width: calc(25% - 2.66667vw);
  height: 16vw;
  background-size: cover;
  background-position: center center;
  transition: .3s;
}

.recruit-photo-thumb li:hover {
  opacity: 0.7;
  cursor: pointer;
}

@media screen and (min-width: 751px) {
  .recruit-single-main {
    margin-bottom: 0;
  }

  .recruit-photo-main {
    height: 17rem;
    width: 25rem;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-photo-main {
    height: 170px;
  }
}

.recruit_single__ttl {
  margin-bottom: 15px;
  padding-left: 15px;
  border-left: 10px solid #87C8A7;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .recruit_single__ttl {
    margin-bottom: 35px;
    padding-left: 15px;
    border-left: 10px solid #87C8A7;
    font-size: 24px;
    font-size: 2.4rem;
  }
}

/* ----------------- PR content - */
#pr-content h4,
#requiments-content h4,
#requiments-access h4,
.recruit-form h4 {
  margin-bottom: 35px;
  padding-left: 15px;
  display: block;
  font-size: 2.4rem;
  border-left: 10px solid #87C8A7;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (max-width: 750px) {

  #pr-content h4,
  #requiments-content h4,
  #requiments-access h4 {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
}

.recruit-single-pr {
  margin-bottom: 10.66667vw;
}

.recruit-single-pr-image {
  margin-bottom: 5.33333vw;
}

.recruit-single-pr-image img {
  width: 100%;
  height: auto;
}

.recruit-single-pr-content--fyll {
  background: #f1f1f1;
}

.recruit-single-pr-content--fyll .text {
  padding: 15px;
}

.recruit-single-pr-content p {
  line-height: 1.8em;
}

.recruit-single-pr-title {
  font-size: 1.8rem;
  font-weight: 600;
  background-color: #87C8A7;
  color: #fff;
  padding: 10px 10px;
}

@media screen and (max-width: 750px) {
  .recruit-single-pr-title {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 751px) {
  .recruit-single-pr {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4.16667vw;
  }

  .recruit-single-pr:last-of-type {
    /*margin-bottom: 0;*/
  }

  .recruit-single-pr-image {
    margin-bottom: 0;
    width: 27.22222vw;
    order: 2;
  }

  .recruit-single-pr-content {
    width: 47.79167vw;
    order: 1;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-single-pr {
    margin-bottom: 60px;
  }

  .recruit-single-pr-image {
    width: 33%;
  }

  .recruit-single-pr-content {
    width: 63%;
  }

  .recruit-single-pr-title {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/* ----------------- ギャラリー - */
.recruit-single-gallery li {
  margin: 0 auto 10.66667vw auto;
  width: 85.33333vw;
}

.recruit-single-gallery-image {
  margin-bottom: 4vw;
}

.recruit-single-gallery-image img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 57.33333vw;
}

.recruit-single-gallery li a {
  display: block;
}

.recruit-single-gallery-content p {
  line-height: 1.8em;
}

@media screen and (min-width: 751px) {
  .recruit-single-gallery {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1.38889vw;
  }

  .recruit-single-gallery li {
    margin: 0 0 3.47222vw 1.38889vw;
    width: calc(33.33333% - 1.38889vw);
  }

  .recruit-single-gallery-image {
    margin-bottom: 1.38889vw;
  }

  .recruit-single-gallery-image img {
    height: 14.93056vw;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-single-gallery {
    margin-left: -20px;
  }

  .recruit-single-gallery li {
    margin: 0 0 50px 20px;
    width: calc(33.33333% - 20px);
  }

  .recruit-single-gallery-image {
    margin-bottom: 20px;
  }

  .recruit-single-gallery-image img {
    height: 215px;
  }
}

/* ----------------- 募集要項 - */
.recruit-single-data {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #f1f1f1;
}

@media screen and (max-width: 750px) {
  .recruit-single-data {
    display: block;
  }
}

.recruit-single-data:last-of-type {
  border-bottom: 1px solid #f1f1f1;
}

.recruit-single-data dt {
  font-weight: 700;
  text-align: left;
  font-weight: 700;
  line-height: 2.25em;
  vertical-align: top;
  width: 15%;
  padding: 16px 10px;
}

.recruit-single-data dd {
  line-height: 1.7em;
  width: calc(100% - 15%);
  padding: 13px 10px;
}

@media screen and (min-width: 751px) {
  .recruit-single-datas {
    margin-top: 2.08333vw;
  }

  .recruit-single-data dt {
    width: 160px;
  }

  .recruit-single-data dd {
    width: calc(100% - 160px);
    padding: 20px 10px;
  }
}

@media screen and (min-width: 1201px) {
  .recruit-single-datas {
    margin-top: 30px;
  }

  .recruit-single-data {
    padding: 10px 0;
  }

  .recruit-single-data dt {
    width: 150px;
  }
}

@media screen and (max-width: 750px) {
  .recruit-single-data dt {
    width: 100%;
    display: block;
    padding: 10px 10px 0 10px;
  }

  .recruit-single-data dd {
    width: 100%;
    display: block;
    padding: 0 10px 10px 10px;
  }
}

/* ----------------- フォーム - */
.recruit_single .graduation_year input {
  width: 100px;
}

.recruit_single .almamater input {
  width: 200px;
}




.single-item .slider {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.slider {
  margin-right: 10px;
  height: 383px;
}

.lineup__front__container a {
  width: 97%;
  margin-left: 0;
}

.lineup__front__container {
  display: block;
}

@media screen and (max-width: 768px) {
  .lineup__front__container a {
    width: 100%;
  }

  .slick-slide img {
    width: 98% !important;
  }

  .slider {
    margin-right: 10px;
    height: auto;
  }
}

@media screen and (max-width: 375px) {
  .slider {
    margin-right: 10px;
    height: 392px;
  }
}

.u-cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  width: 48px;
  height: 20px;
  font-size: 12px;
  letter-spacing: 0;
}

.u-cat__event {
  background: #f48745;
}

.u-cat__blog {
  background: #2a5e21;
}

.u-cat__news {
  background: #d02c2b;
}

.cmnCard {
  background: #fff;
  display: block;
}

.cmnCard__pic .img-trim{
        position: relative;
	overflow: hidden;
	padding-top:75%;
}

.cmnCard__pic .img-trim img{
        position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cmnCard__pic .img-trim.cc_event_image{
        background:#eee;
}

.cmnCard__pic .img-trim.cc_event_image img{
        object-fit:contain;
}


.cmnCard__meta {
  color: #5ab486;
}

.cmnCard__text {
  line-height: 1.5;
}

.cmnCard:hover {
  opacity: 0.7;
}

@media screen and (max-width: 750px) {
  .cmnCard {
    width: 48%;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.27);
    margin-bottom: 2vw;
  }

  .cmnCard__meta {
    padding: 1vw;
  }

  .cmnCard .date {
    font-size: 1vw;
    font-size: calc(16 / 750 * 100vw);
  }

  .cmnCard__ttl {
    padding: 1vw;
    font-size: calc(18 / 750 * 100vw);
  }

  .cmnCard__text {
    padding: 0 1vw 1vw;
    font-size: calc(16 / 750 * 100vw);
  }
}

@media screen and (min-width: 751px) {
  .cmnCard {
    width: 18.5vw;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.27);
    line-height: 1.5;
  }

  .cmnCard__meta {
    padding: 0.4vw;
  }

  .cmnCard .date {
    font-size: 1vw;
  }

  .cmnCard__ttl {
    padding: 0.4vw;
  }

  .cmnCard__text {
    padding: 0 0.4vw 0.4vw;
    font-size: 1vw;
  }
  
        .cmnCard__pic .img-trim{
        	padding-top:66%;
        }
  
}

@media screen and (min-width: 1201px) {
  .cmnCard {
    width: 225px;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.27);
    line-height: 1.5;
  }

  .cmnCard__meta {
    padding: 10px;
  }

  .cmnCard .date {
    font-size: 12px;
  }

  .cmnCard__ttl {
    padding: 10px;
  }

  .cmnCard__text {
    padding: 0 10px 10px;
    font-size: 12px;
  }

}

.homeNews {}

.homeNews h2 {
  margin: 0 auto;
}

.homeNews__inner {
  margin: 50px 0 60px;
  display: flex;
  justify-content: space-between;
  position: relative;
}


@media screen and (max-width: 750px) {
  .homeNews {
    margin: calc(73 / 750 * 100vw) 0 100px 0;
  }

  .homeNews__inner {
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 751px) {
  .homeNews {
    margin: 50px 0 100px 0;
  }

  .homeNews__inner {}
}

/*LINEUP 20220209 スマホのみ*/
.sp-lineup {display: none;}
.lineup-item {
  background: #fff;
  margin-bottom: 10px;
}

.fbox {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
.lineup-item .img {
  width: 42%;
}
.lineup-item .tx {
  width: 58%;
  text-align: center;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.lineup-item .tx img{
  width: 94%;
}
.lineup-item .tx.growth img{
  width: 74%;
}
.lineup-item .tx.calm img{
  width: 44%;
}
.lineup-item .tx.mini img{
  width: 44%;
}

.lineup-price {
  color: #f07850;
}
.lineup-item .tx .lineup-price .num-tx{
  font-size: 3vw;
  display: inline-block;
  font-weight: bold;
}
.lineup-item .tx .lineup-price .num{
  display: inline-block;
  font-size: 12vw;
  font-weight: bold;
  line-height: 1;
  font-family: "langdon", sans-serif;
}
.box-arrow {
  width: 20px;
  height: 20px;
  background: #acacac;
  margin-left: auto;
  margin-top: -11px;
}
.box-arrow::before{
  content: "";
  display: block;
  left: 4px;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: relative;
  top: 6px;
}
.sec__lineup {
  background-size: 128%;
  margin-bottom: 50px;
}
.lineup-item {
  margin-bottom:30px;
}
.lineup-tx {
  color: #fff;
  text-align: center;
  font-size: 12px;
  background: #b98754;
  padding: 7px 0;
  font-weight: bold;
}

@media screen and (max-width: 750px) {
  .sp-lineup {display: block;}
  .pc-lineup {display: none;}
}


.seko-after_pict{
  position: relative;
  overflow: hidden;
}

.seko-after_pict img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.choice-btn .slick-track{
  display: flex;
  justify-content: space-start;
  flex-wrap: wrap;
  width: 100% !important;
  transform:unset!important;
}
.choice-btn .slick-slide {
  width: calc( 10% - 10px) !important;
  margin: 0 5px 5px;
  overflow: hidden;
  position: relative;
  cursor: pointer;
}

.choice-btn .slick-slide:before {
  content: '' !important;
  display: block;
  padding-top: 80%;
  width: 100%;
  height: inherit;
  border-radius: 0;
  background: none;
}
.choice-btn .slick-slide img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.item_moviethumb:before {
  content: '';
  background: url(../img/common/circle-play-regular.svg) no-repeat center center;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
}


.contact_detail{
        margin-bottom: 5em;
}

.contact_detail > p{
        font-weight:700;
        line-height:1.6;
}

@media screen and (min-width: 751px) {

        .contact_detail .comtact__book__list{
                margin-bottom:2vw;
        }
        
        .contact_detail > p{
                line-height:1;
        }

}

@media screen and (min-width: 1201px) {

        .contact_detail .comtact__book__list{
                margin-bottom:20px;
        }

}

/*new lineup*/

.page_lineup{
  .sec_concept{
    .ttlarea{
      text-align: center;
      margin-bottom: 2em;
    }
    .ttl_lineup{
      font-weight: bold;
      font-size: calc(16/ 375 * 100vw);
      span{
      font-size: calc(40/ 375 * 100vw); 
      display: block;
      line-height: 1;
      }
    }
    .lead_lineup{
      font-weight: bold;
      font-size: calc(18/ 375 * 100vw);
      line-height: 1.8;
      margin-bottom: 2em;
      text-align: center;

    }
    .subttl_lineup{
      font-size: calc(16/ 375 * 100vw);
      display: flex;
      align-items: center;
      margin-bottom: 1em;
      span{
      font-family: "langdon", sans-serif;
      font-size: calc(50 /375 * 100vw); 
      margin-right: 0.5em;
      }
    }
    .txt_lineup{
      line-height: 1.8;
      font-size: calc(15/ 375 * 100vw);
      margin-bottom: 3em;
    }
  }
  .list_lineup{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10em;
    row-gap: calc(30 / 375 * 100vw);
  }
  .lineup_image{
    margin-bottom: 1em;
  }
  .lineup_content{
    h3{
      text-align: center;
      margin-bottom: 1em;
      white-space: nowrap;
      letter-spacing: 0;
    }
    img{
      height: calc(30/ 375 * 100vw);
    }
  }
  .lineup_catch{
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0;
    font-size: calc(16 /375 * 100vw); 

  }
}
@media screen and (min-width: 751px) {
.page_lineup{
  .sec_concept{
    .ttlarea{
    }
    .ttl_lineup{
      font-size: calc(16/ 1200 * 100vw);
      span{
      font-size: calc(50/ 1200 * 100vw);    
      }
    }
    .lead_lineup{
      font-size: calc(20/ 1200 * 100vw);

    }
    .subttl_lineup{
      font-size: calc(16/ 1200 * 100vw);
      span{
      font-size: calc(50 /1200 * 100vw);    
      }
    }
    .txt_lineup{
      font-size: calc(16/ 1200 * 100vw);
    }
  }
  .list_lineup{
    display: flex;
    flex-wrap: wrap;
    column-gap: calc(30/ 1200 * 100vw);
    row-gap: calc(30/ 1200 * 100vw);
    
    >a{
      width: calc((100% - calc(60/ 1200 * 100vw))/3);
    }
  }
  .lineup_content{
    h3 span{
      font-weight: bold;
      font-size:calc(28/ 1200 * 100vw);
    }
    img{
      height:calc(30/ 1200 * 100vw);
      width: auto;
    }
  .wide img{
    width: 70%;
    height: auto;
  }
  }
  .lineup_catch{
    font-size: calc(15/ 1200 * 100vw);
  }

}
}
@media screen and (min-width: 1201px) {
.page_lineup{
  .sec_concept{
    .ttlarea{
    }
    .ttl_lineup{
      font-size: 16px;
      span{
      font-size: 50px;    
      }
    }
    .lead_lineup{
      font-size: 20px;

    }
    .subttl_lineup{
      font-size: 16px;
      span{
      font-size: 50px;    
      }
    }
    .txt_lineup{
      font-size: 16px;
    }
  }
    .list_lineup{
    column-gap: 30px;
    row-gap: 30px;
    >a{
      width: calc((100% - 60px)/3);
    }
  }

  .lineup_content{
    h3 span{
      font-size:28px;
    }

    img{
      height:30px;
    }
  }
    .lineup_catch{
    font-size: 15px;
  }

}
}
