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

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

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

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

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

@font-face {
  font-family: 'impact';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/impact/impact.eot");
  src: url("../fonts/impact/impact.eot?#iefix") format("embedded-opentype"), url("../fonts/impact/impact.woff2") format("woff2"), url("../fonts/impact/impact.woff") format("woff"), url("../fonts/impact/impact.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-display: swap;
}

@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");
  font-display: swap;
}

html {
  font-size: 62.5%
}

body {
  width: 100%;
  height: 100%;
  color: #333;
  background-color: #fff;
  font-family: "NotoSansCJKjp", sans-serif;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden
}

@media (min-width: 960px) {
  body {
    font-size: 14px
  }
}

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

a:hover {
  cursor: pointer
}

a.opacity {
  display: block
}

a.opacity:hover {
  opacity: 0.6
}

a.map-zoom {
  color: #2390b8;
  text-decoration: underline
}

.l-header {
  position: fixed;
  margin: 0 auto;
  width: 100%;
  height: 22vw;
  background-color: #fff;
  z-index: 888
}

.mx690 {
  max-width: 690px;
  margin-left: auto;
  margin-right: auto;
}


@media screen and (min-width: 980px) {
  .l-header {
    position: relative;
    padding: 0;
    height: auto
  }
}

.header-bar {
  background-color: #f3141d;
  line-height: 30px
}

.header-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 3.3vw;
  width: 100%;
  height: 22vw;
  max-width: 960px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.header-bar .l-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  height:48px;
}

.header-bar .l-inner h1 {
  font-size: 14px;
}

.header-bar .l-inner a {
  color: #fff;
  font-weight: 700;
}

@media screen and (min-width: 980px) {
  .header-inner {
    padding: 0;
    height: 105px
  }
}

.header-logo {
  position: relative
}

.header-logo img {
  width: 43.3vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .header-logo {
    left: -10px
  }

  .header-logo img {
    width: 235px;
    height: 77px
  }
}

.header-btn-menu {
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

.header-btn-menu li {
  margin-right: 2vw
}

.header-btn-menu li:last-child {
  margin-right: 0
}

.header-btn-menu img {
  max-height: 13.6vw;
  width: auto
}

@media screen and (min-width: 980px) {
  .header-btn-menu {
    margin-top: -10px
  }

  .header-btn-menu li {
    margin-right: 10px
  }

  .header-btn-menu img {
    max-height: 95px
  }
}

.navi-container {
  position: relative
}

@media screen and (max-width: 979px) {
  .navi-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    height: 0%;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.7s, visibility 0.7s, height 0.3s;
    transition: opacity 0.7s, visibility 0.7s, height 0.3s;
    overflow: hidden;
    z-index: 222
  }

  .navi-container.close {
    position: fixed;
    top: 0;
    left: 0;
    width: 10%;
    height: 0%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.35s, visibility 0.35s, height 0.35s;
    transition: opacity 0.35s, visibility 0.35s, height 0.35s;
    overflow: hidden
  }

  .navi-container.open {
    opacity: 1;
    visibility: visible;
    width: 90%;
    height: 100%
  }
}

@media screen and (max-width: 979px) {
  .navi-inner {
    position: relative;
    margin-left: auto;
    width: 96%;
    height: 100vh;
    background-color: rgba(39, 31, 28, 0.8);
    overflow-x: scroll;
    z-index: 999
  }
}

.navi-content {
  padding: 20px;
  width: 100%
}

@media screen and (min-width: 980px) {
  .navi-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }

  .navi-content {
    padding: 0;
    width: 100%
  }
}

@media screen and (max-width: 979px) {
  .navi {
    margin: 0 auto;
    width: 100%
  }

  .navi>li {
    padding: 1em;
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.1em;
    border-bottom: 1px solid #fff
  }

  .navi>li a {
    display: block;
    color: #fff
  }

  .navi>li:hover {
    cursor: pointer
  }

  .navi>li>p {
    display: block;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase
  }

  .navi>li>p {
    position: relative;
    display: block;
    color: #fff
  }

  .submenu {
    display: none;
    padding-top: 2vw
  }

  .submenu li a {
    position: relative;
    padding: 1em;
    display: block;
    color: #fff;
    font-weight: 700;
    width: 100%
  }

  .navi>li>p:after,
  .submenu li a:after {
    position: absolute;
    right: 0;
    top: 50%;
    content: '\f054';
    margin-top: -10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900
  }

  .navi>li>p.is-open:after {
    position: absolute;
    right: 0;
    top: 50%;
    content: '\f078';
    margin-top: -10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900
  }
}

@media screen and (min-width: 980px) {
  .navi-wrap {
    position: relative;
    padding: 10px 0;
    border-top: 1px solid #a9a9a9;
    border-bottom: 1px solid #a9a9a9
  }

  .navi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    height: 50px;
    max-width: 960px
  }

  .navi>li {
    position: relative;
    text-align: center;
    width: 14.28%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    border-left: 1px solid #a9a9a9;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 700
  }

  .navi>li:last-child {
    border-right: 1px solid #a9a9a9
  }

  .navi>li:hover {
    cursor: pointer
  }

  .navi p {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f1f1f;
    font-weight: 700;
    line-height: 1.4em;
    z-index: 2
  }

  .navi p:hover {
    background-color: #fff;
    color: #f3141d
  }

  .submenu {
    position: absolute;
    top: 60px;
    left: 50%;
    padding: 10px 15px;
    margin-left: -115px;
    min-width: 230px;
    background-color: #fff;
    border: 1px solid #a9a9a9;
    transition: all .2s;
    visibility: hidden;
    opacity: 0
  }

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

  .submenu li a {
    display: block;
    padding: 10px 0;
    font-weight: 700;
    text-align: center;
    line-height: 1.4em;
    width: 100%
  }
  .submenu li a[target="_blank"] span{
    display: inline-block;
    background-position: right center;
    background-size: auto 14px;
    background-repeat: no-repeat;
    padding-right: 22px;
    background-image: url(../img/common/icn_link.svg);
  }

  .submenu li a:hover {
    background-color: #a9a9a9
  }

  .submenu li {
    border-bottom: 1px solid #a9a9a9;
    width: 100%
  }

  .submenu li:last-child {
    border-bottom: none
  }
}

.sp-menu-btn {
  display: flex;
  flex-wrap: wrap;
  margin-top: 1.3vw;
  margin-left: -1.3vw;
  margin-bottom: 2vw
}

.sp-menu-btn li {
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  width: calc(50% - 1.3vw)
}

.btn-close {
  margin-bottom: 2vw;
  padding: .8em .5em;
  width: 100%;
  background-color: #fff;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.sp-sub li a {
  display: block;
  padding: .5em;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.l-footer {
  margin-top: 12vw;
  position: relative;
  padding: 10vw 0 5.3vw 0;
  margin-bottom: 10vw;
}

@media screen and (min-width: 980px) {
  .l-footer {
    margin-top: 0;
    padding: 40px 0 10px 0
  }
}

.footer-bottom {
  display: none
}

@media screen and (min-width: 980px) {
  .footer-bottom {
    display: block;
    padding: 30px 0 10px 0;
    width: 100%
  }
        .footer-area{
                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;
        }
        
        .footer-area .box{
                width:50%;
        }
        
        .footer-area .box h5{
                font-size: 14px;
                margin-bottom:1em;
        }
        
        .footer-area .box h6{
                font-size: 14px;
                margin-bottom:0.5em;
        }
        
        .footer-area .box p{
                margin-bottom:1em;
        }
}

.footer-wrap {
  margin: 0 auto
}

.footer-wrap .footer-logo {
  margin: 0 auto;
  width: 100%;
  text-align: center
}

.footer-wrap .footer-logo img {
  width: 44vw;
  height: auto
}

.footer-wrap .content {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3.333333vw;
  margin-bottom: 2.66666vw;
  width: 100%
}

.footer-wrap .content div {
  margin-right: 1.3vw
}

.footer-wrap .content div:last-child {
  margin-right: 0
}

.footer-wrap:nth-child(2) .content {
  text-align: center
}

@media screen and (min-width: 980px) {
  .footer-wrap {
    display: flex;
    justify-content: flex-end;
    flex-wrap: nowrap
  }

  .footer-wrap .footer-logo {
    /* margin-right: 50px; */
    padding-left: 50px;
    width: 350px;
    text-align: left
  }

  .footer-wrap .footer-logo img {
    width: 235px
  }

  .footer-wrap .content {
    margin-top: 0;
    margin-bottom: 0;
    width: calc(100% - 350px)
  }

  .footer-wrap .content div {
    margin-right: 10px
  }
}

.area-title {
  position: relative;
  margin-bottom: 15px;
  display: block;
  color: #399cde;
  font-weight: 700;
  font-size: 20px;
  font-size: 2rem
}

.area-title:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: calc(100% - 11em);
  height: 1px;
  background-color: #399cde
}

.area-title:after {
  right: 0
}

.footer-info {
  margin-top: calc(20 / 750 * 100vw)
}

.footer-info>div {
  display: flex;
  align-items: center;
  margin-bottom: calc(15 / 750 * 100vh);
  width: 100%;
  height: 7.333333vw;
  border: 1px solid #f3141d;
  background-color: #fff
}

.footer-info>div>p:first-child {
  width: 33.33333%;
  height: 100%;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(27 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: calc(55 / 750 * 100vw)
}

.footer-info>div>p:nth-child(2) {
  padding: 0 .5em;
  width: calc(100% - 33.33333% - 20vw);
  font-size: calc(24 / 750 * 100vw);
  font-weight: 600
}

.footer-info>div>p:last-child {
  padding: 0 .3em;
  width: 20vw;
  text-align: right
}

@media screen and (min-width: 980px) {
  .footer-info {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 25px;
    width: calc(100% - 20px);
    font-size: 15px;
    font-size: 1.5rem
  }

  .footer-info>div {
    margin-left: 15px;
    margin-bottom: 0;
    width: calc(50% - 15px);
    height: 35px
  }

  .footer-info>div>p:first-child {
    width: 33.33333%;
    height: 100%;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 35px
  }

  .footer-info>div>p:nth-child(2) {
    padding: 0 .3em;
    width: calc(100% - 33.33333% - 105px);
    font-size: 16px;
    font-size: 1.6rem
  }

  .footer-info>div>p:last-child {
    width: 105px
  }
}

.footer-sp-info-wrap {
  position: relative;
  margin: 0 auto;
  margin-bottom: 4.6vw;
  width: 70vw
}

.footer-sp-info-wrap .sns-link {
  position: absolute;
  bottom: 0;
  right: 0
}

.footer-sp-info {
  margin-top: 2.6vw;
  display: flex;
  flex-wrap: wrap
}

.footer-sp-info-wrap .number-wrap {
  margin-top: 4vw;
  display: flex;
  justify-content: center;
  align-items: center
}

.footer-sp-info-wrap .number-wrap img {
  width: 10.4vw;
  height: auto
}

.footer-sp-info-wrap .number-wrap p {
  font-size: calc(60 / 750 * 100vw)
}

.footer-sp-info dt {
  width: 100%;
}

.footer-sp-info dd {
  width: calc(100% - 1em)
}

.footer-sitemap {
  display: flex;
  justify-content: space-between
}

.footer-sitemap>ul>li {
  color: #231815
}

.footer-sitemap .sitemap li a {
  display: block;
  line-height: 2em
}

.footer-sitemap .sitemap>li {
  width: 100%
}

.footer-sitemap .sitemap li>ul>li a:before {
  content: '・';
  margin-right: .5em
}

.copyright {
  text-align: center
}

.floating {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  background-color: #fff;
  z-index: 777
}

.floating-wrap {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 23px 0;
  width: 100%;
  max-width: 960px
}

.floating-left {
  position: relative;
  margin-right: 25px
}

.floathing-btn {
  display: flex;
  align-items: center
}

.floathing-btn a {
  margin-right: 5px
}

.floathing-btn a:last-child {
  margin-right: 0
}

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

.l-front {
  margin: 0 auto;
  margin-top: 22vw;
  width: 100%
}

@media screen and (min-width: 980px) {
  .l-front {
    margin-top: 0
  }
}

.l-column {
  margin: 0 auto;
  margin-top: 22vw;
  width: 100%
}

.l-column .l-main {
  margin-bottom: 45px;
  width: 100%
}

.l-column .l-aside {
  display: none
}

.l-fullwidth {
  width: 100%;
}

@media screen and (min-width: 980px) {
  .l-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-around;
    margin-top: 50px;
    max-width: 960px
  }

  .l-column .l-main {
    margin-top: 0;
    margin-bottom: 90px;
    width: calc(100% - 250px - 20px);
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }

  .l-column .l-column_max {
    width: 100%;
  }
  
  .l-column .l-main.l-main_full{
          width:100%;
  }

  .l-column .l-aside {
    position: relative;
    display: block;
    margin: 0 auto;
    margin-right: 20px;
    width: 250px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    z-index: 777
  }

  .l-fullwidth {
    width: 100% !important;
  }

  .l-fullwidth #riyu {
    width: 690px;
    margin: 100px auto 0;
  }

  .l-fullwidth .migration-cta {
    width: 690px;
    margin: 45px auto 0;
  }
}

.l-single {
  margin: 0 auto;
  margin-top: 22vw;
  width: 100%
}

.l-single .l-main {
  margin: 0 auto;
  margin-bottom: 45px
}

@media screen and (min-width: 980px) {
  .l-single {
    margin-top: 25px
  }

  .l-single .l-main {
    margin-bottom: 90px
  }
}

.l-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 3.3vw;
  width: 100%
}

@media screen and (max-width: 960px) and (min-width: 980px) {
  .l-inner {
    padding: 0 5%;
    max-width: 960px
  }
}

@media screen and (min-width: 960px) {
  .l-inner {
    padding: 0;
    max-width: 960px
  }

  #seko .l-inner .staff1 {
    position: absolute;
    left: -150px;
    bottom: 110px;
  }

  #seko .l-inner .staff2 {
    position: absolute;
    right: -150px;
    bottom: 110px;
  }
}

@media screen and (max-width: 959px) {
  #seko .l-inner .staff1 {
    position: absolute;
    top: -13px;
    left: 2%;
  }

  #seko .l-inner .staff2 {
    position: absolute;
    top: 0;
    right: 2%;
    text-align: right;
  }

  #seko .l-inner .staff1 img {
    width: 30%;
  }

  #seko .l-inner .staff2 img {
    width: 30%;
  }
}


.aside-heading {
  display: block;
  padding: .2em 0 .2em .5em;
  border-left: 15px solid #c1272d
}

.aside-seko-box {
  padding: 20px 10px;
  border: 1px solid #c1272d
}

.aside-seko a {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #d3d3d3;
  height: 50px
}

.aside-seko a .image {
  display: block
}

.aside-seko a .content {
  margin-left: .5em
}

.aside-riyu a {
  display: flex;
  align-items: center;
  border: 1px solid #c1272d;
  color: #f3141d
}

.aside-riyu a .image {
  width: 120px
}

.aside-riyu a .content {
  display: flex;
  align-items: center;
  padding-left: 10px;
  width: calc(100% - 120px)
}

.aside-bgbox {
  padding: 25px 10px;
  background-color: #f9f7f3
}

.aside-list li a {
  position: relative;
  display: block;
  padding: 0 1.5em;
  border-bottom: 1px dotted #000;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 40px
}

.aside-list li a:hover {
  color: #f3141d
}

.aside-list li a:after {
  position: absolute;
  top: 0;
  right: 1em;
  content: '\f0da';
  color: #000;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.aside-list li a:hover::after {
  color: #f3141d
}

.breadcrumb {
  padding: 0 1em
}

.breadcrumb-list {
  margin: 0 auto;
  max-width: 960px
}

.breadcrumb-list li {
  display: inline-block;
  font-size: calc(24 / 750 * 100vw)
}

.breadcrumb-list li a {
  color: #271f1c;
  font-weight: 700
}

.breadcrumb-list li:after {
  padding: 0 .5em;
  content: '>';
  color: #271f1c
}

.breadcrumb-list li:last-child:after {
  content: ''
}

@media screen and (min-width: 980px) {
  .breadcrumb {
    padding: 0
  }

  .breadcrumb-list li {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.pagenation-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center
}

.pagenation ul {
  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
}

.pagenation ul li {
  position: relative;
  margin-right: .3em;
  margin-bottom: .3em;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.pagenation ul li:last-child {
  margin-right: 0
}

.pagenation ul li a,
.pagenation ul li span {
  display: block;
  padding: .7em .8em;
  color: #197ec1
}

.pagenation ul li.active {
  background-color: #197ec1
}

.pagenation ul li.active span {
  color: #fff
}

.pagenation ul li a:hover {
  background-color: #197ec1;
  color: #fff;
  opacity: 1
}

.pagenation .prev a,
.pagenation .next a {
  padding: .8em 1.5em;
  border: 1px solid #197ec1;
  color: #197ec1
}

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

  .pagenation .prev a,
  .pagenation .next a {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.page-navi {
  margin: 0 auto;
  margin-top: 28vw;
  margin-left: -.5em;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center
}

.page-navi>div {
  margin-left: .5em;
  width: calc(50% - .5em)
}

.postlink-back {
  margin-left: 0 !important;
  padding-left: .5em;
  width: 35.3vw
}

.btn-prev,
.btn-next {
  position: relative;
  display: block;
  padding: .7em 1em;
  border: 1px solid #197ec1;
  background-color: #fff;
  color: #197ec1;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700
}

.postlink-back {
  position: absolute;
  top: -14.6vw
}

.btn-back {
  display: block;
  padding: .7em 1em;
  border: 1px solid #197ec1;
  background-color: #197ec1;
  color: #fff;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700
}

.btn-prev:hover,
.btn-next:hover {
  background-color: #197ec1;
  color: #fff
}

.btn-back:hover {
  background-color: #fff;
  color: #197ec1
}

@media screen and (min-width: 980px) {
  .page-navi {
    margin-top: 60px;
    margin-left: 0
  }

  .page-navi>div {
    margin-left: 0;
    margin-right: 5px;
    width: auto
  }

  .postlink-back {
    position: relative;
    top: 0;
    width: 150px
  }

  .btn-prev,
  .btn-next,
  .btn-back {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.btn-wrap {
  display: block;
  width: 100%
}

@media screen and (min-width: 980px) {
  .btn-wrap {
    margin-left: auto;
    max-width: 150px
  }
}

.btn-center-wrap {
  display: block;
  margin: 0 auto;
  width: 100%
}

@media screen and (min-width: 980px) {
  .btn-center-wrap {
    max-width: 350px
  }
}

.btn-end {
  position: relative;
  display: block;
  padding: .5em 1em;
  width: 100%;
  border: 2px solid #4f4f4f;
  background-color: #4f4f4f;
  color: #fff;
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s
}

.btn-end:hover {
  background-color: #fff;
  color: #4f4f4f
}

.btn-post {
  position: relative;
  display: block;
  padding: .5em 1em;
  border: 2px solid #c1272d;
  background-color: #c1272d;
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s
}

.btn-post:after {
  content: '\f0da';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.btn-post-red {
  border: 2px solid #f3141d;
  background-color: #f3141d
}

.btn-post-red:hover {
  background-color: #fff;
  color: #f3141d
}

.btn-post2 {
  position: relative;
  display: inline-block;
  padding: 1em 1em;
  border: 2px solid #f3141d;
  background-color: #fff;
  width: 100%;
  color: #f3141d;
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s
}

.btn-post:hover {
  background-color: #fff;
  color: #c1272d
}

.btn-post2:hover {
  background-color: #fff;
  color: #f3141d
}

.btn {
  display: inline-block;
  position: relative;
  height: 3.4em;
  color: #fff;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: calc(2.6em - 1.3vw);
  -webkit-transition: all .2s;
  transition: all .2s
}

.btn_high {
  display: inline-block;
  position: relative;
  height: 5em;
  color: #fff;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  line-height: calc(5em - 1.3vw);
  -webkit-transition: all .2s;
  transition: all .2s
}

.btn-red {
  border: 1px solid #f3141d;
  border-bottom: 5px solid #cb2f35;
  background-color: #f3141d
}

.btn-red:hover {
  background-color: #fff;
  color: #f3141d
}

.btn-blue {
  border: 1px solid #399cde;
  border-bottom: 5px solid #197ec1;
  background-color: #399cde
}

.btn-blue:hover {
  background-color: #fff;
  color: #399cde
}

.btn-green {
  border: 1px solid #2fbf4a;
  border-bottom: 5px solid #1baa36;
  background-color: #2fbf4a
}

.btn-green:hover {
  background-color: #fff;
  color: #2fbf4a
}

.btn-orange {
  border: 1px solid #ea821c;
  border-bottom: 5px solid #d06c09;
  background-color: #ea821c
}

.btn-orange:hover {
  background-color: #fff;
  color: #ea821c
}

.btn-orange2 {
  border: 1px solid #FF9300;
  border-bottom: 5px solid #E68500;
  background-color: #FF9300
}

.btn-orange2:hover {
  background-color: #fff;
  color: #FF9300
}

.btn-line {
  border: 1px solid #00b900;
  border-bottom: 5px solid #03a103;
  background-color: #00b900
}

.btn-line:hover {
  background-color: #fff;
  color: #00b900
}

.btn-yellow {
  border: 1px solid #FFC400;
  border-bottom: 5px solid #E3AF00;
  background-color: #FFC400
}

.btn-yellow:hover {
  background-color: #fff;
  color: #FFC400
}

.btn-icon:before {
  content: '';
  display: block;
  margin: 0 auto;
  background-size: contain
}

.btn-mail:before {
  position: relative;
  top: 4px;
  width: 24px;
  height: 18px;
  background-image: url(../img/common/mail.png)
}

.btn-mail:hover::before {
  background-image: url(../img/common/mail-h.png)
}

.btn-house:before {
  position: relative;
  top: 5px;
  width: 22px;
  height: 20px;
  background-image: url(../img/common/house.png)
}

.btn-house:hover::before {
  background-image: url(../img/common/house-h.png)
}

.btn-folder:before {
  position: relative;
  top: 7px;
  width: 24px;
  height: 20px;
  background-image: url(../img/common/folder.png)
}

.btn-folder:hover::before {
  background-image: url(../img/common/folder-h.png)
}

.btn-line:before {
  position: relative;
  top: 5px;
  width: 21px;
  height: 20px;
  background-image: url(../img/common/line_logo.png)
}

.btn-line:hover::before {
  background-image: url(../img/common/line_logo-h.png)
}

.btn-size {
  width: 100%
}

.btn-size300 {
  width: 80vw
}

.btn-sp100 {
  width: 100%
}

.btn-more-txt {
  font-size: 1.5rem;
  padding: 0.5em 0;
}

@media screen and (min-width: 980px) {
  .btn {
    height: 60px;
    font-size: 28px;
    font-size: 1.2rem;
    line-height: 38px
  }

  .btn_high {
    height: 100px;
    font-size: 32px;
    font-size: 2rem;
    line-height: 95px
  }

  .btn-size300 {
    width: 300px
  }

  .btn-size430 {
    width: 430px
  }

  .btn-size180 {
    width: 180px
  }

  .btn-size200 {
    width: 200px
  }

  .btn-size350 {
    width: 350px
  }

  .btn-size115 {
    width: 115px
  }

  .btn-size140 {
    width: 140px
  }

  .btn-size85 {
    width: 85px
  }

  .btn-more-txt {
    font-size: 1.6rem;
    padding: 0.6em 0 0.4em;
  }
}

@media screen and (max-width: 980px) {
  .btn-icon:before {
    margin-right: auto
  }

  .btn-mail:before {
    top: .8vw;
    width: 4.4vw;
    height: 3.3vw
  }

  .btn-house:before {
    top: .5vw;
    width: 4.4vw;
    height: 3.8vw
  }

  .btn-folder:before {
    top: .8vw;
    width: 4.4vw;
    height: 3.8vw
  }
}

.form-step {
  margin: 3.33333vw 0;
  text-align: center
}

@media screen and (min-width: 980px) {
  .form-step {
    margin: 45px 0 35px 0
  }
}

.contact-form {
  width: 100%;
  max-width: 100%;
  letter-spacing: .1em
}

.contact-form tr {
  border-bottom: 3px solid #eee
}

.contact-form tr:last-child {
  border-bottom: none
}

.contact-form th {
  position: relative;
  padding: 15px 10px;
  padding-right: 1em;
  background-color: #f9f7f3;
  width: 220px;
  color: #271f1c;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  vertical-align: top
}

.contact-form td {
  position: relative;
  padding: 15px 10px;
  vertical-align: middle;
  width: calc(100% - 220px)
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="date"],
.contact-form select {
  padding: 1em .5em;
  background-color: #eeeeee;
  border-radius: 0;
  width: 100%;
  max-width: 575px;
  color: #271f1c;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"] {
  max-width: 575px
}

.contact-form .input-required {
  background-color: #ffe1ee !important
}

.contact-form select {
  width: 100%
}

.contact-form input[type="radio"],
.contact-form input[type="checkbox"] {
  margin-bottom: .8em
}

.contact-form textarea {
  padding: 10px;
  width: 100%;
  height: 120px;
  background-color: #eeeeee;
  border: 0;
  color: #271f1c;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5
}

.picture-page .contact-form td {
  vertical-align: top;
}

.picture-page .contact-form td .wpcf7-list-item {
  display: block;
  margin: 0;
}

.picture-page .contact-form input[type="radio"] {
  margin-bottom: 5px;
  margin-right: 5px;
}

.picture-page .contact-form span.wpcf7-list-item-label::before,
.picture-page .contact-form span.wpcf7-list-item-label::after {
  content: none;
}

.picture-page .contact-form td .radio-img .wpcf7-radio {
  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;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
  width: 48%;
  padding-top: 185px;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item label {
  position: relative;
  width: 100%;
  display: block;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item label::after {
  width: 100%;
  height: 178px;
}

.picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/toilet04.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/toilet05.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/ih02.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/ih03.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/bathroom04.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/bathroom05.png");
  background-size: contain;
  background-repeat: no-repeat;
}


.picture-page .contact-form td .bathroom-shurui-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.picture-page .contact-form td .bathroom-shurui-wrap .shurui {
  width: 30%;
}

.picture-page .contact-form td .bathroom-shurui-wrap img {
  width: 194px;
}

.picture-page .contact-form td .ih-shurui-wrap,
.picture-page .contact-form td .kitchen-shurui-wrap {
  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;
}

.picture-page .contact-form td .ih-shurui-wrap>div,
.picture-page .contact-form td .kitchen-shurui-wrap>div {
  width: 160px;
  text-align: center;
}

.picture-page .contact-form td .ih-shurui-wrap>div img,
.picture-page .contact-form td .kitchen-shurui-wrap>div img {
  margin-bottom: 5px;
}

.picture-page .contact-form td .rangefood-shurui-wrap {
  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;
}

.picture-page .contact-form td .rangefood-shurui-wrap .shurui {
  width: 130px;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap {
  width: 310px;
  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;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap>div {
  width: 48%;
  margin-bottom: 10px;
  text-align: center;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap>div img {
  background: #eee;
  margin-bottom: 5px;
}


.picture-page .contact-form th img {
  margin-top: 10px;
}

.picture-page .contact-form td>img {
  display: none;
}

.picture-page .contact-form td .size-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.picture-page .contact-form td .size-wrap span {
  width: 80px;
  margin-right: 10px;
}

.picture-page .contact-form td .size-wrap .wpcf7-form-control-wrap {
  width: 120px;
}

.picture-page .contact-form td .size-wrap p {
  width: 100%;
  margin-top: 10px;
}

.picture-page .contact-form td .form-hosoku a {
  color: #f3141d;
}

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

  .picture-page .contact-form td .bathroom-shurui-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .picture-page .contact-form td .bathroom-shurui-wrap .shurui {
    width: 100%;
  }

  .picture-page .contact-form td .bathroom-shurui-wrap img {
    display: block;
    width: 50%;
  }

  .picture-page .contact-form td .ih-shurui-wrap .shurui,
  .picture-page .contact-form td .kitchen-shurui-wrap .tsurido {
    width: 100%;
  }

  .picture-page .contact-form td .ih-shurui-wrap>div,
  .picture-page .contact-form td .kitchen-shurui-wrap>div {
    width: 48%;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap .shurui,
  .picture-page .contact-form td .rangefood-shurui-wrap .product {
    width: 100%;
    margin-bottom: 10px;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap .img-wrap {
    width: 100%;
  }

  .picture-page .contact-form th img {
    display: none;
  }

  .picture-page .contact-form td>img {
    display: block;
    width: 50%;
    margin-top: 5px;
    background: #F9F7F4;
  }

  .picture-page .contact-form td .size-wrap span {
    width: 25%;
  }

  .picture-page .contact-form td .size-wrap .wpcf7-form-control-wrap {
    width: 30%;
  }

  .picture-page .contact-form td .size-wrap span:last-child {
    width: auto;
    margin-right: 0;
  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 150px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 150px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -150px;

  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 130px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 130px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -130px;

  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 120px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 120px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -120px;

  }

}

@media screen and (max-width: 979px) {
  .contact-form tr {
    border-bottom: none
  }

  .contact-form th {
    display: block;
    margin-bottom: 2.66666vw;
    padding: .7em .5em;
    width: 100%;
    font-size: calc(32 / 750 * 100vw)
  }

  .contact-form td {
    display: block;
    padding: 0 .5em 1em .5em;
    width: 100%
  }

  .contact-form textarea {
    height: 50vw;
    font-size: calc(28 / 750 * 100vw)
  }

  .contact-form input[type="text"],
  .contact-form input[type="email"],
  .contact-form input[type="tel"],
  .contact-form input[type="date"],
  .contact-form select {
    padding: 1em .5em;
    background-color: #eee;
    border: 0;
    border-radius: 0;
    width: 100%;
    color: #271f1c;
    font-size: calc(28 / 750 * 100vw)
  }
}

.form-hosoku {
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700
}

@media screen and (max-width: 979px) {
  .form-hosoku {
    margin-top: .3em;
    font-size: calc(24 / 750 * 100vw)
  }
}

.fcred {
  color: #e60012
}

.required {
  position: absolute;
  top: 15px;
  right: 10px;
  display: inline-block;
  padding: 0 .8em;
  background-color: #c1272d;
  color: #ffcdcd;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 2.4em
}

@media screen and (max-width: 979px) {
  .required {
    top: 50%;
    right: 1em;
    margin-top: -1.2em;
    font-size: calc(22 / 750 * 100vw)
  }
}

.unrequired {
  position: absolute;
  top: 15px;
  right: 10px;
  display: inline-block;
  padding: 0 .8em;
  background-color: #ccc;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 2.4em
}

@media screen and (max-width: 979px) {
  .unrequired {
    top: 50%;
    right: 1em;
    margin-top: -1.2em;
    font-size: calc(22 / 750 * 100vw)
  }
}

.select-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%
}

.select-flex div {
  margin-right: 5px
}

.multi-wrap li {
  list-style: none !important
}

@media screen and (min-width: 980px) {
  .multi-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-end
  }

  .multi-wrap li {
    margin-right: .8em
  }

  .multi-wrap li:last-child {
    margin-right: 0
  }
}

.multi-sp-block-wrap div:last-child {
  margin-top: 5px
}

.multi-sp-block-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.multi-sp-block-wrap li {
  margin-right: 5px
}

.multi-sp-block-wrap li:last-child {
  margin-right: 0
}

.input-date {
  width: 80px;
  max-width: 100%
}

@media screen and (min-width: 980px) {
  .input-date {
    width: 60px;
    max-width: 100%
  }
}

.input-kibou {
  width: 100%;
  max-width: 100%
}

@media screen and (min-width: 980px) {
  .input-kibou {
    width: 190px;
    max-width: 100%
  }
}

.input150 {
  width: 150px !important;
  max-width: 50% !important
}

.input200 {
  width: 200px !important;
  max-width: 100% !important
}

.input300 {
  width: 300px !important;
  max-width: 100% !important
}

.input415 {
  width: 100%;
  max-width: 415px
}

.input475 {
  width: 100%;
  max-width: 475px
}

.select {
  position: relative
}

.select:before {
  position: absolute;
  right: 10px;
  top: 50%;
  content: '\f0dd';
  font-size: 16px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-top: -13px;
  pointer-events: none;
  z-index: 1
}

input::-webkit-input-placeholder {
  color: #999
}

input:-ms-input-placeholder {
  color: #999
}

input::-moz-placeholder {
  color: #999
}

.wpcf7-list-item-label {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 600
}

@media screen and (min-width: 980px) {
  .wpcf7-list-item-label {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.wpcf7-list-item-label:before {
  padding-left: .5em
}

.form-radio-block span.wpcf7-list-item {
  display: block !important;
  margin-top: 10px;
  line-height: 2em
}

.form-radio-block span.wpcf7-list-item:last-child {
  margin-bottom: 10px
}

.form-checkbox-block .wpcf7-checkbox label {
  display: inline-block;
  font-weight: 500
}

.wpcf7-checkbox label {
  line-height: 2.6em
}

#soudan-check {
  margin: 0 auto;
  width: 100%
}

#soudan-check span {
  width: calc(100% - 1em)
}

#fuan-check {
  margin: 0 auto;
  width: 100%
}

#fuan-check span {
  width: calc(100% - 1em)
}

@media screen and (min-width: 980px) {
  #fuan-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%
  }

  #fuan-check span {
    width: calc(33.33333% - 1em)
  }
}

#entry-check .wpcf7-list-item {
  display: block;
  font-weight: 700
}

.wpcf7-checkbox label {
  line-height: 2.6em
}

.form-confirm-wrap {
  margin: 0 auto;
  width: 100%;
  max-width: 300px
}

.form-btn-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute
}

@media screen and (max-width: 979px) {
  .form-btn-wrap {
    margin-bottom: 26vw
  }
}

.form-back-wrap {
  margin-right: 1em;
  width: calc(30% - 1em)
}

.form-submit-wrap {
  width: 70%
}

.form-btn-submit {
  display: inline-block;
  padding: .5em 1em;
  width: 100%;
  border: 3px solid #f3141d;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: .1em;
  -webkit-transition: all .3s;
  transition: all .3s;
  cursor: pointer
}

.form-btn-submit:hover {
  color: #f3141d;
  background: #fff
}

.form-btn-back {
  display: inline-block;
  padding: .5em 1em;
  width: 100%;
  border: 3px solid #271f1c;
  background-color: #fff;
  color: #271f1c;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
  cursor: pointer
}

.form-btn-back:hover {
  background-color: #271f1c;
  color: #fff
}

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

  .form-btn-confirm,
  .form-btn-submit,
  .form-btn-back {
    margin: 0;
    padding: .8em 1em;
    font-size: 18px;
    font-size: 1.8rem
  }
}

div.wpcf7 .ajax-loader {
  display: none !important
}
.wpcf7-validation-errors {
  border: none!important;
  background: #ff0000;
  color: #fff;
  padding: 0.4em 1em 0.3em!important;
  font-weight: bold;
}

.height28 {
  height: 2.8em
}

.heading-main-wrap .icon {
  margin-bottom: 2vw
}

.img-heading {
  width: 9.3vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .heading-main-wrap {
    display: flex;
    justify-content: center;
    align-items: center
  }

  .heading-main-wrap .icon {
    margin-right: .5em;
    margin-bottom: 0
  }

  .img-heading {
    width: 36px
  }
}

.heading-line {
  padding: .3em 0 .3em .5em;
  border-left: 15px solid #f3141d
}

.heading-post3 {
  display: block;
  padding: .2em 0 .2em .5em;
  border-left: 15px solid #c1272d
}

.heading-post4 {
  display: block;
  padding: .2em 0 .2em .5em;
  border-left: 15px solid #666
}

.cta-contact-box {
  display: flex;
  margin-left: -1.3vw
}

.cta-contact-box a {
  margin-left: 1.3vw;
}

@media screen and (min-width: 980px) {
  .cta-contact-box {
    justify-content: space-between;
    margin-left: 0
  }

  .cta-contact-box a {
    margin-left: 0;
  }
}

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

.number-wrap .image {
  margin-right: .3em
}

.migration-wrap>div {
  margin-bottom: calc(15 / 750 * 100vw)
}

.migration-wrap>div a {
  margin-bottom: calc(15 / 750 * 100vw)
}

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

  .migration-wrap>.migration-left {
    margin-right: 10px;
    margin-left: 12px;
    margin-bottom: 0;
    width: 328px
  }

  .migration-wrap>.migration-right {
    margin-bottom: 0;
    width: calc(100% - 328px - 10px - 12px)
  }

  .migration-wrap>div a {
    margin-bottom: 11px
  }
}

.migration-cta {
  border: 2px solid #f3141d
}

.migration-cta-outer {
  position: relative;
  display: flex;
  align-items: flex-end
}

.migration-cta-outer>.image {
  position: absolute;
  right: 20px;
  bottom: 0
}

.migration-cta-outer>.content {
  position: relative;
  padding: 25px 20px 20px 20px;
  width: calc(100% - 275px)
}

.migration-cta-outer>.content .sns-link {
  position: absolute;
  top: 15px;
  right: 35px;
  display: flex;
  justify-content: flex-end
}

.mainvisual {
  margin-bottom: 5vw
}

.mv-container {
  position: relative;
  margin: 0 auto;
  padding: 0 2.6666vw;
  max-width: 1200px
}

.swiper-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1
}

@media screen and (min-width: 980px) {
  .mainvisual {
    margin: 0
  }

  .mv-container {
    padding: 0
  }

  .swiper-container {
    width: 100%;
    height: 100%;
    overflow: visible;
    z-index: 1
  }
}

.info-wrap>div {
  margin-bottom: 40px;
  padding: 6.6vw 0;
  border-bottom: 1px solid #c9c9c9
}

.info-wrap>div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none
}

@media screen and (max-width: 979px) {
  .info-wrap .info {
    padding-top: 20px;
  }
}
@media screen and (min-width: 980px) {
  .info-wrap {
    display: flex;
    margin-left: -20px
  }

  .info-wrap>div {
    margin-bottom: 0;
    margin-left: 20px;
    padding: 0;
    width: calc(50% - 20px);
    border-bottom: none
  }
}

@media screen and (min-width: 980px) {
  .info {
    padding: 20px 23px;
    height: 290px;
    border: 1px solid #c9c9c9;
    overflow-y: scroll;
    overflow-x: hidden
  }
}

.info a {
  display: flex
}

.info a {
  margin-bottom: 5.3vw
}

@media screen and (min-width: 980px) {
  .info a {
    margin-bottom: 20px
  }
}

.info a .image {
  margin-right: 2.6vw;
  width: 26.6vw
}

.info a .content {
  width: calc(100% - 26.6vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .info a .image {
    margin-right: 15px;
    width: 100px
  }

  .info a .content {
    width: calc(100% - 100px - 15px)
  }
}

.heading-info-wrap {
  position: relative;
  display: flex;
  align-items: center
}

.btn-more-wrap {
  position: absolute;
  top: 50%;
  margin-top: -1em;
  right: 0
}

.btn-more {
  display: block;
  padding: .3em 1em;
  border: 2px solid #f3141d;
  background: #f3141d;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

.btn-more:hover {
  background: #fff;
  color: #f3141d
}

.btn-more:after {
  content: '\f0da';
  margin-left: .5em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

@media screen and (min-width: 980px) {
  .btn-more {
    position: relative;
    margin-left: 1.3em;
    font-size: 14px;
    font-size: 1.4rem
  }
}

.news-date {
  display: block;
  padding-bottom: .5em;
  border-bottom: 1px solid #ebebeb
}

.event-label {
  display: flex;
  margin-left: -0.2vw
}

.event-label li {
  margin-left: 0.2vw;
  padding: .2em 0;
  width: 17.3vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.event-label li.end {
  background-color: #3d3d3d;
  color: #b7b7b7
}

@media screen and (min-width: 980px) {
  .event-label li {
    margin-left: 1px;
    width: 80px;
    font-size: 12px;
    font-size: 1.2rem
  }
}

.rinen-wrap>div {
  margin: 0 auto;
  margin-bottom: 2.6vw;
  padding: 1.5em .8em;
  width: 70vw;
  border: 1px solid #f3141d
}

@media screen and (min-width: 980px) {
  .rinen-wrap {
    display: flex;
    margin-left: -10px
  }

  .rinen-wrap>div {
    margin-left: 10px;
    margin-bottom: 0;
    width: calc(33.33333% - 10px)
  }
}

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

.table1 tr {
  border-top: 1px solid #333333
}

.table1 tr:last-child {
  border-bottom: 1px solid #333333
}

.table1 th {
  padding: 1em 1em;
  width: 160px;
  background-color: #eeeeee;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: left;
  vertical-align: top
}

.table1 td {
  padding: 1em 1.5em;
  width: calc(100% - 160px);
  font-size: 14px;
  font-size: 1.4rem
}

@media screen and (max-width: 979px) {
  .table1 th {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(26 / 750 * 100vw)
  }

  .table1 td {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(24 / 750 * 100vw)
  }
}

.massage-wrap .image {
  margin-bottom: 4.6vw
}

@media screen and (min-width: 980px) {
  .massage-wrap {
    display: flex
  }

  .massage-wrap .image {
    margin-bottom: 0;
    width: 300px;
    order: 2
  }

  .massage-wrap .content {
    margin-right: 15px;
    width: calc(100% - 300px - 15px);
    order: 1
  }
}

@media screen and (max-width: 979px) {
  .massage-wrap .image img {
    max-width: 40vw
  }
}

.event-summary-outer {
  padding: 4.6vw 4vw;
  width: 100%;
  background-color: #f9f7f3
}

@media screen and (min-width: 980px) {
  .event-summary-outer {
    padding: 25px 20px
  }
}

.event-summary-flex {
  margin: 0 auto;
  width: 100%
}

.event-summary-flex .googlemaps {
  margin-top: 4vw;
  border: 0.8vw solid #fff
}

@media screen and (min-width: 980px) {
  .event-summary-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-content: space-between
  }

  .event-summary-flex .content {
    width: auto;
    flex-grow: 1
  }

  .event-summary-flex .googlemaps {
    margin-top: 0;
    margin-left: 1em;
    width: calc(45% - 1em);
    min-width: 280px;
    border: 5px solid #fff;
    flex-grow: 1
  }
}

.event-icon-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: .5em 0
}

.event-icon-list li {
  display: block;
  margin-right: .5em;
  margin-bottom: .5em;
  padding: .5em 1em;
  color: #fff
}

.event-cat1 {
  background: #076739
}

.event-cat2 {
  background: #004986
}

.event-cat3 {
  background: #eb6100
}

.event-cat4 {
  background: #eb6877
}

.event-cat5 {
  background: #2589cb
}

.event-cat6 {
  background: #ae5da1
}

.event-soudan-box .box-title {
  display: block;
  padding: .5em 0;
  width: 100%;
  background-color: #313131;
  color: #fff;
  font-weight: 700;
  text-align: center
}

.event-soudan-list {
  padding: 1em;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  background-color: #fff
}

.event-soudan-list li {
  font-weight: 700;
  line-height: 1.8em;
  white-space: pre-line
}

.event-soudan-list li:after {
  padding: .5em;
  content: '/'
}

.event-soudan-list li:last-child:after {
  content: ''
}

@media screen and (min-width: 980px) {
  .event-soudan-box {
    position: relative;
    display: flex;
    align-items: stretch
  }

  .event-soudan-box .box-title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    width: 6em
  }

  .event-soudan-list {
    padding: 1em;
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 6em);
    background-color: #fff
  }
}

.event-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  background-color: #fff
}

.event-summary dt {
  padding: .7em .3em;
  width: 30%;
  color: #c1272d;
  font-weight: 700;
  text-align: left
}

.event-summary dd {
  align-self: center;
  padding: .2em .7em;
  width: 70%;
  font-weight: 700
}

@media screen and (min-width: 980px) {
  .event-summary dt {
    width: 95px
  }

  .event-summary dd {
    width: calc(100% - 95px)
  }
}

.event-detail-image-flex {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw
}

.event-detail-image-flex a {
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  width: calc(33.33333% - 1.3vw)
}

@media screen and (min-width: 980px) {
  .event-detail-image-flex {
    margin-left: -10px
  }

  .event-detail-image-flex a {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px)
  }
}

.map_area {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

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

.illust {
  width: 330px;
}

.illust img {
  display: block;
  width: 100%;
}

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

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

.post-event a {
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  width: calc(50% - 2.6vw);
  box-shadow: 0px 0px 3px 0px rgba(126, 126, 126, 0.7)
}

@media screen and (min-width: 980px) {
  .post-event {
    margin-left: -15px
  }

  .post-event a {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.event-inner {
  padding: 1em .7em
}

.event-day {
  display: flex;
  align-items: center
}

.event-day .label {
  padding: .6em 0;
  width: 3em;
  background-color: #f3141d;
  color: #fff;
  text-align: center;
  line-height: 2.2em
}

.event-day .date {
  display: flex;
  align-items: center;
  align-self: stretch;
  padding: .6em .8em;
  width: calc(100% - 3em);
  min-height: 2.8em;
  background-color: #c1272d;
  color: #fff
}

.news-archive {
  display: flex
}

.wannyan-archive {
  display: flex
}

.news-archive .image {
  margin-right: 2.6vw;
  width: 26.6vw
}

.news-archive .content {
  width: calc(100% - 26.6vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .news-archive .image {
    margin-right: 15px;
    width: 100px
  }

  .news-archive .content {
    width: calc(100% - 100px - 15px)
  }
}

.taiken-wrap {
  display: flex;
  align-items: center;
  padding: 1.3vw;
  background-color: #f9f7f3
}

.taiken-wrap .content {
  width: calc(100% - 31.3vw - 2vw)
}

@media screen and (min-width: 980px) {
  .taiken-wrap {
    padding: 10px
  }

  .taiken-wrap .content {
    width: calc(100% - 235px - 15px)
  }
}

.taiken-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw;
  margin-right: 2vw;
  width: 31.3vw
}

.taiken-list li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  padding: .7em 0;
  width: calc(33.33333% - 1.3vw);
  background-color: #fff;
  color: #000;
  font-size: calc(16 / 750 * 100vw);
  font-weight: 700
}

.taiken-list li:nth-child(4),
.taiken-list li:nth-child(5),
.taiken-list li:last-child {
  margin-bottom: 0
}

@media screen and (min-width: 980px) {
  .taiken-list {
    margin-left: -10px;
    margin-right: 15px;
    width: 235px
  }

  .taiken-list li {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.showroom-tennai-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw
}

.showroom-tennai-wrap a {
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  width: calc(33.33333% - 1.3vw)
}

@media screen and (min-width: 980px) {
  .showroom-tennai-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px
  }

  .showroom-tennai-wrap a {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px)
  }
}

.showroom-wrap>div {
  padding: 6.6vw 0
}

.showroom-wrap>div:nth-child(1) {
  border-bottom: 1px solid #c9c9c9
}

@media screen and (min-width: 980px) {
  .showroom-wrap {
    display: flex;
    justify-content: space-between
  }

  .showroom-wrap>div {
    padding: 0;
    width: 50%
  }

  .showroom-wrap>div:nth-child(1) {
    border-right: 1px solid #c9c9c9;
    border-bottom: none
  }

  .showroom-wrap>div:nth-child(2) {
    padding-left: 38px
  }
}

.showroom-inner-wrap {
  display: flex
}

.showroom-inner-wrap .image {
  margin-right: 2.6vw;
  width: 48vw
}

.showroom-inner-wrap .content {
  width: calc(100% - 48vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .showroom-inner-wrap {
    width: 445px
  }

  .showroom-inner-wrap .image {
    margin-right: 0;
    width: 230px
  }

  .showroom-inner-wrap .content {
    margin: 0;
    padding-left: 10px;
    width: calc(100% - 230px)
  }
}

.showroom-setsubi {
  display: flex;
  margin-left: -0.2vw
}

.showroom-setsubi li {
  margin-left: 0.2vw;
  padding: .2em 0;
  width: 17.3vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .showroom-setsubi li {
    margin-left: 1px;
    width: 80px;
    font-size: 12px;
    font-size: 1.2rem
  }
}

@media screen and (min-width: 980px) {
  .showroom-data {
    display: flex
  }

  .showroom-data dt {
    width: 45px
  }

  .showroom-data dd {
    width: calc(100% - 45px)
  }
}

.riyu-heading {
  display: flex;
  justify-content: center;
  align-items: center
}

.riyu-heading .image {
  margin-right: 1em
}

@media screen and (min-width: 980px) {
  .riyu-heading {
    justify-content: flex-start
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-heading,
  .riyu-wrap div:nth-of-type(4)>.riyu-heading {
    justify-content: flex-end
  }
}

@media screen and (max-width: 979px) {
  .riyu-heading .image img {
    width: 20.5vw;
    height: auto
  }
}

.riyu-page-wrap>.content {
  margin-bottom: 4.6vw;
  padding: 1.5em;
  background-color: rgba(249, 249, 249, 0.7);
  box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3)
}

@media screen and (min-width: 980px) {
  .riyu-page-wrap {
    position: relative
  }

  .riyu-page-wrap>.content {
    position: relative;
    margin-bottom: 0;
    width: 385px;
    z-index: 2
  }

  .riyu-page-wrap>.image {
    margin-bottom: 0;
    z-index: 1
  }

  .riyu-wrap div:nth-of-type(1)>.riyu-page-wrap>.content,
  .riyu-wrap div:nth-of-type(3)>.riyu-page-wrap>.content {
    position: relative;
    margin-right: auto
  }

  .riyu-wrap div:nth-of-type(1)>.riyu-page-wrap>.image,
  .riyu-wrap div:nth-of-type(3)>.riyu-page-wrap>.image {
    position: absolute;
    top: 50px;
    right: 0;
    width: 385px
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-page-wrap>.content,
  .riyu-wrap div:nth-of-type(4)>.riyu-page-wrap>.content {
    position: absolute;
    top: 0;
    right: 0
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-page-wrap>.image {
    position: relative;
    top: 50px;
    margin-right: auto;
    width: 415px
  }

  .riyu-wrap div:nth-of-type(4)>.riyu-page-wrap>.image {
    position: relative;
    top: 50px;
    margin-right: auto;
    width: 310px
  }
}

.riyu-kaiin {
  padding: 2.6vw 4vw;
  border: 2px solid #f3141d
}

.riyu-kaiin-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6vw
}

.riyu-kaiin-wrap>div {
  margin-left: 6vw;
  margin-bottom: 6vw;
  width: calc(50% - 6vw)
}

@media screen and (min-width: 980px) {
  .riyu-kaiin {
    padding: 15px 25px;
    border: 2px solid #f3141d
  }

  .riyu-kaiin-wrap {
    flex-wrap: nowrap;
    margin-left: -25px
  }

  .riyu-kaiin-wrap>div {
    margin-left: 25px;
    margin-bottom: 0;
    width: calc(25% - 25px)
  }
}

@media screen and (min-width: 980px) {
  .riyu-title-wrap {
    margin-left: -52px;
    width: 1064px
  }
}

.sec-riyu {
  background-image: url(../img/riyu/bg_sp.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.webp .sec-riyu {
  background-image: url(../img/riyu/bg_sp.webp);
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 980px) {
  .sec-riyu {
    background-image: url(../img/riyu/bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
  }

  .webp .sec-riyu {
    background-image: url(../img/riyu/bg.webp);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

.riyu-front-wrap>div {
  margin-bottom: calc(15 / 750 * 100vw)
}

.riyu-front-wrap>div a {
  margin-bottom: calc(15 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .riyu-front-wrap {
    display: flex;
    align-items: center;
    margin-left: -20px
  }

  .riyu-front-wrap>div {
    margin-left: 20px;
    margin-bottom: 0;
    width: calc(50% - 20px)
  }

  .riyu-front-wrap>div a {
    margin-bottom: 11px
  }
}

.riyu-menu {
  position: relative
}

.riyu-menu .label {
  position: absolute;
  top: -1.7vw;
  left: -1.3vw
}

.riyu-menu .label img {
  max-width: 38.5vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .riyu-menu .label {
    top: -10px;
    left: -13px
  }

  .riyu-menu .label img {
    max-width: 237px
  }
}

.btn-riyu {
  display: inline-block;
  padding: .7em 0;
  width: 100%;
  max-width: 300px;
  border: 1px solid #f3141d;
  color: #f3141d;
  text-align: center
}

.btn-riyu:after {
  content: '\f054';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.btn-riyu:hover {
  background-color: #f3141d;
  color: #fff
}

.lineup-mv {
  position: relative;
  margin-left: -3.3vw;
  width: calc(100% + 6.6vw)
}

.lineup-mv-box {
  padding: 0 3.3vw;
  width: 100%
}

.lineup-mv-box .title {
  display: block;
  padding: .3em 0;
  background-color: #f3141d
}

.lineup-mv-box .content {
  position: relative;
  padding: 1em;
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2);
  background-color: #fff
}

@media screen and (max-width: 979px) {
  .lineup-mv-box {
    position: relative;
    top: -10.2vw
  }
}

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

  .lineup-mv-box {
    position: absolute;
    padding: 0;
    bottom: 25px;
    right: 25px;
    width: 320px
  }

  .lineup-mv-box .content {
    position: relative;
    padding: 1.5em 1em;
    box-shadow: none;
    background-color: rgba(255, 255, 255, 0.8)
  }
}

.lineup-mv-box .content .price-wrap {
  margin-left: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 59.3vw
}

@media screen and (min-width: 980px) {
  .lineup-mv-box .content .price-wrap {
    width: 225px
  }
}

.lineup-mv-box .komikomi {
  position: absolute;
  bottom: 1.3vw;
  left: 0.6vw
}

@media screen and (min-width: 980px) {
  .lineup-mv-box .komikomi {
    left: -15px;
    bottom: -15px
  }
}

.tri-line {
  position: relative;
  padding-bottom: .5em;
  border-bottom: 1px solid #000;
  margin: 0
}

.tri-line:before {
  content: "";
  position: absolute;
  bottom: -1.1em;
  left: 50%;
  margin-left: -.3em;
  border: .6em solid transparent;
  border-top: .6em solid #fff;
  z-index: 2
}

.tri-line:after {
  position: absolute;
  margin-left: -.3em;
  border: .6em solid transparent;
  border-top-color: #000;
  border-bottom-width: 0;
  bottom: -.6em;
  content: "";
  left: 50%;
  z-index: 1
}

.lineup-post-section {
  background-color: #f9f7f3;
  margin-left: -3.3vw;
  padding: 6.6vw;
  width: calc(100% + 6.6vw)
}

@media screen and (min-width: 980px) {
  .lineup-post-section {
    background-color: #f9f7f3;
    margin-left: 0;
    padding: 50px 15px 0 15px;
    width: 100%
  }
}

@media screen and (max-width: 979px) {
  .img-caption {
    max-width: 62.66666vw;
    height: auto
  }
}

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

.lineup-onayami-caption span.dot {
  position: relative;
  font-size: calc(34 / 750 * 100vw)
}

.lineup-onayami-caption span.dot:before {
  position: absolute;
  top: -1vw;
  left: 50%;
  margin-left: -0.6vw;
  content: '●';
  font-size: calc(10 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .lineup-onayami-caption {
    padding: 20px .5em .5em .5em;
    font-size: 22px;
    font-size: 2.2rem
  }

  .lineup-onayami-caption span.dot {
    font-size: 32px;
    font-size: 3.2rem
  }

  .lineup-onayami-caption span.dot:before {
    top: -12px;
    margin-left: -5px;
    font-size: 10px;
    font-size: 1rem
  }
}

.lineup-migration-link a {
  margin-bottom: 4.66666vw
}

@media screen and (min-width: 980px) {
  .lineup-migration-link {
    display: flex;
    margin-left: -20px
  }

  .lineup-migration-link a {
    margin-left: 20px;
    margin-bottom: 0;
    width: calc(50% - 20px)
  }
}

.lineup-kaiketsu {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-left: -2.66666vw
}

.lineup-kaiketsu li {
  margin-left: 2.66666vw;
  margin-bottom: 2.66666vw;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 0;
  width: calc(50% - 2.66666vw);
  border-radius: .2em;
  background-color: #e4f1ff;
  color: #036eb8;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .lineup-kaiketsu {
    margin-left: -25px
  }

  .lineup-kaiketsu li {
    margin-left: 25px;
    margin-bottom: 25px;
    width: calc(33.33333% - 25px);
    border-radius: 10px;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup-nayami-list li {
  margin-bottom: .5em;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  padding-left: 1.5em
}

.lineup-nayami-list li:before {
  content: '';
  display: inline-block;
  margin-left: -1em;
  margin-right: .5em;
  background-image: url(../img/page/lineup/check@2x.png);
  background-size: contain;
  width: 2.66666vw;
  height: 2.55555vw
}

@media screen and (min-width: 980px) {
  .lineup-nayami-list li {
    font-size: 16px;
    font-size: 1.6rem
  }

  .lineup-nayami-list li:before {
    width: 16px;
    height: 14px
  }
}

.lineup-nayami>.image {
  text-align: right
}

.lineup-nayami>.image img {
  max-width: 33.3333vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .lineup-nayami {
    display: flex;
    align-items: center
  }

  .lineup-nayami>.image {
    width: 240px;
    text-align: center
  }

  .lineup-nayami>.image img {
    max-width: 200px;
    height: auto
  }

  .lineup-nayami>.content {
    padding-left: 0;
    width: calc(100% - 240px)
  }
}

.lineup-price-wrap-a {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.lineup-price-wrap-a .price {
  font-size: calc(132 / 750 * 100vw);
  line-height: 1em
}

.lineup-price-wrap-a .tax {
  margin-left: .2em;
  font-size: calc(36 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.2em
}

.lineup-price-wrap-a .tax span {
  font-size: calc(26 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .lineup-price-wrap-a .price {
    font-size: 74px;
    font-size: 7.4rem;
  }

  .lineup-price-wrap-a .tax {
    font-size: 18px;
    font-size: 1.8rem;
  }

  .lineup-price-wrap-a .tax span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.lineup-late-circle {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 24vw;
  height: 24vw;
  border-radius: 50%;
  background-color: #fff000
}

.lineup-late-circle .late {
  display: inline-block;
  width: 100%;
  font-size: calc(72 / 750 * 100vw);
  color: #000;
  text-align: center;
  line-height: .7em
}

.lineup-late-circle .late .parsent {
  font-size: calc(48 / 750 * 100vw)
}

.lineup-late-circle .late .off {
  font-size: calc(60 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .lineup-late-circle {
    width: 96px;
    height: 96px
  }

  .lineup-late-circle .late {
    font-size: 36px;
    font-size: 3.6rem
  }

  .lineup-late-circle .late .parsent {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup-late-circle .late .off {
    font-size: 30px;
    font-size: 3.0rem
  }
}

.lineup-plan-price-wrap {
  display: flex;
  align-items: center;
  padding-top: .5em
}

.lineup-plan-price-wrap>.image {
  width: 17.33333vw
}

.lineup-plan-price-wrap>.content {
  padding-left: 3.33333vw;
  width: 50vw;
}

.lineup-plan-price-wrap>.content .fs20_40 {
  font-size: calc(36 / 750 * 100vw);
}

@media screen and (min-width: 980px) {
  .lineup-plan-price-wrap>.image {
    width: 75px
  }

  .lineup-plan-price-wrap>.content {
    padding-left: 0;
    width: calc(100% - 75px)
  }

  .lineup-plan-price-wrap>.content .fs20_40 {
    font-size: 20px;
    font-size: 2.0rem;
  }
}

.lineup-plan-label {
  display: inline-block;
  position: absolute;
  top: -2.667vw;
  right: 2.667vw;
  padding: 6.667vw 0;
  z-index: 2;
  width: 33.85vw;
  text-align: center;
  font-size: 3.2vw;
  font-weight: 700;
  color: #fff;
  background: #F19837;
}

.lineup-plan-label::after {
  content: '';
  position: absolute;
  left: 0;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 17vw solid #F19837;
  border-right: 17vw solid #F19837;
  border-bottom: 5vw solid transparent;
}

.lineup-post-heading {
  display: flex;
  align-items: center;
  padding: .6em 0;
  height: 4em
}

.lineup-post-heading img {
  width: 100%;
  height: auto;
  max-height: 100%
}

.lineup-post-heading>div {
  width: 30%
}

.lineup-post-heading .heading {
  width: 70%;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 600
}

@media screen and (min-width: 980px) {
  .lineup-post-heading .heading {
    font-size: 16px;
    font-size: 1.6rem
  }
  .lineup-plan-label {
    top: -10px;
    right: 10px;
    padding: 25px 0;
    width: 132px;
    font-size: 12px;
  }
  .lineup-plan-label::after {
    border-left: 66px solid #F19837;
    border-right: 66px solid #F19837;
    border-bottom: 20px solid transparent;
  }
}

.lineup-plan-wrap a {
  position: relative;
  margin-bottom: 7.33333vw;
  padding: 0vw 4vw 4.66666vw 4vw;
  background-color: #fefefe;
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2);
  border-radius: 1.333vw;
}

.lineup-plan-wrap a .image {
  overflow: hidden;
}

@media screen and (min-width: 980px) {
  .lineup-plan-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px
  }

  .lineup-plan-wrap a {
    margin-left: 10px;
    margin-bottom: 50px;
    padding: 0 0 15px 0;
    width: calc((100% / 3) - 10px);
    border-radius: 10px;
  }

  .lineup-plan-wrap a .image {
    border-radius: 10px 10px 0 0;
    overflow: hidden;
  }
}

.lineup-logo {
  position: absolute;
  top: 1em;
  left: .5em
}

.lineup-logo img {
  width: 32.6vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .lineup-logo img {
    width: 125px
  }
}

.lineup-pack-heading {
  position: relative;
  font-size: calc(38 / 750 * 100vw)
}

.lineup-pack-heading:before {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-left@2x.png);
  background-size: contain;
  display: inline-block;
  width: 2.4vw;
  height: 5.3vw
}

.lineup-pack-heading:after {
  margin-left: .5em;
  content: '';
  background-image: url(../img/lineup/heading-right@2x.png);
  background-size: contain;
  display: inline-block;
  width: 2.4vw;
  height: 5.3vw
}

@media screen and (min-width: 980px) {
  .lineup-pack-heading {
    font-size: 36px;
    font-size: 3.6rem
  }

  .lineup-pack-heading:before {
    width: 16px;
    height: 35px
  }

  .lineup-pack-heading:after {
    width: 16px;
    height: 35px
  }
}

.lineup-pack-box {
  padding: 4.66666vw 4.66666vw 1.6vw 4.66666vw;
  background-color: #e5f0f8
}

.pack-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4vw
}

.pack-list li {
  margin-left: 4vw;
  margin-bottom: 4vw;
  width: calc(50% - 4vw)
}

@media screen and (min-width: 980px) {
  .lineup-pack-box {
    padding: 30px 30px 10px 30px
  }

  .pack-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .pack-list li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.lineup-product-heading {
  display: flex;
  align-items: center;
  padding: .4em 0;
  height: 4em;
  border-bottom: 2px solid #c1272d
}

.lineup-product-heading img {
  width: auto;
  height: 11.2vw
}

.lineup-product-heading .heading {
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

@media screen and (min-width: 980px) {
  .lineup-product-heading img {
    height: 50px
  }

  .lineup-product-heading .heading {
    font-size: 20px;
    font-size: 2.0rem
  }
}

.lineup-product>.image {
  margin-bottom: 6.6vw
}

@media screen and (min-width: 980px) {
  .lineup-product {
    display: flex
  }

  .lineup-product>.image {
    margin-right: 20px;
    margin-bottom: 0;
    width: 330px
  }

  .lineup-product>.content {
    width: calc(100% - 330px - 20px)
  }
}

.lineup-late {
  display: block;
  padding: .2em 2.5em;
  background-color: #f3141d;
  color: #fff
}

.lineup-late span {
  padding: 0 0.3em
}

.lineup-cate-komikomi {
  display: block;
  padding: .3em 0;
  background-color: #000
}

.lineup-data-inner {
  padding: 4vw 2.6vw 0 2.6vw
}

@media screen and (min-width: 980px) {
  .lineup-data-inner {
    padding: 20px 10px 0 10px
  }
}

.plan-heading {
  height: 2.8em
}

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

.lineup-price-wrap .tax {
  margin-left: .2em;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 600;
  line-height: 1.2em
}

@media screen and (min-width: 980px) {
  .lineup-price-wrap .tax {
    font-size: 26px;
    font-size: 2.6rem
  }
}

.lineup-price-outer {
  display: flex;
  align-items: flex-end
}

.lineup-price-outer .image {
  width: 120px
}

.lineup-price-outer .content {
  width: calc(100% - 120px)
}

.lineup-price-box {
  padding: 1em;
  background-color: #f9f7f3
}

.lineup-price-box li:after {
  display: block;
  margin: .5em 1em .5em .3em;
  content: '\f055';
  color: #f3141d;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.lineup-price-box li:last-child::after {
  content: ''
}

@media screen and (min-width: 980px) {
  .lineup-price-box li:after {
    display: inline;
    margin: 0 1em 0 .3em
  }

  .lineup-price-box {
    display: flex;
    justify-content: center
  }
}

.lineup-function-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6vw
}

.lineup-function-wrap li {
  margin-left: 6vw;
  margin-bottom: 6vw;
  width: calc(50% - 6vw)
}

@media screen and (min-width: 980px) {
  .lineup-function-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -30px
  }

  .lineup-function-wrap li {
    margin-left: 30px;
    margin-bottom: 35px;
    width: calc(33.33333% - 30px)
  }
}

.sec-lineup {
  background-color: #DBEAF4;
}

.webp .sec-lineup {
  background-color: #DBEAF4;
}

.lineup-main-heading {
  position: relative;
}

.lineup-main-heading::before {
  content: '';
  position: absolute;
  top: 15.533vw;
  left: -1.867vw;
  display: block;
  width: 11.067vw;
  height: 12.667vw;
  background: url(../img/common/icon_menu_01.svg) no-repeat;
  background-size: 100%;
}

.lineup-main-heading::after {
  content: '';
  position: absolute;
  top: 18.2vw;
  right: -1.333vw;
  display: block;
  width: 10.533vw;
  height: 10.533vw;
  background: url(../img/common/icon_menu_02.svg) no-repeat;
  background-size: 100%;
}

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

.lineup-wrap .lineup-box {
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  width: calc(50% - 2.6vw);
}

.lineup-wrap .lineup-box a {
  position: relative;
  display: block;
  background-color: #fff;
  border-radius: 1.333vw;
  z-index: 2;
}

.lineup-wrap .lineup-box a::before {
  content: '';
  position: absolute;
  top: 1.333vw;
  right: -1.333vw;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #79B3E1;
  border-radius: 1.333vw;
  z-index: -1;
}

.lineup-wrap .lineup-box .image {
  border-radius: 1.333vw 1.333vw 0 0;
  background-color: #fff;
  overflow: hidden;
}

.lineup-wrap .lineup-box .image img {
  object-fit: cover;
  aspect-ratio: 307 / 250;
  width: 100%;
  height: auto;
}

@media screen and (min-width: 980px) {
  .lineup-wrap {
    margin-left: -20px
  }

  .lineup-wrap .lineup-box {
    margin-left: 20px;
    margin-bottom: 30px;
    width: calc(33.33% - 20px)
  }

  .lineup-wrap .lineup-box a {
    border-radius: 10px;
  }
  
  .lineup-wrap .lineup-box a::before {
    top: 10px;
    right: -10px;
    border-radius: 10px;
  }
  
  .lineup-wrap .lineup-box .image {
    border-radius: 10px 10px 0 0;
  }

  .lineup-wrap .lineup-box .image img {
  }

  .lineup-main-heading::before {
    top: -27px;
    left: 59px;
    width: 68px;
    height: 75px;
  }
  
  .lineup-main-heading::after {
    top: -9px;
    right: 69px;
    width: 62px;
    height: 62px;
  }
}

.lineup-heading {
  display: block;
  color: #1B498F;
  font-size: calc(30 / 750 * 100vw);
  line-height: 2.6em
}

.lineup-price-wrap {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-end;
  padding: 2vw 1vw;
  height: 21.6vw;
  background-color: #fff;
  border-radius: 0 0 1.333vw 1.333vw;
}

.lineup-price-wrap p:nth-child(2) {
  margin-left: .5em
}

.lineup-price-wrap .komikomi {
  position: absolute;
  top: 1.333vw;
  left: 1.333vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FDEF50;
  width: 13.333vw;
  height: 13.333vw;
  font-size: 2.667vw;
  font-weight: 900;
  text-align: center;
  border-radius: 50%;
}

@media screen and (min-width: 980px) {
  .lineup-heading {
    font-size: 2rem;
  }

  .lineup-price-wrap_top {
    padding: 15px 20px !important;
  }

  .lineup-price-wrap {
    padding: 15px 0;
    height: 100px;
    border-radius: 0 0 10px 10px;
  }

  .lineup-price-wrap .komikomi {
    top: 5px;
    left: 15px;
    width: 90px;
    height: 90px;
    font-size: 16px;
  }
}

@media screen and (max-width: 979px) {
  .lineup-price-wrap .komikomi img {
    width: 14.6vw;
    height: auto
  }
  .lineup-price-wrap .text-num01 {
    font-size: calc(60 / 750 * 100vw);
  }
  .lineup-price-wrap .text-num02 {
    font-size: calc(74 / 750 * 100vw);
  }
  .lineup-price-wrap .text-num03 {
    font-size: calc(28 / 750 * 100vw);
  }
  .lineup-price-wrap .text-num04 {
    font-size: calc(20 / 750 * 100vw);
  }
  .lineup-price-wrap .text-zei {
    font-size: calc(28 / 750 * 100vw);
  }
}

.lineup-shadow {
  text-shadow: #fff 1px 1px 10px, #fff -1px 1px 10px, #fff 1px -1px 10px, #fff -1px -1px 10px
}

.gallery-side .full {
  position: relative;
  margin-bottom: 6vw;
  width: 100%;
  text-align: center
}

.gallery-side .thumb img {
  cursor: pointer;
  transition: all 0.3s
}

.gallery-side .thumb img:hover {
  opacity: 0.6
}

@media screen and (min-width: 980px) {
  .gallery-side {
    display: flex;
    align-items: flex-start
  }

  .gallery-side .full {
    margin-right: 15px;
    margin-bottom: 0;
    width: 240px
  }

  .gallery-side .thumb {
    width: calc(100% - 240px - 15px)
  }
}

.gallery-side .thumb ul {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2vw
}

.gallery-side .thumb ul li {
  margin-left: 2vw;
  margin-bottom: 2vw;
  width: calc(25% - 2vw);
  transition: all 0.3s ease
}

@media screen and (min-width: 980px) {
  .gallery-side .thumb ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .gallery-side .thumb ul li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.seko-voice-wrap .image {
  margin-bottom: 6.66666vw
}

@media screen and (min-width: 980px) {
  .seko-voice-wrap {
    display: flex
  }

  .seko-voice-wrap .image {
    padding-right: 1.5em;
    margin-bottom: 0;
    flex-grow: 1
  }

  .seko-voice-wrap .content {
    flex-grow: 2
  }
}

.seko-tantou-box {
  padding: 1.5em 1em;
  background-color: #f9f7f3
}

.stb-sp {
  width: 100%;
}

.stb-sp .stb-sp-img {
  float: right;
  width: 40%;
  padding-left: 10px;
}

.stb-sp .stb-sp-img img {
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
}

.stb-sp .stb-sp-img h5 {
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  color: #c1272d;
  text-align: center;
}

.stb-sp p {}

.stb-sp .clear {
  clear: both;
}



.seko-tantou-heading {
  text-align: center
}
.seko-tantou-box .flex-wrap {
  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;
  position: relative;
  padding-top: 5vw;
}
.seko-tantou-box .img {
  width: 40%;
  order: 2;
}
.seko-tantou-box .img img{
  width: 100%;
  height: auto;
}
.seko-tantou-box .txt {
  width: 58%;
  font-size: 3vw;
}
.seko-tantou-box .txt h2 {
  width: 58%;
  font-size: 4vw;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  position: absolute;
}
.seko-tantou-box .img p{
  font-size: 3vw;
  font-weight: 700;
  color: #c1272d;
  text-align: center;
  margin-top: 1vw;
}
@media screen and (min-width: 980px) {

  .seko-tantou-box {
    padding: 25px;
  }

  .seko-tantou-box .flex-wrap {
    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;
  }

  .seko-tantou-box .flex-wrap .img {
    width: 30%;

  }

  .seko-tantou-box .flex-wrap .img img {
    max-width: 100%;
    height: auto;
  }

  .seko-tantou-box .flex-wrap .img h5 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    color: #c1272d;
    text-align: center;
  }

  .seko-tantou-box .flex-wrap .txt {
    width: 67%;

  }
  .seko-tantou-box .flex-wrap .txt h4{
    position: static;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(-50%, -50%);
    font-size: 18px;
    width: 100%;
  }

  .stb-sp {
    display: none;
  }

  .seko-tantou-heading {
    padding-bottom: .5em;
    border-bottom: 1px solid #c1272d;
    text-align: left
  }
  .seko-tantou-box .img p{
    font-size: 1.8rem;
  }
  
}

.seko-point-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6.66666vw
}

.seko-point-wrap li {
  margin-left: 6.66666vw;
  margin-bottom: 5.33333vw;
  width: calc(50% - 6.66666vw)
}

@media screen and (min-width: 980px) {
  .seko-point-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .seko-point-wrap li {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.table-seko-data dt {
  padding: .5em .7em;
  background-color: #c1272d;
  color: #fff;
  width: 100%;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  text-align: left
}

.table-seko-data dd {
  padding: .5em .7em;
  background-color: #f9f7f3;
  width: 100%;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .table-seko-data {
    display: flex;
    flex-wrap: wrap
  }

  .table-seko-data dt {
    padding: .7em;
    width: 30%;
    border-bottom: 2px solid #fff;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center
  }

  .table-seko-data dd {
    padding: .7em;
    width: 70%;
    border-bottom: 2px solid #fff;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.seko-detail-image-wrap .before {
  margin: 0 auto;
  margin-bottom: 8.66666vw;
  width: 46vw;
  text-align: center
}

.seko-detail-image-wrap .before .label {
  display: inline-block;
  padding: .3em 1em;
  background-color: #036eb8;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  text-align: center
}

.seko-detail-image-wrap .after {
  margin: 0 auto;
  width: 100%;
  text-align: center
}

.seko-detail-image-wrap .after .label {
  display: inline-block;
  padding: .3em 1em;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  text-align: center
}

@media screen and (min-width: 980px) {
  .seko-detail-image-wrap {
    display: flex
  }

  .seko-detail-image-wrap .before {
    margin-right: 50px;
    margin-bottom: 0;
    width: 270px;
    text-align: left
  }

  .seko-detail-image-wrap .before .label {
    font-size: 16px;
    font-size: 1.6rem
  }

  .seko-detail-image-wrap .after {
    width: calc(100% - 270px - 50px);
    text-align: left
  }

  .seko-detail-image-wrap .after .label {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.seko-tax-box {
  margin: 0 0 3.3vw 2.2vw;
  width: calc(50% - 2.2vw);
  border: 1px solid #c9c9c9;
  background-color: #fff
}

.seko-tax-box>.image {
  padding: 1.4vw 1.4vw 0 1.4vw
}

.seko-tax-wrap>.image {
  margin: 0 auto;
  margin-bottom: 6vw;
  width: 60vw
}

@media screen and (min-width: 980px) {
  .seko-tax-wrap {
    display: flex;
    align-items: flex-start
  }

  .seko-tax-box>.image {
    padding: 2px 2px 0 2px
  }

  .seko-tax-wrap>.image {
    margin-right: 15px;
    margin-bottom: 0;
    width: 200px
  }

  .seko-tax-wrap>.content {
    width: calc(100% - 200px - 15px)
  }
}

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

.seko-post-wrap a {
  margin-left: 2.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 2.6vw);
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2)
}
.seko-post-wrap .box-data h3{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (min-width: 980px) {
  .seko-post-wrap {
    margin-left: -20px
  }

  .seko-post-wrap a {
    margin-left: 20px;
    margin-bottom: 35px;
    width: calc(33.33333% - 20px)
  }
  
}

.icon-box {
  position: relative
}

.icon-box .new {
  position: absolute;
  top: 0;
  left: 0;
  padding: .1em .5em;
  background-color: #c1272d;
  color: #fff
}

.box-data {
  padding: .7em .7em
}

.box-data h4 {
  height: calc(101 / 750 * 100vw);
}

.seko_cat-wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 3.33333vw 0 0 -2.6vw
}

.seko_cat-wrap a {
  margin-left: 2.6vw;
  margin: 0 0 4.6vw 2.6vw;
  width: calc(33.33333% - 2.6vw);
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2)
}

.seko_cat-wrap a .image {
  padding: 1.46666vw 1.46666vw 0 1.46666vw
}

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

  .box-data h4 {
    height: 3.92rem;
  }

  .seko_cat-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 30px 0 0 -15px
  }

  .seko_cat-wrap a {
    margin: 0 0 35px 15px;
    width: calc(20% - 15px)
  }

  .seko_cat-wrap a .image {
    padding: 5px 5px 0 5px
  }
}

.seko-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.2vw
}

.seko-wrap a {
  margin: 0 0 3.3vw 2.2vw;
  width: calc(50% - 2.2vw);
  border: 1px solid #c9c9c9;
  background-color: #fff
}

.seko-wrap a .image {
  padding: 1.4vw 1.4vw 0 1.4vw
}

@media screen and (min-width: 980px) {
  .seko-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px
  }

  .seko-wrap a {
    margin: 0 0 20px 10px;
    width: calc(25% - 10px)
  }

  .seko-wrap a .image {
    padding: 2px 2px 0 2px
  }
}

.seko-heading-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 9.3vw
}

.seko-heading-wrap .icon {
  margin-right: .5em
}

.img-sekoicon {
  width: 6.4vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .seko-heading-wrap {
    height: 45px
  }

  .img-sekoicon {
    width: 26px
  }
}

#category-menu .seko-heading {
  margin-left: .3em
}

@media screen and (min-width: 980px) {
  #category-menu .seko-heading {
    font-size: 15px;
    font-size: 1.5rem
  }
}

.voice {
  padding: 7.3vw 6.6vw;
  background-color: #f9f7f3
}

.voice .image {
  margin-bottom: 6.6vw
}

.top_voice {
  position: relative;
  background-image: url(../img/common/balloon2.png);
  background-position: center bottom
}

.top_voice .balloon1 {
  position: absolute;
  left: 0;
  z-index: -1;
  top: 30%
}

.top_voice .balloon2 {
  position: absolute;
  right: 0;
  z-index: -1;
  top: 16%
}

.iz999 {
  z-index: 999
}

@media screen and (max-width: 759px) {
  .top_voice {
    position: relative;
    background-image: url(../img/common/balloon2_sp.png);
    background-size: 100%;
    background-position: center bottom
  }

  .top_voice .balloon1 {
    width: 50%;
    top: 50%
  }

  .top_voice .balloon2 {
    width: 50%;
    top: 30%
  }

  .top_voice .balloon1 img,
  .top_voice .balloon2 img {
    width: 100%
  }
}

@media screen and (min-width: 980px) {
  .voice {
    padding: 25px 20px;
    background-color: #f9f7f3;
    display: flex
  }

  .voice .image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 180px
  }

  .voice .content {
    width: calc(100% - 25px)
  }
}

.voice-data {
  display: flex;
  align-items: center;
  width: 100%
}

.voice-data dt {
  padding: .7em 0;
  width: 6em;
  background-color: #c1272d;
  color: #fff;
  font-weight: 700;
  text-align: center
}

.voice-data dd {
  padding: .7em 1em;
  width: calc(100% - 6em);
  background-color: #fff;
  font-weight: 700
}

.voice-tantou-box {
  padding: 1.5em 1em;
  background-color: #fff
}

.voice-tantou-heading {
  padding-bottom: .5em;
  border-bottom: 1px solid #c1272d
}

.voice-other-image a {
  margin-bottom: 4.6vw
}

@media screen and (min-width: 980px) {
  .voice-other-image {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .voice-other-image a {
    margin-left: 15px;
    margin-bottom: 20px;
    width: calc(50% - 15px)
  }
}

.post-voice {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6.6vw
}

.post-voice .post {
  margin-left: 6.6vw;
  margin-bottom: 8vw;
  width: calc(50% - 6.6vw)
}

@media screen and (min-width: 980px) {
  .post-voice {
    margin-left: -15px
  }

  .post-voice .post {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.voice-box {
  margin-top: 1.86666vh;
  padding: .8em 0;
  border: 1px dotted #399cde
}

.voice-box p {
  font-size: calc(18 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .voice-box {
    margin-top: 20px
  }

  .voice-box p {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.voive-outer {
  margin-top: 3.6vw
}

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

.voice-wrap a {
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  padding: 3.3vw;
  width: calc(50% - 2.6vw);
  border: 1px solid #c9c9c9;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .3);
  background-color: #fff
}

@media screen and (min-width: 980px) {
  .voive-outer {
    margin-top: 30px
  }

  .voice-wrap {
    flex-wrap: nowrap;
    margin-left: -20px
  }

  .voice-wrap a {
    margin-left: 20px;
    margin-bottom: 0;
    padding: 20px;
    width: calc(25% - 20px)
  }
}

.staff-box {
  padding: 4.6vw 2.6vw;
  background-color: #f9f7f3
}

@media screen and (min-width: 980px) {
  .staff-box {
    padding: 25px 20px;
    background-color: #f9f7f3
  }
}

.staff-wrap .image {
  margin-bottom: 4.6vw
}

.staff-wrap .image img {
  max-width: 60vw
}

@media screen and (min-width: 980px) {
  .staff-wrap {
    display: flex;
    align-items: stretch
  }

  .staff-wrap .image {
    margin-right: 20px;
    margin-bottom: 0;
    width: 200px
  }

  .staff-wrap .image img {
    max-width: 100%
  }

  .staff-wrap .content {
    width: calc(100% - 200px - 20px)
  }
}

.table-staff {
  margin: 0 auto;
  width: 100%
}

.table-staff tr:last-child {
  border-bottom: none
}

.table-staff tr {
  border-bottom: 5px solid #f9f7f3
}

.table-staff th {
  padding: .5em;
  width: 28%;
  background-color: #c1272d;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: left;
  line-height: 1.75em;
  vertical-align: top
}

.table-staff td {
  padding: .5em 1em;
  width: calc(100% - 28%);
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7em
}

@media screen and (max-width: 979px) {
  .table-staff tr {
    border-bottom: 0.6vw solid #f9f7f3
  }

  .table-staff th {
    display: block;
    padding: .5em;
    width: 100%;
    font-size: calc(28 / 750 * 100vw)
  }

  .table-staff td {
    display: block;
    padding: .5em;
    width: 100%;
    font-size: calc(28 / 750 * 100vw)
  }
}

.faq-post dt {
  position: relative;
  padding: 1em 1.5em 1em 3em;
  border-bottom: 1px solid #eee;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

.faq-post dd {
  display: none;
  position: relative;
  padding: 1.3em .5em 1.5em 3em;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

@media screen and (min-width: 980px) {
  .faq-post dt {
    font-size: 16px;
    font-size: 1.6rem
  }

  .faq-post dd {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.faq-post dt:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3.2vw;
  display: inline-block;
  background-image: url(../img/faq/ques.png);
  background-size: contain;
  width: 6.4vw;
  height: 6.4vw
}

.faq-post dd:before {
  content: '';
  position: absolute;
  top: 1em;
  left: 0;
  display: inline-block;
  background-image: url(../img/faq/answer.png);
  background-size: contain;
  width: 6.4vw;
  height: 6.4vw
}

@media screen and (min-width: 980px) {
  .faq-post dt:before {
    margin-top: -16px;
    width: 32px;
    height: 32px
  }

  .faq-post dd:before {
    width: 32px;
    height: 32px
  }
}

.faq-post dt:after {
  position: absolute;
  top: 1em;
  right: 0;
  content: '\f078';
  color: #8b8888;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.faq-post dt.ac:after {
  position: absolute;
  top: 1em;
  right: 0;
  content: '\f077';
  color: #8b8888;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.faq-wrap>div {
  margin-bottom: 6vw
}

@media screen and (min-width: 980px) {
  .faq-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -50px
  }

  .faq-wrap>div {
    margin-left: 50px;
    margin-bottom: 40px;
    width: calc(50% - 50px)
  }
}

.faq-cat-name {
  display: block;
  padding: .6em .8em;
  background-color: #399cde;
  color: #fff;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .faq-cat-name {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.faq-list li>a {
  position: relative;
  display: block;
  padding: .3em 1.4em .3em .7em
}

.faq-list li>a .title {
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (min-width: 980px) {
  .faq-list li>a .title {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.faq-list li>a:after {
  position: absolute;
  top: 50%;
  right: 0;
  content: '\f054';
  margin-top: -.8em;
  color: #868686;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.btn-faq {
  display: block;
  margin-top: 1em;
  padding-top: .3em;
  color: #197ec1;
  font-size: calc(24 / 750 * 100vw);
  text-align: right
}

@media screen and (min-width: 980px) {
  .btn-faq {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.btn-faq:after {
  content: '\f0da';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.flow-step {
  position: relative;
  display: flex;
  justify-content: space-between
}

.flow-step .border {
  position: absolute;
  top: 2.9vw;
  left: 0;
  width: 100%;
  height: 0.5vw;
  background-color: #c9caca;
  z-index: 1
}

.flow-step a {
  position: relative;
  width: 6vw;
  z-index: 2
}

@media screen and (min-width: 980px) {
  .flow-step {
    display: flex
  }

  .flow-step a {
    width: 45px
  }

  .flow-step .border {
    top: 20px;
    height: 4px
  }
}

.flow-point-box {
  margin-bottom: 5.33333vw;
  padding: 2.6vw;
  border-radius: .5em;
  border: 1px solid #c9c9ca
}

.flow-point-box p {
  font-size: calc(27 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (min-width: 980px) {
  .flow-point-box {
    margin-bottom: 40px;
    padding: 15px 20px 20px 20px
  }

  .flow-point-box p {
    font-size: 16px;
    font-size: 1.6rem
  }

  .flow-point-box .content {
    padding-left: 80px
  }
}

.flow-step-heading {
  position: relative;
  margin-bottom: 3.33333vw;
  padding-bottom: 1.3vw;
  border-bottom: 0.6vw solid #c9c9ca
}

.flow-step-heading .label {
  position: absolute;
  top: 0;
  left: -.5em
}

.flow-step-heading .heading {
  padding-top: 2.6vw;
  padding-left: 10.6vw;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 980px) {
  .flow-step-heading {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 5px solid #c9c9ca
  }

  .flow-step-heading .heading {
    padding-top: 20px;
    padding-left: 80px;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: 700
  }
}

@media screen and (max-width: 979px) {
  .flow-step-heading .label img {
    width: 9.3vw;
    height: auto
  }
}

.club-heading {
  border-bottom: 3px solid #f3141d
}

.club-heading .image {
  position: relative;
  margin-bottom: 3.3vw
}

.club-heading .title {
  padding-bottom: .5em;
  text-align: center
}

@media screen and (min-width: 980px) {
  .club-heading {
    display: flex;
    align-items: center
  }

  .club-heading .image {
    top: 2px;
    margin-right: .5em;
    margin-bottom: 0
  }

  .club-heading .title {
    padding-bottom: 0;
    text-align: left
  }
}

@media screen and (max-width: 979px) {
  .img-clubicon {
    width: 14.7vw;
    height: auto
  }
}

.club-after-wrap .content {
  margin-bottom: 2.6vw
}

@media screen and (min-width: 980px) {
  .club-after-wrap {
    display: flex
  }

  .club-after-wrap .content {
    margin-right: 15px;
    margin-bottom: 0;
    width: 430px
  }

  .club-after-wrap .image {
    width: calc(100% - 430px - 15px)
  }
}

@media screen and (max-width: 979px) {
  .club-after-wrap .image img {
    max-width: 60vw;
    height: auto
  }
}

.club-event-wrap .image {
  margin-bottom: 3vw
}

.club-event-wrap .content {
  padding: .7em 1em;
  border-radius: .5em;
  border: 2px solid #818181
}

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

  .club-event-wrap .image {
    margin-right: 15px;
    margin-bottom: 0;
    width: 430px
  }

  .club-event-wrap .content {
    width: calc(100% - 430px - 15px)
  }
}

.good-box {
  border: 3px solid #f3141d;
  padding: 1em 1.5em
}

.good-inner-box .image {
  margin-bottom: 2.6vw
}

@media screen and (min-width: 980px) {
  .good-inner-box {
    display: flex;
    align-items: center
  }

  .good-inner-box .image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 100px
  }

  .good-inner-box .content {
    width: calc(100% - 100px - 25px)
  }
}

@media screen and (max-width: 979px) {
  .good-inner-box .image img {
    max-width: 14.6vw;
    height: auto
  }
}

.club-voice-list li {
  text-indent: -1.5em;
  padding-left: 1.5em
}

.club-voice-list li:before {
  margin-right: .5em;
  content: '\f00c';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.club-menu-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4vw
}

.club-menu-wrap>div {
  margin-left: 4vw;
  margin-bottom: 4vw;
  padding: .5em;
  width: calc(50% - 4vw);
  border: 1px solid #c1272d
}

@media screen and (min-width: 980px) {
  .club-menu-wrap {
    margin-left: -15px
  }

  .club-menu-wrap>div {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.club-cat {
  display: block;
  padding: .3em;
  width: 100%
}

.club-cat-blue {
  background-color: #004ca1
}

.club-cat-aqua {
  background-color: #399cde
}

.club-menu-heading {
  display: flex;
  height: 18vw
}

.club-menu-heading .image {
  margin-right: .3em
}

@media screen and (min-width: 980px) {
  .club-menu-heading {
    height: 60px
  }
}

.club-tel-wrap .tel {
  margin-bottom: 2.6vw
}

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

  .club-tel-wrap .fuki {
    margin-right: 20px;
    order: 1
  }

  .club-tel-wrap .tel {
    margin-bottom: 0;
    order: 2
  }
}

@media screen and (max-width: 979px) {
  .club-tel-wrap .fuki img {
    max-width: 30vw;
    height: auto
  }
}

.club-catalog-wrap a {
  margin-bottom: 3.3vw
}

@media screen and (min-width: 980px) {
  .club-catalog-wrap {
    display: flex;
    margin-left: -15px
  }

  .club-catalog-wrap a {
    margin-left: 15px;
    margin-bottom: 0;
    width: calc(50% - 15px)
  }
}

@media screen and (max-width: 979px) {
  .img-clubicon {
    width: 14.7vw;
    height: auto
  }
}

.takumi-wrap {
  padding: 3.3vw;
  border: 1px solid #b4b4b4
}

.takumi-wrap .image {
  margin-bottom: 2.6vw
}

@media screen and (min-width: 980px) {
  .takumi-wrap {
    display: flex;
    padding: 25px
  }

  .takumi-wrap>.image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 180px
  }

  .takumi-wrap>.content {
    width: calc(100% - 180px - 25px)
  }
}

.takumi-border {
  padding-top: 1em;
  border-top: 1px solid #717171
}

@media screen and (max-width: 979px) {
  .takumi-wrap>.image img {
    width: 60vw;
    height: auto
  }
}

.takumi-name {
  display: block;
  padding: .5em 0;
  background-color: #3e2723;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .takumi-name {
    font-size: 16px;
    font-size: 1.6rem
  }
}

@media screen and (max-width: 979px) {
  .takumi-name span {
    font-size: calc(16 / 750 * 100vw)
  }
}

@media screen and (min-width: 960px) {
  .takumi_f_box1 {
    display: flex;
    flex-direction: row;
  }

  .takumi_f_box2 {
    display: flex;
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 959px) {
  .takumi_f_box1 {
    display: block;
  }

  .takumi_f_box2 {
    display: block;
  }

  .takumi_f_box1 img {
    width: 100%;
  }

  .takumi_f_box2 img {
    width: 100%;
  }
}

.recruit-heading:before {
  margin-right: .5em;
  content: '';
  display: inline-block;
  background-image: url(../img/recruit/mark@2x.png);
  background-size: contain;
  width: 6.6vw;
  height: 4.2vw
}

@media screen and (min-width: 980px) {
  .recruit-heading:before {
    width: 23px;
    height: 15px
  }
}

.recruit-menu {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4.6vw
}

.recruit-menu a {
  margin-left: 4.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 4.6vw)
}

@media screen and (min-width: 980px) {
  .recruit-menu {
    margin-left: -18px
  }

  .recruit-menu a {
    margin-left: 18px;
    margin-bottom: 0;
    width: calc(25% - 18px)
  }
}

.recruit-menu .title {
  display: block;
  padding: .5em 0;
  background-color: #5c94c7
}

.recruit-shokushu {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4.6vw
}

.recruit-shokushu li {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 4.6vw;
  margin-bottom: 4.6vw;
  padding: 1em 0;
  width: calc(50% - 4.6vw);
  background-color: #6e99d0;
  color: #fff;
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .recruit-shokushu {
    margin-left: -15px
  }

  .recruit-shokushu li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(33.33333% - 15px)
  }
}

.recruit-profile-outer {
  position: relative
}

.recruit-profile {
  display: flex;
  align-items: center;
  margin-bottom: 2.6vw
}

.recruit-profile .image {
  margin-right: 2.2vw;
  width: 44.6vw
}

.recruit-profile .content {
  width: calc(100% - 44.6vw - 2.2vw)
}

@media screen and (min-width: 980px) {
  .recruit-profile {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0
  }

  .recruit-profile .image {
    margin-right: 15px;
    width: 210px
  }

  .recruit-profile .content {
    width: calc(100% - 210px - 15px)
  }

  .recruit-profile-text {
    position: absolute;
    right: 0;
    top: 100px;
    width: calc(100% - 210px - 15px)
  }
}

.recruit-taidan::after {
  content: '';
  clear: both
}

.recruit-taidan figure {
  width: 35vw
}

.recruit-taidan-outer li:nth-child(odd) figure {
  padding-left: 1em;
  float: right
}

.recruit-taidan-outer li:nth-child(even) figure {
  padding-right: 1em;
  float: left
}

@media screen and (min-width: 980px) {
  .recruit-taidan {
    display: flex
  }

  .recruit-taidan .image {
    float: none;
    width: 300px;
    text-align: center
  }

  .recruit-taidan .content {
    width: calc(100% - 300px)
  }

  .recruit-taidan-outer li:nth-child(odd) .image {
    padding: 0;
    order: 2
  }

  .recruit-taidan-outer li:nth-child(odd) .content {
    padding-right: 1em;
    order: 1
  }

  .recruit-taidan-outer li:nth-child(even) .image {
    padding: 0;
    order: 1
  }

  .recruit-taidan-outer li:nth-child(even) .content {
    padding-left: 1em;
    order: 2
  }
}

@media screen and (max-width: 979px) {
  .recruit-taidan .image img {
    width: 35vw
  }
}

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

.table2 tr {
  border-top: 1px solid #6e99d0
}

.table2 tr:last-child {
  border-bottom: 1px solid #6e99d0
}

.table2 th {
  padding: 1em 1em;
  width: 140px;
  background-color: #dae1ea;
  border-right: 1px solid #6e99d0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle
}

.table2 td {
  padding: 1em 1.5em;
  width: calc(100% - 140px);
  font-size: 14px;
  font-size: 1.4rem
}

@media screen and (max-width: 979px) {
  .table2 {
    border: 1px solid #6e99d0
  }

  .table2 th {
    display: block;
    padding: 1em .7em;
    width: 100%;
    border-right: none;
    font-size: calc(24 / 750 * 100vw)
  }

  .table2 td {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(24 / 750 * 100vw)
  }
}

.contact-intro-flex .image {
  margin: 0 auto;
  margin-bottom: 6vw;
  width: 28vw
}

@media screen and (min-width: 980px) {
  .contact-intro-flex {
    margin: 0 auto;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 760px
  }

  .contact-intro-flex .image {
    margin-bottom: 0;
    width: 255px
  }

  .contact-intro-flex .content {
    width: calc(100% - 255px)
  }
}

.heading-form {
  display: block;
  padding: .7em 0;
  width: 100%;
  background-color: #333333;
  color: #fff
}

.contact-call-box {
  display: flex;
  align-items: center;
  padding: 25px 20px;
  border: 1px solid #333
}

.contact-call-box .label {
  margin-right: 2vw;
  padding: 2.6vw 0;
  width: 25.3vw;
  background-color: #004ca1;
  font-size: calc(26 / 750 * 100vw)
}

.contact-call-box .label span {
  font-size: calc(36 / 750 * 100vw)
}

.contact-call-box .content {
  width: calc(100% - 25.3vw - 2vw)
}

@media screen and (min-width: 980px) {
  .contact-call-box {
    margin: 0 auto;
    padding: 25px 20px;
    width: 100%;
    max-width: 670px
  }

  .contact-call-box .label {
    margin-right: 20px;
    padding: 15px 0;
    width: 190px;
    font-size: 26px;
    font-size: 2.6rem
  }

  .contact-call-box .label span {
    font-size: 36px;
    font-size: 3.6rem
  }

  .contact-call-box .content {
    width: calc(100% - 190px - 20px)
  }
}

.contact-number {
  font-size: calc(48 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .contact-number {
    font-size: 48px;
    font-size: 4.8rem
  }
}

.icon-phone:before {
  margin-right: .3em;
  content: '\f095';
  color: #333;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.raiten-point-flex {
  margin: 0 auto;
  padding: 0 5.3vw;
  display: flex;
  justify-content: space-between
}

.raiten-point-flex li {
  width: 22.6vw
}

@media screen and (min-width: 980px) {
  .raiten-point-flex {
    padding: 0;
    width: 560px
  }

  .raiten-point-flex li {
    width: 170px
  }
}

.raiten-point {
  position: relative;
  display: inline-block;
  padding: 1em .3em;
  width: 100%;
  border-radius: .5em;
  background-color: #eeeeee
}

.raiten-point:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -2vw;
  border: 2vw solid transparent;
  border-top: 2.6vw solid #eeeeee
}

@media screen and (min-width: 980px) {
  .raiten-point:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -7px;
    border: 7px solid transparent;
    border-top: 15px solid #eeeeee
  }
}

.raiten-intro-flex .image {
  margin-top: 4.6vw
}

@media screen and (min-width: 980px) {
  .raiten-intro-flex {
    display: flex;
    align-items: center
  }

  .raiten-intro-flex .image {
    margin-bottom: 0;
    width: 300px;
    order: 1
  }

  .raiten-intro-flex .image img {
    max-width: 80%
  }

  .raiten-intro-flex .content {
    width: calc(100% - 300px);
    order: 2
  }
}

.flow-box {
  padding: 3.3vw 4vw;
  background-color: #fff5f5
}

@media screen and (min-width: 980px) {
  .flow-box {
    padding: 25px 35px
  }
}

.raiten-flow {
  margin: 0 auto;
  width: 61.3vw
}

.raiten-flow>div {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%
}

@media screen and (max-width: 979px) {
  .raiten-flow>div:after {
    content: '';
    background: url(../img/raiten/arrow-down.png);
    background-repeat: no-repeat;
    position: absolute;
    top: 20.6vw;
    left: 7.8vw;
    width: 6.6vw;
    height: 6.6vw;
    background-size: contain;
    vertical-align: middle;
    z-index: 2
  }
}

.raiten-flow>div:last-child {
  margin-right: 0
}

.raiten-flow>div:last-child:after {
  background: none
}

@media screen and (min-width: 980px) {
  .raiten-flow {
    display: flex;
    justify-content: center;
    width: 895px
  }

  .raiten-flow>div {
    display: inline-block;
    position: relative;
    margin-right: 15px;
    margin-bottom: 0;
    width: 160px
  }

  .raiten-flow>div:after {
    content: '';
    background: url(../img/raiten/arrow@2x.png);
    background-repeat: no-repeat;
    position: absolute;
    top: 55px;
    right: -35px;
    width: 50px;
    height: 50px;
    background-size: contain;
    vertical-align: middle;
    z-index: 2
  }
}

.raiten-flow-inner {
  display: flex;
  margin-bottom: 2.6vw
}

.raiten-flow-inner .image {
  margin-right: 4vw;
  width: 22.6vw
}

.raiten-flow-inner p {
  width: calc(100% - 22.6vw - 4vw)
}

@media screen and (min-width: 980px) {
  .raiten-flow-inner {
    display: block;
    margin-bottom: 0
  }

  .raiten-flow-inner .image {
    margin-right: 0;
    width: 160px
  }

  .raiten-flow-inner p {
    width: 100%;
    text-align: center
  }
}

.book-mv-wrap {
  margin-left: -3.3vw;
  width: calc(100% + 6.6vw)
}

@media screen and (min-width: 980px) {
  .book-mv-wrap {
    margin-left: 0;
    width: 100%
  }
}

.sitemap-flex {
  margin: 0 auto;
  width: 100%
}

.sitemap-flex>div {
  margin-bottom: 35px
}

@media screen and (min-width: 980px) {
  .sitemap-flex {
    display: flex;
    flex-wrap: wrap;
    margin-left: -25px
  }

  .sitemap-flex>div {
    margin-left: 25px;
    width: calc(50% - 25px)
  }
}

.page-sitemap-bar {
  margin-bottom: 4vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  text-align: center;
  font-weight: 700;
  line-height: 2.6em
}

@media screen and (min-width: 980px) {
  .page-sitemap-bar {
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.page-sitemap {
  margin: 0 auto;
  width: calc(100% - 40px)
}

.page-sitemap li {
  font-size: calc(28 / 750 * 100vw);
  line-height: 2.8em
}

@media screen and (min-width: 980px) {
  .page-sitemap li {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.page-sitemap li a {
  position: relative;
  display: block;
  width: 100%
}

.page-sitemap li a:hover {
  opacity: 0.6
}

.page-sitemap li a:after {
  position: absolute;
  top: 0;
  right: 0;
  content: '\f0da';
  color: #000;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

ol.list-count {
  margin: 0 auto;
  width: 95%
}

ol.list-count li {
  margin-bottom: 1.5em;
  counter-increment: cnt;
  text-indent: -2em;
  padding-left: 2em;
  line-height: 1.8em
}

ol.list-count li:before {
  display: marker;
  content: "( "counter(cnt) " ) "
}

.cta {
  border-top: 2px solid #f3141d;
  border-bottom: 2px solid #f3141d;
}

@media screen and (max-width: 979px) {
  .cta {
    border: none;
  }
}

.cta-outer {
  position: relative
}

.cta-outer>.image {
  position: absolute;
  right: 20px;
  bottom: 0
}

.cta-outer>.content {
  margin: 0 !important;
  padding: 25px 0 20px 0;
  justify-content: flex-start !important;
  margin-right: auto !important;
  width: 740px !important;
  max-width: 740px !important
}

.cta-outer>.content .sns-link {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: flex-end
}

.sns-link {
  display: flex;
  justify-content: flex-end
}

.sns-link a {
  margin-right: 5px
}

.sns-link img {
  width: 9.3vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .sns-link img {
    width: 29px
  }
}

.fs10_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs12_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs12_24 {
  font-size: calc(24 / 750 * 100vw)
}

.fs13_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs14_15 {
  font-size: calc(15 / 750 * 100vw)
}

.fs14_22 {
  font-size: calc(22 / 750 * 100vw)
}

.fs14_24 {
  font-size: calc(24 / 750 * 100vw)
}

.fs14_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15_30 {
  font-size: calc(30 / 750 * 100vw)
}

.fs16_16 {
  font-size: calc(16 / 750 * 100vw)
}

.fs16_32 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18_26 {
  font-size: calc(26 / 750 * 100vw)
}

.fs18_30 {
  font-size: calc(30 / 750 * 100vw)
}

.fs18_32 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs20_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs20_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs20_40 {
  font-size: calc(40 / 750 * 100vw)
}

.fs22_22 {
  font-size: calc(22 / 750 * 100vw)
}

.fs22_45 {
  font-size: calc(22 / 750 * 100vw)
}

.fs24_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs24_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs30_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs36_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs36_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs36_72 {
  font-size: calc(72 / 750 * 100vw)
}

.fs45_80 {
  font-size: calc(80 / 750 * 100vw)
}

.fs80_120 {
  font-size: calc(120 / 750 * 100vw)
}

.fs80_160 {
  font-size: calc(160 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .fs10_20 {
    font-size: 10px;
    font-size: 1.0rem
  }

  .fs12_20 {
    font-size: 12px;
    font-size: 1.2rem
  }

  .fs12_24 {
    font-size: 12px;
    font-size: 1.2rem
  }

  .fs13_28 {
    font-size: 13px;
    font-size: 1.3rem
  }

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

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

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

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

  .fs15_28 {
    font-size: 15px;
    font-size: 1.5rem
  }

  .fs15_30 {
    font-size: 15px;
    font-size: 1.5rem
  }

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

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

  .fs18_26 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_30 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_32 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_36 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs22_22 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_20 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_36 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_40 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs22_45 {
    font-size: 22px;
    font-size: 2.2rem
  }

  .fs24_36 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs24_48 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs30_48 {
    font-size: 30px;
    font-size: 3.0rem
  }

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

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

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

  .fs45_80 {
    font-size: 45px;
    font-size: 4.5rem
  }

  .fs55_55 {
    font-size: 55px;
    font-size: 5.5rem
  }

  .fs80_120 {
    font-size: 80px;
    font-size: 8.0rem
  }

  .fs80_160 {
    font-size: 80px;
    font-size: 8.0rem
  }
}

.fcbase {
  color: #fff
}

.fcmain {
  color: #271f1c
}

.fcred {
  color: #f3141d
}

.fcdred {
  color: #c1272d
}

.fcblue {
  color: #399cde
}

.fcgray {
  color: #bbbbbb
}

.bgbase {
  background-color: #fff
}

.bgdred {
  background-color: #c1272d
}

.bgthin {
  background-color: #f9f7f3
}

.ffmain {
  font-family: "NotoSansCJKjp", sans-serif
}

.ffeigo {
  font-family: "Akkurat", sans-serif
}

.ffnum {
  font-family: "impact", sans-serif
}

.fw4 {
  font-weight: 400
}

.fw7 {
  font-weight: 700
}

.fw9 {
  font-weight: 900
}

.fsn {
  font-style: normal
}

.fsi {
  font-style: italic
}

.lineht10 {
  line-height: 1em
}

.lineht12 {
  line-height: 1.2em
}

.lineht14 {
  line-height: 1.4em
}

.lineht18 {
  line-height: 1.8em
}

.lspg1 {
  letter-spacing: 0.1em
}

.lspg3 {
  letter-spacing: 0.13em
}

.fs12 {
  font-size: calc(24 / 750 * 100vw)
}

.fs14 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15 {
  font-size: calc(30 / 750 * 100vw)
}

.fs16 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18 {
  font-size: calc(36 / 750 * 100vw)
}

.fs24 {
  font-size: calc(48 / 750 * 100vw)
}

.fs40 {
  font-size: calc(80 / 750 * 100vw)
}

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

@media screen and (min-width: 980px) {
  .fs12 {
    font-size: 12px;
    font-size: 1.2rem
  }

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

  .fs15 {
    font-size: 15px;
    font-size: 1.5rem
  }

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

  .fs18 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs24 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs40 {
    font-size: 40px;
    font-size: 4.0rem
  }

  .fs42 {
    font-size: 42px;
    font-size: 4.2rem
  }
}

.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)
}

.ml10 {
  margin-left: 1em
}

.mr10 {
  margin-right: 1em
}


@media screen and (min-width: 980px) {
  .mt05 {
    margin-top: 5px
  }

  .mt10 {
    margin-top: 10px
  }

  .mt12 {
    margin-top: 12px
  }

  .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
  }

  .mb12 {
    margin-bottom: 12px
  }

  .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
  }

  .mb55 {
    margin-bottom: 55px
  }

  .mb60 {
    margin-bottom: 60px
  }

  .mb65 {
    margin-bottom: 65px
  }

  .mb70 {
    margin-bottom: 70px
  }

  .mb80 {
    margin-bottom: 80px
  }

  .mb90 {
    margin-bottom: 90px
  }

  .mb100 {
    margin-bottom: 100px
  }
}

.pt05 {
  padding-top: calc(8 / 750 * 100vw)
}

.pt10 {
  padding-top: calc(13 / 750 * 100vw)
}

.pt15 {
  padding-top: calc(18 / 750 * 100vw)
}

.pt20 {
  padding-top: calc(23 / 750 * 100vw)
}

.pt25 {
  padding-top: calc(28 / 750 * 100vw)
}

.pt30 {
  padding-top: calc(33 / 750 * 100vw)
}

.pt35 {
  padding-top: calc(38 / 750 * 100vw)
}

.pt40 {
  padding-top: calc(43 / 750 * 100vw)
}

.pt45 {
  padding-top: calc(48 / 750 * 100vw)
}

.pt50 {
  padding-top: calc(53 / 750 * 100vw)
}

.pt55 {
  padding-top: calc(58 / 750 * 100vw)
}

.pt60 {
  padding-top: calc(63 / 750 * 100vw)
}

.pt65 {
  padding-top: calc(68 / 750 * 100vw)
}

.pt70 {
  padding-top: calc(73 / 750 * 100vw)
}

.pt80 {
  padding-top: calc(83 / 750 * 100vw)
}

.pt90 {
  padding-top: calc(93 / 750 * 100vw)
}

.pt100 {
  padding-top: calc(103 / 750 * 100vw)
}

.pb05 {
  padding-bottom: calc(8 / 750 * 100vw)
}

.pb10 {
  padding-bottom: calc(13 / 750 * 100vw)
}

.pb15 {
  padding-bottom: calc(18 / 750 * 100vw)
}

.pb20 {
  padding-bottom: calc(23 / 750 * 100vw)
}

.pb25 {
  padding-bottom: calc(28 / 750 * 100vw)
}

.pb30 {
  padding-bottom: calc(33 / 750 * 100vw)
}

.pb35 {
  padding-bottom: calc(38 / 750 * 100vw)
}

.pb40 {
  padding-bottom: calc(43 / 750 * 100vw)
}

.pb45 {
  padding-bottom: calc(48 / 750 * 100vw)
}

.pb50 {
  padding-bottom: calc(53 / 750 * 100vw)
}

.pb55 {
  padding-bottom: calc(58 / 750 * 100vw)
}

.pb60 {
  padding-bottom: calc(63 / 750 * 100vw)
}

.pb65 {
  padding-bottom: calc(68 / 750 * 100vw)
}

.pb70 {
  padding-bottom: calc(73 / 750 * 100vw)
}

.pb80 {
  padding-bottom: calc(83 / 750 * 100vw)
}

.pb90 {
  padding-bottom: calc(93 / 750 * 100vw)
}

.pb100 {
  padding-bottom: calc(103 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .pt05 {
    padding-top: 5px
  }

  .pt10 {
    padding-top: 10px
  }

  .pt15 {
    padding-top: 15px
  }

  .pt20 {
    padding-top: 20px
  }

  .pt25 {
    padding-top: 25px
  }

  .pt30 {
    padding-top: 30px
  }

  .pt35 {
    padding-top: 35px
  }

  .pt40 {
    padding-top: 40px
  }

  .pt45 {
    padding-top: 45px
  }

  .pt50 {
    padding-top: 50px
  }

  .pt55 {
    padding-top: 55px
  }

  .pt60 {
    padding-top: 60px
  }

  .pt65 {
    padding-top: 65px
  }

  .pt70 {
    padding-top: 70px
  }

  .pt80 {
    padding-top: 80px
  }

  .pt90 {
    padding-top: 90px
  }

  .pt100 {
    padding-top: 100px
  }

  .pb05 {
    padding-bottom: 5px
  }

  .pb10 {
    padding-bottom: 10px
  }

  .pb15 {
    padding-bottom: 15px
  }

  .pb20 {
    padding-bottom: 20px
  }

  .pb25 {
    padding-bottom: 25px
  }

  .pb30 {
    padding-bottom: 30px
  }

  .pb35 {
    padding-bottom: 35px
  }

  .pb40 {
    padding-bottom: 40px
  }

  .pb45 {
    padding-bottom: 45px
  }

  .pb50 {
    padding-bottom: 50px
  }

  .pb55 {
    padding-bottom: 55px
  }

  .pb60 {
    padding-bottom: 60px
  }

  .pb65 {
    padding-bottom: 65px
  }

  .pb70 {
    padding-bottom: 70px
  }

  .pb80 {
    padding-bottom: 80px
  }

  .pb90 {
    padding-bottom: 90px
  }

  .pb100 {
    padding-bottom: 100px
  }
}

.relative {
  position: relative
}

.left {
  text-align: left
}

.right {
  text-align: right
}

.center {
  text-align: center
}

.sp-left {
  text-align: left
}

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

  .pc-br {
    display: inline
  }

  .sp-br {
    display: block
  }
}

@media screen and (min-width: 980px) {
  .pc-none {
    display: none !important
  }

  .pc-br {
    display: block
  }

  .sp-br {
    display: inline
  }

  .sp-left {
    text-align: center
  }
}

.img-maxfit {
  max-width: 100% !important;
  height: auto
}

.img-fit {
  width: 100%;
  max-width: 100%;
  height: auto
}

.img-hfit {
  width: auto;
  height: 100%;
  max-height: 100%
}

.img-sfit {
  height: auto;
  width: 100%
}

.img-space_sp {
  width: 100%;
  max-width: 100%;
  height: auto
}

@media screen and (max-width: 979px) {
  .img-fit_sp {
    width: 100%;
    max-width: 100%;
    height: auto
  }

  .img-space_sp {
    width: 80%;
    max-width: 80%;
    height: auto
  }
}

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

.obfit-seko {
  width: 100%;
  height: 32vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-seko-point {
  width: 100%;
  height: 53.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-seko-gallery {
  width: 100%;
  height: 70vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-change-gallery {
  width: 100%;
  height: 25.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-seko {
    width: 100%;
    height: 200px !important
  }

  .obfit-seko-point {
    width: 100%;
    height: 265px !important
  }

  .obfit-seko-gallery {
    width: 100%;
    height: 245px !important
  }

  .obfit-change-gallery {
    width: 100%;
    height: 115px !important
  }
}

.obfit-lineup {
  width: 100%;
  height: 51.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-lineup-main {
  width: 100%;
  height: 112vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-lineup-post {
  width: 100%;
  height: 69.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-lineup {
    width: 100%;
    height: 250px !important
  }

  .obfit-lineup-main {
    width: 100%;
    height: 420px !important
  }

  .obfit-lineup-post {
    width: 100%;
    height: 260px !important
  }
}

.obfit-event {
  width: 100%;
  height: 20vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event {
    height: 170px !important
  }
}

.obfit-event-a {
  width: 100%;
  height: 28vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event-a {
    height: 140px !important
  }
}

.obfit-event-detail {
  width: 100%;
  height: 22vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event-detail {
    height: 165px !important
  }
}

.obfit-front-voice {
  width: 100%;
  height: 39.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-voice-a {
  width: 100%;
  height: 52vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-voice-other {
  width: 100%;
  height: 68vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-front-voice {
    height: 205px !important
  }

  .obfit-voice-a {
    height: 270px !important
  }

  .obfit-voice-other {
    height: 250px !important
  }
}

.obfit-staff {
  width: 100%;
  height: 68vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-staff {
    height: 260px !important
  }
}

.obfit-info {
  width: 26.6vw;
  height: 26.6vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-info {
    width: 100px;
    height: 100px !important
  }
}

.sr_btn {
  display: inline-block;
  max-width: 90%;
  text-align: center;
  background-color: #c1272d;
  font-size: 16px;
  color: #FFF;
  text-decoration: none;
  font-weight: bold;
  padding: 2%;
  border-radius: 4px;
  position: relative;
  margin-top: 10px;
}

.sr_btn:before {
  font-family: "FontAwesome";
  position: absolute;
  left: 16px;
  top: 50%;
  margin-top: -8px;
}

@media screen and (min-width: 980px) {
  .sr_btn {
    display: inline-block;
    max-width: 300px;
    text-align: center;
    background-color: #c1272d;
    font-size: 16px;
    color: #FFF;
    text-decoration: none;
    font-weight: bold;
    padding: 8px 16px;
    border-radius: 4px;
    position: relative;
    margin-top: 20px;
  }

  .sr_btn:before {
    font-family: "FontAwesome";
    position: absolute;
    left: 16px;
    top: 50%;
    margin-top: -8px;
  }

  .sr_btn:hover {
    opacity: 0.8;
  }
}

#sookket .landing .landing-content {
  margin: 20px 0;
}

#sookket .landing .landing-content.landing02 {
  margin: 20px 0 40px;
}

#sookket .landing .landing-content.landing02 img {
  margin-bottom: 20px;
}

#sookket .landing .landing-content.landing02 .btn-wrap {
  max-width: 100%;
  width: 100%;
  margin: 0 auto 20px;
  text-align: center;
}

#sookket .landing .landing-content.landing02 .btn-wrap .btn {
  display: inline-block;
  height: auto;
  background: #b23634;
  border-radius: 5px;
  line-height: 1.2;
  padding: 15px 45px;
}

#sookket .landing .landing-content.landing02 p {
  font-weight: 700;
  font-size: 1.5rem;
}

#sookket .landing .landing-content.landing03 img {
  margin-bottom: 20px;
}

.footer-floating {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgba(241, 232, 219, 0.8);
  z-index: 9999;

}

.floating-menu {
  margin: 0 auto;
  padding: .5rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (max-width: 759px) {
  .floating-menu {
    width: 98%;
  }
}

.floating-menu li img {
  padding: .5rem;
  width: 100%;
}

.floating-menu a:hover {
  opacity: 0.6;
}

.for-sp {
  display: none;
}

@media (max-width: 768px) {
  .for-sp {
    display: block;
  }
}

#oshirase {
  border: double 5px #F00;
  width: 100%;
  background: #fff;
  max-width: 800px;
  padding: 10px;
  margin: 40px auto 40px;
  line-height: 1.6em;
  font-size: 12px;
  text-align: left;
}

.ytBox {
  text-align: center;
  padding: 35px 0 0px
}

.youtube-wrap {
  display: flex;
  justify-content: space-between;
}

.yt-item {
  width: calc(50% - 20px);
}

.yt-item:first-child {
  padding: 0 0 0 0;
}

iframe {
  border: 0;
}

.yt-item iframe {
  width: 100%;
  height: 259px;
}

.yt-company iframe {
  height: 259px;
}

.yt-title {
  position: relative;
  width: 180px;
  margin: 0 auto 10px;
  font-size: 18px;
  font-weight: 700;
}

.yt-title::before {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #000;
  transform: rotate(-45deg);
  position: absolute;
  top: 3px;
}

.yt-title::after {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #000;
  transform: rotate(45deg);
  position: absolute;
  right: 0;
  top: 3px;
}


@media (max-width: 960px) {

  .yt-item iframe,
  .yt-company iframe {
    height: 24vw;
  }
}

@media (max-width: 768px) {
  .youtube-wrap {
    /* position:relative;
        width:100%;
        padding-top:56.25%;
        margin-bottom:70px; */
    width: 100%;
  }

  .youtube-wrap iframe {
    /* position:absolute;
        top:0;
        right:0;
        width:100%;
        height:100%;*/
  }
}

.totalCount {
  margin-bottom: 1em
}

.contact-intro-flex {
  display: flex;
}

#contact .sp_only {
  display: none;
}

@media (max-width: 768px) {
  .contact-intro-flex {
    margin-bottom: -1.4rem;
  }

  .contact-intro-flex .sp_none {
    display: none;
  }

  .contact-intro-flex .sp_style {
    width: 100%;
    line-height: 140%;
    padding-top: 1.5rem;
  }

  #contact .sp_only {
    display: block !important;
    margin-bottom: 2rem;
  }
}

#sale {}

#sale h3 {
  font-size: 160%;
  font-weight: 700;
  border-left: 8px solid #c20000;
  color: #c20000;
  margin-bottom: 2rem;
  padding-left: 0.5rem;
}

#sale .sale_category {
  padding: 2rem 2rem 1rem 2rem;
  background: #ffeeee;
  margin-bottom: 5rem;
}

#sale .sale_category .one_centence {
  margin-bottom: 3rem;
  background: #fff;
  padding: 3rem;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}

#sale .sale_category .one_centence .sale_icon {
  width: 20%;
  margin-right: 2%;
  margin-bottom: 1rem;
}

#sale .sale_category .one_centence .sale_name {
  font-size: 140%;
  color: #c20000;
  font-weight: 700;
  vertical-align: top;
  width: 78%;
}

#sale .sale_category .one_centence .top_box {
  display: flex;
}

#sale .sale_category .one_centence .middle_box {
  display: flex;
  margin-bottom: 2rem;
  justify-content: stretch;
}

#sale .sale_category .one_centence .middle_box .photo {
  width: 40%;
  margin-right: 2%;
  min-height: 280px;
  max-height: 280px;
  overflow: hidden;
}

#sale .sale_category .one_centence .middle_box .data {
  width: 58%;
  text-align: right;
  position: relative;
}

#sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
  /*background:url(../img/sale/sale_medal_bg@2x.png) no-repeat;
	background-size:contain;*/
  background: #f3141d;
  width: 100px;
  height: 100px;
  border-radius: 50px;
  /* CSS3草案 */
  -webkit-border-radius: 50px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 50px;
  /* Firefox用 */
  text-align: center;
  color: #fff;
  font-size: 190%;
  font-weight: 700;
  line-height: 3rem;
  padding-top: 22px;
  position: absolute;
  right: 0;
  font-family: "impact", sans-serif;
}

#sale .sale_category .one_centence .middle_box .data .sale_discount_rate span {
  font-size: 180%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down {
  position: absolute;
  bottom: 0;
  width: 100%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price {
  display: flex;
  justify-content: flex-end;
  color: #F00;
  font-weight: 700;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
  font-size: 160%;
  text-align: center;
  padding: 2rem 0 0 0;
  line-height: 2rem;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub span {
  font-size: 40%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
  font-size: 400%;
  font-family: "impact", sans-serif;
  letter-spacing: 0.2rem;
}

@media (max-width: 768px) {
  #sale .sale_category .one_centence .sale_name {
    font-size: 100%;
  }

  #sale .sale_category .one_centence .middle_box {
    display: block;
  }

  #sale .sale_category .one_centence .middle_box .photo {
    width: 100%;
    margin-bottom: 2rem;
    max-height: 500px;
    overflow: hidden;
    text-align: center;
  }

  #sale .sale_category .one_centence .middle_box .data {
    width: 100%;
    text-align: left;
    position: relative;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
    font-size: 100%;
    width: 140px;
    height: 140px;
    border-radius: 70px;
    -webkit-border-radius: 70px;
    -moz-border-radius: 70px;
    padding-top: 34px;
    line-height: 3.6rem;
    position: absolute;
    bottom: 120px;
    right: 20px;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
    font-size: 260%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
    padding: 0.8rem 0 0 0;
    line-height: 3rem;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_regular_price {
    font-size: 80%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down {
    position: relative;
    bottom: 0;
    width: 100%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price {
    justify-content: flex-start;
  }
}

@media (max-width: 414px) {
  #sale .sale_category .one_centence {
    margin-bottom: 2rem;
    padding: 1rem;
    width: 100%;
    min-height: 522px;
    display: block;
  }

  #sale .sale_category .one_centence .sale_name {
    font-size: 100%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
    width: 80px;
    height: 80px;
    font-size: 130%;
    padding-top: 20px;
    line-height: 2rem;
    bottom: 70px;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
    font-size: 400%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
    padding: 17px 0 0 0;
    line-height: 2rem;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_regular_price {
    font-size: 80%;
  }

  #sale .sale_category .one_centence .middle_box .photo {
    max-height: 320px;
    overflow: hidden;
  }

  #sale .sale_category .one_centence .middle_box {
    margin-bottom: 0;
  }
}

.sale_soldout {
  position: absolute;
  background: rgba(0, 0, 0, 0.4);
  text-align: center;
  width: 100%;
  height: 100%;
  margin: -3rem 0 0 -3rem;
  z-index: 999;
  display: block;
}

.sale_soldout .text {
  background: #F00;
  color: #FFF;
  font-family: "impact", sans-serif;
  display: inline-block;
  padding: 0.5rem 5rem;
  font-size: 300%;
  position: absolute;
  top: 50%;
  /*親要素を起点に上から50%*/
  left: 50%;
  /*親要素を起点に左から50%*/
  transform: translateY(-50%) translateX(-50%);
  /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%) translateX(-50%);
}

@media (max-width: 414px) {
  .sale_soldout {
    margin: -1rem 0 0 -1rem;
    width: 346px;
    height: 522px;
  }

  .sale_soldout .text {
    font-size: 200%;
    white-space: nowrap;
  }
}


@media (max-width: 375px) {
  .sale_soldout {
    width: 312px;
  }
}

@media (max-width: 320px) {
  .sale_soldout {
    width: 258px;
  }
}


/*スマホWEB相談*/

.picture-page h3 {
  margin-bottom: 30px;
}

.picture-page .flex-row {
  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;
}

.picture-page .flex-row>.step {
  width: 70%;
}

.picture-page .flex-row>.step p {
  color: #f3141d;
  font-weight: 700;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 20px;
}

.picture-page .flex-row>.qr {
  width: 25%;
  background: #f3141d;
  padding: 15px;
}

.picture-page .flex-row>.qr p {
  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: 15px;
  font-size: 1.5rem;
}

.picture-page .flex-row>.qr p img {
  width: 50px;
}

.picture-page .flex-row>.qr p span {
  display: block;
  width: calc(100% - 60px);
  color: #fff;

  font-weight: 700;
  line-height: 1.2;
}

.picture-page .picture-title {
  text-align: center;
  margin-bottom: 45px;
}

.picture-page .page-block-child {
  margin-bottom: 40px;
}

.picture-page .picture-title p {
  display: inline-block;
  color: #f3141d;
  font-weight: 700;
  font-size: 3rem;
  position: relative;
}

.picture-page .picture-title p::before {
  position: absolute;
  top: -5px;
  left: -55px;
  content: "＼";
  font-size: 5rem;
}

.picture-page .picture-title p::after {
  position: absolute;
  top: -5px;
  right: -55px;
  content: "／";
  font-size: 5rem;
}

.picture-page .picture-title h4 {
  background: #f3141d;
  color: #fff;
  font-weight: 700;
  font-size: 3rem;
  line-height: 1;
  position: relative;
  padding: 20px 0;
}

.picture-page .picture-title h4::before {
  position: absolute;
  bottom: 0;
  left: 10px;
  content: "";
  background: url(./../img/picture/picture-title01.png) center center no-repeat;
  background-size: cover;
  width: 110px;
  height: 88px;
}

.picture-page .picture-title h4::after {
  position: absolute;
  top: -30px;
  right: 10px;
  content: "";
  background: url(./../img/picture/picture-title02.png) center center no-repeat;
  background-size: cover;
  width: 70px;
  height: 102px;
}

.picture-page h5 {
  color: #f3141d;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.4;
  margin-bottom: 15px;
}

.picture-page .flex-row>.img {
  width: 49%;
  margin-bottom: 20px;
}

.picture-page .flex-row>.img img {
  background: #F9F7F4;
}

.picture-page .flex-row>.file {
  width: 49%;
  margin-bottom: 20px;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 10px;

}

.picture-page .flex-row>.file .file-child {
  width: 100%;
  height: 100%;
  background: #eee;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.picture-page .flex-row>.file .file-child img {
  max-width: 100%;
  height: auto;
}

.picture-page .flex-row>.file .file-child input[type="file"] {
  /* display: none; */
  opacity: 0;
  position: absolute;
  z-index: -1;
}

.picture-page .flex-row>.file .file-child label {
  background: url(./../img/picture/upload.png) center center no-repeat;
  background-size: contain;
  width: 326px;
  height: 258px;
  cursor: pointer;
}

.picture-page .flex-row>.file .file-child .delete {
  display: none;
  position: absolute;
  top: -30px;
  right: -10px;
  font-size: 4rem;
}

.picture-page .custom-wpcf7c-confirmed .flex-row>.file .file-child label,
.picture-page .custom-wpcf7c-confirmed .flex-row>.file .file-child .delete {
  display: none !important;
}

.picture-page .flow .img {
  width: 22%;
}

.picture-page .flow .img img {
  background: transparent;
  margin-bottom: 5px;
}

.picture-page .flow .img p {
  text-align: center;
  font-weight: 700;
  font-size: 1.2rem;
}

.picture-page .arrow {
  width: 2%;
  padding-top: 65px;
}

.picture-page .arrow img {
  transform: rotate(-90deg);
}

.picture-page .product h3 {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  color: #f3141d;
  border-bottom: 1px solid #f3141d;
  padding-bottom: 15px;
}

.picture-page .product h3 br {
  display: none;
}

.picture-page .product .flex-row>a {
  width: 24%;
  border: 1px solid #f3141d;
  margin-bottom: 10px;
}

.picture-page .product .flex-row>a .txt {
  background: #f3141d;
  padding: 10px 0;
}

.picture-page .product .flex-row>a .txt p {
  font-weight: 700;
  color: #fff;
  text-align: center;
}


@media (max-width: 480px) {

  .page-container-fluid>main .page-container.picture-page {
    padding: 0 5px;
  }

  .picture-page .page-block {
    padding: 20px 0 0;
  }

  .picture-page h3 {
    margin-bottom: 15px;
  }

  .picture-page .flex-row>.step {
    width: 100%;
  }

  .picture-page .flex-row>.step p {
    font-size: 1.75rem;
    margin-bottom: 5px;
  }

  .picture-page .flex-row>.qr {
    display: none;
  }

  .picture-page .picture-title {
    margin-bottom: 20px;
  }

  .picture-page .picture-title p {
    font-size: 1.6rem;
    margin-bottom: 5px;
  }

  .picture-page .picture-title p::before {
    font-size: 1.75rem;
    left: -20px;
    top: -2px;
  }

  .picture-page .picture-title p::after {
    font-size: 1.75rem;
    right: -20px;
    top: -2px;
  }

  .picture-page .picture-title h4 {
    font-size: 1.5rem;
    padding: 10px 0;
  }

  .picture-page .picture-title h4::before {
    top: -10px;
    left: 2px;
    width: 69px;
    height: 55px;
  }

  .picture-page .picture-title h4::after {
    top: -10px;
    right: 2px;
    width: 40px;
    height: 58px;
  }

  .picture-page h5 {
    font-size: 1.25rem;
    margin-bottom: 10px;
  }

  .picture-page .flex-row>.img,
  .picture-page .flex-row>.file {
    width: 100%;
    margin-bottom: 10px;
  }

  /*.picture-page .flex-row > .file .file-child{
		padding:20px 0;
	}*/

  .picture-page .flex-row>.file .file-child label {
    width: 100%;
    height: 240px;
  }

  .picture-page .flow .img {
    width: 48%;
  }

  .picture-page .flow .arrow {
    display: none;
  }

  .picture-page .arrow img {
    transform: rotate(0);
  }

  .picture-page .product h3 {
    line-height: 1.4;
  }

  .picture-page .product h3 br {
    display: block;
  }

  .picture-page .product .flex-row>a {
    width: 48%;
  }



}

.seko_customervoice_image {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  margin-bottom: 2rem;
}

.seko_customervoice_image a {
  display: block;
  text-align: center;
  width: 32%;
  overflow: hidden;
  border: 1px solid #ddd;
}

.seko_customervoice_image a img {
  width: auto;
  height: 200px;
  margin: 0 auto;
}

/*@media (max-width: 480px){
	.seko_customervoice_image {
		display:block;
	}
	.seko_customervoice_image a {
		width:100%;
		margin-bottom:1rem;
	}
	.seko_customervoice_image a img {
		width:100%;
		height:auto;
	}

}*/

.side-lineup {
  margin-bottom: 15px;

}

.side-lineup .side-lineup-child {
  position: relative;
  height: 198px;
  border-left: 3px solid #f3141d;
  border-right: 3px solid #f3141d;
  border-bottom: 3px solid #f3141d;
}

.side-lineup .side-lineup-child .img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.side-lineup .side-lineup-child .img img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.side-lineup .side-lineup-child .txt {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  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;
  padding: 10px 5px;
}

.side-lineup .side-lineup-child .txt .komi {
  width: 65px;
}

.side-lineup .side-lineup-child .txt .komi img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.side-lineup .side-lineup-child .txt .price {
  width: calc(100% - 65px - 10px);
  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;
}

/*LINE無料相談*/
#line .box1 {
  border: 2px solid #ccc;
  margin: 0 0 40px;
  padding: 20px;
}

#line .box1 p {
  text-align: center;
  font-weight: bold;
}

#line h3 {
  margin-bottom: 20px;
  border-bottom: 2px solid #00b900;
  padding-bottom: 10px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}

#line h4 {
  margin-bottom: 20px;
  background: #e7e7e7;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
  padding: 8px;
}

#line h5 {
  margin-bottom: 20px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}

#line .linegreen {
  color: #00b900;
}

#line .f_box {
  display: flex;
  justify-content: space-between;
}

#line .box2 {
  border: 2px solid #ccc;
  width: 48%;
  margin: 0 0 20px;
}

#line .box2 .box-title {
  font-size: 1.2em;
  background: #ccc;
  padding: 10px;
  text-align: center;
  color: #000;
  font-weight: bold;
  letter-spacing: 0.05em;
}

#line .box2 p {
  padding: 15px 20px;
  margin: 0 0 30px 0;
}

#line .box2 img {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}

#line .l_arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 100px 0 100px;
  border-color: #00b900 transparent transparent transparent;
  margin: 0 auto;
}

#line .mrml50 {
  margin-left: 50px;
  margin-right: 50px;
}

#line .f_red {
  color: #ff0000;
}

#line .s_box {
  border: 2px solid #29ba01;
  padding: 28px;
  margin-bottom: 30px;
}

#line .s_box .f_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

#line .s_box .f_box .box {
  width: 30%;
  padding: 1%;
}

#line .s_box .f_box .box img {
  width: 100%;
  margin-bottom: 5px;
}

#line .s_box .f_box .box .fw7 {
  font-weight: 700;
}

#line .s_box .f_box .box3 {
  width: 48%;
  padding: 1%;
}

#line .s_box .f_box2 .box3 img {
  width: 100%;
  margin-bottom: 5px;
}

#line .c_box {
  border: 1px solid #ff0000;
  padding: 20px;
  margin-bottom: 30px;
  text-align: center;
}

#line .c_box p {
  color: #ff0000;
  line-height: 1.8em;
}

#line .c_box p span {
  color: #ff0000;
  font-weight: 700;
}

#line .s_box2 {
  border: 2px solid #29ba01;
  padding: 28px;
  margin-bottom: 30px;
  background-color: #fffdd2;
  text-align: center;
}

#line .y_box {
  width: 80%;
  padding: 20px;
  margin: 0 auto 30px;
  background-color: #fffdd2;
  text-align: center;
}

#line .pc {
  display: block !important;
}

#line .sp {
  display: none !important;
}

@media (max-width: 768px) {
  #line .box1 {
    border: 2px solid #ccc;
    margin: 0 0 40px;
    padding: 20px;
  }

  #line .box1 p {
    text-align: left;
    font-weight: bold;
  }

  #line .f_box {
    display: block;
  }

  #line .box2 {
    width: 100%;
    margin: 0 0 20px;
  }

  #line .l_arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 100px 100px 0 100px;
    border-color: #00b900 transparent transparent transparent;
  }

  #line .mrml50 {
    margin-left: 25%;
    margin-right: 25%;
    margin-bottom: 40px;
  }

  #line .s_box {
    border: 2px solid #29ba01;
    padding: 10px;
    margin-bottom: 30px;
  }

  #line .s_box .f_box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 0;
    line-height: 1.6em;
  }

  #line .s_box .f_box .box {
    width: 48%;
    padding: 1%;
    margin-bottom: 5px;
  }

  #line .s_box .f_box .box img {
    width: 100%;
    margin-bottom: 5px;
  }

  #line .s_box .f_box .box .fw7 {
    font-weight: 700;
  }

  #line .s_box .f_box .box3 {
    width: 48%;
    padding: 1%;
  }

  #line .s_box .f_box2 .box3 img {
    width: 100%;
    margin-bottom: 5px;
  }

  #line .c_box {
    border: 1px solid #ff0000;
    padding: 20px;
    margin-bottom: 30px;
    text-align: center;
  }

  #line .c_box p {
    color: #ff0000;
    line-height: 1.8em;
  }

  #line .c_box p span {
    color: #ff0000;
    font-weight: 700;
  }

  #line .s_box2 {
    border: 2px solid #29ba01;
    padding: 28px;
    margin-bottom: 30px;
    background-color: #fffdd2;
    text-align: center;
  }

  #line .y_box {
    width: 80%;
    padding: 20px;
    margin: 0 auto 30px;
    background-color: #fffdd2;
    text-align: center;
  }

  #line .pc {
    display: none !important;
  }

  #line .sp {
    display: block !important;
  }
}

/*オンライン相談*/
#online .online-caption {
  font-size: 30px;
  font-size: 3rem;
}

#online .online-caption2 {
  font-size: 18px;
  font-size: 1.8rem;
}

#online .online-caption3 {
  font-size: 33px;
  font-size: 3.3rem;
}

#online .online-caption4 {
  font-size: 24px;
  font-size: 2.4rem;
}

#online .online-online_features_tit {
  font-size: 30px;
  font-size: 3rem;
}

#online .online-online_features_tit-2 {
  font-size: 50px;
  font-size: 5rem;
}

#online .online-online_features_tit-3 {
  font-size: 36px;
  font-size: 3.6rem;
}

#online .online-online_features_tit-4 {
  font-size: 40px;
  font-size: 4rem;
}

#online .online-heafing-wrap {
  display: flex;
  align-items: center;
}

#online .online-heafing-wrap-tel {
  display: flex;
  align-items: center;
}

#online .gy_box {
  background-color: #eee;
  border-radius: 5px;
  padding: 10px 20px 10px;
  text-align: left;
  vertical-align: middle;
}

#online .gy_box .i_s {
  width: 80px;
  text-align: center;
  margin-right: 20px;
}

#online .b_ircle {
  width: 100px;
  height: 100px;
  font-size: 16px;
  font-size: 1.6rem;
  border-radius: 50%;
  background-color: #4299de;
  color: #fff;
  text-align: center;
  padding: 20px;
  margin-right: 20px;
}

#online .mr20 {
  margin-right: 20px;
}

#online .online_movie {
  width: 600px;
  height: 360px;
  margin: 0 auto;
}

#online .online_contact {
  display: flex;
  justify-content: space-between;
}

#online .online_contact .r_box {
  display: block;
  position: relative;
  background-color: #c30d23;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  width: 48%;
  padding: 20px;
}

#online .online_contact .r_box a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#online .online_contact .r_box:hover {
  opacity: 0.8;
  cursor: pointer;
  text-decoration: none;
}

#online .online_contact .g_box {
  display: block;
  position: relative;
  background-color: #006934;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  width: 48%;
  padding: 20px;
}

#online .online_contact .g_box a {
  position: sticky;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#online .online_contact .g_box:hover {
  opacity: 0.8;
  cursor: pointer;
  text-decoration: none;
}

#online .online-number {
  font-size: 36px;
  font-size: 3.6rem;
}

#online .gy_box2 {
  background-color: #eee;
  padding: 30px;
  text-align: left;
  vertical-align: middle;
}

#online .c_list {
  list-style-type: none;
  padding: 0;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  margin-left: 50px;
}

#online .c_list li {
  background: url(../img/online/check.png) no-repeat;
  margin-bottom: 10px;
  padding: 2px 2px 2px 50px;
}

#online .gy_box3 {
  background-color: #eee;
  padding: 10px;
}

#online .gy_box3 .m_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#online .gy_box3 .m_box .merit_box {
  width: 30%;
  background-color: #fff;
  text-align: center;
  margin: 10px;
}

#online .gy_box3 .m_box .merit_box img {
  width: 100%;
  margin-bottom: 10px;
}

#online .gy_box3 .m_box .merit_box .tit {
  width: 100%;
  background-color: #4299de;
  padding: 10px;
  color: #fff;
  font-size: 1.8rem;
}

#online .gy_box3 .m_box .merit_box .text {
  height: 130px;
  font-size: 1.6rem;
  font-weight: 700;
  display: table;
  width: 100%;
}

#online .gy_box3 .m_box .merit_box .text p {
  display: table-cell;
  vertical-align: middle;
}

#online .svs_box {
  display: flex;
  justify-content: space-between;
}

#online .svs_box img {
  margin-left: 20px;
}

#online .gy_box4 {
  background-color: #eee;
  padding: 20px;
}

#online .flow_tit {
  background-color: #16c04c;
  padding: 10px;
  color: #fff;
  text-align: center;
}

#online .gy_box4 .img_box {
  width: 120px;
  text-align: center;
  margin-right: 20px;
}

#online .maru {
  height: 25px;
  width: 25px;
  border-radius: 50%;
  line-height: 25px;
  text-align: center;
  color: #fff;
  background-color: #16c04c;
  margin-right: 20px;
}

#online .t_ul {
  text-decoration: underline;
}

#online .t_ul {
  text-decoration: underline;
}

#online .wpcf7-radio .wpcf7-list-item {
  margin-top: 10px;
  display: block;
}

#online input[type=radio] {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

@media screen and (min-width: 980px) {
  .btn_online {
    height: 80px;
    font-size: 28px;
    font-size: 1.6rem;
    line-height: 33px;
    color: #fff;
    font-weight: 700;
  }

  #online .wpcf7-list-item-label {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 789px) {
  #online .online-caption {
    font-size: 26px;
    font-size: 2.6rem;
  }

  #online .online-caption3 {
    font-size: 30px;
    font-size: 3rem;
  }

  #online .b_ircle {
    margin: 0 auto;
    margin-right: auto;
  }

  #online .online_movie {
    width: 100%;
    height: 260px;
    margin: 0 auto;
  }

  #online .online_contact {
    display: block;
  }

  #online .online_contact .r_box {
    width: 100%;
    margin-bottom: 20px;
  }

  #online .online_contact .g_box {
    width: 100%;
  }

  #online .online-number {
    font-size: 3rem;
  }

  #online .online-heafing-wrap-tel {
    display: block;
    margin-top: 10px;
  }

  #online .gy_box2 {
    padding: 10px;
  }

  #online .c_list {
    list-style-type: none;
    padding: 0;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    margin-left: 0;
  }

  #online .c_list li {
    padding: 2px 2px 2px 40px;
  }

  #online .gy_box3 .m_box {
    display: block;
  }

  #online .gy_box3 .m_box .merit_box {
    width: 100%;
    margin: 0 0 20px 0;
  }

  #online .gy_box3 .m_box .merit_box .text {
    font-size: 2rem;
  }

  #online .svs_box {
    display: block;
    text-align: center;
  }

  #online .svs_box p {
    text-align: left;
  }

  #online .svs_box img {
    width: 70%;
    margin: 20px auto;
  }

  #online .gy_box4 .img_box {
    width: 120px;
    text-align: center;
    margin: 0 auto 20px;
  }

  #online .maru {
    height: 30px;
    width: 40px;
    border-radius: 50%;
    line-height: 30px;
    text-align: center;
    color: #fff;
    background-color: #006934;
    margin-right: 20px;
  }

  #online .gy_box4 .img_box {
    width: 120px;
    text-align: center;
    margin: 0 auto 20px;
  }

  #online .maru {
    height: 30px;
    width: 40px;
    border-radius: 50%;
    line-height: 30px;
    text-align: center;
    color: #fff;
    background-color: #006934;
    margin-right: 20px;
  }
}



.flexslider ul.flex-direction-nav li a.flex-next,
.flexslider ul.flex-direction-nav li a.flex-prev {
  width: 90px;
}

.flexslider .slides img {
  max-height: 400px;
}


.seko_after_comment {
  font-size: 1.2em;
}

.domain-message {
  border: 1px solid #333;
  padding: 25px 30px;
}


.oshirase_btn {
  display: block;
  position: relative;
  padding: 0.8em;
  text-align: center;
  font-size: 1.6em;
  font-weight: 700;
  text-decoration: none;
  color: #ff0000;
  background: #fff;
  border: 3px solid #ff0000;
}

.oshirase_btn:hover {
  background: #ff0000;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  #voice .totalCount {
    margin: 0 0 1em 1.5em;
    font-size: 1.5rem;
    font-weight: 700;
  }
}

@media screen and (max-width: 767px) {
  #voice .totalCount {
    margin: 0 0 1em 1em;
    font-size: 1.5rem;
    font-weight: 700;
  }
}


.wannyan-archive {
  display: flex
}

.wannyan-archive .image {
  margin-right: 15px;
  width: 340px;
  height: 200px;
}

.wannyan-archive .content {
  width: calc(100% - 100px - 15px);
}

.obfit-info2 {
  width: 100%;
  height: 180px !important;
  object-fit: cover;
}

.obfit-info3 {
  width: 100%;
  height: 180px !important;
  object-fit: cover;
  border: 1px solid #ccc;
}

.sp__br {
  display: none;
}




@media screen and (max-width: 767px) {
  .wannyan-archive {
    display: block;
  }

  .wannyan-archive .image {
    margin-right: 0;
    width: 100%;
    height: auto !important;
    margin-bottom: 2em;
  }

  .wannyan-archive .content {
    width: 100%;
  }

  .sp__br {
    display: block;
  }
}



#floating-banner {
  display: none;
  position: fixed;
  z-index: 99999;
  bottom: 60px;
  right: 10px;
  width: 200px;
}

#floating-banner:hover {
  opacity: .8;
}

#floating-banner img {
  width: 100%;
}

.batsu {
  font-size: 100%;
  font-weight: bold;
  border: 1px solid #333;
  color: #fff;
  background: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  width: 1.3em;
  line-height: 1.3em;
  cursor: pointer;
  transition: .2s;
  position: absolute;
  right: 0;
}

.batsu:hover {
  background: #ccc;
  border-color: #999;
  color: #999;
}

@media screen and (max-width: 767px) {
  #floating-banner {
    display: none;
    position: fixed;
    z-index: 99999;
    top: unset;
    right: 2vw;
    bottom: 27vw;
    width: 28vw;
    display: inline-block;
  }

  #floating-banner img {
    width: 100%;
  }

  .batsu {
    font-size: 100%;
    font-weight: bold;
    border: 1px solid #333;
    color: #fff;
    background: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    width: 1.3em;
    line-height: 1.3em;
    cursor: pointer;
    transition: .2s;
    position: absolute;
    right: 0;
  }
}

#store .main_pic {
  margin-bottom: 2rem;
}

#store .store_info {
  padding: 3rem;
  background: #f9f7f3;
  width: 100%;
  margin: 0 auto 3rem auto;
}

#store .store_info h3 {
  font-size: 150%;
  text-align: center;
  color: #c1272d;
  font-weight: 900;
  margin-bottom: 2rem;
  line-height: 150%;
}

#store .store_info .detail_wrap {
  display: flex;
  justify-content: space-between;
}

#store .store_info .detail_wrap .left {
  width: 28%;
}

#store .store_info .detail_wrap .right {
  text-align: left;
  width: 70%;
}

#store .store_info .detail_wrap .right h4 {
  font-size: 100%;
  margin-bottom: 0.5rem;
}

#store .store_info .detail_wrap .right p.maker {
  font-size: 90%;
}

#store .store_info .detail_wrap .right p.infomation {
  line-height: 170%;
  margin-bottom: 2rem;
}


#store .store_info .detail_wrap .left_suita p.infomation {
  font-size: 115%;
  line-height: 180%;
}

#store .store_info .detail_wrap .right_suita a {
  display: block;
  background: #c1272d;
  text-align: center;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  color: #FFF;
  line-height: 150%;
  font-size: 120%;
  font-weight: 700;
  padding: 1rem;
}

#store .store_info .detail_wrap .right_suita a:hover {
  background: #e0454b;
}

/*div.quote {
display: flex;
flex-flow: row nowrap;
justify-content: center;
align-items: stretch;
}
div.quote > span {
flex: 0 0 auto;
text-align: center;
font-size:170%;
line-height:170%;
font-weight:700;
}
div.quote::before,
div.quote::after {
content: "";
flex: 0 0 2px;
height: auto;
margin: 0px 60px;
background: #c1272d;
}
div.quote::before { transform: rotate( -30deg ) }
div.quote::after { transform: rotate( 30deg ) }
*/

.magokoro {
  max-width: 860px;
  margin: 0 auto 6rem auto;
}

.tennai {
  display: flex;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 5rem auto;
  flex-wrap: wrap;
  justify-content: space-between;
}

.tennai::after{
        content:"";
        display: block;
        width:32%;
}

.tennai div {
  width: 32%;
  margin-bottom: 2rem;
}

.tennai div a {
  display: block;
}

.tennai div a img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}

.tennai div img {
  margin-bottom: 0.5rem;
}

.map_wrap {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5rem;
}

.map_wrap .map_right {
  width: 50%;
}

.map_wrap .map_left {
  width: 50%;
}

.map_wrap .map_left p {
  font-size: 110%;
  line-height: 180%;
}

.map_wrap iframe {
  width: 100%;
  height: 50rem;
  margin-bottom: 2rem;
}

.map_under {
  text-align: center;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 1px solid #cfcfcf;
}

.map_under h3 {
  display: block;
  width: 100%;
  background: #f3141d;
  color: #fff;
  font-size: 160%;
  line-height: 160%;
  padding: 0.5rem;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-top-left-radius: 10px;
  -moz-border-top-right-radius: 10px;
  font-weight: 700;
}

.map_under h4 {
  display: block;
  width: 100%;
  background: #f3141d;
  color: #fff;
  font-size: 160%;
  line-height: 160%;
  padding: 0.5rem;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-top-left-radius: 10px;
  -moz-border-top-right-radius: 10px;
  font-weight: 700;
}

.map_under .number-wrap {
  justify-content: center;
  padding: 1.5rem 0
}

.store_form {
  margin-bottom: 5rem;
}

.store_area .wrap {
  display: flex;
  justify-content: space-between;
}

.store_area h3 {
  font-size: 140%;
  font-weight: 700;
  margin-bottom: 2rem;
}

.store_area .wrap .areamap {
  width: 30%;
}

.store_area .wrap .areamap_info {
  width: 65%;
}

.store_area .wrap .areamap_info p.read {
  margin-bottom: 2rem;
  font-size: 120%;
  line-height: 180%;
}

#store .more {
  width: 100%;
  text-align: center;
}

#store .store_info h3 br:nth-of-type(1),
#store .store_info h3 br:nth-of-type(3) {
  display: none;
}

@media screen and (max-width: 414px) {
  #store .store_info .detail_wrap {
    display: block;
  }

  #store .store_info .detail_wrap .left_suita {
    margin-bottom: 1rem;
  }

  div.quote {
    margin-bottom: 2rem;
  }

  div.quote>span {
    font-size: 120%;
    line-height: 140%;
  }

  div.quote::before,
  div.quote::after {
    margin: 0 -20px 30px -20px;
    ;
  }

  .tennai div {
    width: 48%;
    margin-bottom: 2rem;
  }

  .map_wrap {
    display: block;
  }

  .map_wrap .map_left {
    width: 100%;
    margin-bottom: 2rem;
  }

  .map_wrap .map_right {
    width: 100%;
  }

  .map_under h3 {
    font-size: 120%;
    line-height: 120%;
    margin-bottom: 0;
  }

  .map_under h4 {
    font-size: 120%;
    line-height: 120%;
    margin-bottom: 0;
  }

  .store_area .wrap .areamap_info p.read {
    font-size: 100%;
    line-height: 166%;
  }

  .store_form .form-btn-wrap {
    margin-bottom: 2rem;
  }

  .store_form {
    margin-bottom: 0;
  }

  #store .store_info h3 {
    font-size: 134%;
    line-height: 140%;
  }

  #store .store_info h3 br:nth-of-type(1),
  #store .store_info h3 br:nth-of-type(3) {
    display: block;
  }

  .taiken-list {
    width: 100%;
  }

  #store .store_info .detail_wrap .left {
    width: 100%;
    margin-bottom: 2rem;
  }

  .taiken-list li {
    font-size: calc(33 / 750 * 100vw);
  }

  #store .store_info .detail_wrap .right {
    width: 100%;
  }
}

#store .quote h3 {
  font-size: 3.2vh;
  text-align: center;
  line-height: 5vh;
  font-weight: bold;
  margin-bottom: 3vh;
}

#store .quote h3 span {
  display: inline-block;
}


#store .quote h3:before {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-left@2x.png);
  background-size: contain;
  display: inline-block;
  height: 5rem;
  width: 32px;
}

#store .quote h3:after {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-right@2x.png);
  background-size: contain;
  display: inline-block;
  height: 5rem;
  width: 32px;
}

@media screen and (max-width: 414px) {
  #store .quote h3 {
    font-size: 3vh;
    text-align: center;
    line-height: 5vh;
    font-weight: bold;
    margin-bottom: 3vh;
  }

  #store .quote h3:before {
    height: 9rem;
    width: 20px;
  }

  #store .quote h3:after {
    height: 9rem;
    width: 20px;
  }

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

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

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

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

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

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

  @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: #333;
    background-color: #fff;
    font-family: "NotoSansCJKjp", sans-serif;
    font-size: calc(28 / 750 * 100vw);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    overflow-x: hidden
  }

  @media (min-width: 960px) {
    body {
      font-size: 14px
    }
  }

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

  a:hover {
    cursor: pointer
  }

  a.opacity {
    display: block
  }

  a.opacity:hover {
    opacity: 0.6
  }

  a.map-zoom {
    color: #2390b8;
    text-decoration: underline
  }

  .l-header {
    position: fixed;
    margin: 0 auto;
    width: 100%;
    height: 22vw;
    background-color: #fff;
    z-index: 888
  }

  @media screen and (min-width: 980px) {
    .l-header {
      position: relative;
      padding: 0;
      height: auto
    }
  }

  .header-bar {
    background-color: #f3141d;
    line-height: 30px
  }

  .header-inner {
    position: relative;
    margin: 0 auto;
    padding: 0 3.3vw;
    width: 100%;
    height: 22vw;
    max-width: 960px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center
  }

  .header-bar .l-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

  .header-bar .l-inner h1 {
    font-size: 14px;
  }

  .header-bar .l-inner a {
    color: #fff;
    font-weight: 700;
  }

  @media screen and (min-width: 980px) {
    .header-inner {
      padding: 0;
      height: 105px
    }
  }

  .header-logo {
    position: relative
  }

  .header-logo img {
    width: 43.3vw;
    height: auto
  }

  @media screen and (min-width: 980px) {
    .header-logo {
      left: -10px
    }

    .header-logo img {
      width: 235px;
      height: 77px
    }
  }

  .header-btn-menu {
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }

  .header-btn-menu li {
    margin-right: 2vw
  }

  .header-btn-menu li:last-child {
    margin-right: 0
  }

  .header-btn-menu img {
    max-height: 13.6vw;
    width: auto
  }

  @media screen and (min-width: 980px) {
    .header-btn-menu {
      margin-top: -10px
    }

    .header-btn-menu li {
      margin-right: 10px
    }

    .header-btn-menu img {
      max-height: 95px
    }
  }

  .navi-container {
    position: relative
  }

  @media screen and (max-width: 979px) {
    .navi-container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: fixed;
      top: 0;
      right: 0;
      height: 0%;
      background-color: #000;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity 0.7s, visibility 0.7s, height 0.3s;
      transition: opacity 0.7s, visibility 0.7s, height 0.3s;
      overflow: hidden;
      z-index: 222
    }

    .navi-container.close {
      position: fixed;
      top: 0;
      left: 0;
      width: 10%;
      height: 0%;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity 0.35s, visibility 0.35s, height 0.35s;
      transition: opacity 0.35s, visibility 0.35s, height 0.35s;
      overflow: hidden
    }

    .navi-container.open {
      opacity: 1;
      visibility: visible;
      width: 90%;
      height: 100%
    }
  }

  @media screen and (max-width: 979px) {
    .navi-inner {
      position: relative;
      margin-left: auto;
      width: 96%;
      height: 100vh;
      background-color: rgba(39, 31, 28, 0.8);
      overflow-x: scroll;
      z-index: 999
    }
  }

  .navi-content {
    padding: 20px;
    width: 100%
  }

  @media screen and (min-width: 980px) {
    .navi-inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex
    }

    .navi-content {
      padding: 0;
      width: 100%
    }
  }

  @media screen and (max-width: 979px) {
    .navi {
      margin: 0 auto;
      width: 100%
    }

    .navi>li {
      padding: 1em;
      font-size: calc(28 / 750 * 100vw);
      line-height: 1.1em;
      border-bottom: 1px solid #fff
    }

    .navi>li a {
      display: block;
      color: #fff
    }

    .navi>li:hover {
      cursor: pointer
    }

    .navi>li>p {
      display: block;
      color: #fff;
      font-weight: 700;
      text-transform: uppercase
    }

    .navi>li>p {
      position: relative;
      display: block;
      color: #fff
    }

    .submenu {
      display: none;
      padding-top: 2vw
    }

    .submenu li a {
      position: relative;
      padding: 1em;
      display: block;
      color: #fff;
      font-weight: 700;
      width: 100%
    }
    .submenu li a[target="_blank"] span{
      display: inline-block;
      background-position: right center;
      background-size: auto 14px;
      background-repeat: no-repeat;
      padding-right: 24px;
      background-image: url(../img/common/icn_link_w.svg);
    }
    .navi>li>p:after,
    .submenu li a:after {
      position: absolute;
      right: 0;
      top: 50%;
      content: '\f054';
      margin-top: -10px;
      font-family: "Font Awesome 5 Free";
      font-weight: 900
    }

    .navi>li>p.is-open:after {
      position: absolute;
      right: 0;
      top: 50%;
      content: '\f078';
      margin-top: -10px;
      font-family: "Font Awesome 5 Free";
      font-weight: 900
    }
  }

  @media screen and (min-width: 980px) {
    .navi-wrap {
      position: relative;
      padding: 10px 0;
      border-top: 1px solid #a9a9a9;
      border-bottom: 1px solid #a9a9a9
    }

    .navi {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 auto;
      width: 100%;
      height: 50px;
      max-width: 960px
    }

    .navi>li {
      position: relative;
      text-align: center;
      width: 14.28%;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%;
      border-left: 1px solid #a9a9a9;
      font-size: 15px;
      font-size: 1.5rem;
      font-weight: 700
    }

    .navi>li:last-child {
      border-right: 1px solid #a9a9a9
    }

    .navi>li:hover {
      cursor: pointer
    }

    .navi p {
      position: relative;
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #1f1f1f;
      font-weight: 700;
      line-height: 1.4em;
      z-index: 2
    }

    .navi p:hover {
      background-color: #fff;
      color: #f3141d
    }

    .submenu {
      position: absolute;
      top: 60px;
      left: 50%;
      padding: 10px 15px;
      margin-left: -115px;
      min-width: 230px;
      background-color: #fff;
      border: 1px solid #a9a9a9;
      transition: all .2s;
      visibility: hidden;
      opacity: 0
    }

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

    .submenu li a {
      display: block;
      padding: 10px 0;
      font-weight: 700;
      text-align: center;
      line-height: 1.4em;
      width: 100%
    }

    .submenu li a:hover {
      background-color: #a9a9a9
    }

    .submenu li {
      border-bottom: 1px solid #a9a9a9;
      width: 100%
    }

    .submenu li:last-child {
      border-bottom: none
    }
  }

  .sp-menu-btn {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1.3vw;
    margin-left: -1.3vw;
    margin-bottom: 2vw
  }

  .sp-menu-btn li {
    margin-left: 1.3vw;
    margin-bottom: 1.3vw;
    width: calc(50% - 1.3vw)
  }

  .btn-close {
    margin-bottom: 2vw;
    padding: .8em .5em;
    width: 100%;
    background-color: #fff;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    text-align: center
  }

  .sp-sub li a {
    display: block;
    padding: .5em;
    color: #fff;
    font-size: calc(24 / 750 * 100vw);
    font-weight: 700;
    text-align: center
  }

  .l-footer {
    margin-top: 12vw;
    position: relative;
    padding: 10vw 0 5.3vw 0;
    margin-bottom: 10vw;
  }

  @media screen and (min-width: 980px) {
    .l-footer {
      margin-top: 0;
      padding: 40px 0 10px 0
    }
  }
  @media screen and (max-width: 768px) {
    .l-footer {
      margin-bottom: calc(92 / 375 * 100%) !important;
    }
  }
  

  .footer-bottom {
    display: none
  }

  @media screen and (min-width: 980px) {
    .footer-bottom {
      display: block;
      padding: 30px 0 10px 0;
      width: 100%
    }
  }

  .footer-wrap {
    margin: 0 auto
  }

  .footer-wrap .footer-logo {
    margin: 0 auto;
    width: 100%;
    text-align: center
  }

  .footer-wrap .footer-logo img {
    width: 44vw;
    height: auto
  }

  .footer-wrap .content {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 3.333333vw;
    margin-bottom: 2.66666vw;
    width: 100%
  }

  .footer-wrap .content div {
    margin-right: 1.3vw
  }

  .footer-wrap .content div:last-child {
    margin-right: 0
  }

  .footer-wrap:nth-child(2) .content {
    text-align: center
  }

  @media screen and (min-width: 980px) {
    .footer-wrap {
      display: flex;
      justify-content: flex-end;
      flex-wrap: nowrap
    }

    .footer-wrap .footer-logo {
      margin-right: 50px;
      padding-left: 50px;
      width: 350px;
      text-align: left
    }

    .footer-wrap .footer-logo img {
      width: 235px
    }

    .footer-wrap .content {
      margin-top: 0;
      margin-bottom: 0;
      width: calc(100% - 350px)
    }

    .footer-wrap .content div {
      margin-right: 10px
    }
  }

  .area-title {
    position: relative;
    margin-bottom: 15px;
    display: block;
    color: #399cde;
    font-weight: 700;
    font-size: 20px;
    font-size: 2rem
  }

  .area-title:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    width: calc(100% - 11em);
    height: 1px;
    background-color: #399cde
  }

  .area-title:after {
    right: 0
  }

  .footer-info {
    margin-top: calc(20 / 750 * 100vw)
  }

  .footer-info>div {
    display: flex;
    align-items: center;
    margin-bottom: calc(15 / 750 * 100vh);
    width: 100%;
    height: 7.333333vw;
    border: 1px solid #f3141d;
    background-color: #fff
  }

  .footer-info>div>p:first-child {
    width: 33.33333%;
    height: 100%;
    background-color: #f3141d;
    color: #fff;
    font-size: calc(27 / 750 * 100vw);
    font-weight: 700;
    text-align: center;
    line-height: calc(55 / 750 * 100vw)
  }

  .footer-info>div>p:nth-child(2) {
    padding: 0 .5em;
    width: calc(100% - 33.33333% - 20vw);
    font-size: calc(24 / 750 * 100vw);
    font-weight: 600
  }

  .footer-info>div>p:last-child {
    padding: 0 .3em;
    width: 20vw;
    text-align: right
  }

  @media screen and (min-width: 980px) {
    .footer-info {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 25px;
      width: calc(100% - 20px);
      font-size: 15px;
      font-size: 1.5rem
    }

    .footer-info>div {
      margin-left: 15px;
      margin-bottom: 0;
      width: calc(50% - 15px);
      height: 35px
    }

    .footer-info>div>p:first-child {
      width: 33.33333%;
      height: 100%;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 35px
    }

    .footer-info>div>p:nth-child(2) {
      padding: 0 .3em;
      width: calc(100% - 33.33333% - 105px);
      font-size: 16px;
      font-size: 1.6rem
    }

    .footer-info>div>p:last-child {
      width: 105px
    }
  }

  .footer-sp-info-wrap {
    position: relative;
    margin: 0 auto;
    margin-bottom: 4.6vw;
    width: 80vw
  }

  .footer-sp-info-wrap .sns-link {
    position: absolute;
    bottom: 0;
    right: 0
  }

  .footer-sp-info {
    margin-top: 2.6vw;
    display: flex;
    flex-wrap: wrap
  }

  .footer-sp-info-wrap .number-wrap {
    margin-top: 4vw;
    display: flex;
    justify-content: center;
    align-items: center
  }

  .footer-sp-info-wrap .number-wrap img {
    width: 10.4vw;
    height: auto
  }

  .footer-sp-info-wrap .number-wrap p {
    font-size: calc(60 / 750 * 100vw)
  }

  .footer-sp-info dt {
    width: 100%;
  }

  .footer-sp-info dd {
    width: calc(100% - 1em)
  }

  .footer-sitemap {
    display: flex;
    justify-content: space-between
  }

  .footer-sitemap>ul>li {
    color: #231815
  }

  .footer-sitemap .sitemap li a {
    display: block;
    line-height: 2em
  }

  .footer-sitemap .sitemap>li {
    width: 100%
  }

  .footer-sitemap .sitemap li>ul>li a:before {
    content: '・';
    margin-right: .5em
  }

  .copyright {
    text-align: center
  }

  .floating {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    background-color: #fff;
    z-index: 777
  }

  .floating-wrap {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 23px 0;
    width: 100%;
    max-width: 960px
  }

  .floating-left {
    position: relative;
    margin-right: 25px
  }

  .floathing-btn {
    display: flex;
    align-items: center
  }

  .floathing-btn a {
    margin-right: 5px
  }

  .floathing-btn a:last-child {
    margin-right: 0
  }

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

  .l-front {
    margin: 0 auto;
    margin-top: 22vw;
    width: 100%
  }

  @media screen and (min-width: 980px) {
    .l-front {
      margin-top: 0
    }
  }

  .l-column {
    margin: 0 auto;
    margin-top: 22vw;
    width: 100%
  }

  .l-column .l-main {
    margin-bottom: 45px;
    width: 100%
  }

  .l-column .l-aside {
    display: none
  }

  .l-fullwidth {
    width: 100%;
  }

  @media screen and (min-width: 980px) {
    .l-column {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-around;
      margin-top: 50px;
      max-width: 960px
    }

    .l-column .l-main {
      margin-top: 0;
      margin-bottom: 90px;
      width: calc(100% - 250px - 20px);
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2
    }

    .l-column .l-aside {
      position: relative;
      display: block;
      margin: 0 auto;
      margin-right: 20px;
      width: 250px;
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
      z-index: 777
    }

    .l-fullwidth {
      width: 100% !important;
    }

    .l-fullwidth #riyu {
      width: 690px;
      margin: 100px auto 0;
    }

    .l-fullwidth .migration-cta {
      width: 690px;
      margin: 45px auto 0;
    }
  }

  .l-single {
    margin: 0 auto;
    margin-top: 22vw;
    width: 100%
  }

  .l-single .l-main {
    margin: 0 auto;
    margin-bottom: 45px
  }

  @media screen and (min-width: 980px) {
    .l-single {
      margin-top: 25px
    }

    .l-single .l-main {
      margin-bottom: 90px
    }
  }

  .l-inner {
    position: relative;
    margin: 0 auto;
    padding: 0 3.3vw;
    width: 100%
  }

  @media screen and (max-width: 960px) and (min-width: 980px) {
    .l-inner {
      padding: 0 5%;
      max-width: 960px
    }
  }

  @media screen and (min-width: 960px) {
    .l-inner {
      padding: 0;
      max-width: 960px
    }

    #seko .l-inner .staff1 {
      position: absolute;
      left: -150px;
      bottom: 110px;
    }

    #seko .l-inner .staff2 {
      position: absolute;
      right: -150px;
      bottom: 110px;
    }
  }

  @media screen and (max-width: 959px) {
    #seko .l-inner .staff1 {
      position: absolute;
      top: -13px;
      left: 2%;
    }

    #seko .l-inner .staff2 {
      position: absolute;
      top: 0;
      right: 2%;
      text-align: right;
    }

    #seko .l-inner .staff1 img {
      width: 30%;
    }

    #seko .l-inner .staff2 img {
      width: 30%;
    }
  }


  .aside-heading {
    display: block;
    padding: .2em 0 .2em .5em;
    border-left: 15px solid #c1272d
  }

  .aside-seko-box {
    padding: 20px 10px;
    border: 1px solid #c1272d
  }

  .aside-seko a {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #d3d3d3;
    height: 50px
  }

  .aside-seko a .image {
    display: block
  }

  .aside-seko a .content {
    margin-left: .5em
  }

  .aside-riyu a {
    display: flex;
    align-items: center;
    border: 1px solid #c1272d;
    color: #f3141d
  }

  .aside-riyu a .image {
    width: 120px
  }

  .aside-riyu a .content {
    display: flex;
    align-items: center;
    padding-left: 10px;
    width: calc(100% - 120px)
  }

  .aside-bgbox {
    padding: 25px 10px;
    background-color: #f9f7f3
  }

  .aside-list li a {
    position: relative;
    display: block;
    padding: 0 1.5em;
    border-bottom: 1px dotted #000;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 40px
  }

  .aside-list li a:hover {
    color: #f3141d
  }

  .aside-list li a:after {
    position: absolute;
    top: 0;
    right: 1em;
    content: '\f0da';
    color: #000;
    font-family: "Font Awesome 5 Free";
    font-weight: 900
  }

  .aside-list li a:hover::after {
    color: #f3141d
  }

  .breadcrumb {
    padding: 0 1em
  }

  .breadcrumb-list {
    margin: 0 auto;
    max-width: 960px
  }

  .breadcrumb-list li {
    display: inline-block;
    font-size: calc(24 / 750 * 100vw)
  }

  .breadcrumb-list li a {
    color: #271f1c;
    font-weight: 700
  }

  .breadcrumb-list li:after {
    padding: 0 .5em;
    content: '>';
    color: #271f1c
  }

  .breadcrumb-list li:last-child:after {
    content: ''
  }

  @media screen and (min-width: 980px) {
    .breadcrumb {
      padding: 0
    }

    .breadcrumb-list li {
      font-size: 12px;
      font-size: 1.2rem
    }
  }

  .pagenation-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center
  }

  .pagenation ul {
    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
  }

  .pagenation ul li {
    position: relative;
    margin-right: .3em;
    margin-bottom: .3em;
    font-size: calc(24 / 750 * 100vw);
    font-weight: 700;
    text-align: center
  }

  .pagenation ul li:last-child {
    margin-right: 0
  }

  .pagenation ul li a,
  .pagenation ul li span {
    display: block;
    padding: .7em .8em;
    color: #197ec1
  }

  .pagenation ul li.active {
    background-color: #197ec1
  }

  .pagenation ul li.active span {
    color: #fff
  }

  .pagenation ul li a:hover {
    background-color: #197ec1;
    color: #fff;
    opacity: 1
  }

  .pagenation .prev a,
  .pagenation .next a {
    padding: .8em 1.5em;
    border: 1px solid #197ec1;
    color: #197ec1
  }

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

    .pagenation .prev a,
    .pagenation .next a {
      font-size: 16px;
      font-size: 1.6rem
    }
  }

  .page-navi {
    margin: 0 auto;
    margin-top: 28vw;
    margin-left: -.5em;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center
  }

  .page-navi>div {
    margin-left: .5em;
    width: calc(50% - .5em)
  }

  .postlink-back {
    margin-left: 0 !important;
    padding-left: .5em;
    width: 35.3vw
  }

  .btn-prev,
  .btn-next {
    position: relative;
    display: block;
    padding: .7em 1em;
    border: 1px solid #197ec1;
    background-color: #fff;
    color: #197ec1;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700
  }

  .postlink-back {
    position: absolute;
    top: -14.6vw
  }

  .btn-back {
    display: block;
    padding: .7em 1em;
    border: 1px solid #197ec1;
    background-color: #197ec1;
    color: #fff;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700
  }

  .btn-prev:hover,
  .btn-next:hover {
    background-color: #197ec1;
    color: #fff
  }

  .btn-back:hover {
    background-color: #fff;
    color: #197ec1
  }

  @media screen and (min-width: 980px) {
    .page-navi {
      margin-top: 60px;
      margin-left: 0
    }

    .page-navi>div {
      margin-left: 0;
      margin-right: 5px;
      width: auto
    }

    .postlink-back {
      position: relative;
      top: 0;
      width: 150px
    }

    .btn-prev,
    .btn-next,
    .btn-back {
      font-size: 16px;
      font-size: 1.6rem
    }
  }

  .btn-wrap {
    display: block;
    width: 100%
  }

  @media screen and (min-width: 980px) {
    .btn-wrap {
      margin-left: auto;
      max-width: 150px
    }
  }

  .btn-center-wrap {
    display: block;
    margin: 0 auto;
    width: 100%
  }

  @media screen and (min-width: 980px) {
    .btn-center-wrap {
      max-width: 350px
    }
  }

  .btn-end {
    position: relative;
    display: block;
    padding: .5em 1em;
    width: 100%;
    border: 2px solid #4f4f4f;
    background-color: #4f4f4f;
    color: #fff;
    font-weight: 700;
    text-align: center;
    -webkit-transition: all .2s;
    transition: all .2s
  }

  .btn-end:hover {
    background-color: #fff;
    color: #4f4f4f
  }

  .btn-post {
    position: relative;
    display: block;
    padding: .5em 1em;
    border: 2px solid #c1272d;
    background-color: #c1272d;
    width: 100%;
    color: #fff;
    font-weight: 700;
    text-align: center;
    -webkit-transition: all .2s;
    transition: all .2s
  }

  .btn-post:after {
    content: '\f0da';
    margin-left: 1em;
    font-family: "Font Awesome 5 Free";
    font-weight: 900
  }

  .btn-post-red {
    border: 2px solid #f3141d;
    background-color: #f3141d
  }

  .btn-post-red:hover {
    background-color: #fff;
    color: #f3141d
  }

  .btn-post2 {
    position: relative;
    display: inline-block;
    padding: 1em 1em;
    border: 2px solid #f3141d;
    background-color: #fff;
    width: 100%;
    color: #f3141d;
    font-weight: 700;
    text-align: center;
    -webkit-transition: all .2s;
    transition: all .2s
  }

  .btn-post:hover {
    background-color: #fff;
    color: #c1272d
  }

  .btn-post2:hover {
    background-color: #fff;
    color: #f3141d
  }

  .btn {
    display: inline-block;
    position: relative;
    height: 3.4em;
    color: #fff;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    text-align: center;
    line-height: calc(2.6em - 1.3vw);
    -webkit-transition: all .2s;
    transition: all .2s
  }

  .btn_high {
    display: inline-block;
    position: relative;
    height: 5em;
    color: #fff;
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    text-align: center;
    line-height: calc(5em - 1.3vw);
    -webkit-transition: all .2s;
    transition: all .2s
  }

  .btn-red {
    border: 1px solid #f3141d;
    border-bottom: 5px solid #cb2f35;
    background-color: #f3141d
  }

  .btn-red:hover {
    background-color: #fff;
    color: #f3141d
  }

  .btn-blue {
    border: 1px solid #399cde;
    border-bottom: 5px solid #197ec1;
    background-color: #399cde
  }

  .btn-blue:hover {
    background-color: #fff;
    color: #399cde
  }

  .btn-green {
    border: 1px solid #2fbf4a;
    border-bottom: 5px solid #1baa36;
    background-color: #2fbf4a
  }

  .btn-green:hover {
    background-color: #fff;
    color: #2fbf4a
  }

  .btn-orange {
    border: 1px solid #ea821c;
    border-bottom: 5px solid #d06c09;
    background-color: #ea821c
  }

  .btn-orange:hover {
    background-color: #fff;
    color: #ea821c
  }

  .btn-orange2 {
    border: 1px solid #FF9300;
    border-bottom: 5px solid #E68500;
    background-color: #FF9300
  }

  .btn-orange2:hover {
    background-color: #fff;
    color: #FF9300
  }

  .btn-line {
    border: 1px solid #00b900;
    border-bottom: 5px solid #03a103;
    background-color: #00b900
  }

  .btn-line:hover {
    background-color: #fff;
    color: #00b900
  }

  .btn-yellow {
    border: 1px solid #FFC400;
    border-bottom: 5px solid #E3AF00;
    background-color: #FFC400
  }

  .btn-yellow:hover {
    background-color: #fff;
    color: #FFC400
  }

  .btn-icon:before {
    content: '';
    display: block;
    margin: 0 auto;
    background-size: contain
  }

  .btn-mail:before {
    position: relative;
    top: 4px;
    width: 24px;
    height: 18px;
    background-image: url(../img/common/mail.png)
  }

  .btn-mail:hover::before {
    background-image: url(../img/common/mail-h.png)
  }

  .btn-house:before {
    position: relative;
    top: 5px;
    width: 22px;
    height: 20px;
    background-image: url(../img/common/house.png)
  }

  .btn-house:hover::before {
    background-image: url(../img/common/house-h.png)
  }

  .btn-folder:before {
    position: relative;
    top: 7px;
    width: 24px;
    height: 20px;
    background-image: url(../img/common/folder.png)
  }

  .btn-folder:hover::before {
    background-image: url(../img/common/folder-h.png)
  }

  .btn-line:before {
    position: relative;
    top: 5px;
    width: 21px;
    height: 20px;
    background-image: url(../img/common/line_logo.png)
  }

  .btn-line:hover::before {
    background-image: url(../img/common/line_logo-h.png)
  }

  .btn-size {
    width: 100%
  }

  .btn-size300 {
    width: 80vw
  }

  .btn-sp100 {
    width: 100%
  }

  .btn-more-txt {
    font-size: 1.5rem;
    padding: 0.5em 0;
  }
}

@media screen and (min-width: 980px) {
  .btn {
    height: 60px;
    font-size: 28px;
    font-size: 1.2rem;
    line-height: 38px
  }

  .btn_high {
    height: 100px;
    font-size: 32px;
    font-size: 2rem;
    line-height: 95px
  }

  .btn-size300 {
    width: 300px
  }

  .btn-size430 {
    width: 430px
  }

  .btn-size180 {
    width: 180px
  }

  .btn-size200 {
    width: 200px
  }

  .btn-size350 {
    width: 350px
  }

  .btn-size115 {
    width: 115px
  }

  .btn-size140 {
    width: 140px
  }

  .btn-size85 {
    width: 85px
  }

  .btn-more-txt {
    font-size: 1.6rem;
    padding: 0.6em 0 0.4em;
  }
}

@media screen and (max-width: 980px) {
  .btn-icon:before {
    margin-right: auto
  }

  .btn-mail:before {
    top: .8vw;
    width: 4.4vw;
    height: 3.3vw
  }

  .btn-house:before {
    top: .5vw;
    width: 4.4vw;
    height: 3.8vw
  }

  .btn-folder:before {
    top: .8vw;
    width: 4.4vw;
    height: 3.8vw
  }
}

.form-step {
  margin: 3.33333vw 0;
  text-align: center
}

@media screen and (min-width: 980px) {
  .form-step {
    margin: 45px 0 35px 0
  }
}

.contact-form {
  width: 100%;
  max-width: 100%;
  letter-spacing: .1em
}

.contact-form tr {
  border-bottom: 3px solid #eee
}

.contact-form tr:last-child {
  border-bottom: none
}

.contact-form th {
  position: relative;
  padding: 15px 10px;
  padding-right: 1em;
  background-color: #f9f7f3;
  width: 220px;
  color: #271f1c;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  vertical-align: top
}

.contact-form td {
  position: relative;
  padding: 15px 10px;
  vertical-align: middle;
  width: calc(100% - 220px)
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="date"],
.contact-form select {
  padding: 1em .5em;
  background-color: #eeeeee;
  border-radius: 0;
  width: 100%;
  max-width: 575px;
  color: #271f1c;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"] {
  max-width: 575px
}

.contact-form .input-required {
  background-color: #ffe1ee !important
}

.contact-form select {
  width: 100%
}

.contact-form input[type="radio"],
.contact-form input[type="checkbox"] {
  margin-bottom: .8em
}

.contact-form textarea {
  padding: 10px;
  width: 100%;
  height: 120px;
  background-color: #eeeeee;
  border: 0;
  color: #271f1c;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5
}

.picture-page .contact-form td {
  vertical-align: top;
}

.picture-page .contact-form td .wpcf7-list-item {
  display: block;
  margin: 0;
}

.picture-page .contact-form input[type="radio"] {
  margin-bottom: 5px;
  margin-right: 5px;
}

.picture-page .contact-form span.wpcf7-list-item-label::before,
.picture-page .contact-form span.wpcf7-list-item-label::after {
  content: none;
}

.picture-page .contact-form td .radio-img .wpcf7-radio {
  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;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
  width: 48%;
  padding-top: 185px;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item label {
  position: relative;
  width: 100%;
  display: block;
}

.picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item label::after {
  width: 100%;
  height: 178px;
}

.picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/toilet04.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/toilet05.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/ih02.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/ih03.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/bathroom04.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
  position: absolute;
  top: -180px;
  left: 0;
  content: "";
  background: url("./../img/picture/bathroom05.png");
  background-size: contain;
  background-repeat: no-repeat;
}


.picture-page .contact-form td .bathroom-shurui-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.picture-page .contact-form td .bathroom-shurui-wrap .shurui {
  width: 30%;
}

.picture-page .contact-form td .bathroom-shurui-wrap img {
  width: 194px;
}

.picture-page .contact-form td .ih-shurui-wrap,
.picture-page .contact-form td .kitchen-shurui-wrap {
  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;
}

.picture-page .contact-form td .ih-shurui-wrap>div,
.picture-page .contact-form td .kitchen-shurui-wrap>div {
  width: 160px;
  text-align: center;
}

.picture-page .contact-form td .ih-shurui-wrap>div img,
.picture-page .contact-form td .kitchen-shurui-wrap>div img {
  margin-bottom: 5px;
}

.picture-page .contact-form td .rangefood-shurui-wrap {
  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;
}

.picture-page .contact-form td .rangefood-shurui-wrap .shurui {
  width: 130px;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap {
  width: 310px;
  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;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap>div {
  width: 48%;
  margin-bottom: 10px;
  text-align: center;
}

.picture-page .contact-form td .rangefood-shurui-wrap .img-wrap>div img {
  background: #eee;
  margin-bottom: 5px;
}


.picture-page .contact-form th img {
  margin-top: 10px;
}

.picture-page .contact-form td>img {
  display: none;
}

.picture-page .contact-form td .size-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.picture-page .contact-form td .size-wrap span {
  width: 80px;
  margin-right: 10px;
}

.picture-page .contact-form td .size-wrap .wpcf7-form-control-wrap {
  width: 120px;
}

.picture-page .contact-form td .size-wrap p {
  width: 100%;
  margin-top: 10px;
}

.picture-page .contact-form td .form-hosoku a {
  color: #f3141d;
}

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

  .picture-page .contact-form td .bathroom-shurui-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .picture-page .contact-form td .bathroom-shurui-wrap .shurui {
    width: 100%;
  }

  .picture-page .contact-form td .bathroom-shurui-wrap img {
    display: block;
    width: 50%;
  }

  .picture-page .contact-form td .ih-shurui-wrap .shurui,
  .picture-page .contact-form td .kitchen-shurui-wrap .tsurido {
    width: 100%;
  }

  .picture-page .contact-form td .ih-shurui-wrap>div,
  .picture-page .contact-form td .kitchen-shurui-wrap>div {
    width: 48%;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap .shurui,
  .picture-page .contact-form td .rangefood-shurui-wrap .product {
    width: 100%;
    margin-bottom: 10px;
  }

  .picture-page .contact-form td .rangefood-shurui-wrap .img-wrap {
    width: 100%;
  }

  .picture-page .contact-form th img {
    display: none;
  }

  .picture-page .contact-form td>img {
    display: block;
    width: 50%;
    margin-top: 5px;
    background: #F9F7F4;
  }

  .picture-page .contact-form td .size-wrap span {
    width: 25%;
  }

  .picture-page .contact-form td .size-wrap .wpcf7-form-control-wrap {
    width: 30%;
  }

  .picture-page .contact-form td .size-wrap span:last-child {
    width: auto;
    margin-right: 0;
  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 150px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 150px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -150px;

  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 130px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 130px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -130px;

  }

}

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

  .picture-page .contact-form td .radio-img .wpcf7-radio .wpcf7-list-item {
    padding-top: 120px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item label::after {
    height: 120px;
  }

  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.toilt-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.ih-ri .wpcf7-list-item:nth-of-type(2) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(1) label::after,
  .picture-page .contact-form td .radio-img.bathroom-ri .wpcf7-list-item:nth-of-type(2) label::after {
    top: -120px;

  }

}

@media screen and (max-width: 979px) {
  .contact-form tr {
    border-bottom: none
  }

  .contact-form th {
    display: block;
    margin-bottom: 2.66666vw;
    padding: .7em .5em;
    width: 100%;
    font-size: calc(32 / 750 * 100vw)
  }

  .contact-form td {
    display: block;
    padding: 0 .5em 1em .5em;
    width: 100%
  }

  .contact-form textarea {
    height: 50vw;
    font-size: calc(28 / 750 * 100vw)
  }

  .contact-form input[type="text"],
  .contact-form input[type="email"],
  .contact-form input[type="tel"],
  .contact-form input[type="date"],
  .contact-form select {
    padding: 1em .5em;
    background-color: #eee;
    border: 0;
    border-radius: 0;
    width: 100%;
    color: #271f1c;
    font-size: calc(28 / 750 * 100vw)
  }
}

.form-hosoku {
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700
}

@media screen and (max-width: 979px) {
  .form-hosoku {
    margin-top: .3em;
    font-size: calc(24 / 750 * 100vw)
  }
}

.fcred {
  color: #e60012
}

.required {
  position: absolute;
  top: 15px;
  right: 10px;
  display: inline-block;
  padding: 0 .8em;
  background-color: #c1272d;
  color: #ffcdcd;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 2.4em
}

@media screen and (max-width: 979px) {
  .required {
    top: 50%;
    right: 1em;
    margin-top: -1.2em;
    font-size: calc(22 / 750 * 100vw)
  }
}

.unrequired {
  position: absolute;
  top: 15px;
  right: 10px;
  display: inline-block;
  padding: 0 .8em;
  background-color: #ccc;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 2.4em
}

@media screen and (max-width: 979px) {
  .unrequired {
    top: 50%;
    right: 1em;
    margin-top: -1.2em;
    font-size: calc(22 / 750 * 100vw)
  }
}

.select-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%
}

.select-flex div {
  margin-right: 5px
}

.multi-wrap li {
  list-style: none !important
}

@media screen and (min-width: 980px) {
  .multi-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-end
  }

  .multi-wrap li {
    margin-right: .8em
  }

  .multi-wrap li:last-child {
    margin-right: 0
  }
}

.multi-sp-block-wrap div:last-child {
  margin-top: 5px
}

.multi-sp-block-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.multi-sp-block-wrap li {
  margin-right: 5px
}

.multi-sp-block-wrap li:last-child {
  margin-right: 0
}

.input-date {
  width: 80px;
  max-width: 100%
}

@media screen and (min-width: 980px) {
  .input-date {
    width: 60px;
    max-width: 100%
  }
}

.input-kibou {
  width: 100%;
  max-width: 100%
}

@media screen and (min-width: 980px) {
  .input-kibou {
    width: 190px;
    max-width: 100%
  }
}

.input150 {
  width: 150px !important;
  max-width: 50% !important
}

.input200 {
  width: 200px !important;
  max-width: 100% !important
}

.input300 {
  width: 300px !important;
  max-width: 100% !important
}

.input415 {
  width: 100%;
  max-width: 415px
}

.input475 {
  width: 100%;
  max-width: 475px
}

.select {
  position: relative
}

.select:before {
  position: absolute;
  right: 10px;
  top: 50%;
  content: '\f0dd';
  font-size: 16px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-top: -13px;
  pointer-events: none;
  z-index: 1
}

input::-webkit-input-placeholder {
  color: #999
}

input:-ms-input-placeholder {
  color: #999
}

input::-moz-placeholder {
  color: #999
}

.wpcf7-list-item-label {
  font-size: calc(28 / 750 * 100vw);
  font-weight: 600
}

@media screen and (min-width: 980px) {
  .wpcf7-list-item-label {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.wpcf7-list-item-label:before {
  padding-left: .5em
}

.form-radio-block span.wpcf7-list-item {
  display: block !important;
  margin-top: 10px;
  line-height: 2em
}

.form-radio-block span.wpcf7-list-item:last-child {
  margin-bottom: 10px
}

.form-checkbox-block .wpcf7-checkbox label {
  display: inline-block;
  font-weight: 500
}

.wpcf7-checkbox label {
  line-height: 2.6em
}

#soudan-check {
  margin: 0 auto;
  width: 100%
}

#soudan-check span {
  width: calc(100% - 1em)
}

#fuan-check {
  margin: 0 auto;
  width: 100%
}

#fuan-check span {
  width: calc(100% - 1em)
}

@media screen and (min-width: 980px) {
  #fuan-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%
  }

  #fuan-check span {
    width: calc(33.33333% - 1em)
  }
}

#entry-check .wpcf7-list-item {
  display: block;
  font-weight: 700
}

.wpcf7-checkbox label {
  line-height: 2.6em
}

.form-confirm-wrap {
  margin: 0 auto;
  width: 100%;
  max-width: 300px
}

.form-btn-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute
}

@media screen and (max-width: 979px) {
  .form-btn-wrap {
    margin-bottom: 26vw
  }
}

.form-back-wrap {
  margin-right: 1em;
  width: calc(30% - 1em)
}

.form-submit-wrap {
  width: 70%
}

.form-btn-submit {
  display: inline-block;
  padding: .5em 1em;
  width: 50%;
  border: 3px solid #f3141d;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: .1em;
  -webkit-transition: all .3s;
  transition: all .3s;
  cursor: pointer
}

@media screen and (max-width: 768px) {
.form-btn-submit {
  width: 100%;
  font-size: calc(30 / 750 * 100vw);
}
}

.form-btn-submit:hover {
  color: #f3141d;
  background: #fff
}

.form-btn-back {
  display: inline-block;
  padding: .5em 1em;
  width: 100%;
  border: 3px solid #271f1c;
  background-color: #fff;
  color: #271f1c;
  font-size: calc(26 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
  cursor: pointer
}

.form-btn-back:hover {
  background-color: #271f1c;
  color: #fff
}

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

  .form-btn-confirm,
  .form-btn-submit,
  .form-btn-back {
    margin: 0;
    padding: .8em 1em;
    font-size: 18px;
    font-size: 1.8rem
  }
}

div.wpcf7 .ajax-loader {
  display: none !important
}

.height28 {
  height: 2.8em
}

.heading-main-wrap .icon {
  margin-bottom: 2vw
}

.img-heading {
  width: 9.3vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .heading-main-wrap {
    display: flex;
    justify-content: center;
    align-items: center
  }

  .heading-main-wrap .icon {
    margin-right: .5em;
    margin-bottom: 0
  }

  .img-heading {
    width: 36px
  }
}

.heading-line {
  padding: .3em 0 .3em .5em;
  border-left: 15px solid #f3141d
}

.heading-post3 {
  display: block;
  padding: .2em 0 .2em .5em;
  border-left: 15px solid #c1272d
}

.heading-post4 {
  display: block;
  padding: .2em 0 .2em .5em;
  border-left: 15px solid #666
}

.cta-contact-box {
  display: flex;
  margin-left: -1.3vw
}

.cta-contact-box a {
  margin-left: 1.3vw;
}

@media screen and (min-width: 980px) {
  .cta-contact-box {
    justify-content: space-between;
    margin-left: 0
  }

  .cta-contact-box a {
    margin-left: 0;
  }
}

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

.number-wrap .image {
  margin-right: .3em
}

.migration-wrap>div {
  margin-bottom: calc(15 / 750 * 100vw)
}

.migration-wrap>div a {
  margin-bottom: calc(15 / 750 * 100vw)
}

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

  .migration-wrap>.migration-left {
    margin-right: 10px;
    margin-left: 12px;
    margin-bottom: 0;
    width: 328px
  }

  .migration-wrap>.migration-right {
    margin-bottom: 0;
    width: calc(100% - 328px - 10px - 12px)
  }

  .migration-wrap>div a {
    margin-bottom: 11px
  }
}

.migration-cta {
  border: 2px solid #f3141d
}

.migration-cta-outer {
  position: relative;
  display: flex;
  align-items: flex-end
}

.migration-cta-outer>.image {
  position: absolute;
  right: 20px;
  bottom: 0
}

.migration-cta-outer>.content {
  position: relative;
  padding: 25px 20px 20px 20px;
  width: calc(100% - 275px)
}

.migration-cta-outer>.content .sns-link {
  position: absolute;
  top: 15px;
  right: 35px;
  display: flex;
  justify-content: flex-end
}

.mainvisual {
  margin-bottom: 5vw
}
.mainvisual a {
  transition: opacity .3s;
}
.mainvisual a:hover {
  opacity: .8;
}

.mv-container {
  position: relative;
  margin: 0 auto;
  padding: 0 2.6666vw;
  max-width: 1200px
}

.swiper-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1
}

@media screen and (min-width: 980px) {
  .mainvisual {
    margin: 0
  }

  .mv-container {
    padding: 0
  }

  .swiper-container {
    width: 100%;
    height: 100%;
    overflow: visible;
    z-index: 1
  }
}

.info-wrap>div {
  margin-bottom: 40px;
  padding: 6.6vw 0;
  border-bottom: 1px solid #c9c9c9
}

.info-wrap>div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none
}

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

  .info-wrap>div {
    margin-bottom: 0;
    margin-left: 20px;
    padding: 0;
    width: calc(50% - 20px);
    border-bottom: none
  }
}

@media screen and (min-width: 980px) {
  .info {
    padding: 20px 23px;
    height: 290px;
    border: 1px solid #c9c9c9;
    overflow-y: scroll;
    overflow-x: hidden
  }
}

.info a {
  display: flex
}

.info a {
  margin-bottom: 5.3vw
}

@media screen and (min-width: 980px) {
  .info a {
    margin-bottom: 20px
  }
}

.info a .image {
  margin-right: 2.6vw;
  width: 26.6vw
}

.info a .content {
  width: calc(100% - 26.6vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .info a .image {
    margin-right: 15px;
    width: 100px
  }

  .info a .content {
    width: calc(100% - 100px - 15px)
  }
}

.heading-info-wrap {
  position: relative;
  display: flex;
  align-items: center
}

.btn-more-wrap {
  position: absolute;
  top: 50%;
  margin-top: -1em;
  right: 0
}

.btn-more {
  display: block;
  padding: .3em 1em;
  border: 2px solid #f3141d;
  background: #f3141d;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700
}

.btn-more:hover {
  background: #fff;
  color: #f3141d
}

.btn-more:after {
  content: '\f0da';
  margin-left: .5em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

@media screen and (min-width: 980px) {
  .btn-more {
    position: relative;
    margin-left: 1.3em;
    font-size: 14px;
    font-size: 1.4rem
  }
}

.news-date {
  display: block;
  padding-bottom: .5em;
  border-bottom: 1px solid #ebebeb
}

.event-label {
  display: flex;
  margin-left: -0.2vw
}

.event-label li {
  margin-left: 0.2vw;
  padding: .2em 0;
  width: 17.3vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

.event-label li.end {
  background-color: #3d3d3d;
  color: #b7b7b7
}

@media screen and (min-width: 980px) {
  .event-label li {
    margin-left: 1px;
    width: 80px;
    font-size: 12px;
    font-size: 1.2rem
  }
}

.rinen-wrap>div {
  margin: 0 auto;
  margin-bottom: 2.6vw;
  padding: 1.5em .8em;
  width: 70vw;
  border: 1px solid #f3141d
}

@media screen and (min-width: 980px) {
  .rinen-wrap {
    display: flex;
    margin-left: -10px
  }

  .rinen-wrap>div {
    margin-left: 10px;
    margin-bottom: 0;
    width: calc(33.33333% - 10px)
  }
}

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

.table1 tr {
  border-top: 1px solid #333333
}

.table1 tr:last-child {
  border-bottom: 1px solid #333333
}

.table1 th {
  padding: 1em 1em;
  width: 160px;
  background-color: #eeeeee;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: left;
  vertical-align: top
}

.table1 td {
  padding: 1em 1.5em;
  width: calc(100% - 160px);
  font-size: 14px;
  font-size: 1.4rem
}

@media screen and (max-width: 979px) {
  .table1 th {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(26 / 750 * 100vw)
  }

  .table1 td {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(24 / 750 * 100vw)
  }
}

.massage-wrap .image {
  margin-bottom: 4.6vw
}

@media screen and (min-width: 980px) {
  .massage-wrap {
    display: flex
  }

  .massage-wrap .image {
    margin-bottom: 0;
    width: 300px;
    order: 2
  }

  .massage-wrap .content {
    margin-right: 15px;
    width: calc(100% - 300px - 15px);
    order: 1
  }
}

@media screen and (max-width: 979px) {
  .massage-wrap .image img {
    max-width: 40vw
  }
}

.event-summary-outer {
  padding: 4.6vw 4vw;
  width: 100%;
  background-color: #f9f7f3
}

@media screen and (min-width: 980px) {
  .event-summary-outer {
    padding: 25px 20px
  }
}

.event-summary-flex {
  margin: 0 auto;
  width: 100%
}

.event-summary-flex .googlemaps {
  margin-top: 4vw;
  border: 0.8vw solid #fff
}

@media screen and (min-width: 980px) {
  .event-summary-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-content: space-between
  }

  .event-summary-flex .content {
    width: auto;
    flex-grow: 1
  }

  .event-summary-flex .googlemaps {
    margin-top: 0;
    margin-left: 1em;
    width: calc(45% - 1em);
    min-width: 280px;
    border: 5px solid #fff;
    flex-grow: 1
  }
}

.event-icon-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: .5em 0
}

.event-icon-list li {
  display: block;
  margin-right: .5em;
  margin-bottom: .5em;
  padding: .5em 1em;
  color: #fff
}

.event-cat1 {
  background: #076739
}

.event-cat2 {
  background: #004986
}

.event-cat3 {
  background: #eb6100
}

.event-cat4 {
  background: #eb6877
}

.event-cat5 {
  background: #2589cb
}

.event-cat6 {
  background: #ae5da1
}

.event-soudan-box .box-title {
  display: block;
  padding: .5em 0;
  width: 100%;
  background-color: #313131;
  color: #fff;
  font-weight: 700;
  text-align: center
}

.event-soudan-list {
  padding: 1em;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  background-color: #fff
}

.event-soudan-list li {
  font-weight: 700;
  line-height: 1.8em;
  white-space: pre-line
}

.event-soudan-list li:after {
  padding: .5em;
  content: '/'
}

.event-soudan-list li:last-child:after {
  content: ''
}

@media screen and (min-width: 980px) {
  .event-soudan-box {
    position: relative;
    display: flex;
    align-items: stretch
  }

  .event-soudan-box .box-title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    width: 6em
  }

  .event-soudan-list {
    padding: 1em;
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 6em);
    background-color: #fff
  }
}

.event-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  background-color: #fff
}

.event-summary dt {
  padding: .7em .3em;
  width: 30%;
  color: #c1272d;
  font-weight: 700;
  text-align: left
}

.event-summary dd {
  align-self: center;
  padding: .2em .7em;
  width: 70%;
  font-weight: 700
}

@media screen and (min-width: 980px) {
  .event-summary dt {
    width: 95px
  }

  .event-summary dd {
    width: calc(100% - 95px)
  }
}

.event-detail-image-flex {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw
}

.event-detail-image-flex a {
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  width: calc(33.33333% - 1.3vw)
}

@media screen and (min-width: 980px) {
  .event-detail-image-flex {
    margin-left: -10px
  }

  .event-detail-image-flex a {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px)
  }
}

.map_area {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

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

.illust {
  width: 330px;
}

.illust img {
  display: block;
  width: 100%;
}

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

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

.post-event a {
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  width: calc(50% - 2.6vw);
  box-shadow: 0px 0px 3px 0px rgba(126, 126, 126, 0.7)
}

@media screen and (min-width: 980px) {
  .post-event {
    margin-left: -15px
  }

  .post-event a {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.event-inner {
  padding: 1em .7em
}

.event-day {
  display: flex;
  align-items: center
}

.event-day .label {
  padding: .6em 0;
  width: 3em;
  background-color: #f3141d;
  color: #fff;
  text-align: center;
  line-height: 2.2em
}

.event-day .date {
  display: flex;
  align-items: center;
  align-self: stretch;
  padding: .6em .8em;
  width: calc(100% - 3em);
  min-height: 2.8em;
  background-color: #c1272d;
  color: #fff
}

.news-archive {
  display: flex
}

.wannyan-archive {
  display: flex
}

.news-archive .image {
  margin-right: 2.6vw;
  width: 26.6vw
}

.news-archive .content {
  width: calc(100% - 26.6vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .news-archive .image {
    margin-right: 15px;
    width: 100px
  }

  .news-archive .content {
    width: calc(100% - 100px - 15px)
  }
}

.taiken-wrap {
  display: flex;
  align-items: center;
  padding: 1.3vw;
  background-color: #f9f7f3
}

.taiken-wrap .content {
  width: calc(100% - 31.3vw - 2vw)
}

@media screen and (min-width: 980px) {
  .taiken-wrap {
    padding: 10px
  }

  .taiken-wrap .content {
    width: calc(100% - 235px - 15px)
  }
}

.taiken-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw;
  margin-right: 2vw;
  width: 31.3vw
}

.taiken-list li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  padding: .7em 0;
  width: calc(33.33333% - 1.3vw);
  background-color: #fff;
  color: #000;
  font-size: calc(16 / 750 * 100vw);
  font-weight: 700
}

.taiken-list li:nth-child(4),
.taiken-list li:nth-child(5),
.taiken-list li:last-child {
  margin-bottom: 0
}

@media screen and (min-width: 980px) {
  .taiken-list {
    margin-left: -10px;
    margin-right: 15px;
    width: 235px
  }

  .taiken-list li {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px);
    font-size: 16px;
    font-size: 1.6rem
  }
}

.showroom-tennai-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.3vw
}

.showroom-tennai-wrap a {
  margin-left: 1.3vw;
  margin-bottom: 1.3vw;
  width: calc(33.33333% - 1.3vw)
}

@media screen and (min-width: 980px) {
  .showroom-tennai-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px
  }

  .showroom-tennai-wrap a {
    margin-left: 10px;
    margin-bottom: 10px;
    width: calc(33.33333% - 10px)
  }
}

.showroom-wrap>div {
  padding: 6.6vw 0
}

.showroom-wrap>div:nth-child(1) {
  border-bottom: 1px solid #c9c9c9
}

@media screen and (min-width: 980px) {
  .showroom-wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

  .showroom-wrap>div {
    padding: 0;
    width: 50%;
    margin-bottom: 3rem;
  }

  .showroom-wrap>div:nth-child(1) {
    border-right: 1px solid #c9c9c9;
    border-bottom: none
  }

  .showroom-wrap>div:nth-child(2) {
    padding-left: 38px
  }
}

.showroom-inner-wrap {
  display: flex
}

.showroom-inner-wrap .image {
  margin-right: 2.6vw;
  width: 48vw
}

.showroom-inner-wrap .content {
  width: calc(100% - 48vw - 2.6vw)
}

@media screen and (min-width: 980px) {
  .showroom-inner-wrap {
    width: 445px
  }

  .showroom-inner-wrap .image {
    margin-right: 0;
    width: 230px
  }

  .showroom-inner-wrap .content {
    margin: 0;
    padding-left: 10px;
    width: calc(100% - 230px)
  }
}

.showroom-setsubi {
  display: flex;
  margin-left: -0.2vw
}

.showroom-setsubi li {
  margin-left: 0.2vw;
  padding: .2em 0;
  width: 17.3vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .showroom-setsubi li {
    margin-left: 1px;
    width: 80px;
    font-size: 12px;
    font-size: 1.2rem
  }
}
.showroom-data {
  margin-bottom: 2vw;
}
@media screen and (min-width: 980px) {
  .showroom-data {
    display: flex;
    margin-bottom: 10px;
  }

  .showroom-data dt {
    width: 61px
  }

  .showroom-data dd {
    width: calc(100% - 45px)
  }
  .area-fukita {
    padding: 38px 0 0;
  }
}

.riyu-heading {
  display: flex;
  justify-content: center;
  align-items: center
}

.riyu-heading .image {
  margin-right: 1em
}

@media screen and (min-width: 980px) {
  .riyu-heading {
    justify-content: flex-start
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-heading,
  .riyu-wrap div:nth-of-type(4)>.riyu-heading {
    justify-content: flex-end
  }
}

@media screen and (max-width: 979px) {
  .riyu-heading .image img {
    width: 20.5vw;
    height: auto
  }
}

.riyu-page-wrap>.content {
  margin-bottom: 4.6vw;
  padding: 1.5em;
  background-color: rgba(249, 249, 249, 0.7);
  box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3)
}

@media screen and (min-width: 980px) {
  .riyu-page-wrap {
    position: relative
  }

  .riyu-page-wrap>.content {
    position: relative;
    margin-bottom: 0;
    width: 385px;
    z-index: 2
  }

  .riyu-page-wrap>.image {
    margin-bottom: 0;
    z-index: 1
  }

  .riyu-wrap div:nth-of-type(1)>.riyu-page-wrap>.content,
  .riyu-wrap div:nth-of-type(3)>.riyu-page-wrap>.content {
    position: relative;
    margin-right: auto
  }

  .riyu-wrap div:nth-of-type(1)>.riyu-page-wrap>.image,
  .riyu-wrap div:nth-of-type(3)>.riyu-page-wrap>.image {
    position: absolute;
    top: 50px;
    right: 0;
    width: 385px
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-page-wrap>.content,
  .riyu-wrap div:nth-of-type(4)>.riyu-page-wrap>.content {
    position: absolute;
    top: 0;
    right: 0
  }

  .riyu-wrap div:nth-of-type(2)>.riyu-page-wrap>.image {
    position: relative;
    top: 50px;
    margin-right: auto;
    width: 415px
  }

  .riyu-wrap div:nth-of-type(4)>.riyu-page-wrap>.image {
    position: relative;
    top: 50px;
    margin-right: auto;
    width: 310px
  }
}

.riyu-kaiin {
  padding: 2.6vw 4vw;
  border: 2px solid #f3141d
}

.riyu-kaiin-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6vw
}

.riyu-kaiin-wrap>div {
  margin-left: 6vw;
  margin-bottom: 6vw;
  width: calc(50% - 6vw)
}

@media screen and (min-width: 980px) {
  .riyu-kaiin {
    padding: 15px 25px;
    border: 2px solid #f3141d
  }

  .riyu-kaiin-wrap {
    flex-wrap: nowrap;
    margin-left: -25px
  }

  .riyu-kaiin-wrap>div {
    margin-left: 25px;
    margin-bottom: 0;
    width: calc(25% - 25px)
  }
}

@media screen and (min-width: 980px) {
  .riyu-title-wrap {
    margin-left: -52px;
    width: 1064px
  }
}

.sec-riyu {
  background-image: url(../img/riyu/bg_sp.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.webp .sec-riyu {
  background-image: url(../img/riyu/bg_sp.webp);
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 980px) {
  .sec-riyu {
    background-image: url(../img/riyu/bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
  }

  .webp .sec-riyu {
    background-image: url(../img/riyu/bg.webp);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

.riyu-front-wrap>div {
  margin-bottom: calc(15 / 750 * 100vw)
}

.riyu-front-wrap>div a {
  margin-bottom: calc(15 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .riyu-front-wrap {
    display: flex;
    align-items: center;
    margin-left: -20px
  }

  .riyu-front-wrap>div {
    margin-left: 20px;
    margin-bottom: 0;
    width: calc(50% - 20px)
  }

  .riyu-front-wrap>div a {
    margin-bottom: 11px
  }
}

.riyu-menu {
  position: relative
}

.riyu-menu .label {
  position: absolute;
  top: -1.7vw;
  left: -1.3vw
}

.riyu-menu .label img {
  max-width: 38.5vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .riyu-menu .label {
    top: -10px;
    left: -13px
  }

  .riyu-menu .label img {
    max-width: 237px
  }
}

.btn-riyu {
  display: inline-block;
  padding: .7em 0;
  width: 100%;
  max-width: 300px;
  border: 1px solid #f3141d;
  color: #f3141d;
  text-align: center
}

.btn-riyu:after {
  content: '\f054';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.btn-riyu:hover {
  background-color: #f3141d;
  color: #fff
}

.lineup-mv {
  position: relative;
  margin-left: -3.3vw;
  width: calc(100% + 6.6vw)
}

.lineup-mv-box {
  padding: 0 3.3vw;
  width: 100%
}

.lineup-mv-box .title {
  display: block;
  padding: .3em 0;
  background-color: #f3141d
}

.lineup-mv-box .content {
  position: relative;
  padding: 1em;
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2);
  background-color: #fff
}

@media screen and (max-width: 979px) {
  .lineup-mv-box {
    position: relative;
    top: -10.2vw
  }
}

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

  .lineup-mv-box {
    position: absolute;
    padding: 0;
    bottom: 25px;
    right: 25px;
    width: 320px
  }

  .lineup-mv-box .content {
    position: relative;
    padding: 1.5em 1em;
    box-shadow: none;
    background-color: rgba(255, 255, 255, 0.8)
  }
}

.lineup-mv-box .content .price-wrap {
  margin-left: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 59.3vw
}

@media screen and (min-width: 980px) {
  .lineup-mv-box .content .price-wrap {
    width: 225px
  }
}

.lineup-mv-box .komikomi {
  position: absolute;
  bottom: 1.3vw;
  left: 0.6vw
}

@media screen and (min-width: 980px) {
  .lineup-mv-box .komikomi {
    left: -15px;
    bottom: -15px
  }
}

.tri-line {
  position: relative;
  padding-bottom: .5em;
  border-bottom: 1px solid #000;
  margin: 0
}

.tri-line:before {
  content: "";
  position: absolute;
  bottom: -1.1em;
  left: 50%;
  margin-left: -.3em;
  border: .6em solid transparent;
  border-top: .6em solid #fff;
  z-index: 2
}

.tri-line:after {
  position: absolute;
  margin-left: -.3em;
  border: .6em solid transparent;
  border-top-color: #000;
  border-bottom-width: 0;
  bottom: -.6em;
  content: "";
  left: 50%;
  z-index: 1
}

.lineup-post-section {
  background-color: #f9f7f3;
  margin-left: -3.3vw;
  padding: 6.6vw;
  width: calc(100% + 6.6vw)
}

@media screen and (min-width: 980px) {
  .lineup-post-section {
    background-color: #f9f7f3;
    margin-left: 0;
    padding: 50px 15px 0 15px;
    width: 100%
  }
}

@media screen and (max-width: 979px) {
  .img-caption {
    max-width: 62.66666vw;
    height: auto
  }
}

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

.lineup-onayami-caption span.dot {
  position: relative;
  font-size: calc(34 / 750 * 100vw)
}

.lineup-onayami-caption span.dot:before {
  position: absolute;
  top: -1vw;
  left: 50%;
  margin-left: -0.6vw;
  content: '●';
  font-size: calc(10 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .lineup-onayami-caption {
    padding: 20px .5em .5em .5em;
    font-size: 22px;
    font-size: 2.2rem
  }

  .lineup-onayami-caption span.dot {
    font-size: 32px;
    font-size: 3.2rem
  }

  .lineup-onayami-caption span.dot:before {
    top: -12px;
    margin-left: -5px;
    font-size: 10px;
    font-size: 1rem
  }
}

.lineup-migration-link a {
  margin-bottom: 4.66666vw
}

@media screen and (min-width: 980px) {
  .lineup-migration-link {
    display: flex;
    margin-left: -20px
  }

  .lineup-migration-link a {
    margin-left: 20px;
    margin-bottom: 0;
    width: calc(50% - 20px)
  }
}

.lineup-kaiketsu {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-left: -2.66666vw
}

.lineup-kaiketsu li {
  margin-left: 2.66666vw;
  margin-bottom: 2.66666vw;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 0;
  width: calc(50% - 2.66666vw);
  border-radius: .2em;
  background-color: #e4f1ff;
  color: #036eb8;
  font-size: calc(28 / 750 * 100vw);
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .lineup-kaiketsu {
    margin-left: -25px
  }

  .lineup-kaiketsu li {
    margin-left: 25px;
    margin-bottom: 25px;
    width: calc(33.33333% - 25px);
    border-radius: 10px;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.lineup-nayami-list li {
  margin-bottom: .5em;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  padding-left: 1.5em
}

.lineup-nayami-list li:before {
  content: '';
  display: inline-block;
  margin-left: -1em;
  margin-right: .5em;
  background-image: url(../img/page/lineup/check@2x.png);
  background-size: contain;
  width: 2.66666vw;
  height: 2.55555vw
}

@media screen and (min-width: 980px) {
  .lineup-nayami-list li {
    font-size: 16px;
    font-size: 1.6rem
  }

  .lineup-nayami-list li:before {
    width: 16px;
    height: 14px
  }
}

.lineup-nayami>.image {
  text-align: right
}

.lineup-nayami>.image img {
  max-width: 33.3333vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .lineup-nayami {
    display: flex;
    align-items: center
  }

  .lineup-nayami>.image {
    width: 240px;
    text-align: center
  }

  .lineup-nayami>.image img {
    max-width: 200px;
    height: auto
  }

  .lineup-nayami>.content {
    padding-left: 0;
    width: calc(100% - 240px)
  }
}

.lineup-price-wrap-a {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.lineup-late-circle {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 24vw;
  height: 24vw;
  border-radius: 50%;
  background-color: #fff000
}

.lineup-late-circle .late {
  display: inline-block;
  width: 100%;
  font-size: calc(72 / 750 * 100vw);
  color: #000;
  text-align: center;
  line-height: .7em
}

.lineup-late-circle .late .parsent {
  font-size: calc(48 / 750 * 100vw)
}

.lineup-late-circle .late .off {
  font-size: calc(60 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .lineup-late-circle {
    width: 96px;
    height: 96px
  }

  .lineup-late-circle .late {
    font-size: 36px;
    font-size: 3.6rem
  }

  .lineup-late-circle .late .parsent {
    font-size: 24px;
    font-size: 2.4rem
  }

  .lineup-late-circle .late .off {
    font-size: 30px;
    font-size: 3.0rem
  }
}

.lineup-plan-price-wrap {
  display: flex;
  align-items: center;
  padding-top: .5em
}

.lineup-plan-price-wrap>.image {
  width: 17.33333vw
}

.lineup-plan-price-wrap .komikomi {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FDEF50;
  width: 24vw;
  height: 24vw;
  font-size: 3.733vw;
  font-weight: 900;
  text-align: center;
  border-radius: 50%;
}

@media screen and (min-width: 980px) {
  .lineup-plan-price-wrap>.image {
    width: 75px
  }

  .lineup-plan-price-wrap .komikomi {
    width: 90px;
    height: 90px;
    font-size: 16px;
  }
}

.lineup-post-heading {
  display: flex;
  align-items: center;
  padding: .6em 0;
  height: 4em
}

.lineup-post-heading img {
  width: 100%;
  height: auto;
  max-height: 100%
}

.lineup-post-heading>div {
  width: 30%
}

.lineup-post-heading .heading {
  width: 70%;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 600
}

.lineup-logo {
  position: absolute;
  top: 1em;
  left: .5em
}

.lineup-logo img {
  width: 32.6vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .lineup-logo img {
    width: 125px
  }
}

.lineup-pack-heading {
  position: relative;
  font-size: calc(38 / 750 * 100vw)
}

.lineup-pack-heading:before {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-left@2x.png);
  background-size: contain;
  display: inline-block;
  width: 2.4vw;
  height: 5.3vw
}

.lineup-pack-heading:after {
  margin-left: .5em;
  content: '';
  background-image: url(../img/lineup/heading-right@2x.png);
  background-size: contain;
  display: inline-block;
  width: 2.4vw;
  height: 5.3vw
}

@media screen and (min-width: 980px) {
  .lineup-pack-heading {
    font-size: 36px;
    font-size: 3.6rem
  }

  .lineup-pack-heading:before {
    width: 16px;
    height: 35px
  }

  .lineup-pack-heading:after {
    width: 16px;
    height: 35px
  }
}

.lineup-pack-box {
  padding: 4.66666vw 4.66666vw 1.6vw 4.66666vw;
  background-color: #e5f0f8
}

.pack-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4vw
}

.pack-list li {
  margin-left: 4vw;
  margin-bottom: 4vw;
  width: calc(50% - 4vw)
}

@media screen and (min-width: 980px) {
  .lineup-pack-box {
    padding: 30px 30px 10px 30px
  }

  .pack-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .pack-list li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.lineup-product-heading {
  display: flex;
  align-items: center;
  padding: .4em 0;
  height: 4em;
  border-bottom: 2px solid #c1272d
}

.lineup-product-heading img {
  width: auto;
  height: 11.2vw
}

.lineup-product-heading .heading {
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  line-height: 1.4em
}

@media screen and (min-width: 980px) {
  .lineup-product-heading img {
    height: 50px
  }

  .lineup-product-heading .heading {
    font-size: 20px;
    font-size: 2.0rem
  }
}

.lineup-product>.image {
  margin-bottom: 6.6vw
}

@media screen and (min-width: 980px) {
  .lineup-product {
    display: flex
  }

  .lineup-product>.image {
    margin-right: 20px;
    margin-bottom: 0;
    width: 330px
  }

  .lineup-product>.content {
    width: calc(100% - 330px - 20px)
  }
}

.lineup-late {
  display: block;
  padding: .2em 2.5em;
  background-color: #f3141d;
  color: #fff
}

.lineup-late span {
  padding: 0 0.3em
}

.lineup-cate-komikomi {
  display: block;
  padding: .3em 0;
  background-color: #000
}

.lineup-data-inner {
  padding: 4vw 2.6vw 0 2.6vw
}

.lineup-data-inner .plan-heading {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media screen and (min-width: 980px) {
  .lineup-data-inner {
    padding: 20px 10px 0 10px
  }
}

.plan-heading {
  height: 2.8em
}

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

.lineup-price-wrap .tax {
  margin-left: .2em;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 600;
  line-height: 1.2em
}

@media screen and (min-width: 980px) {
  .lineup-price-wrap .tax {
    font-size: 26px;
    font-size: 2.6rem
  }
}

.lineup-price-outer {
  display: flex;
  align-items: flex-end
}

.lineup-price-outer .image {
  width: 120px
}

.lineup-price-outer .content {
  width: calc(100% - 120px)
}

.lineup-price-box {
  padding: 1em;
  background-color: #f9f7f3
}

.lineup-price-box li:after {
  display: block;
  margin: .5em 1em .5em .3em;
  content: '\f055';
  color: #f3141d;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.lineup-price-box li:last-child::after {
  content: ''
}

@media screen and (min-width: 980px) {
  .lineup-price-box li:after {
    display: inline;
    margin: 0 1em 0 .3em
  }

  .lineup-price-box {
    display: flex;
    justify-content: center
  }
}

.lineup-function-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6vw
}

.lineup-function-wrap li {
  margin-left: 6vw;
  margin-bottom: 6vw;
  width: calc(50% - 6vw)
}

@media screen and (min-width: 980px) {
  .lineup-function-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -30px
  }

  .lineup-function-wrap li {
    margin-left: 30px;
    margin-bottom: 35px;
    width: calc(33.33333% - 30px)
  }
}

.lineup-shadow {
  text-shadow: #fff 1px 1px 10px, #fff -1px 1px 10px, #fff 1px -1px 10px, #fff -1px -1px 10px
}

.gallery-side .full {
  position: relative;
  margin-bottom: 6vw;
  width: 100%;
  text-align: center
}

.gallery-side .thumb img {
  cursor: pointer;
  transition: all 0.3s
}

.gallery-side .thumb img:hover {
  opacity: 0.6
}

@media screen and (min-width: 980px) {
  .gallery-side {
    display: flex;
    align-items: flex-start
  }

  .gallery-side .full {
    margin-right: 15px;
    margin-bottom: 0;
    width: 240px
  }

  .gallery-side .thumb {
    width: calc(100% - 240px - 15px)
  }
}

.gallery-side .thumb ul {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2vw
}

.gallery-side .thumb ul li {
  margin-left: 2vw;
  margin-bottom: 2vw;
  width: calc(25% - 2vw);
  transition: all 0.3s ease
}

@media screen and (min-width: 980px) {
  .gallery-side .thumb ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .gallery-side .thumb ul li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.seko-voice-wrap .image {
  margin-bottom: 6.66666vw
}

@media screen and (min-width: 980px) {
  .seko-voice-wrap {
    display: flex
  }

  .seko-voice-wrap .image {
    padding-right: 1.5em;
    margin-bottom: 0;
    flex-grow: 1
  }

  .seko-voice-wrap .content {
    flex-grow: 2
  }
}

.seko-tantou-box {
  padding: 2em 1em 1.5em;
  background-color: #f9f7f3
}

.stb-sp {
  width: 100%;
}

.stb-sp .stb-sp-img {
  float: right;
  width: 40%;
  padding-left: 10px;
}

.stb-sp .stb-sp-img img {
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
}

.stb-sp .stb-sp-img h5 {
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  color: #c1272d;
  text-align: center;
}

.stb-sp p {}

.stb-sp .clear {
  clear: both;
}



.seko-tantou-heading {
  text-align: center
}
.seko-cta-btn-tx {
  text-align: center;
  margin-bottom: 10px;
  font-size: 4vw;
}
.seko-cta-btn-tx span{
  background: linear-gradient(transparent 60%, #ff6 60%);
}
.seko-cta-btn {
  margin: 0 auto 80px;
  background: #c1272d;
  text-align: center;
  font-weight: bold;
  border: solid 2px #fff;
  position: relative;
  width: 100%;
  font-size: 4.8vw;
}
.seko-cta-btn a {
  display: block;
  padding: 20px 0 20px 30px;
  color: #fff;
  transition: all .2s;
}
.seko-cta-btn:hover {
  color: #c1272d;
  border: solid 2px #c1272d;
  background: #fff;
}
.seko-cta-btn:hover a{
  color: #c1272d;
}
.seko-cta-btn::before {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 17vw;
  content: "";
  background: url(../img/cta/mail-icon.png) 0 0 no-repeat;
  background-size: contain;
  width: 26px;
  height: 19px;
}
.seko-cta-btn:hover::before {
  background: url(../img/cta/mail-icon-red.png) 0 0 no-repeat;
}
#seko-kanren-link li {
  border-right: solid 1px #ccc;
  display: block;
  padding: 0;
  margin-bottom: 3vw;
}
#seko-kanren-link li:first-child {
  padding: 0 15px 0 0;
}
#seko-kanren-link li:last-child {
  border: none;
}
.post-title textarea {
  pointer-events: none!important;
  max-width: 100%!important;
  background-color: #fff!important;
  height: 15vw!important;
}
.seko-cta-btn-tx br {
  display: block;
}
@media screen and (min-width: 980px) {

  .seko-tantou-box {
    padding: 25px;
  }

  .seko-tantou-box .flex-wrap {
    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;
    padding-top: 0;
  }

  .seko-tantou-box .flex-wrap .img {
    width: 30%;

  }

  .seko-tantou-box .flex-wrap .img img {
    max-width: 100%;
    height: auto;
  }

  .seko-tantou-box .flex-wrap .img h5 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    color: #c1272d;
    text-align: center;
  }

  .seko-tantou-box .flex-wrap .txt {
    width: 67%;
    order: 2;
  }

  .stb-sp {
    display: none;
  }

  .seko-tantou-heading {
    padding-bottom: .5em;
    border-bottom: 1px solid #c1272d;
    text-align: left
  }
  .post-title textarea {
    height: 30px!important;
    overflow: hidden;
  }
  .post-title ::-webkit-resizer {
    display: none;
  }
  .seko-cta-btn {
    width: 350px;
    font-size: 18px;
  }
  .seko-cta-btn::before {
    left: 65px;
  }
  .seko-cta-btn-tx {
    font-size: 18px;
  }
  .seko-cta-btn-tx br {
    display: none;
  }
  #seko-kanren-link li {
    display: inline-block;
    padding: 0 15px;
    margin-bottom: 0;
  }
  .seko-tantou-box .txt h2 {
    position: static;
    font-size: 18px;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
  }
}

.seko-point-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6.66666vw
}

.seko-point-wrap li {
  margin-left: 6.66666vw;
  margin-bottom: 5.33333vw;
  width: calc(50% - 6.66666vw)
}

@media screen and (min-width: 980px) {
  .seko-point-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .seko-point-wrap li {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.table-seko-data dt {
  padding: .5em .7em;
  background-color: #c1272d;
  color: #fff;
  width: 100%;
  font-size: calc(30 / 750 * 100vw);
  font-weight: 700;
  text-align: left
}

.table-seko-data dd {
  padding: .5em .7em;
  background-color: #f9f7f3;
  width: 100%;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .table-seko-data {
    display: flex;
    flex-wrap: wrap
  }

  .table-seko-data dt {
    padding: .7em;
    width: 30%;
    border-bottom: 2px solid #fff;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center
  }

  .table-seko-data dd {
    padding: .7em;
    width: 70%;
    border-bottom: 2px solid #fff;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.seko-detail-image-wrap .before {
  margin: 0 auto;
  margin-bottom: 8.66666vw;
  width: 46vw;
  text-align: center
}

.seko-detail-image-wrap .before .label {
  display: inline-block;
  padding: .3em 1em;
  background-color: #036eb8;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  text-align: center
}

.seko-detail-image-wrap .after {
  margin: 0 auto;
  width: 100%;
  text-align: center
}

.seko-detail-image-wrap .after .label {
  display: inline-block;
  padding: .3em 1em;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(28 / 750 * 100vw);
  text-align: center
}

@media screen and (min-width: 980px) {
  .seko-detail-image-wrap {
    display: flex
  }

  .seko-detail-image-wrap .before {
    margin-right: 50px;
    margin-bottom: 0;
    width: 270px;
    text-align: left
  }

  .seko-detail-image-wrap .before .label {
    font-size: 16px;
    font-size: 1.6rem
  }

  .seko-detail-image-wrap .after {
    width: calc(100% - 270px - 50px);
    text-align: left
  }

  .seko-detail-image-wrap .after .label {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.seko-tax-box {
  margin: 0 0 3.3vw 2.2vw;
  width: calc(50% - 2.2vw);
  border: 1px solid #c9c9c9;
  background-color: #fff
}

.seko-tax-box>.image {
  padding: 1.4vw 1.4vw 0 1.4vw
}

.seko-tax-wrap>.image {
  margin: 0 auto;
  margin-bottom: 6vw;
  width: 60vw
}

@media screen and (min-width: 980px) {
  .seko-tax-wrap {
    display: flex;
    align-items: flex-start
  }

  .seko-tax-box>.image {
    padding: 2px 2px 0 2px
  }

  .seko-tax-wrap>.image {
    margin-right: 15px;
    margin-bottom: 0;
    width: 200px
  }

  .seko-tax-wrap>.content {
    width: calc(100% - 200px - 15px)
  }
}

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

.seko-post-wrap a {
  margin-left: 2.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 2.6vw);
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2)
}

@media screen and (min-width: 980px) {
  .seko-post-wrap {
    margin-left: -20px
  }

  .seko-post-wrap a {
    margin-left: 20px;
    margin-bottom: 35px;
    width: calc(33.33333% - 20px)
  }
}

.icon-box {
  position: relative
}

.icon-box .new {
  position: absolute;
  top: 0;
  left: 0;
  padding: .1em .5em;
  background-color: #c1272d;
  color: #fff
}

.box-data {
  padding: .7em .7em
}

.box-data h4 {
  height: calc(101 / 750 * 100vw);
}

.seko_cat-wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 3.33333vw 0 0 -2.6vw
}

.seko_cat-wrap a {
  margin-left: 2.6vw;
  margin: 0 0 4.6vw 2.6vw;
  width: calc(33.33333% - 2.6vw);
  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.2)
}

.seko_cat-wrap a .image {
  padding: 1.46666vw 1.46666vw 0 1.46666vw
}

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

  .box-data h4 {
    height: 3.92rem;
  }

  .seko_cat-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 30px 0 0 -15px
  }

  .seko_cat-wrap a {
    margin: 0 0 35px 15px;
    width: calc(20% - 15px)
  }

  .seko_cat-wrap a .image {
    padding: 5px 5px 0 5px
  }
}

.seko-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.2vw
}

.seko-wrap a {
  margin: 0 0 3.3vw 2.2vw;
  width: calc(50% - 2.2vw);
  border: 1px solid #c9c9c9;
  background-color: #fff
}

.seko-wrap a .image {
  padding: 1.4vw 1.4vw 0 1.4vw
}

@media screen and (min-width: 980px) {
  .seko-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px
  }

  .seko-wrap a {
    margin: 0 0 20px 10px;
    width: calc(25% - 10px)
  }

  .seko-wrap a .image {
    padding: 2px 2px 0 2px
  }
}

.seko-heading-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 9.3vw
}

.seko-heading-wrap .icon {
  margin-right: .5em
}

.img-sekoicon {
  width: 6.4vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .seko-heading-wrap {
    height: 45px
  }

  .img-sekoicon {
    width: 26px
  }
}

#category-menu .seko-heading {
  margin-left: .3em
}

@media screen and (min-width: 980px) {
  #category-menu .seko-heading {
    font-size: 15px;
    font-size: 1.5rem
  }
}

#area-menu a{
  border: solid 2px #c1272d;
  text-align: center;
  padding: 12px 0 10px;
  color: #c1272d;
}
#area-menu a span{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 6px;
  border-color: transparent transparent transparent #c1272d;
  display: inline-block;
  position: relative;
  top: 1px;
  left: 5px;
}
#area-menu a:hover {
  color: #fff;
  background: #c1272d;
  opacity: 1;
}
#area-menu a:hover span{
  border-color: transparent transparent transparent #fff;
}
.voice {
  padding: 7.3vw 6.6vw;
  background-color: #f9f7f3
}

.voice .image {
  margin-bottom: 6.6vw
}

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

  .voice {
    padding: 25px 20px;
    background-color: #f9f7f3;
    display: flex
  }

  .voice .image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 180px
  }

  .voice .content {
    width: calc(100% - 25px)
  }
}

.voice-data {
  display: flex;
  align-items: center;
  width: 100%
}

.voice-data dt {
  padding: .7em 0;
  width: 6em;
  background-color: #c1272d;
  color: #fff;
  font-weight: 700;
  text-align: center
}

.voice-data dd {
  padding: .7em 1em;
  width: calc(100% - 6em);
  background-color: #fff;
  font-weight: 700
}

.voice-tantou-box {
  padding: 1.5em 1em;
  background-color: #fff
}

.voice-tantou-heading {
  padding-bottom: .5em;
  border-bottom: 1px solid #c1272d
}

.voice-other-image a {
  margin-bottom: 4.6vw
}

@media screen and (min-width: 980px) {
  .voice-other-image {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px
  }

  .voice-other-image a {
    margin-left: 15px;
    margin-bottom: 20px;
    width: calc(50% - 15px)
  }
}

.post-voice {
  display: flex;
  flex-wrap: wrap;
  margin-left: -6.6vw
}

.post-voice .post {
  margin-left: 6.6vw;
  margin-bottom: 8vw;
  width: calc(50% - 6.6vw)
}

@media screen and (min-width: 980px) {
  .post-voice {
    margin-left: -15px
  }

  .post-voice .post {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px)
  }
}

.voice-box {
  margin-top: 1.86666vh;
  padding: .8em 0;
  border: 1px dotted #399cde
}

.voice-box p {
  font-size: calc(18 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .voice-box {
    margin-top: 20px
  }

  .voice-box p {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.voive-outer {
  margin-top: 3.6vw
}

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

.voice-wrap a {
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  padding: 3.3vw;
  width: calc(50% - 2.6vw);
  border: 1px solid #c9c9c9
}

@media screen and (min-width: 980px) {
  .voive-outer {
    margin-top: 30px
  }

  .voice-wrap {
    flex-wrap: nowrap;
    margin-left: -20px
  }

  .voice-wrap a {
    margin-left: 20px;
    margin-bottom: 0;
    padding: 20px;
    width: calc(25% - 20px)
  }
}

.staff-box {
  padding: 4.6vw 2.6vw;
  background-color: #f9f7f3
}

@media screen and (min-width: 980px) {
  .staff-box {
    padding: 25px 20px;
    background-color: #f9f7f3
  }
}

.staff-wrap .image {
  margin-bottom: 4.6vw
}

.staff-wrap .image img {
  max-width: 60vw
}

@media screen and (min-width: 980px) {
  .staff-wrap {
    display: flex;
    align-items: stretch
  }

  .staff-wrap .image {
    margin-right: 20px;
    margin-bottom: 0;
    width: 200px
  }

  .staff-wrap .image img {
    max-width: 100%
  }

  .staff-wrap .content {
    width: calc(100% - 200px - 20px)
  }
}

.table-staff {
  margin: 0 auto;
  width: 100%
}

.table-staff tr:last-child {
  border-bottom: none
}

.table-staff tr {
  border-bottom: 5px solid #f9f7f3
}

.table-staff th {
  padding: .5em;
  width: 28%;
  background-color: #c1272d;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: left;
  line-height: 1.75em;
  vertical-align: top
}

.table-staff td {
  padding: .5em 1em;
  width: calc(100% - 28%);
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7em
}

@media screen and (max-width: 979px) {
  .table-staff tr {
    border-bottom: 0.6vw solid #f9f7f3
  }

  .table-staff th {
    display: block;
    padding: .5em;
    width: 100%;
    font-size: calc(28 / 750 * 100vw)
  }

  .table-staff td {
    display: block;
    padding: .5em;
    width: 100%;
    font-size: calc(28 / 750 * 100vw)
  }
}

.faq-post dt {
  position: relative;
  padding: 1em 1.5em 1em 3em;
  border-bottom: 1px solid #eee;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

.faq-post dd {
  display: none;
  position: relative;
  padding: 1.3em .5em 1.5em 3em;
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.6em
}

@media screen and (min-width: 980px) {
  .faq-post dt {
    font-size: 16px;
    font-size: 1.6rem
  }

  .faq-post dd {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.faq-post dt:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3.2vw;
  display: inline-block;
  background-image: url(../img/faq/ques.png);
  background-size: contain;
  width: 6.4vw;
  height: 6.4vw
}

.faq-post dd:before {
  content: '';
  position: absolute;
  top: 1em;
  left: 0;
  display: inline-block;
  background-image: url(../img/faq/answer.png);
  background-size: contain;
  width: 6.4vw;
  height: 6.4vw
}

@media screen and (min-width: 980px) {
  .faq-post dt:before {
    margin-top: -16px;
    width: 32px;
    height: 32px
  }

  .faq-post dd:before {
    width: 32px;
    height: 32px
  }
}

.faq-post dt:after {
  position: absolute;
  top: 1em;
  right: 0;
  content: '\f078';
  color: #8b8888;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.faq-post dt.ac:after {
  position: absolute;
  top: 1em;
  right: 0;
  content: '\f077';
  color: #8b8888;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.faq-wrap>div {
  margin-bottom: 6vw
}

@media screen and (min-width: 980px) {
  .faq-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -50px
  }

  .faq-wrap>div {
    margin-left: 50px;
    margin-bottom: 40px;
    width: calc(50% - 50px)
  }
}

.faq-cat-name {
  display: block;
  padding: .6em .8em;
  background-color: #399cde;
  color: #fff;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .faq-cat-name {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.faq-list li>a {
  position: relative;
  display: block;
  padding: .3em 1.4em .3em .7em
}

.faq-list li>a .title {
  font-size: calc(28 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (min-width: 980px) {
  .faq-list li>a .title {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.faq-list li>a:after {
  position: absolute;
  top: 50%;
  right: 0;
  content: '\f054';
  margin-top: -.8em;
  color: #868686;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.btn-faq {
  display: block;
  margin-top: 1em;
  padding-top: .3em;
  color: #197ec1;
  font-size: calc(24 / 750 * 100vw);
  text-align: right
}

@media screen and (min-width: 980px) {
  .btn-faq {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.btn-faq:after {
  content: '\f0da';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.flow-step {
  position: relative;
  display: flex;
  justify-content: space-between
}

.flow-step .border {
  position: absolute;
  top: 2.9vw;
  left: 0;
  width: 100%;
  height: 0.5vw;
  background-color: #c9caca;
  z-index: 1
}

.flow-step a {
  position: relative;
  width: 6vw;
  z-index: 2
}

@media screen and (min-width: 980px) {
  .flow-step {
    display: flex
  }

  .flow-step a {
    width: 45px
  }

  .flow-step .border {
    top: 20px;
    height: 4px
  }
}

.flow-point-box {
  margin-bottom: 5.33333vw;
  padding: 2.6vw;
  border-radius: .5em;
  border: 1px solid #c9c9ca
}

.flow-point-box p {
  font-size: calc(27 / 750 * 100vw);
  line-height: 1.8em
}

@media screen and (min-width: 980px) {
  .flow-point-box {
    margin-bottom: 40px;
    padding: 15px 20px 20px 20px
  }

  .flow-point-box p {
    font-size: 16px;
    font-size: 1.6rem
  }

  .flow-point-box .content {
    padding-left: 80px
  }
}

.flow-step-heading {
  position: relative;
  margin-bottom: 3.33333vw;
  padding-bottom: 1.3vw;
  border-bottom: 0.6vw solid #c9c9ca
}

.flow-step-heading .label {
  position: absolute;
  top: 0;
  left: -.5em
}

.flow-step-heading .heading {
  padding-top: 2.6vw;
  padding-left: 10.6vw;
  font-size: calc(32 / 750 * 100vw);
  font-weight: 700
}

@media screen and (min-width: 980px) {
  .flow-step-heading {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 5px solid #c9c9ca
  }

  .flow-step-heading .heading {
    padding-top: 20px;
    padding-left: 80px;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: 700
  }
}

@media screen and (max-width: 979px) {
  .flow-step-heading .label img {
    width: 9.3vw;
    height: auto
  }
}

.club-heading {
  border-bottom: 3px solid #f3141d
}

.club-heading .image {
  position: relative;
  margin-bottom: 3.3vw
}

.club-heading .title {
  padding-bottom: .5em;
  text-align: center
}

@media screen and (min-width: 980px) {
  .club-heading {
    display: flex;
    align-items: center
  }

  .club-heading .image {
    top: 2px;
    margin-right: .5em;
    margin-bottom: 0
  }

  .club-heading .title {
    padding-bottom: 0;
    text-align: left
  }
}

@media screen and (max-width: 979px) {
  .img-clubicon {
    width: 14.7vw;
    height: auto
  }
}

.club-after-wrap .content {
  margin-bottom: 2.6vw
}

@media screen and (min-width: 980px) {
  .club-after-wrap {
    display: flex
  }

  .club-after-wrap .content {
    margin-right: 15px;
    margin-bottom: 0;
    width: 430px
  }

  .club-after-wrap .image {
    width: calc(100% - 430px - 15px)
  }
}

@media screen and (max-width: 979px) {
  .club-after-wrap .image img {
    max-width: 60vw;
    height: auto
  }
}

.club-event-wrap .image {
  margin-bottom: 3vw
}

.club-event-wrap .content {
  padding: .7em 1em;
  border-radius: .5em;
  border: 2px solid #818181
}

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

  .club-event-wrap .image {
    margin-right: 15px;
    margin-bottom: 0;
    width: 430px
  }

  .club-event-wrap .content {
    width: calc(100% - 430px - 15px)
  }
}

.good-box {
  border: 3px solid #f3141d;
  padding: 1em 1.5em
}

.good-inner-box .image {
  margin-bottom: 2.6vw
}

@media screen and (min-width: 980px) {
  .good-inner-box {
    display: flex;
    align-items: center
  }

  .good-inner-box .image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 100px
  }

  .good-inner-box .content {
    width: calc(100% - 100px - 25px)
  }
}

@media screen and (max-width: 979px) {
  .good-inner-box .image img {
    max-width: 14.6vw;
    height: auto
  }
}

.club-voice-list li {
  text-indent: -1.5em;
  padding-left: 1.5em
}

.club-voice-list li:before {
  margin-right: .5em;
  content: '\f00c';
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.club-menu-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4vw
}

.club-menu-wrap>div {
  margin-left: 4vw;
  margin-bottom: 4vw;
  padding: .5em;
  width: calc(50% - 4vw);
  border: 1px solid #c1272d
}

@media screen and (min-width: 980px) {
  .club-menu-wrap {
    margin-left: -15px
  }

  .club-menu-wrap>div {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(25% - 15px)
  }
}

.club-cat {
  display: block;
  padding: .3em;
  width: 100%
}

.club-cat-blue {
  background-color: #004ca1
}

.club-cat-aqua {
  background-color: #399cde
}

.club-menu-heading {
  display: flex;
  height: 18vw
}

.club-menu-heading .image {
  margin-right: .3em
}

@media screen and (min-width: 980px) {
  .club-menu-heading {
    height: 60px
  }
}

.club-tel-wrap .tel {
  margin-bottom: 2.6vw
}

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

  .club-tel-wrap .fuki {
    margin-right: 20px;
    order: 1
  }

  .club-tel-wrap .tel {
    margin-bottom: 0;
    order: 2
  }
}

@media screen and (max-width: 979px) {
  .club-tel-wrap .fuki img {
    max-width: 30vw;
    height: auto
  }
}

.club-catalog-wrap a {
  margin-bottom: 3.3vw
}

@media screen and (min-width: 980px) {
  .club-catalog-wrap {
    display: flex;
    margin-left: -15px
  }

  .club-catalog-wrap a {
    margin-left: 15px;
    margin-bottom: 0;
    width: calc(50% - 15px)
  }
}

@media screen and (max-width: 979px) {
  .img-clubicon {
    width: 14.7vw;
    height: auto
  }
}

.takumi-wrap {
  padding: 3.3vw;
  border: 1px solid #b4b4b4
}

.takumi-wrap .image {
  margin-bottom: 2.6vw
}

.takumi-wrap .takumi-name .fs {
  font-size: 0.75em;
}

@media screen and (min-width: 980px) {
  .takumi-wrap {
    display: flex;
    padding: 25px
  }

  .takumi-wrap>.image {
    margin-right: 25px;
    margin-bottom: 0;
    width: 180px
  }

  .takumi-wrap>.content {
    width: calc(100% - 180px - 25px)
  }
}

.takumi-border {
  padding-top: 1em;
  border-top: 1px solid #717171
}

@media screen and (max-width: 979px) {
  .takumi-wrap>.image img {
    width: 60vw;
    height: auto
  }
}

.takumi-name {
  display: block;
  padding: .5em 0;
  background-color: #3e2723;
  font-size: calc(30 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .takumi-name {
    font-size: 16px;
    font-size: 1.6rem
  }
}

@media screen and (max-width: 979px) {
  .takumi-name span {
    font-size: calc(16 / 750 * 100vw)
  }
}

@media screen and (min-width: 960px) {
  .takumi_f_box1 {
    display: flex;
    flex-direction: row;
  }

  .takumi_f_box2 {
    display: flex;
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 959px) {
  .takumi_f_box1 {
    display: block;
  }

  .takumi_f_box2 {
    display: block;
  }

  .takumi_f_box1 img {
    width: 100%;
  }

  .takumi_f_box2 img {
    width: 100%;
  }
}

.recruit-heading:before {
  margin-right: .5em;
  content: '';
  display: inline-block;
  background-image: url(../img/recruit/mark@2x.png);
  background-size: contain;
  width: 6.6vw;
  height: 4.2vw
}

@media screen and (min-width: 980px) {
  .recruit-heading:before {
    width: 23px;
    height: 15px
  }
}

.recruit-menu {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4.6vw
}

.recruit-menu a {
  margin-left: 4.6vw;
  margin-bottom: 4.6vw;
  width: calc(50% - 4.6vw)
}

@media screen and (min-width: 980px) {
  .recruit-menu {
    margin-left: -18px
  }

  .recruit-menu a {
    margin-left: 18px;
    margin-bottom: 0;
    width: calc(25% - 18px)
  }
}

.recruit-menu .title {
  display: block;
  padding: .5em 0;
  background-color: #5c94c7
}

.recruit-shokushu {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4.6vw
}

.recruit-shokushu li {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 4.6vw;
  margin-bottom: 4.6vw;
  padding: 1em 0;
  width: calc(50% - 4.6vw);
  background-color: #6e99d0;
  color: #fff;
  font-weight: 700;
  text-align: center
}

@media screen and (min-width: 980px) {
  .recruit-shokushu {
    margin-left: -15px
  }

  .recruit-shokushu li {
    margin-left: 15px;
    margin-bottom: 15px;
    width: calc(33.33333% - 15px)
  }
}

.recruit-profile-outer {
  position: relative
}

.recruit-profile {
  display: flex;
  align-items: center;
  margin-bottom: 2.6vw
}

.recruit-profile .image {
  margin-right: 2.2vw;
  width: 44.6vw
}

.recruit-profile .content {
  width: calc(100% - 44.6vw - 2.2vw)
}

@media screen and (min-width: 980px) {
  .recruit-profile {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0
  }

  .recruit-profile .image {
    margin-right: 15px;
    width: 210px
  }

  .recruit-profile .content {
    width: calc(100% - 210px - 15px)
  }

  .recruit-profile-text {
    position: absolute;
    right: 0;
    top: 100px;
    width: calc(100% - 210px - 15px)
  }
}

.recruit-taidan::after {
  content: '';
  clear: both
}

.recruit-taidan figure {
  width: 35vw
}

.recruit-taidan-outer li:nth-child(odd) figure {
  padding-left: 1em;
  float: right
}

.recruit-taidan-outer li:nth-child(even) figure {
  padding-right: 1em;
  float: left
}

@media screen and (min-width: 980px) {
  .recruit-taidan {
    display: flex
  }

  .recruit-taidan .image {
    float: none;
    width: 300px;
    text-align: center
  }

  .recruit-taidan .content {
    width: calc(100% - 300px)
  }

  .recruit-taidan-outer li:nth-child(odd) .image {
    padding: 0;
    order: 2
  }

  .recruit-taidan-outer li:nth-child(odd) .content {
    padding-right: 1em;
    order: 1
  }

  .recruit-taidan-outer li:nth-child(even) .image {
    padding: 0;
    order: 1
  }

  .recruit-taidan-outer li:nth-child(even) .content {
    padding-left: 1em;
    order: 2
  }
}

@media screen and (max-width: 979px) {
  .recruit-taidan .image img {
    width: 35vw
  }
}

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

.table2 tr {
  border-top: 1px solid #6e99d0
}

.table2 tr:last-child {
  border-bottom: 1px solid #6e99d0
}

.table2 th {
  padding: 1em 1em;
  width: 140px;
  background-color: #dae1ea;
  border-right: 1px solid #6e99d0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle
}

.table2 td {
  padding: 1em 1.5em;
  width: calc(100% - 140px);
  font-size: 14px;
  font-size: 1.4rem
}

@media screen and (max-width: 979px) {
  .table2 {
    border: 1px solid #6e99d0
  }

  .table2 th {
    display: block;
    padding: 1em .7em;
    width: 100%;
    border-right: none;
    font-size: calc(24 / 750 * 100vw)
  }

  .table2 td {
    display: block;
    padding: 1em .7em;
    width: 100%;
    font-size: calc(24 / 750 * 100vw)
  }
}

.contact-intro-flex .image {
  margin: 0 auto;
  margin-bottom: 6vw;
  width: 28vw
}

@media screen and (min-width: 980px) {
  .contact-intro-flex {
    margin: 0 auto;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 760px
  }

  .contact-intro-flex .image {
    margin-bottom: 0;
    width: 255px
  }

  .contact-intro-flex .content {
    width: calc(100% - 255px)
  }
}

.heading-form {
  display: block;
  padding: .7em 0;
  width: 100%;
  background-color: #333333;
  color: #fff
}

.contact-call-box {
  display: flex;
  align-items: center;
  padding: 25px 20px;
  border: 1px solid #333
}

.contact-call-box .label {
  margin-right: 2vw;
  padding: 2.6vw 0;
  width: 25.3vw;
  background-color: #004ca1;
  font-size: calc(26 / 750 * 100vw)
}

.contact-call-box .label span {
  font-size: calc(36 / 750 * 100vw)
}

.contact-call-box .content {
  width: calc(100% - 20.3vw - 2vw);
}

@media screen and (min-width: 980px) {
  .contact-call-box {
    margin: 0 auto;
    padding: 25px 20px;
    width: 100%;
    max-width: 670px
  }

  .contact-call-box .label {
    margin-right: 20px;
    padding: 15px 0;
    width: 190px;
    font-size: 26px;
    font-size: 2.6rem
  }

  .contact-call-box .label span {
    font-size: 36px;
    font-size: 3.6rem
  }

  .contact-call-box .content {
    width: calc(100% - 190px - 20px)
  }
}

.contact-number {
  font-size: calc(48 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .contact-number {
    font-size: 48px;
    font-size: 4.8rem
  }
}

.icon-phone:before {
  margin-right: .3em;
  content: '\f095';
  color: #333;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

.raiten-point-flex {
  margin: 0 auto;
  padding: 0 5.3vw;
  display: flex;
  justify-content: space-between
}

.raiten-point-flex li {
  width: 22.6vw
}

@media screen and (min-width: 980px) {
  .raiten-point-flex {
    padding: 0;
    width: 560px
  }

  .raiten-point-flex li {
    width: 170px
  }
}

.raiten-point {
  position: relative;
  display: inline-block;
  padding: 1em .3em;
  width: 100%;
  border-radius: .5em;
  background-color: #eeeeee
}

.raiten-point:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -2vw;
  border: 2vw solid transparent;
  border-top: 2.6vw solid #eeeeee
}

@media screen and (min-width: 980px) {
  .raiten-point:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -7px;
    border: 7px solid transparent;
    border-top: 15px solid #eeeeee
  }
}



.raiten-intro-flex {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: center;
}

.raiten-intro-flex .image {
  margin-bottom: 0;
  width: 120px;
  order: 1
}

.raiten-intro-flex .image img {
  max-width: 80%
}

.raiten-intro-flex .content {
  width: calc(100% - 120px);
  order: 2
}


.raiten-intro-flex .image {
  margin-top: 4.6vw
}

@media screen and (min-width: 980px) {
  .raiten-intro-flex {
    display: flex;
    align-items: center;
    flex-direction:row;
  }

  .raiten-intro-flex .image {
    margin-bottom: 0;
    width: 300px;
    order: 1
  }

  .raiten-intro-flex .image img {
    max-width: 80%
  }

  .raiten-intro-flex .content {
    width: calc(100% - 300px);
    order: 2
  }
}

.flow-box {
  padding: 3.3vw 4vw;
  background-color: #fff5f5
}

@media screen and (min-width: 980px) {
  .flow-box {
    padding: 25px 35px
  }
}

.raiten-flow {
  margin: 0 auto;
  width: 61.3vw
}

.raiten-flow>div {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%
}

@media screen and (max-width: 979px) {
  .raiten-flow>div:after {
    content: '';
    background: url(../img/raiten/arrow-down.png);
    background-repeat: no-repeat;
    position: absolute;
    top: 20.6vw;
    left: 7.8vw;
    width: 6.6vw;
    height: 6.6vw;
    background-size: contain;
    vertical-align: middle;
    z-index: 2
  }
}

.raiten-flow>div:last-child {
  margin-right: 0
}

.raiten-flow>div:last-child:after {
  background: none
}

@media screen and (min-width: 980px) {
  .raiten-flow {
    display: flex;
    justify-content: center;
    width: 895px
  }

  .raiten-flow>div {
    display: inline-block;
    position: relative;
    margin-right: 15px;
    margin-bottom: 0;
    width: 160px
  }

  .raiten-flow>div:after {
    content: '';
    background: url(../img/raiten/arrow@2x.png);
    background-repeat: no-repeat;
    position: absolute;
    top: 55px;
    right: -35px;
    width: 50px;
    height: 50px;
    background-size: contain;
    vertical-align: middle;
    z-index: 2
  }
}

.raiten-flow-inner {
  display: flex;
  margin-bottom: 2.6vw
}

.raiten-flow-inner .image {
  margin-right: 4vw;
  width: 22.6vw
}

.raiten-flow-inner p {
  width: calc(100% - 22.6vw - 4vw)
}

@media screen and (min-width: 980px) {
  .raiten-flow-inner {
    display: block;
    margin-bottom: 0
  }

  .raiten-flow-inner .image {
    margin-right: 0;
    width: 160px
  }

  .raiten-flow-inner p {
    width: 100%;
    text-align: center
  }
}

.book-mv-wrap {
  margin-left: -3.3vw;
  width: calc(100% + 6.6vw)
}

@media screen and (min-width: 980px) {
  .book-mv-wrap {
    margin-left: 0;
    width: 100%
  }
}

.sitemap-flex {
  margin: 0 auto;
  width: 100%
}

.sitemap-flex>div {
  margin-bottom: 35px
}

@media screen and (min-width: 980px) {
  .sitemap-flex {
    display: flex;
    flex-wrap: wrap;
    margin-left: -25px
  }

  .sitemap-flex>div {
    margin-left: 25px;
    width: calc(50% - 25px)
  }
}

.page-sitemap-bar {
  margin-bottom: 4vw;
  background-color: #f3141d;
  color: #fff;
  font-size: calc(32 / 750 * 100vw);
  text-align: center;
  font-weight: 700;
  line-height: 2.6em
}

@media screen and (min-width: 980px) {
  .page-sitemap-bar {
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1.6rem
  }
}

.page-sitemap {
  margin: 0 auto;
  width: calc(100% - 40px)
}

.page-sitemap li {
  font-size: calc(28 / 750 * 100vw);
  line-height: 2.8em
}

@media screen and (min-width: 980px) {
  .page-sitemap li {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.page-sitemap li a {
  position: relative;
  display: block;
  width: 100%
}

.page-sitemap li a:hover {
  opacity: 0.6
}

.page-sitemap li a:after {
  position: absolute;
  top: 0;
  right: 0;
  content: '\f0da';
  color: #000;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

ol.list-count {
  margin: 0 auto;
  width: 95%
}

ol.list-count li {
  margin-bottom: 1.5em;
  counter-increment: cnt;
  text-indent: -2em;
  padding-left: 2em;
  line-height: 1.8em
}

ol.list-count li:before {
  display: marker;
  content: "( "counter(cnt) " ) "
}

.cta {
  border-top: 2px solid #f3141d;
  border-bottom: 2px solid #f3141d;
}

@media screen and (max-width: 979px) {
  .cta {
    border: none;
  }
}

.cta-outer {
  position: relative
}

.cta-outer>.image {
  position: absolute;
  right: 20px;
  bottom: 0
}

.cta-outer>.content {
  margin: 0 !important;
  padding: 25px 0 20px 0;
  justify-content: flex-start !important;
  margin-right: auto !important;
  width: 740px !important;
  max-width: 740px !important
}

.cta-outer>.content .sns-link {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: flex-end
}

.sns-link {
  display: flex;
  justify-content: flex-end
}

.sns-link a {
  margin-right: 5px
}

.sns-link img {
  width: 9.3vw;
  height: auto
}

@media screen and (min-width: 980px) {
  .sns-link img {
    width: 29px
  }
}

.fs10_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs12_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs12_24 {
  font-size: calc(24 / 750 * 100vw)
}

.fs13_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs14_15 {
  font-size: calc(15 / 750 * 100vw)
}

.fs14_22 {
  font-size: calc(22 / 750 * 100vw)
}

.fs14_24 {
  font-size: calc(24 / 750 * 100vw)
}

.fs14_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15_28 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15_30 {
  font-size: calc(30 / 750 * 100vw)
}

.fs16_16 {
  font-size: calc(16 / 750 * 100vw)
}

.fs16_32 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18_26 {
  font-size: calc(26 / 750 * 100vw)
}

.fs18_30 {
  font-size: calc(30 / 750 * 100vw)
}

.fs18_32 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs20_20 {
  font-size: calc(20 / 750 * 100vw)
}

.fs20_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs20_40 {
  font-size: calc(40 / 750 * 100vw)
}

.fs22_22 {
  font-size: calc(22 / 750 * 100vw)
}

.fs22_45 {
  font-size: calc(22 / 750 * 100vw)
}

.fs24_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs24_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs30_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs36_36 {
  font-size: calc(36 / 750 * 100vw)
}

.fs36_48 {
  font-size: calc(48 / 750 * 100vw)
}

.fs36_72 {
  font-size: calc(72 / 750 * 100vw)
}

.fs45_80 {
  font-size: calc(80 / 750 * 100vw)
}

.fs80_120 {
  font-size: calc(120 / 750 * 100vw)
}

.fs80_160 {
  font-size: calc(160 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .fs10_20 {
    font-size: 10px;
    font-size: 1.0rem
  }

  .fs12_20 {
    font-size: 12px;
    font-size: 1.2rem
  }

  .fs12_24 {
    font-size: 12px;
    font-size: 1.2rem
  }

  .fs13_28 {
    font-size: 13px;
    font-size: 1.3rem
  }

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

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

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

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

  .fs15_28 {
    font-size: 15px;
    font-size: 1.5rem
  }

  .fs15_30 {
    font-size: 15px;
    font-size: 1.5rem
  }

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

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

  .fs18_26 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_30 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_32 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs18_36 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs22_22 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_20 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_36 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs20_40 {
    font-size: 20px;
    font-size: 2.0rem
  }

  .fs22_45 {
    font-size: 22px;
    font-size: 2.2rem
  }

  .fs24_36 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs24_48 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs30_48 {
    font-size: 30px;
    font-size: 3.0rem
  }

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

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

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

  .fs45_80 {
    font-size: 45px;
    font-size: 4.5rem
  }

  .fs55_55 {
    font-size: 55px;
    font-size: 5.5rem
  }

  .fs80_120 {
    font-size: 80px;
    font-size: 8.0rem
  }

  .fs80_160 {
    font-size: 80px;
    font-size: 8.0rem
  }
}

.fcbase {
  color: #fff
}

.fcmain {
  color: #271f1c
}

.fcred {
  color: #f3141d
}

.fcdred {
  color: #c1272d
}

.fcblue {
  color: #399cde
}

.fcgray {
  color: #bbbbbb
}

.bgbase {
  background-color: #fff
}

.bgdred {
  background-color: #c1272d
}

.bgthin {
  background-color: #f9f7f3
}

.ffmain {
  font-family: "NotoSansCJKjp", sans-serif
}

.ffeigo {
  font-family: "Akkurat", sans-serif
}

.ffnum {
  font-family: "impact", sans-serif;
  letter-spacing: -0.05em;
}

.fw4 {
  font-weight: 400
}

.fw7 {
  font-weight: 700
}

.fw9 {
  font-weight: 900
}

.fsn {
  font-style: normal
}

.fsi {
  font-style: italic
}

.lineht10 {
  line-height: 1em
}

.lineht12 {
  line-height: 1.2em
}

.lineht14 {
  line-height: 1.4em
}

.lineht18 {
  line-height: 1.8em
}

.lspg1 {
  letter-spacing: 0.1em
}

.lspg3 {
  letter-spacing: 0.13em
}

.fs12 {
  font-size: calc(24 / 750 * 100vw)
}

.fs14 {
  font-size: calc(28 / 750 * 100vw)
}

.fs15 {
  font-size: calc(30 / 750 * 100vw)
}

.fs16 {
  font-size: calc(32 / 750 * 100vw)
}

.fs18 {
  font-size: calc(36 / 750 * 100vw)
}

.fs24 {
  font-size: calc(48 / 750 * 100vw)
}

.fs40 {
  font-size: calc(80 / 750 * 100vw)
}

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

@media screen and (min-width: 980px) {
  .fs12 {
    font-size: 12px;
    font-size: 1.2rem
  }

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

  .fs15 {
    font-size: 15px;
    font-size: 1.5rem
  }

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

  .fs18 {
    font-size: 18px;
    font-size: 1.8rem
  }

  .fs24 {
    font-size: 24px;
    font-size: 2.4rem
  }

  .fs40 {
    font-size: 40px;
    font-size: 4.0rem
  }

  .fs42 {
    font-size: 42px;
    font-size: 4.2rem
  }
}

.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)
}

.ml10 {
  margin-left: 1em
}

.mr10 {
  margin-right: 1em
}


@media screen and (min-width: 980px) {
  .mt05 {
    margin-top: 5px
  }

  .mt10 {
    margin-top: 10px
  }

  .mt12 {
    margin-top: 12px
  }

  .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
  }

  .mb12 {
    margin-bottom: 12px
  }

  .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
  }

  .mb55 {
    margin-bottom: 55px
  }

  .mb60 {
    margin-bottom: 60px
  }

  .mb65 {
    margin-bottom: 65px
  }

  .mb70 {
    margin-bottom: 70px
  }

  .mb80 {
    margin-bottom: 80px
  }

  .mb90 {
    margin-bottom: 90px
  }

  .mb100 {
    margin-bottom: 100px
  }
}

.pt05 {
  padding-top: calc(8 / 750 * 100vw)
}

.pt10 {
  padding-top: calc(13 / 750 * 100vw)
}

.pt15 {
  padding-top: calc(18 / 750 * 100vw)
}

.pt20 {
  padding-top: calc(23 / 750 * 100vw)
}

.pt25 {
  padding-top: calc(28 / 750 * 100vw)
}

.pt30 {
  padding-top: calc(33 / 750 * 100vw)
}

.pt35 {
  padding-top: calc(38 / 750 * 100vw)
}

.pt40 {
  padding-top: calc(43 / 750 * 100vw)
}

.pt45 {
  padding-top: calc(48 / 750 * 100vw)
}

.pt50 {
  padding-top: calc(53 / 750 * 100vw)
}

.pt55 {
  padding-top: calc(58 / 750 * 100vw)
}

.pt60 {
  padding-top: calc(63 / 750 * 100vw)
}

.pt65 {
  padding-top: calc(68 / 750 * 100vw)
}

.pt70 {
  padding-top: calc(73 / 750 * 100vw)
}

.pt80 {
  padding-top: calc(83 / 750 * 100vw)
}

.pt90 {
  padding-top: calc(93 / 750 * 100vw)
}

.pt100 {
  padding-top: calc(103 / 750 * 100vw)
}

.pb05 {
  padding-bottom: calc(8 / 750 * 100vw)
}

.pb10 {
  padding-bottom: calc(13 / 750 * 100vw)
}

.pb15 {
  padding-bottom: calc(18 / 750 * 100vw)
}

.pb20 {
  padding-bottom: calc(23 / 750 * 100vw)
}

.pb25 {
  padding-bottom: calc(28 / 750 * 100vw)
}

.pb30 {
  padding-bottom: calc(33 / 750 * 100vw)
}

.pb35 {
  padding-bottom: calc(38 / 750 * 100vw)
}

.pb40 {
  padding-bottom: calc(43 / 750 * 100vw)
}

.pb45 {
  padding-bottom: calc(48 / 750 * 100vw)
}

.pb50 {
  padding-bottom: calc(53 / 750 * 100vw)
}

.pb55 {
  padding-bottom: calc(58 / 750 * 100vw)
}

.pb60 {
  padding-bottom: calc(63 / 750 * 100vw)
}

.pb65 {
  padding-bottom: calc(68 / 750 * 100vw)
}

.pb70 {
  padding-bottom: calc(73 / 750 * 100vw)
}

.pb80 {
  padding-bottom: calc(83 / 750 * 100vw)
}

.pb90 {
  padding-bottom: calc(93 / 750 * 100vw)
}

.pb100 {
  padding-bottom: calc(103 / 750 * 100vw)
}

@media screen and (min-width: 980px) {
  .pt05 {
    padding-top: 5px
  }

  .pt10 {
    padding-top: 10px
  }

  .pt15 {
    padding-top: 15px
  }

  .pt20 {
    padding-top: 20px
  }

  .pt25 {
    padding-top: 25px
  }

  .pt30 {
    padding-top: 30px
  }

  .pt35 {
    padding-top: 35px
  }

  .pt40 {
    padding-top: 40px
  }

  .pt45 {
    padding-top: 45px
  }

  .pt50 {
    padding-top: 50px
  }

  .pt55 {
    padding-top: 55px
  }

  .pt60 {
    padding-top: 60px
  }

  .pt65 {
    padding-top: 65px
  }

  .pt70 {
    padding-top: 70px
  }

  .pt80 {
    padding-top: 80px
  }

  .pt90 {
    padding-top: 90px
  }

  .pt100 {
    padding-top: 100px
  }

  .pb05 {
    padding-bottom: 5px
  }

  .pb10 {
    padding-bottom: 10px
  }

  .pb15 {
    padding-bottom: 15px
  }

  .pb20 {
    padding-bottom: 20px
  }

  .pb25 {
    padding-bottom: 25px
  }

  .pb30 {
    padding-bottom: 30px
  }

  .pb35 {
    padding-bottom: 35px
  }

  .pb40 {
    padding-bottom: 40px
  }

  .pb45 {
    padding-bottom: 45px
  }

  .pb50 {
    padding-bottom: 50px
  }

  .pb55 {
    padding-bottom: 55px
  }

  .pb60 {
    padding-bottom: 60px
  }

  .pb65 {
    padding-bottom: 65px
  }

  .pb70 {
    padding-bottom: 70px
  }

  .pb80 {
    padding-bottom: 80px
  }

  .pb90 {
    padding-bottom: 90px
  }

  .pb100 {
    padding-bottom: 100px
  }
}

.relative {
  position: relative
}

.left {
  text-align: left
}

.right {
  text-align: right
}

.center {
  text-align: center
}

.sp-left {
  text-align: left
}

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

  .pc-br {
    display: inline
  }

  .sp-br {
    display: block
  }
}

@media screen and (min-width: 980px) {
  .pc-none {
    display: none !important
  }

  .pc-br {
    display: block
  }

  .sp-br {
    display: inline
  }

  .sp-left {
    text-align: center
  }
}

.img-maxfit {
  max-width: 100% !important;
  height: auto
}

.img-fit {
  width: 100%;
  max-width: 100%;
  height: auto
}

.img-hfit {
  width: auto;
  height: 100%;
  max-height: 100%
}

.img-sfit {
  height: auto;
  width: 100%
}

.img-space_sp {
  width: 100%;
  max-width: 100%;
  height: auto
}

@media screen and (max-width: 979px) {
  .img-fit_sp {
    width: 100%;
    max-width: 100%;
    height: auto
  }

  .img-space_sp {
    width: 80%;
    max-width: 80%;
    height: auto
  }
}

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

.obfit-seko {
  width: 100%;
  height: 32vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-seko-point {
  width: 100%;
  height: 53.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-seko-gallery {
  width: 100%;
  height: 70vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-change-gallery {
  width: 100%;
  height: 25.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-seko {
    width: 100%;
    height: 160px !important
  }

  .obfit-seko-point {
    width: 100%;
    height: 265px !important
  }

  .obfit-seko-gallery {
    width: 100%;
    height: 245px !important
  }

  .obfit-change-gallery {
    width: 100%;
    height: 115px !important
  }
}

.obfit-lineup {
  width: 100%;
  height: 51.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-lineup-main {
  width: 100%;
  height: 112vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-lineup-post {
  width: 100%;
  height: 69.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-lineup {
    width: 100%;
    height: 250px !important
  }

  .obfit-lineup-main {
    width: 100%;
    height: 420px !important
  }

  .obfit-lineup-post {
    width: 100%;
    height: 260px !important
  }
}

.obfit-event {
  width: 100%;
  height: 20vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event {
    height: 170px !important
  }
}

.obfit-event-a {
  width: 100%;
  height: 28vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event-a {
    height: 140px !important
  }
}

.obfit-event-detail {
  width: 100%;
  height: 22vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-event-detail {
    height: 165px !important
  }
}

.obfit-front-voice {
  width: 100%;
  height: 39.3vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-voice-a {
  width: 100%;
  height: 52vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.obfit-voice-other {
  width: 100%;
  height: 68vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-front-voice {
    height: 205px !important
  }

  .obfit-voice-a {
    height: 270px !important
  }

  .obfit-voice-other {
    height: 250px !important
  }
}

.obfit-staff {
  width: 100%;
  height: 68vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-staff {
    height: 260px !important
  }
}

.obfit-info {
  width: 26.6vw;
  height: 26.6vw !important;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

@media screen and (min-width: 980px) {
  .obfit-info {
    width: 100px;
    height: 100px !important
  }
}

.sr_btn {
  display: inline-block;
  max-width: 90%;
  text-align: center;
  background-color: #c1272d;
  font-size: 16px;
  color: #FFF;
  text-decoration: none;
  font-weight: bold;
  padding: 2%;
  border-radius: 4px;
  position: relative;
  margin-top: 10px;
}

.sr_btn:before {
  font-family: "FontAwesome";
  position: absolute;
  left: 16px;
  top: 50%;
  margin-top: -8px;
}

@media screen and (min-width: 980px) {
  .sr_btn {
    display: inline-block;
    max-width: 300px;
    text-align: center;
    background-color: #c1272d;
    font-size: 16px;
    color: #FFF;
    text-decoration: none;
    font-weight: bold;
    padding: 8px 16px;
    border-radius: 4px;
    position: relative;
    margin-top: 20px;
  }

  .sr_btn:before {
    font-family: "FontAwesome";
    position: absolute;
    left: 16px;
    top: 50%;
    margin-top: -8px;
  }

  .sr_btn:hover {
    opacity: 0.8;
  }
}

#sookket .landing .landing-content {
  margin: 20px 0;
}

#sookket .landing .landing-content.landing02 {
  margin: 20px 0 40px;
}

#sookket .landing .landing-content.landing02 img {
  margin-bottom: 20px;
}

#sookket .landing .landing-content.landing02 .btn-wrap {
  max-width: 100%;
  width: 100%;
  margin: 0 auto 20px;
  text-align: center;
}

#sookket .landing .landing-content.landing02 .btn-wrap .btn {
  display: inline-block;
  height: auto;
  background: #b23634;
  border-radius: 5px;
  line-height: 1.2;
  padding: 15px 45px;
}

#sookket .landing .landing-content.landing02 p {
  font-weight: 700;
  font-size: 1.5rem;
}

#sookket .landing .landing-content.landing03 img {
  margin-bottom: 20px;
}

.footer-floating {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgba(241, 232, 219, 0.8);
  z-index: 880;

}

.floating-menu {
  margin: 0 auto;
  padding: .5rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (max-width: 759px) {
  .floating-menu {
    width: 98%;
  }
}

.floating-menu li img {
  padding: .5rem;
  width: 100%;
}

.floating-menu a:hover {
  opacity: 0.6;
}

.for-sp {
  display: none;
}

@media (max-width: 768px) {
  .for-sp {
    display: block;
  }
}

#oshirase {
  border: double 5px #F00;
  width: 100%;
  background: #fff;
  max-width: 800px;
  padding: 10px;
  margin: 40px auto 40px;
  line-height: 1.6em;
  font-size: 12px;
  text-align: left;
}

.ytBox {
  text-align: center;
  padding: 35px 0 0px
}

@media (max-width: 768px) {
  .youtube-wrap {
    /* position:relative;
        width:100%;
        padding-top:56.25%;
        margin-bottom:70px; */
    flex-wrap: wrap;
  }


  .youtube-wrap iframe {
    /* position:absolute;
        top:0;
        right:0;
        width:100%;
        height:100%; */
  }
}

@media screen and (max-width: 414px) {
  .yt-item {
    width: 100%;
  }

  .yt-item iframe,
  .yt-company iframe {
    height: 52vw;
  }

  .yt-item:first-child {
    padding: 0;
    margin-bottom: 30px;
  }

}

.totalCount {
  margin-bottom: 1em
}

.contact-intro-flex {
  display: flex;
}

#contact .sp_only {
  display: none;
}

@media (max-width: 768px) {
  .contact-intro-flex {
    margin-bottom: -1.4rem;
  }

  .contact-intro-flex .sp_none {
    display: none;
  }

  .contact-intro-flex .sp_style {
    width: 100%;
    line-height: 140%;
    padding-top: 1.5rem;
  }

  #contact .sp_only {
    display: block !important;
    margin-bottom: 2rem;
  }
}

#sale {}

#sale h3 {
  font-size: 160%;
  font-weight: 700;
  border-left: 8px solid #c20000;
  color: #c20000;
  margin-bottom: 2rem;
  padding-left: 0.5rem;
}

#sale .sale_category {
  padding: 2rem 2rem 1rem 2rem;
  background: #ffeeee;
  margin-bottom: 5rem;
}

#sale .sale_category .one_centence {
  margin-bottom: 3rem;
  background: #fff;
  padding: 3rem;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}

#sale .sale_category .one_centence .sale_icon {
  width: 20%;
  margin-right: 2%;
  margin-bottom: 1rem;
}

#sale .sale_category .one_centence .sale_name {
  font-size: 140%;
  color: #c20000;
  font-weight: 700;
  vertical-align: top;
  width: 78%;
}

#sale .sale_category .one_centence .top_box {
  display: flex;
}

#sale .sale_category .one_centence .middle_box {
  display: flex;
  margin-bottom: 2rem;
  justify-content: stretch;
}

#sale .sale_category .one_centence .middle_box .photo {
  width: 40%;
  margin-right: 2%;
  min-height: 280px;
  max-height: 280px;
  overflow: hidden;
}

#sale .sale_category .one_centence .middle_box .data {
  width: 58%;
  text-align: right;
  position: relative;
}

#sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
  /*background:url(../img/sale/sale_medal_bg@2x.png) no-repeat;
	background-size:contain;*/
  background: #f3141d;
  width: 100px;
  height: 100px;
  border-radius: 50px;
  /* CSS3草案 */
  -webkit-border-radius: 50px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 50px;
  /* Firefox用 */
  text-align: center;
  color: #fff;
  font-size: 190%;
  font-weight: 700;
  line-height: 3rem;
  padding-top: 22px;
  position: absolute;
  right: 0;
  font-family: "impact", sans-serif;
}

#sale .sale_category .one_centence .middle_box .data .sale_discount_rate span {
  font-size: 180%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down {
  position: absolute;
  bottom: 0;
  width: 100%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price {
  display: flex;
  justify-content: flex-end;
  color: #F00;
  font-weight: 700;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
  font-size: 160%;
  text-align: center;
  padding: 2rem 0 0 0;
  line-height: 2rem;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub span {
  font-size: 40%;
}

#sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
  font-size: 400%;
  font-family: "impact", sans-serif;
  letter-spacing: 0.2rem;
}

@media (max-width: 768px) {
  #sale .sale_category .one_centence .sale_name {
    font-size: 100%;
  }

  #sale .sale_category .one_centence .middle_box {
    display: block;
  }

  #sale .sale_category .one_centence .middle_box .photo {
    width: 100%;
    margin-bottom: 2rem;
    max-height: 500px;
    overflow: hidden;
    text-align: center;
  }

  #sale .sale_category .one_centence .middle_box .data {
    width: 100%;
    text-align: left;
    position: relative;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
    font-size: 100%;
    width: 140px;
    height: 140px;
    border-radius: 70px;
    -webkit-border-radius: 70px;
    -moz-border-radius: 70px;
    padding-top: 34px;
    line-height: 3.6rem;
    position: absolute;
    bottom: 120px;
    right: 20px;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
    font-size: 260%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
    padding: 0.8rem 0 0 0;
    line-height: 3rem;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_regular_price {
    font-size: 80%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down {
    position: relative;
    bottom: 0;
    width: 100%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price {
    justify-content: flex-start;
  }
}

@media (max-width: 414px) {
  #sale .sale_category .one_centence {
    margin-bottom: 2rem;
    padding: 1rem;
    width: 100%;
    min-height: 522px;
    display: block;
  }

  #sale .sale_category .one_centence .sale_name {
    font-size: 100%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_discount_rate {
    width: 80px;
    height: 80px;
    font-size: 130%;
    padding-top: 20px;
    line-height: 2rem;
    bottom: 70px;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price {
    font-size: 400%;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_sale_price .price_sub {
    padding: 17px 0 0 0;
    line-height: 2rem;
  }

  #sale .sale_category .one_centence .middle_box .data .sale_price_down .sale_regular_price {
    font-size: 80%;
  }

  #sale .sale_category .one_centence .middle_box .photo {
    max-height: 320px;
    overflow: hidden;
  }

  #sale .sale_category .one_centence .middle_box {
    margin-bottom: 0;
  }
}

.sale_soldout {
  position: absolute;
  background: rgba(0, 0, 0, 0.4);
  text-align: center;
  width: 100%;
  height: 100%;
  margin: -3rem 0 0 -3rem;
  z-index: 999;
  display: block;
}

.sale_soldout .text {
  background: #F00;
  color: #FFF;
  font-family: "impact", sans-serif;
  display: inline-block;
  padding: 0.5rem 5rem;
  font-size: 300%;
  position: absolute;
  top: 50%;
  /*親要素を起点に上から50%*/
  left: 50%;
  /*親要素を起点に左から50%*/
  transform: translateY(-50%) translateX(-50%);
  /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%) translateX(-50%);
}

@media (max-width: 414px) {
  .sale_soldout {
    margin: -1rem 0 0 -1rem;
    width: 346px;
    height: 522px;
  }

  .sale_soldout .text {
    font-size: 200%;
    white-space: nowrap;
  }
}


@media (max-width: 375px) {
  .sale_soldout {
    width: 312px;
  }
}

@media (max-width: 320px) {
  .sale_soldout {
    width: 258px;
  }
}


/*スマホWEB相談*/

.picture-page h3 {
  margin-bottom: 30px;
}

.picture-page .flex-row {
  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;
}

.picture-page .flex-row>.step {
  width: 70%;
}

.picture-page .flex-row>.step p {
  color: #f3141d;
  font-weight: 700;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 20px;
}

.picture-page .flex-row>.qr {
  width: 25%;
  background: #f3141d;
  padding: 15px;
}

.picture-page .flex-row>.qr p {
  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: 15px;
  font-size: 1.5rem;
}

.picture-page .flex-row>.qr p img {
  width: 50px;
}

.picture-page .flex-row>.qr p span {
  display: block;
  width: calc(100% - 60px);
  color: #fff;

  font-weight: 700;
  line-height: 1.2;
}

.picture-page .picture-title {
  text-align: center;
  margin-bottom: 45px;
}

.picture-page .page-block-child {
  margin-bottom: 40px;
}

.picture-page .picture-title p {
  display: inline-block;
  color: #f3141d;
  font-weight: 700;
  font-size: 3rem;
  position: relative;
}

.picture-page .picture-title p::before {
  position: absolute;
  top: -5px;
  left: -55px;
  content: "＼";
  font-size: 5rem;
}

.picture-page .picture-title p::after {
  position: absolute;
  top: -5px;
  right: -55px;
  content: "／";
  font-size: 5rem;
}

.picture-page .picture-title h4 {
  background: #f3141d;
  color: #fff;
  font-weight: 700;
  font-size: 3rem;
  line-height: 1;
  position: relative;
  padding: 20px 0;
}

.picture-page .picture-title h4::before {
  position: absolute;
  bottom: 0;
  left: 10px;
  content: "";
  background: url(./../img/picture/picture-title01.png) center center no-repeat;
  background-size: cover;
  width: 110px;
  height: 88px;
}

.picture-page .picture-title h4::after {
  position: absolute;
  top: -30px;
  right: 10px;
  content: "";
  background: url(./../img/picture/picture-title02.png) center center no-repeat;
  background-size: cover;
  width: 70px;
  height: 102px;
}

.picture-page h5 {
  color: #f3141d;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.4;
  margin-bottom: 15px;
}

.picture-page .flex-row>.img {
  width: 49%;
  margin-bottom: 20px;
}

.picture-page .flex-row>.img img {
  background: #F9F7F4;
}

.picture-page .flex-row>.file {
  width: 49%;
  margin-bottom: 20px;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 10px;

}

.picture-page .flex-row>.file .file-child {
  width: 100%;
  height: 100%;
  background: #eee;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.picture-page .flex-row>.file .file-child img {
  max-width: 100%;
  height: auto;
}

.picture-page .flex-row>.file .file-child input[type="file"] {
  /* display: none; */
  opacity: 0;
  position: absolute;
  z-index: -1;
}

.picture-page .flex-row>.file .file-child label {
  background: url(./../img/picture/upload.png) center center no-repeat;
  background-size: contain;
  width: 326px;
  height: 258px;
  cursor: pointer;
}

.picture-page .flex-row>.file .file-child .delete {
  display: none;
  position: absolute;
  top: -30px;
  right: -10px;
  font-size: 4rem;
}

.picture-page .custom-wpcf7c-confirmed .flex-row>.file .file-child label,
.picture-page .custom-wpcf7c-confirmed .flex-row>.file .file-child .delete {
  display: none !important;
}

.picture-page .flow .img {
  width: 22%;
}

.picture-page .flow .img img {
  background: transparent;
  margin-bottom: 5px;
}

.picture-page .flow .img p {
  text-align: center;
  font-weight: 700;
  font-size: 1.2rem;
}

.picture-page .arrow {
  width: 2%;
  padding-top: 65px;
}

.picture-page .arrow img {
  transform: rotate(-90deg);
}

.picture-page .product h3 {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  color: #f3141d;
  border-bottom: 1px solid #f3141d;
  padding-bottom: 15px;
}

.picture-page .product h3 br {
  display: none;
}

.picture-page .product .flex-row>a {
  width: 24%;
  border: 1px solid #f3141d;
  margin-bottom: 10px;
}

.picture-page .product .flex-row>a .txt {
  background: #f3141d;
  padding: 10px 0;
}

.picture-page .product .flex-row>a .txt p {
  font-weight: 700;
  color: #fff;
  text-align: center;
}


@media (max-width: 480px) {

  .page-container-fluid>main .page-container.picture-page {
    padding: 0 5px;
  }

  .picture-page .page-block {
    padding: 20px 0 0;
  }

  .picture-page h3 {
    margin-bottom: 15px;
  }

  .picture-page .flex-row>.step {
    width: 100%;
  }

  .picture-page .flex-row>.step p {
    font-size: 1.75rem;
    margin-bottom: 5px;
  }

  .picture-page .flex-row>.qr {
    display: none;
  }

  .picture-page .picture-title {
    margin-bottom: 20px;
  }

  .picture-page .picture-title p {
    font-size: 1.6rem;
    margin-bottom: 5px;
  }

  .picture-page .picture-title p::before {
    font-size: 1.75rem;
    left: -20px;
    top: -2px;
  }

  .picture-page .picture-title p::after {
    font-size: 1.75rem;
    right: -20px;
    top: -2px;
  }

  .picture-page .picture-title h4 {
    font-size: 1.5rem;
    padding: 10px 0;
  }

  .picture-page .picture-title h4::before {
    top: -10px;
    left: 2px;
    width: 69px;
    height: 55px;
  }

  .picture-page .picture-title h4::after {
    top: -10px;
    right: 2px;
    width: 40px;
    height: 58px;
  }

  .picture-page h5 {
    font-size: 1.25rem;
    margin-bottom: 10px;
  }

  .picture-page .flex-row>.img,
  .picture-page .flex-row>.file {
    width: 100%;
    margin-bottom: 10px;
  }

  /*.picture-page .flex-row > .file .file-child{
		padding:20px 0;
	}*/

  .picture-page .flex-row>.file .file-child label {
    width: 100%;
    height: 240px;
  }

  .picture-page .flow .img {
    width: 48%;
  }

  .picture-page .flow .arrow {
    display: none;
  }

  .picture-page .arrow img {
    transform: rotate(0);
  }

  .picture-page .product h3 {
    line-height: 1.4;
  }

  .picture-page .product h3 br {
    display: block;
  }

  .picture-page .product .flex-row>a {
    width: 48%;
  }



}

.seko_customervoice_image {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  margin-bottom: 2rem;
}

.seko_customervoice_image a {
  display: block;
  text-align: center;
  width: 32%;
  overflow: hidden;
  border: 1px solid #ddd;
}

.seko_customervoice_image a img {
  width: auto;
  height: 200px;
  margin: 0 auto;
}

/*@media (max-width: 480px){
	.seko_customervoice_image {
		display:block;
	}
	.seko_customervoice_image a {
		width:100%;
		margin-bottom:1rem;
	}
	.seko_customervoice_image a img {
		width:100%;
		height:auto;
	}

}*/

.side-lineup {
  margin-bottom: 15px;

}

.side-lineup .side-lineup-child {
  position: relative;
  height: 198px;
  border-left: 3px solid #f3141d;
  border-right: 3px solid #f3141d;
  border-bottom: 3px solid #f3141d;
}

.side-lineup .side-lineup-child .img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.side-lineup .side-lineup-child .img img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.side-lineup .side-lineup-child .txt {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  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;
  padding: 10px 5px;
}

.side-lineup .side-lineup-child .txt .komi {
  width: 65px;
}

.side-lineup .side-lineup-child .txt .komi img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.side-lineup .side-lineup-child .txt .price {
  width: calc(100% - 65px - 10px);
  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;
}

/*LINE無料相談*/
#line .box1 {
  border: 2px solid #ccc;
  margin: 0 0 40px;
  padding: 20px;
}

#line .box1 p {
  text-align: center;
  font-weight: bold;
}

#line h3 {
  margin-bottom: 20px;
  border-bottom: 2px solid #00b900;
  padding-bottom: 10px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}

#line h4 {
  margin-bottom: 20px;
  background: #e7e7e7;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
  padding: 8px;
}

#line h5 {
  margin-bottom: 20px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}

#line .linegreen {
  color: #00b900;
}

#line .f_box {
  display: flex;
  justify-content: space-between;
}

#line .box2 {
  border: 2px solid #ccc;
  width: 48%;
  margin: 0 0 20px;
}

#line .box2 .box-title {
  font-size: 1.2em;
  background: #ccc;
  padding: 10px;
  text-align: center;
  color: #000;
  font-weight: bold;
  letter-spacing: 0.05em;
}

#line .box2 p {
  padding: 15px 20px;
  margin: 0 0 30px 0;
}

#line .box2 img {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}

#line .l_arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 100px 0 100px;
  border-color: #00b900 transparent transparent transparent;
  margin: 0 auto;
}

#line .mrml50 {
  margin-left: 50px;
  margin-right: 50px;
}

#line .f_red {
  color: #ff0000;
}

#line .s_box {
  border: 2px solid #29ba01;
  padding: 28px;
  margin-bottom: 30px;
}

#line .s_box .f_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

#line .s_box .f_box .box {
  width: 30%;
  padding: 1%;
}

#line .s_box .f_box .box img {
  width: 100%;
  margin-bottom: 5px;
}

#line .s_box .f_box .box .fw7 {
  font-weight: 700;
}

#line .s_box .f_box .box3 {
  width: 48%;
  padding: 1%;
}

#line .s_box .f_box2 .box3 img {
  width: 100%;
  margin-bottom: 5px;
}

#line .c_box {
  border: 1px solid #ff0000;
  padding: 20px;
  margin-bottom: 30px;
  text-align: center;
}

#line .c_box p {
  color: #ff0000;
  line-height: 1.8em;
}

#line .c_box p span {
  color: #ff0000;
  font-weight: 700;
}

#line .s_box2 {
  border: 2px solid #29ba01;
  padding: 28px;
  margin-bottom: 30px;
  background-color: #fffdd2;
  text-align: center;
}

#line .y_box {
  width: 80%;
  padding: 20px;
  margin: 0 auto 30px;
  background-color: #fffdd2;
  text-align: center;
}

#line .pc {
  display: block !important;
}

#line .sp {
  display: none !important;
}

@media (max-width: 768px) {
  #line .box1 {
    border: 2px solid #ccc;
    margin: 0 0 40px;
    padding: 20px;
  }

  #line .box1 p {
    text-align: left;
    font-weight: bold;
  }

  #line .f_box {
    display: block;
  }

  #line .box2 {
    width: 100%;
    margin: 0 0 20px;
  }

  #line .l_arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 100px 100px 0 100px;
    border-color: #00b900 transparent transparent transparent;
  }

  #line .mrml50 {
    margin-left: 25%;
    margin-right: 25%;
    margin-bottom: 40px;
  }

  #line .s_box {
    border: 2px solid #29ba01;
    padding: 10px;
    margin-bottom: 30px;
  }

  #line .s_box .f_box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 0;
    line-height: 1.6em;
  }

  #line .s_box .f_box .box {
    width: 48%;
    padding: 1%;
    margin-bottom: 5px;
  }

  #line .s_box .f_box .box img {
    width: 100%;
    margin-bottom: 5px;
  }

  #line .s_box .f_box .box .fw7 {
    font-weight: 700;
  }

  #line .s_box .f_box .box3 {
    width: 48%;
    padding: 1%;
  }

  #line .s_box .f_box2 .box3 img {
    width: 100%;
    margin-bottom: 5px;
  }

  #line .c_box {
    border: 1px solid #ff0000;
    padding: 20px;
    margin-bottom: 30px;
    text-align: center;
  }

  #line .c_box p {
    color: #ff0000;
    line-height: 1.8em;
  }

  #line .c_box p span {
    color: #ff0000;
    font-weight: 700;
  }

  #line .s_box2 {
    border: 2px solid #29ba01;
    padding: 28px;
    margin-bottom: 30px;
    background-color: #fffdd2;
    text-align: center;
  }

  #line .y_box {
    width: 80%;
    padding: 20px;
    margin: 0 auto 30px;
    background-color: #fffdd2;
    text-align: center;
  }

  #line .pc {
    display: none !important;
  }

  #line .sp {
    display: block !important;
  }
}

/*オンライン相談*/
#online .online-caption {
  font-size: 30px;
  font-size: 3rem;
}

#online .online-caption2 {
  font-size: 18px;
  font-size: 1.8rem;
}

#online .online-caption3 {
  font-size: 33px;
  font-size: 3.3rem;
}

#online .online-caption4 {
  font-size: 24px;
  font-size: 2.4rem;
}

#online .online-online_features_tit {
  font-size: 30px;
  font-size: 3rem;
}

#online .online-online_features_tit-2 {
  font-size: 50px;
  font-size: 5rem;
}

#online .online-online_features_tit-3 {
  font-size: 36px;
  font-size: 3.6rem;
}

#online .online-online_features_tit-4 {
  font-size: 40px;
  font-size: 4rem;
}

#online .online-heafing-wrap {
  display: flex;
  align-items: center;
}

#online .online-heafing-wrap-tel {
  display: flex;
  align-items: center;
}

#online .gy_box {
  background-color: #eee;
  border-radius: 5px;
  padding: 10px 20px 10px;
  text-align: left;
  vertical-align: middle;
}

#online .gy_box .i_s {
  width: 80px;
  text-align: center;
  margin-right: 20px;
}

#online .b_ircle {
  width: 100px;
  height: 100px;
  font-size: 16px;
  font-size: 1.6rem;
  border-radius: 50%;
  background-color: #4299de;
  color: #fff;
  text-align: center;
  padding: 20px;
  margin-right: 20px;
}

#online .mr20 {
  margin-right: 20px;
}

#online .online_movie {
  width: 600px;
  height: 360px;
  margin: 0 auto;
}

#online .online_contact {
  display: flex;
  justify-content: space-between;
}

#online .online_contact .r_box {
  display: block;
  position: relative;
  background-color: #c30d23;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  width: 48%;
  padding: 20px;
}

#online .online_contact .r_box a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#online .online_contact .r_box:hover {
  opacity: 0.8;
  cursor: pointer;
  text-decoration: none;
}

#online .online_contact .g_box {
  display: block;
  position: relative;
  background-color: #006934;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  width: 48%;
  padding: 20px;
}

#online .online_contact .g_box a {
  position: sticky;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#online .online_contact .g_box:hover {
  opacity: 0.8;
  cursor: pointer;
  text-decoration: none;
}

#online .online-number {
  font-size: 36px;
  font-size: 3.6rem;
}

#online .gy_box2 {
  background-color: #eee;
  padding: 30px;
  text-align: left;
  vertical-align: middle;
}

#online .c_list {
  list-style-type: none;
  padding: 0;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  margin-left: 50px;
}

#online .c_list li {
  background: url(../img/online/check.png) no-repeat;
  margin-bottom: 10px;
  padding: 2px 2px 2px 50px;
}

#online .gy_box3 {
  background-color: #eee;
  padding: 10px;
}

#online .gy_box3 .m_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#online .gy_box3 .m_box .merit_box {
  width: 30%;
  background-color: #fff;
  text-align: center;
  margin: 10px;
}

#online .gy_box3 .m_box .merit_box img {
  width: 100%;
  margin-bottom: 10px;
}

#online .gy_box3 .m_box .merit_box .tit {
  width: 100%;
  background-color: #4299de;
  padding: 10px;
  color: #fff;
  font-size: 1.8rem;
}

#online .gy_box3 .m_box .merit_box .text {
  height: 130px;
  font-size: 1.6rem;
  font-weight: 700;
  display: table;
  width: 100%;
}

#online .gy_box3 .m_box .merit_box .text p {
  display: table-cell;
  vertical-align: middle;
}

#online .svs_box {
  display: flex;
  justify-content: space-between;
}

#online .svs_box img {
  margin-left: 20px;
}

#online .gy_box4 {
  background-color: #eee;
  padding: 20px;
}

#online .flow_tit {
  background-color: #16c04c;
  padding: 10px;
  color: #fff;
  text-align: center;
}

#online .gy_box4 .img_box {
  width: 120px;
  text-align: center;
  margin-right: 20px;
}

#online .maru {
  height: 25px;
  width: 25px;
  border-radius: 50%;
  line-height: 25px;
  text-align: center;
  color: #fff;
  background-color: #16c04c;
  margin-right: 20px;
}

#online .t_ul {
  text-decoration: underline;
}

#online .t_ul {
  text-decoration: underline;
}

#online .wpcf7-radio .wpcf7-list-item {
  margin-top: 10px;
  display: block;
}

#online input[type=radio] {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

@media screen and (min-width: 980px) {
  .btn_online {
    height: 80px;
    font-size: 28px;
    font-size: 1.6rem;
    line-height: 33px;
    color: #fff;
    font-weight: 700;
  }

  #online .wpcf7-list-item-label {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 789px) {
  #online .online-caption {
    font-size: 26px;
    font-size: 2.6rem;
  }

  #online .online-caption3 {
    font-size: 30px;
    font-size: 3rem;
  }

  #online .b_ircle {
    margin: 0 auto;
    margin-right: auto;
  }

  #online .online_movie {
    width: 100%;
    height: 260px;
    margin: 0 auto;
  }

  #online .online_contact {
    display: block;
  }

  #online .online_contact .r_box {
    width: 100%;
    margin-bottom: 20px;
  }

  #online .online_contact .g_box {
    width: 100%;
  }

  #online .online-number {
    font-size: 3rem;
  }

  #online .online-heafing-wrap-tel {
    display: block;
    margin-top: 10px;
  }

  #online .gy_box2 {
    padding: 10px;
  }

  #online .c_list {
    list-style-type: none;
    padding: 0;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    margin-left: 0;
  }

  #online .c_list li {
    padding: 2px 2px 2px 40px;
  }

  #online .gy_box3 .m_box {
    display: block;
  }

  #online .gy_box3 .m_box .merit_box {
    width: 100%;
    margin: 0 0 20px 0;
  }

  #online .gy_box3 .m_box .merit_box .text {
    font-size: 2rem;
  }

  #online .svs_box {
    display: block;
    text-align: center;
  }

  #online .svs_box p {
    text-align: left;
  }

  #online .svs_box img {
    width: 70%;
    margin: 20px auto;
  }

  #online .gy_box4 .img_box {
    width: 120px;
    text-align: center;
    margin: 0 auto 20px;
  }

  #online .maru {
    height: 30px;
    width: 40px;
    border-radius: 50%;
    line-height: 30px;
    text-align: center;
    color: #fff;
    background-color: #006934;
    margin-right: 20px;
  }

  #online .gy_box4 .img_box {
    width: 120px;
    text-align: center;
    margin: 0 auto 20px;
  }

  #online .maru {
    height: 30px;
    width: 40px;
    border-radius: 50%;
    line-height: 30px;
    text-align: center;
    color: #fff;
    background-color: #006934;
    margin-right: 20px;
  }
}



.flexslider ul.flex-direction-nav li a.flex-next,
.flexslider ul.flex-direction-nav li a.flex-prev {
  width: 90px;
}

.flexslider .slides img {
  max-height: 400px;
}


.seko_after_comment {
  font-size: 1.2em;
}

.domain-message {
  border: 1px solid #333;
  padding: 25px 30px;
}


.oshirase_btn {
  display: block;
  position: relative;
  padding: 0.8em;
  text-align: center;
  font-size: 1.6em;
  font-weight: 700;
  text-decoration: none;
  color: #ff0000;
  background: #fff;
  border: 3px solid #ff0000;
}

.oshirase_btn:hover {
  background: #ff0000;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  #voice .totalCount {
    margin: 0 0 1em 1.5em;
    font-size: 1.5rem;
    font-weight: 700;
  }
  .seko_after_comment {
    font-size: 17px;
  }
}

@media screen and (max-width: 767px) {
  #voice .totalCount {
    margin: 0 0 1em 1em;
    font-size: 1.5rem;
    font-weight: 700;
  }
}


.wannyan-archive {
  display: flex
}

.wannyan-archive .image {
  margin-right: 15px;
  width: 340px;
  height: 200px;
}

.wannyan-archive .content {
  width: calc(100% - 100px - 15px);
}

.obfit-info2 {
  width: 100%;
  height: 180px !important;
  object-fit: cover;
}

.obfit-info3 {
  width: 100%;
  height: 180px !important;
  object-fit: cover;
  border: 1px solid #ccc;
}

.sp__br {
  display: none;
}




@media screen and (max-width: 767px) {
  .wannyan-archive {
    display: block;
  }

  .wannyan-archive .image {
    margin-right: 0;
    width: 100%;
    height: auto !important;
    margin-bottom: 2em;
  }

  .wannyan-archive .content {
    width: 100%;
  }

  .sp__br {
    display: block;
  }
}



#floating-banner {
  display: none;
  position: fixed;
  z-index: 99999;
  bottom: 60px;
  right: 10px;
  width: 200px;
}

#floating-banner:hover {
  opacity: .8;
}

#floating-banner img {
  width: 100%;
}

.batsu {
  font-size: 100%;
  font-weight: bold;
  border: 1px solid #333;
  color: #fff;
  background: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  width: 1.3em;
  line-height: 1.3em;
  cursor: pointer;
  transition: .2s;
  position: absolute;
  right: 0;
}

.batsu:hover {
  background: #ccc;
  border-color: #999;
  color: #999;
}

@media screen and (max-width: 767px) {
  #floating-banner {
    display: none;
    position: fixed;
    z-index: 880;
    top: unset;
    right: 2vw;
    bottom: 27vw;
    width: 28vw;
    display: inline-block;
  }

  #floating-banner img {
    width: 100%;
  }

  .batsu {
    font-size: 100%;
    font-weight: bold;
    border: 1px solid #333;
    color: #fff;
    background: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    width: 1.3em;
    line-height: 1.3em;
    cursor: pointer;
    transition: .2s;
    position: absolute;
    right: 0;
  }
}

#store .main_pic {
  margin-bottom: 2rem;
}

#store .store_info {
  padding: 3rem;
  background: #f9f7f3;
  width: 100%;
  margin: 0 auto 3rem auto;
}

#store .store_info h3 {
  font-size: 150%;
  text-align: center;
  color: #c1272d;
  font-weight: 900;
  margin-bottom: 2rem;
  line-height: 150%;
}

#store .store_info .detail_wrap {
  display: flex;
  justify-content: space-between;
}

#store .store_info .detail_wrap .left {
  width: 28%;
}

#store .store_info .detail_wrap .right {
  text-align: left;
  width: 70%;
}

#store .store_info .detail_wrap .right h4 {
  font-size: 100%;
  margin-bottom: 0.5rem;
}

#store .store_info .detail_wrap .right p.maker {
  font-size: 90%;
}

#store .store_info .detail_wrap .right p.infomation {
  line-height: 170%;
  margin-bottom: 2rem;
}


#store .store_info .detail_wrap .left_suita p.infomation {
  font-size: 115%;
  line-height: 180%;
}

#store .store_info .detail_wrap .right_suita a {
  display: block;
  background: #c1272d;
  text-align: center;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  color: #FFF;
  line-height: 150%;
  font-size: 120%;
  font-weight: 700;
  padding: 1rem;
}

#store .store_info .detail_wrap .right_suita a:hover {
  background: #e0454b;
}

.magokoro {
  max-width: 860px;
  margin: 0 auto 6rem auto;
}

.tennai {
  display: flex;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 3rem auto;
  flex-wrap: wrap;
  justify-content: space-between;
}

.tennai::after{
        content:"";
        display: block;
        width:32%;
}

.tennai div {
  width: 32%;
  margin-bottom: 2rem;
}

.tennai div img {
  margin-bottom: 0.5rem;
}

.map_wrap {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5rem;
}

.map_wrap .map_right {
  width: 50%;
}

.map_wrap .map_left {
  width: 50%;
}

.map_wrap .map_left p {
  font-size: 110%;
  line-height: 180%;
}

.map_wrap iframe {
  width: 100%;
  height: 50rem;
  margin-bottom: 2rem;
}

.map_under {
  text-align: center;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 1px solid #cfcfcf;
}

.map_under h3 {
  display: block;
  width: 100%;
  background: #f3141d;
  color: #fff;
  font-size: 160%;
  line-height: 160%;
  padding: 0.5rem;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-top-left-radius: 10px;
  -moz-border-top-right-radius: 10px;
  font-weight: 700;
}

.map_under h4 {
  display: block;
  width: 100%;
  background: #f3141d;
  color: #fff;
  font-size: 160%;
  line-height: 160%;
  padding: 0.5rem;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-top-left-radius: 10px;
  -moz-border-top-right-radius: 10px;
  font-weight: 700;
}

.map_under .number-wrap {
  justify-content: center;
  padding: 1.5rem 0
}

.store_form {
  margin-bottom: 5rem;
}

.store_area .wrap {
  display: flex;
  justify-content: space-between;
}

.store_area h3 {
  font-size: 140%;
  font-weight: 700;
  margin-bottom: 2rem;
}

.store_area .wrap .areamap {
  width: 30%;
}

.store_area .wrap .areamap_info {
  width: 65%;
}

.store_area .wrap .areamap_info p.read {
  margin-bottom: 2rem;
  font-size: 120%;
  line-height: 180%;
}

#store .more {
  width: 100%;
  text-align: center;
}

#store .store_info h3 br:nth-of-type(1),
#store .store_info h3 br:nth-of-type(3) {
  display: none;
}

@media screen and (max-width: 414px) {
  #store .store_info .detail_wrap {
    display: block;
  }

  #store .store_info .detail_wrap .left_suita {
    margin-bottom: 1rem;
  }

  div.quote {
    margin-bottom: 2rem;
  }

  div.quote>span {
    font-size: 120%;
    line-height: 140%;
  }

  div.quote::before,
  div.quote::after {
    margin: 0 -20px 30px -20px;
    ;
  }

  .tennai div {
    width: 48%;
    margin-bottom: 2rem;
  }

  .map_wrap {
    display: block;
  }

  .map_wrap .map_left {
    width: 100%;
    margin-bottom: 2rem;
  }

  .map_wrap .map_right {
    width: 100%;
  }

  .map_under h3 {
    font-size: 120%;
    line-height: 120%;
    margin-bottom: 0;
  }

  .map_under h4 {
    font-size: 120%;
    line-height: 120%;
    margin-bottom: 0;
  }

  .store_area .wrap .areamap_info p.read {
    font-size: 100%;
    line-height: 166%;
  }

  .store_form .form-btn-wrap {
    margin-bottom: 2rem;
  }

  .store_form {
    margin-bottom: 0;
  }

  #store .store_info h3 {
    font-size: 134%;
    line-height: 140%;
  }

  #store .store_info h3 br:nth-of-type(1),
  #store .store_info h3 br:nth-of-type(3) {
    display: block;
  }

  .taiken-list {
    width: 100%;
  }

  #store .store_info .detail_wrap .left {
    width: 100%;
    margin-bottom: 2rem;
  }

  .taiken-list li {
    font-size: calc(33 / 750 * 100vw);
  }

  #store .store_info .detail_wrap .right {
    width: 100%;
  }
}

#store .quote h3 {
  font-size:35px;
  font-size: 3.5rem;
  text-align: center;
  line-height: 1.6;
  font-weight: bold;
  margin-bottom: 3rem;
}

#store .quote h3 span {
  display: inline-block;
}


#store .quote h3:before {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-left@2x.png);
  background-size: contain;
  display: inline-block;
  height: 70px;
  width: 32px;
}

#store .quote h3:after {
  margin-right: .5em;
  content: '';
  background-image: url(../img/lineup/heading-right@2x.png);
  background-size: contain;
  display: inline-block;
  height:70px;
  width: 32px;
}

@media screen and (max-width: 414px) {
  #store .quote h3 {
    font-size:5vw;
    text-align: center;
    font-weight: bold;
    margin-bottom: 3rem;
  }

  #store .quote h3:before {
    height:calc(100vw / 414 * 42);
    width:calc(100vw / 414 * 19);
    margin-right:0;
  }

  #store .quote h3:after {
    height:calc(100vw / 414 * 42);
    width:calc(100vw / 414 * 19);
    margin-left:0;
  }
}

/* こどもみらい住宅支援事業 */
.content_wrapper{
	margin: auto;
	display: block;
}
.content_wrapper p{
	font-size: 16px;
    line-height: 1.6;
}
.content_wrapper td,.content_wrapper th{
	font-size: 14px!important;
}

#kodomomirai .img-fit {
    width: 100%;
}
#kodomomirai .mv_img {
    max-width: 100%;
    margin-bottom: 50px;
}
#kodomomirai .tit01 {
    width: 60%;
    border: 3px solid #887467;
    color:#887467;
    padding: .6rem;
    text-align: center;
    font-size:27px;
    font-weight: 700;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    margin: 20px auto;
}
#kodomomirai .tit02 {
    color:#000;
    text-align: center;
    font-size:50px;
    font-weight: 700;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    line-height: 1;
}
#kodomomirai .read {
    background: #ededed;
    position: relative;
    text-align: left;
    margin-bottom: 20px;
    padding: 5px;
}
#kodomomirai .read img {
  position: absolute;
  display: block;
    margin: 0;
    width: 23%;
    bottom: 0;
    left: 1rem;
  }
#kodomomirai .read p {
    margin-left: 28%;
    font-size: 18px;
    line-height: 2;
    font-weight: bold;
  }
#kodomomirai .read .min {
  color: #887467;
  font-weight: bold;
}
#kodomomirai .read .min2 {
  color: #887467;
  font-weight: bold;
  font-size: 14px;
}
#kodomomirai .kodomomirai_h2{
	font-size: 24px;
	font-weight: bold;
	border-left: 5px solid #5a3f2c;
	padding: 0.2rem 0 0.2rem 1rem;
    margin-bottom: 20px;
}
#kodomomirai .kodomomirai_h3{
	font-size: 22px;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 2px solid #e5e5e5;
    margin-bottom: 20px;
}
#kodomomirai .table1{
	text-align: center;
	font-size: 14px;
	border-collapse: collapse;
  	border-spacing: 0;
    border: solid 2px #999;
}
#kodomomirai .table1 th,.table1 td{
	width: 50%;
	padding: 10px 0;
	border: solid 2px #999;
}
#kodomomirai .table1 th{
	background-color: #e5e5e5;
    text-align: center;
}
#kodomomirai .table1 td{
	text-align: center;
    color: #b90000;
}
#kodomomirai h4 {
  border-bottom: 2px solid #e5e5e5;
  padding: 0 0 0.5rem 0;
  margin-bottom: 2rem;
  font-size: 18px;
}
#kodomomirai h5 {
  border: 2px solid #e5e5e5;
  padding: 1rem;
  margin-bottom: 2rem;
  font-size: 18px;
    text-align: center;
}
#kodomomirai .side_title{
	font-size: 18px;
	font-weight: bold;
	position: relative;
    margin-bottom: 20px;
}
#kodomomirai .side_title::before {
	content: '《 ';
	color: #000;
}
#kodomomirai .side_title::after {
	content: ' 》';
	color: #000;
}
#kodomomirai .fsz140 {
  font-size: 140%;
  font-weight: bold;
}
#kodomomirai .tit03 {
    font-size: 24px;
    font-weight: 700;
    background: linear-gradient(transparent 90%, #887467 60%);
    width: fit-content;
    text-align: center;
    margin: 3rem auto;
    padding-bottom: 0.6rem;
    display: inline;
    line-height: 2;
}
#kodomomirai .tit03 span {
position: relative;
padding-top: 0.2em;
    color:#887467;
}
#kodomomirai .tit04 {
    font-size: 120%;
    font-weight: 700;
    background: linear-gradient(transparent 90%, #887467 60%);
    width: fit-content;
    text-align: center;
    margin: 3rem auto;
    padding-bottom: 0.6rem;
    display: inline;
    line-height: 3;
}
#kodomomirai .tit04 span {
position: relative;
padding-top: 0.2em;
}
#kodomomirai .tit04 span::before  {
    position: absolute;
    content: "";
    width: 0.4em;
    height: 0.4em;
    border-radius: 50%;
    background-color: orange;
    top: -0.4em;
    left: 50%;
    transform: translate(-50%, 0);
}
.kaku__title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}
#kodomomirai table {
  width: 100%;
  border: 2px solid #999;
  margin-bottom: 20px;
    border-collapse: collapse;
    border-spacing: 0;
}
#kodomomirai table td {
  border-bottom: 1px solid #999;
  border-right: 1px solid #999;
  padding: 1rem;
  text-align: center;
}
#kodomomirai table td span {
  color: #b71c1c;
}
#kodomomirai table td span.attention {
  color: #333333;
  font-size: 80%;
}
#kodomomirai table td.gray {
  background: #f3f1f0;
}
#kodomomirai table td.ta_left {
  text-align: left;
  width: 50%;
}
#kodomomirai table td.w10p {
  width: 10%;
}
#kodomomirai table td.w15p {
  width: 15%;
}
#kodomomirai table td.w25p {
  width: 25%;
}
#kodomomirai table td.bbold {
}
#kodomomirai table td.rbold {
  border-right: 2px solid #999;
}
#kodomomirai .ta_center {
  text-align: center;
}
#kodomomirai table td.lh_120 {
  line-height: 120%;
}
#kodomomirai table td.gray2 {
  background: #887467;
    color: #fff;
}
#kodomomirai section {
  margin-bottom: 40px;
}
#kodomomirai .mb40 {
  margin-bottom: 40px;
}
#kodomomirai .caution{
  color: #000;
}
#kodomomirai .caution span {
  color: #b71c1c;
  font-size: 18px;
  font-weight: bold;
}
#kodomomirai .kikan {
  color: #000;
  font-size: 18px;
  font-weight: bold;
}
#kodomomirai .kikan span {
  color: #b71c1c;
  font-size: 23px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
.content_wrapper {
    width: 96%;
}
#kodomomirai .img-fit {
    width: 100%;
}
#kodomomirai .tit01 {
    width: 90%;
    font-size: calc(40 / 750 * 100vw);
}
#kodomomirai .tit02 {
    font-size: calc(55 / 750 * 100vw);
}
#kodomomirai .tit03 {
    font-size: calc(38 / 750 * 100vw);
}
#kodomomirai .kodomomirai_h2 {
    font-size: calc(38 / 750 * 100vw);
}
#kodomomirai .kodomomirai_h3 {
    font-size: calc(38 / 750 * 100vw);
}
#kodomomirai .kikan span {
    font-size: calc(38 / 750 * 100vw);
}
#kodomomirai h4 {
    line-height: 1.4;
}
#kodomomirai .read {
    text-align: center;
}
#kodomomirai .read img {
    margin: 0 30%;
    top: -10%;
    width: 40%;
    left:auto
}
#kodomomirai .read p {
    margin-left: 0;
    margin-top: 12rem;
    font-size: calc(33 / 750 * 100vw);
    line-height: 1.6;
}
#kodomomirai .tit04 {
    line-height: 2.4;
}
#kodomomirai .table1 th{
	display: revert;
}
#kodomomirai .table1 td {
    display: revert;
}
#kodomomirai .tit04 span {
padding-top: 0;
}
}


.showroom-inner {
  position: relative;
  overflow: hidden;
}

.showroom-inner .showroom-main{
  position: relative;
  overflow: hidden;
  width: 100%;
  margin:0 0 20px;
}

.showroom-inner .image {
  position: relative;
  overflow: hidden;

}

.showroom-inner .image:before {
  content: '' !important;
  display: block;
  padding-top: 60%;
}

.showroom-inner .image 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: contain;
}

.showroom-inner .content{
  background: #f9f7f3;
  padding: 20px;
  overflow: hidden;
}

.showroom-summary dt {
  font-weight: bold;
  margin: 15px 0 10px;
}

.showroom-summary dd {
  margin: 0 0 15px;
}

.showroom-summary dd:last-of-type {
  margin-bottom: 0;
}
@media screen and (min-width: 980px){
  .showroom-inner .showroom-main{
    width: 45%;
    margin: 0 20px 0 0;
    float: left;
  }
  

}

.l-column_store {
  margin: 0 auto;
  margin-top:0;
  width: 100%
}

.l-column_store .l-main {
  margin-bottom: 0!important;
  width: 100%
}

.l-column_store .l-aside {
  display: none
}

@media screen and (min-width: 980px) {
  .l-column_store {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-around;
    margin-top: 50px;
    max-width: 960px
  }

  .l-column_store .l-main {
    margin-top: 0;
    margin-bottom: 90px;
    width: calc(100% - 250px - 20px);
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }

  .l-column_store .l-aside {
    position: relative;
    display: block;
    margin: 0 auto;
    margin-right: 20px;
    width: 250px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    z-index: 777
  }

}

.l-column_store #riyu {
  margin-top: 0;
}

#company td {
  width: auto;
  padding: 1rem;
  border: solid 2px #999;
}

#company th {
  border: solid 2px #999;
}


.post-movie a{
        margin-bottom:calc(50 / 750 * 100vw);
}

.post-movie a .img{
        border-bottom:1px dotted #f3141d;
        padding-bottom:calc(15 / 750 * 100vw);
        margin-bottom:calc(15 / 750 * 100vw);
}

.post-movie a .img .img-trim{
        position: relative;
	overflow: hidden;
	padding-top: 56.25%;
}

.post-movie a .img .img-trim img{
        position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.post-movie a h3{
        font-size:1.5rem;
        line-height:1.6;
        font-weight:700;
        border-bottom:1px dotted #f3141d;
        padding-bottom:calc(15 / 750 * 100vw);
        margin-bottom:calc(15 / 750 * 100vw);
}

.post-movie a .movie_btn{
        border:1px solid #f3141d;
        text-align:center;
        color:#f3141d;
        font-size:1.5rem;
        font-weight:700;
        padding:calc(20 / 750 * 100vw) 0;
        background:#fff;
}

.post-movie a .movie_btn span{
        display:inline-block;
        position:relative;
}

.post-movie a .movie_btn span::before{
        position:absolute;
        left:calc(100% + 0.5rem);
        top:50%;
        transform:translateY(-50%);
        content:"";
        width:2.5rem;
        height:2.5rem;
        background:#f3141d;
        border-radius:50%;
}

.post-movie a .movie_btn span::after{
        position:absolute;
        left:calc(100% + 1.35rem);
        top:50%;
        transform:translateY(-50%);
        content:"";
        width: 0;
        height: 0;
        border-style: solid;
        border-width:0.5rem 0 0.5rem 1rem;
        border-color: transparent transparent transparent #fff;
}

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

        .post-movie{
                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;
        }

        .post-movie a{
                width:31%;
                margin-bottom:30px;
        }
        
        .post-movie a .img{
                border-bottom:1px dotted #f3141d;
                padding-bottom:10px;
                margin-bottom:10px;
        }
        
        .post-movie a h3{
                padding-bottom:10px;
                margin-bottom:10px;
        }
        
        .post-movie a .movie_btn{
                padding:10px 0;
        }

}

.wan_for-sp {
  display: none!important;
}
.wan_for-pc {
  display: inline-block!important;
}

@media (max-width: 768px) {
  .wan_for-sp {
   display: inline-block!important;
  }
  .wan_for-pc {
  display: none!important;
  }
}


.sekoarea_shopinfo .showroom-inner-wrap {
  width: 100%;
  align-items: center;
  justify-content: space-between;
}

.sekoarea_shopinfo .showroom-inner-wrap .image {
        width: 28%;
}

.sekoarea_shopinfo .showroom-inner-wrap .image img {
  width: 100%;
  height: auto;
}

.sekoarea_shopinfo .showroom-inner-wrap .content {
        width: 68%;
        margin-right:0;
}

.sekoarea_shopinfo .showroom-inner-wrap .btn-size {
  width: 50%;
}

.sekoarea_shopinfo p {
  margin-bottom: 1.6rem;
}

@media (max-width: 768px) {

        .sekoarea_shopinfo .showroom-inner-wrap {
                align-items: flex-start;
        }

        .sekoarea_shopinfo .showroom-inner-wrap .image {
                width: 48%;
        }
        
        .sekoarea_shopinfo .showroom-inner-wrap .content {
                width: 48%;
                font-size: 90%;
                
        }
        .sekoarea_shopinfo .showroom-inner-wrap .btn-size {
                width: 100%;
        }

}

@media (max-width: 414px) {

.sekoarea_shopinfo .showroom-inner-wrap .content {
  
  line-height:1.8rem;
}



}

.t_inner_flex {
  display: flex;
  justify-content: space-between;
}

.t_inner_flex .l {
  width: 54%;
}

.t_inner_flex .l iframe {
  width: 100%;
}

.t_inner_flex .r {
  width: 46%;
}

.company_pagemap {
  width: 100%;
  height: 34vw;
}
@media (max-width: 414px) {
  .company_pagemap {
    width: 100%;
    height:70vw;
  }
}

#kodomomirai .hoseiyosan_tit {
  color: #000;
  font-size: 16px;
  border: 2px solid #000;
  padding: 5px;
  display: inline-block;
  border-radius: 10px;
  font-weight: bold;
  margin-bottom: 1rem;
}

#kodomomirai .c_box {
  width: 100%;
  border: 3px solid #ff0000;
  padding: 20px 20px 1rem 20px;
  color: #ff0000;
  line-height: 1.6;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 40px;
  margin-top: 2rem;
}

#kodomomirai .c_box .tit {
  color: #ff0000;
  line-height:2.6rem;
  font-size: 16px;
  margin-bottom: 1rem;
  font-weight: bold;
}
#kodomomirai .c_box p {
  font-size:100%;
  line-height: 2.2rem;
  margin-bottom: 1rem;
}


.swiper-button-prev{
        position: absolute;
        top: 50%;
        right: auto;
        left:0;
        transform: translateY(-50%);
        background: rgba(51, 123, 187, 0.8);
        width: 8vw;
        height: 24vw;
}

.swiper-button-prev::after{
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: inline-block;
        width: 2.133vw;
        height: 4vw;
        background-image: url(./../img/home/hero_slider_arrow_l.png);
        background-size: contain;
        background-repeat: no-repeat;
        transition: .3s;
}

.swiper-button-next{
        position: absolute;
        top: 50%;
        right:0;
        transform: translateY(-50%);
        background: rgba(51, 123, 187, 0.8);
        width: 8vw;
        height: 24vw;
}

.swiper-button-next::after{
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: inline-block;
        width: 2.133vw;
        height: 4vw;
        background-image: url(./../img/home/hero_slider_arrow_r.png);
        background-size: contain;
        background-repeat: no-repeat;
        transition: .3s;
}

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

        .swiper-button-prev,
        .swiper-button-next {
                width: 40px;
                height: 120px;
        }
        
        .swiper-button-prev:after,
        .swiper-button-next:after {
                width:13px;
                height:25px;
        }
        
        .swiper-button-prev{
                right:auto;
                left:calc(100% - 1240px);
        }
        
        .swiper-button-next {
                left:auto;
                right:calc(100% - 1240px);
        }

}

/*3つの補助金を上手に活用してお得にリフォーム*/
.hojyokin_page{
    font-family:'Zen Maru Gothic', "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    line-height: 1.6;
}
.hojyokin_page .container {
    display: block;
    margin: 0 auto;
    width: 1000px;
    max-width: 100%;
}
.hojyokin_page .mv{
    position: relative;
    width:100%;
    margin-bottom: 20px;
    margin-top: 50px;
}
.hojyokin_page .mv .btn_h{
    position: absolute;
    right:0;
    bottom:20px;
    max-width: 300px;
    width: 300px;
    display: flex;
}
.hojyokin_page .btn_h_contact{
    margin-left: 80px;
    width: 290px;
}
.h-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    border: 5px solid #00A599;
    background: #fff;
    color: #00A599;
    border-radius: 50px;
    padding: 29px 0;
    width: 100%;
    height: 100%;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 700;
}
.h-btn:hover{
    border: 5px solid #589791;
    background: #589791;
    color:#fff;
}
.hojyokin_page .cta .h-btn{
  padding: 15px 0;
}
.hojyokin_page .btn_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.hojyokin_page .btn_flex a{
    width:32%;
}
.hojyokin_page .p_btn{
    border: 2px solid #E66F78;
    background: #E66F78;
    color:#fff;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
}
.hojyokin_page .p_btn:hover{
    border: 2px solid #E66F78;
    background: #fff;
    color:#E66F78;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
}
.hojyokin_page .b_btn{
    border: 2px solid #65A1DA;
    background: #65A1DA;
    color:#fff;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
}
.hojyokin_page .b_btn:hover{
    border: 2px solid #65A1DA;
    background: #fff;
    color:#65A1DA;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
}
.hojyokin_page .o_btn{
    border: 2px solid #F09229;
    background: #F09229;
    color:#fff;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
}
.hojyokin_page .o_btn:hover{
    border: 2px solid #F09229;
    background: #fff;
    color:#F09229;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
}
.hojyokin_page .lg_bg{
    background: rgba(0,165,153,0.1);
    padding: 50px 0;
    background-image: url(../img/3hojyokin/bg_house.png);
	background-position: bottom 0 right 0;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.hojyokin_page .g_tit{
    color: #00A599;
    font-weight: 700;
    font-size: 3rem;
    line-height: 1.2;
}
.hojyokin_page .c_flex{
    display: flex;
    justify-content: space-between;
}
.hojyokin_page .c_flex img{
    width:95%;
}
.hojyokin_page .fsz2{
        font-size:2rem;
}
.hojyokin_page .fsz3{
        font-size:3rem;
}
.hojyokin_page .fsz4{
        font-size:4rem;
}
.hojyokin_page .fw7{
        font-weight: 700;
}
.hojyokin_page h3{
        line-height: 1.2;
}
.hojyokin_page .fcp {color:#E66F78;}
.hojyokin_page .fcb {color:#65A1DA;}
.hojyokin_page .fco {color:#F09229;}
.hojyokin_page .fcg {color:#00A599;}

.hojyokin_page .title_hukidashi_p {
  position: relative;
  padding: 1.5rem 2rem;
  border-bottom: 3px solid #E66F78;
  background: #fff;
}

.hojyokin_page .title_hukidashi_p:before {
  position: absolute;
  bottom: -28px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #E66F78 transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .title_hukidashi_p:after {
  position: absolute;
  bottom: -24px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .title_hukidashi_b {
  position: relative;
  padding: 1.5rem 2rem;
  border-bottom: 3px solid #65A1DA;
  background: #fff;
}

.hojyokin_page .title_hukidashi_b:before {
  position: absolute;
  bottom: -28px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #65A1DA transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .title_hukidashi_b:after {
  position: absolute;
  bottom: -24px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .title_hukidashi_o {
  position: relative;
  padding: 1.5rem 2rem;
  border-bottom: 3px solid #F09229;
  background: #fff;
}

.hojyokin_page .title_hukidashi_o:before {
  position: absolute;
  bottom: -28px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #F09229 transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .title_hukidashi_o:after {
  position: absolute;
  bottom: -24px;
  left: 50%;
  width: 0;
  height: 0;
  content: '';
  border-width: 28px 24px 0 24px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  transform: translateX(-50%);
}

.hojyokin_page .table_box{
    display: flex;
}

.hojyokin_page .table_box img {
  width: 100%;
}

.hojyokin_page .kagi_box {
    --x-gradient: linear-gradient(90deg, #333 0 30px, transparent 0 calc(100% - 30px), #333 calc(100% - 30px));
    --y-gradient: linear-gradient(#333 0 30px, transparent 0 calc(100% - 30px), #333 calc(100% - 30px));
    padding: 3rem;
    background-image:
        var(--x-gradient),
        var(--y-gradient),
        var(--x-gradient),
        var(--y-gradient);
    background-repeat: no-repeat;
    background-size: 100% 5px, 5px 100%, 100% 5px, 5px 100%;
    background-position: top, right, bottom, left;
    width: 100%;
    border: 1px solid #ccc;
    text-align: left;
    font-size: 1.6rem;
}
.hojyokin_page .kagi_box .tit01{
    background: #00A599;
    border: 2px solid #00A599;
    border-radius: 50px;
    padding: 1rem;
    text-align: center;
    margin: 0 auto 20px;
    color:#fff;
    width: 300px;
}
.hojyokin_page .kagi_box .tit02{
    background: #fff;
    border: 2px solid #00A599;
    border-radius: 50px;
    padding: 1rem;
    text-align: center;
    margin: 0 auto 20px;
    color:#00A599;
    width: 300px;
}
.hojyokin_page .kagi_box .tit03{
    background: #65A1DA;
    border: 2px solid #65A1DA;
    border-radius: 50px;
    padding: 1rem;
    text-align: center;
    margin: 0 auto 20px;
    color:#fff;
    width: 300px;
}
.hojyokin_page .kagi_box .tit04{
    background: #fff;
    border: 2px solid #65A1DA;
    border-radius: 50px;
    padding: 1rem;
    text-align: center;
    margin: 0 auto 20px;
    color:#65A1DA;
    width: 300px;
}
.hojyokin_page .lp_bg{
    background: #f9f0f1;
    padding: 50px 0;
}
.hojyokin_page .seko_jirei_box{
    background: #fff;
    border-radius: 10px;
    margin-bottom: 30px;
    width:100%;
}
.hojyokin_page .seko_jirei_box .tit{
    background: #E66F78;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    margin-bottom: 1rem;
    width:100%;
    color:#fff;
    text-align: center;
    padding: 1rem;
    font-size:3rem;
    font-weight: 700;
    position: relative;
}
.hojyokin_page .seko_jirei_box .tit .hissu{
    background: #fff;
    border-radius: 20px;
    color:#E66F78;
    text-align: center;
    padding: .5rem 2rem;
    font-size:2rem;
    font-weight: 700;
    top:10px;
    right:10px;
    position: absolute;
}
.hojyokin_page .seko_jirei_box .tit .nini{
    background: #fff;
    border-radius: 20px;
    color:#808080;
    text-align: center;
    padding: .5rem 2rem;
    font-size:2rem;
    font-weight: 700;
    top:10px;
    right:10px;
    position: absolute;
}
.hojyokin_page .seko_jirei_box .jirei{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 3rem;
}
.hojyokin_page .seko_jirei_box .jirei .box{
    width: 31%;
    margin: 0 1% 20px;
    text-align: center;
    font-size: 1.8rem;
}
.hojyokin_page .seko_jirei_box .jirei .box img{
    width:100%;
    margin-bottom: 8px;
}
@media screen and (min-width: 980px) {
  .hojyokin_page .seko_jirei_box .jirei .box img {
    height: 212px;
    object-fit: cover;
    border-radius: 10px;
  }
}
.hojyokin_page .mado_flex{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.hojyokin_page .mado_flex .m_box{
    width: 48%;
    margin: 1%;
    text-align: center;
}
.hojyokin_page .mado_flex .m_box img{
    width: 100%;
    margin-bottom: 8px;
}
.hojyokin_page .lo_bg{
    background: #f9f8ef;
    padding: 50px 0;
}
.hojyokin_page .endbox{
	border:2px solid #b71c1c;
	padding: 20px;
	text-align: center;
}
.hojyokin_page .endbox .end_tit{
	background-color: #b71c1c;
	padding: 10px;
	text-align: center;
	display: inline-block;
	color: #fff;
	border-radius: 40px;
	font-size: 20px;
    font-weight: 700;
}
.hojyokin_page .endbox p{
	line-height: 1.6;
	font-weight: 600;
}
.hojyokin_page .endbox .red{
	font-size: 20px;
    font-weight: 700;
	color: #b71c1c;
	border-bottom: 1px solid #b71c1c;
}
.hojyokin_page .endbox .mk_y{
	font-size: 20px;
    font-weight: 700;
	color: #000;
	background:linear-gradient(transparent 60%, #ff6 60%);
}

.hojyokin_page .endbox p a{
        color:#b71c1c;
}
@media screen and (max-width: 768px) {
.hojyokin_page .container {
    display: block;
    margin: 0 auto;
    width: 96%;
    max-width:96%;
}
.hojyokin_page .mv .btn_h{
    position: relative;
    right: 0;
    bottom: 0;
    margin-top: 20px;
    margin-bottom: 10px;
    width: 100%;
    max-width: 100%;
    display: flex;
}
.hojyokin_page .btn_flex{
    display: block;
}
.hojyokin_page .btn_flex a{
    width: 100%;
    margin-bottom: 10px;
    display: block;
}
.hojyokin_page .btn_flex img{
    width:100%;
}
.hojyokin_page .lg_bg{
    background: #eef4f4;
    padding: 50px 0;
    background-image: url(../img/3hojyokin/bg_house_sp.png);
	background-position: bottom 0 right 0;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.hojyokin_page .g_tit {
    font-size: 2.4rem;
}
.hojyokin_page .fsz2 {
    font-size: 1.4rem;
}
.hojyokin_page .fsz3 {
    font-size: 1.8rem;
}
.hojyokin_page .fsz4 {
    font-size: 3rem;
}
.hojyokin_page .c_flex{
    display: block;
}
.hojyokin_page .c_flex img{
    margin-bottom: 20px;
}
.hojyokin_page .seko_jirei_box .jirei {
    padding: 1rem;
}
.hojyokin_page .seko_jirei_box .tit {
    font-size: 2rem;
    display: grid;
}
.hojyokin_page .seko_jirei_box .tit .hissu {
    font-size: 2rem;
    top: 0;
    right: 0;
    position: relative;
    margin: 0 auto;
    width: 50%;
}
.hojyokin_page .seko_jirei_box .tit .nini {
    font-size: 2rem;
    top: 0;
    right: 0;
    position: relative;
    margin: 0 auto;
    width: 50%;
}
.hojyokin_page .seko_jirei_box .jirei .box{
    width:48%;
    text-align: center;
    font-size: 1.6rem;
}
.hojyokin_page .title_hukidashi_p:before {
  left: 45%;
}

.hojyokin_page .title_hukidashi_p:after {
  left: 45%;
}
.hojyokin_page .table_box{
    display: flex;
    overflow-x: scroll;
}
.hojyokin_page .table_box img{
    width:160%;
}
.hojyokin_page .btn_h{
    width: 96%;
    display: flex;
    margin: 1em auto 3em;
}
.hojyokin_page .endbox{
	text-align: center;
}
.hojyokin_page .endbox p{
	text-align: left;
}
}


.o_content{
        padding:50px 0;
}

.o_content .text-center{
        text-align:center;
}

.o_content .img-fluid{
        display:block;
        max-width:100%;
        height:auto;
}

.o_content .flex-wrap{
        display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}

.osaka-cta-btn{
        display:inline-block;
        width:525px;
        background:#399cde;
        color:#fff;
        font-size:3rem;
        font-weight:900;
        padding:30px 0;
        border-radius:53px;
}

.osaka-cta-btn:hover{
        opacity:0.8;
}


.o_content .osaka-migration-cta{
        width:690px;
        margin:0 auto;
}

.o_content .osaka-migration-cta .osaka-cta-btn{
        width:100%;
        font-size:2.4rem;
        padding:20px 0;
}

.oc01 .mv{
        width:936px;
        max-width:100%;
        margin:0 auto 50px;
}

.oc01 .mv h1{
        line-height:1;
}

.oc01 .mv h1 .txt{
        display:block;
}

.oc01 .mv h1 .txt.txt01{
        font-weight:900;
        font-size:52px;
        color:#fff;
        font-style:italic;
        text-shadow:
        2px  2px 0px #005aaa,
        -2px  2px 0px #005aaa,
        2px -2px 0px #005aaa,
        -2px -2px 0px #005aaa,
        2px  0px 0px #005aaa,
        0px  2px 0px #005aaa,
        -2px  0px 0px #005aaa,
        0px -2px 0px #005aaa;
        margin-bottom:15px;
        padding-left:150px;
}

.oc01 .mv h1 .txt.txt01 .dot{
        font-size:71px;
        color:#ffc400;
        position:relative;
}

.oc01 .mv h1 .txt.txt01 .dot::before{
        position:absolute;
        top:-35px;
        left:15px;
        content:"・・・・・";
        font-weight:900;
        color:#E50013;
        text-shadow:none;
        font-style:normal;
}

.oc01 .mv h1 .txt.txt02{
        font-weight:900;
        font-size:110px;
        color:#005aaa;
        font-style:italic;
        text-shadow:
        3px  3px 0px #ffffff,
        -3px  3px 0px #ffffff,
        3px -3px 0px #ffffff,
        -3px -3px 0px #ffffff,
        3px  0px 0px #ffffff,
        0px  3px 0px #ffffff,
        -3px  0px 0px #ffffff,
        0px -3px 0px #ffffff;
        padding-left:130px;
        padding-bottom:60px;
        position:relative;
}

.oc01 .mv h1 .txt.txt02::after{
        position:absolute;
        bottom:0;
        left:0;
        content:"";
        width:936px;
        height:139px;
        background:url("./../img/osaka/mv-bg.png") 0 0 no-repeat;
        background-size:cover;
        z-index:-1;
}

.oc02 h2{
        font-size:3.6rem;
        font-weight:900;
        font-style:italic;
        margin-bottom:30px;
}

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

.oc02 .content-wrap .circle{
        width:230px;
        height:230px;
        background:rgba(230,0,18,0.1);
        border-radius:50%;
        -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
        -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.oc02 .content-wrap .circle span{
        width:90%;
        font-weight:700;
        font-size:2.3rem;
}

.oc03 h2{
        -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position:relative;
	margin-bottom:50px;
	padding-bottom:10px;
}

.oc03 h2 span{
        font-size:3.6rem;
        font-weight:900;
}

.oc03 h2 .img{
        width:215px;
        margin:0 10px;
}

.oc03 h2::after{
        position:absolute;
        top:100%;
        left:50%;
        transform:translateX(-50%);
        content:"";
        width:858px;
        height:10px;
        background:url("./../img/osaka/wave.png") 0 0 no-repeat;
        background-size:cover;
}

.oc03 .riyu-heading{
       width:690px;
        max-width:100%;
        margin:0 auto 15px;
}

.oc03 .riyu-page-wrap,
.oc03 .riyu-kaiin{
        width:690px;
        max-width:100%;
        margin:0 auto 70px;
}

.oc05{
        background: repeating-linear-gradient(-45deg, rgba(230,0,18,0.1), rgba(230,0,18,0.1) 5px, #fff 5px, #fff 10px);
}

.oc05 h2{
        background:#e60012;
        color:#fff;
        font-weight:900;
        font-size:3.6rem;
        padding:30px 0;
        text-align:center;
}

.oc05 h2 span{
        color:#e9e739;
}

.oc05 .box{
        background:#fff;
        padding:30px;
        -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom:50px;
}

.oc05 .box .img{
        width:38%;
}

.oc05 .box .txt{
        width:58%;
}

.oc05 .box .txt.txt_full{
        width:100%;
}

.oc05 .osaka-migration-cta{
        margin-top:100px;
}

.oc05 .migration-cta-outer{
        background:#fff;
}

.oc07{
        background:rgba(241,243,75,0.1);
}

.oc07 .osaka-voice-wrap article{
	background:#fff;
	margin-bottom:50px;
}

.oc07 .osaka-voice-wrap article .img{
        width:30%;
        padding:30px;
}

.oc07 .osaka-voice-wrap article .txt{
        width:70%;
        padding:50px 50px 50px 0;
}

.oc07 .osaka-voice-wrap article .txt h3{
        font-weight:700;
        font-size:2.4rem;
        color:#c1272d;
        margin-bottom:20px;
}

.oc07 .osaka-voice-wrap article .txt h3 span{
        margin-right:1em;
}

.oc07 .osaka-voice-wrap article .txt h3 span:last-child{
        margin-right:0;
}

.oc07 .osaka-voice-wrap article .txt p{
        font-size:1.8rem;
        line-height:1.8;
}

.oc08 h2{
        color:#e60012;
        font-weight:900;
        font-style:italic;
        font-size:4.6rem;
        margin-bottom:50px;
}

.oc08 h2 span{
        position:relative;
}

.oc08 h2 span::before{
        position:absolute;
        top:50%;
        left:-60px;
        transform:translateY(-50%) rotate(-25deg);
        content:"";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 62px 6px 0 26px;
        border-color: #f0f34b transparent transparent transparent;
}

.oc08 h2 span::after{
        position:absolute;
        top:50%;
        right:-60px;
        transform:translateY(-50%) rotate(25deg);
        content:"";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 62px 26px 0 6px;
        border-color: #f0f34b transparent transparent transparent;
}

.oc10{
        padding:94px 0 50px;
}

.oc10 h2{
        height:88px;
}

.oc10 h2 span{
        background:#f3141d;
        color:#fff;
        font-weight:900;
        font-size:4.6rem;
        font-style:italic;
        padding:10px 50px;
        border-radius:44px;
}

.oc10 .box{
        margin-bottom:70px;
}

.oc10 .box:last-child{
        margin-bottom:0;
}

.oc10 .box p{
        font-size:1.8rem;
        font-weight:500;
        line-height:1.8;
        margin-bottom:30px;
}

.oc10 .box .flex-wrap{
        -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.oc10 .box .flex-wrap > div{
        width:44%;
        margin:0 3%;
}

@media screen and (-webkit-min-device-pixel-ratio:2),(min-resolution: 2dppx){

        .oc01 .mv h1:last-child::after{
                background:url("./../img/osaka/mv-bg@2x.png") 0 0 no-repeat;
                background-size:cover;
        }
        
        .oc03 h2::after{
                background:url("./../img/osaka/wave@2x.png") 0 0 no-repeat;
                background-size:cover;
        }

}

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

        .o_content{
                padding:calc(100vw / 750 * 70) 0;
        }
        
        .o_content .heading-post3{
                line-height:1.6;
        }
        
        .osaka-cta-btn{
                width:calc(100vw / 750 * 560);
                font-size:calc(100vw / 750 * 34);
                padding:calc(100vw / 750 * 30) 0;
                border-radius:calc(100vw / 750 * 55);
        }
        
        .o_content .osaka-cta > a{
                display:block;
                margin-bottom:calc(100vw / 750 * 50);
        }
        
        .oc01 .l-inner{
                padding:0;
        }
        
        .oc01 .mv{
                width:100%;
                text-align:center;
                margin:0 auto calc(100vw / 750 * 70);
        }
        
        .oc01 .mv h1 .txt.txt01{
                font-size:calc(100vw / 750 * 44);
                margin-bottom:calc(100vw / 750 * 20);
                padding-left:0;
        }
        
        .oc01 .mv h1 .txt.txt01 .dot{
                font-size:calc(100vw / 750 * 58);
        }
        
        .oc01 .mv h1 .txt.txt01 .dot::before{
                top:calc(100vw / 750 * -40);
                left:calc(100vw / 750 * 10);
        }
        
        .oc01 .mv h1 .txt.txt02{
                font-size:calc(100vw / 750 * 80);
                padding-left:0;
                padding-bottom:calc(100vw / 750 * 60);
        }
        
        .oc01 .mv h1 .txt.txt02::after{
                background:url("./../img/osaka/mv-bg-sp.png") 0 0 no-repeat;
                background-size:cover;
                width:calc(100vw / 750 * 750);
                height:calc(100vw / 750 * 121);
        }
        
        .oc02 h2{
                font-size:calc(100vw / 750 * 50);
                margin-bottom:calc(100vw / 750 * 60);
        }
        
        .oc02 .content-wrap .circle{
                width:calc(100vw / 750 * 343);
                height:calc(100vw / 750 * 343);
                margin-bottom:calc(100vw / 750 * 40);
        }
        
        .oc02 .content-wrap .circle span{
                font-size:calc(100vw / 750 * 32);
        }
        
        .oc03 h2{
        	margin-bottom:calc(100vw / 750 * 100);
        	padding-bottom:calc(100vw / 750 * 10);
        }
        
        .oc03 h2 span{
                font-size:calc(100vw / 750 * 50);
                line-height:1.4;
        }
        
        .oc03 h2 .img{
                width:calc(100vw / 750 * 300);
                margin:0;
        }
        
        .oc03 h2 .img img{
                width:100%;
        }
        
        .oc03 h2::after{
                background:url("./../img/osaka/wave-sp.png") 0 0 no-repeat;
                background-size:cover;
                width:calc(100vw / 750 * 604);
                height:calc(100vw / 750 * 34);
        }
        
        .oc03 .riyu-heading{
                width:calc(100vw / 750 * 690);
                margin:0 autocalc(100vw / 750 *  15);
        }
        
        .oc03 .riyu-page-wrap,
        .oc03 .riyu-kaiin{
                width:calc(100vw / 750 * 690);
                margin:0 autocalc(100vw / 750 *  70);
        }
        
        .oc05{
                background: repeating-linear-gradient(-45deg, rgba(230,0,18,0.1), rgba(230,0,18,0.1)calc(100vw / 750 *  5), #fffcalc(100vw / 750 *  5), #fffcalc(100vw / 750 *  10));
        }
        
        .oc05 h2{
                font-size:calc(100vw / 750 * 48);
                padding:calc(100vw / 750 * 20);
                line-height:1.6;
        }
        
        .oc05 .box{
                padding:calc(100vw / 750 * 30);
        	margin-bottom:calc(100vw / 750 * 50);
        }
        
        .oc05 .box .img{
                width:100%;
                margin-bottom:calc(100vw / 750 * 30);
        }
        
        .oc05 .box .txt{
                width:100%;
        }
        
        .oc07 .osaka-voice-wrap article{
        	margin-bottom:calc(100vw / 750 * 50);
        }
        
        .oc07 .osaka-voice-wrap article .img{
                width:100%;
                padding:0;
        }
        
        .oc07 .osaka-voice-wrap article .img img{
                width:70%;
        }
        
        .oc07 .osaka-voice-wrap article .txt{
                width:100%;
                padding:0 calc(100vw / 750 * 30) calc(100vw / 750 * 30);
        }
        
        .oc07 .osaka-voice-wrap article .txt h3{
                font-size:calc(100vw / 750 * 40);
                margin-bottom:calc(100vw / 750 * 20);
                line-height:1.8;
        }
        
        .oc07 .osaka-voice-wrap article .txt  p{
                font-size:calc(100vw / 750 * 32);
        }
        
        .oc08 h2{
                font-size:calc(100vw / 750 * 48);
                line-height:1.4;
                margin-bottom:calc(100vw / 750 * 50);
        }
        
        .oc08 h2 span::before{
                left:calc(100vw / 750 * -80);
                border-width:calc(100vw / 750 *  120) calc(100vw / 750 *  6) 0 calc(100vw / 750 *  26);
        }
        
        .oc08 h2 span::after{
                right:calc(100vw / 750 * -80);
                border-width:calc(100vw / 750 *  120) calc(100vw / 750 *  26) 0 calc(100vw / 750 *  6);
        }
        
        .oc10{
                padding:calc(100vw / 750 * 70) 0 calc(100vw / 750 *  70);
        }
        
        .oc10 h2{
                height:calc(100vw / 750 * 111);
        }
        
        .oc10 h2 span{
                font-size:calc(100vw / 750 * 48);
                padding:calc(100vw / 750 * 20) calc(100vw / 750 *  100);
                border-radius:calc(100vw / 750 * 56);
        }
        
        .oc10 .box{
                margin-bottom:calc(100vw / 750 * 70);
        }
        
        .oc10 .box p{
                font-size:calc(100vw / 750 * 32);
                margin-bottom:calc(100vw / 750 * 30);
        }
        
        .oc10 .box .flex-wrap > div{
                width:100%;
                margin:0 auto calc(100vw / 750 * 30);
        }
        
        .oc10 .box .flex-wrap > div:last-child{
                margin:0 auto;
        }
        
        @media screen and (-webkit-min-device-pixel-ratio:2),(min-resolution: 2dppx){

                .oc01 .mv h1:last-child::after{
                        background:url("./../img/osaka/mv-bg-sp@2x.png") 0 0 no-repeat;
                        background-size:cover;
                }
                
                .oc03 h2::after{
                        background:url("./../img/osaka/wave-sp@2x.png") 0 0 no-repeat;
                        background-size:cover;
                }
        
        }

}

.file-wrap{
        margin-bottom:5px;
}

.l-main_full .migration-wrap{
        -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.l-main_full .migration-wrap > .migration-left{
        width:454px;
}

.l-main_full .migration-wrap > .migration-right{
        width:calc(100% - 454px - 10px - 12px);
}

.migration-cta_v2{
        width:100%;
        border: 2px solid #f3141d;
        padding:30px;
        position:relative;
}

.migration-cta_v2 .flex-wrap{
        display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}

.migration-cta_v2 img{
        max-width:100%;
        height:auto;
        width:100%;
}

.migration-cta_v2 .img{
        position:absolute;
        bottom:0;
        left:0;
        width:200px;
}

.migration-cta_v2 .content-wrap{
        -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width:calc(100% - 150px);
  margin-left: auto;
}

.migration-cta_v2 .content-wrap .number{
        width:53%;
}

.migration-cta_v2 .content-wrap .number > p{
        font-size:20px;
        font-size:2.0rem;
        margin-bottom:10px;
}

.migration-cta_v2 .content-wrap .number .number-wrap{
        -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.migration-cta_v2 .content-wrap .number .number-wrap .icon{
        width:50px;
}

.migration-cta_v2 .content-wrap .number .number-wrap .txt{
        width:calc(100% - 55px);
}

.migration-cta_v2 .content-wrap .number .number-wrap .txt p.ffeigo{
        font-size:48px;
        font-size:4.8rem;
}

.migration-cta_v2 .content-wrap .btns{
        width:43%;
}

.migration-cta_v2 .content-wrap .btns .insta{
        margin-bottom:10px;
}

.migration-cta_v2 .content-wrap .btns .insta a{
        display:inline-block;
        width:30px;
}

.migration-cta_v2 .content-wrap .btns > p{
        font-size:16px;
        font-size:1.6rem;
        margin-bottom:10px;
}

.migration-cta_v2 .content-wrap .btns .floathing-btn{
        -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.migration-cta_v2 .content-wrap .btns .floathing-btn .btn{
        width:32%;
}


.pagination_info{
   margin:40px 0 0;
}
.nav-links{
  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
}
.pagination_info .page-numbers{
  position: relative;
  margin-right: .3em;
  margin-bottom: .3em;
  font-size: calc(24 / 750 * 100vw);
  font-weight: 700;
  text-align: center;
  padding: .7em .8em;
  color: #197ec1
}
.pagination_info .current{
  background-color: #197ec1;
  color: #fff;
  padding: 0.7em 0.8em
}
.pagination_info .prev,
.pagination_info .next{
  padding: .8em 1.5em;
  border: 1px solid #197ec1;
  color: #197ec1
}
.pagination_info .dots{
   background:transparent;
   box-shadow:none;
}

@media screen and (min-width: 980px) {
.pagination_info .page-numbers{
    font-size: 18px;
    font-size: 1.8rem
  }

.pagination_info .prev,
.pagination_info .next{
    font-size: 16px;
    font-size: 1.6rem
  }
}

.relation_link a{
  text-decoration: none;
  color: #333;
}

.hojyokin_page .hojo01-wrap {
  margin-top: 15px;
}
@media screen and (min-width: 980px) {
  .hojyokin_page .hojo01-wrap {
    display: flex;
  }
  .hojyokin_page .hojo01-wrap-01 {
    width: 25%;
  }
  .hojyokin_page .hojo01-wrap-02 {
    margin-left: 15px;
    width: 75%;
  }
}

#hojo_form .contact-form input[type="checkbox"] {
  margin-bottom: 0;
}

#hojo_form .wpcf7-checkbox .wpcf7-list-item {
  margin: 0 0 5px 11px;
}


.seko_cat_list .flex-wrap{
        display:-webkit-box;
  	display:flex;
  	flex-wrap: wrap;
}

.seko_cat_list .scl_wrap{
        -webkit-box-pack: justify;
	justify-content: space-between;
	margin-bottom:40px;
}

.seko_cat_list .scl_wrap .box{
        width:48%;
        padding:25px 30px 15px;
        border:1px solid #333;
}

.seko_cat_list .scl_wrap .box .scl_toggle_btn{
        font-size:2rem;
        font-weight:700;
        margin-bottom:15px;
}

.seko_cat_list .scl_wrap .box ul li{
        margin-right:1.5em;
        margin-bottom:0.5em;
}

.seko_cat_list .scl_wrap .box ul li a{
        position:relative;
        padding-right:0.75em;
}

.seko_cat_list .scl_wrap .box ul li a::after{
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        right:0;
        content:"";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 0 4px 4px;
        border-color: transparent transparent transparent #333;
}

.seko_cat_list .scl_wrap .box ul li a:hover{
        color:#c1272d;
}

.seko_cat_list .scl_wrap .box ul li a:hover::after{
        border-color: transparent transparent transparent #c1272d;
}

.seko_cat_list .scl_search{
        -webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
}

.seko_cat_list .scl_search h3{
        font-size:2rem;
        font-weight:700;
        margin:0 10px;
}

.seko_cat_list .scl_search .scl_toggle{
        margin:0 10px;
}

.seko_cat_list .scl_search .scl_toggle .search_form form{
        -webkit-box-pack: justify;
	justify-content: space-between;
        -webkit-box-align: center;
	align-items: center;
	width:400px;
}

.seko_cat_list .scl_search .scl_toggle .search_form form input[type="text"]{
        background:#eee;
        padding: 1em 0.5em;
        border:0;
        border-radius: 0;
        width: 75%;
        color: #271f1c;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 700;
        line-height:1;
}

.seko_cat_list .scl_search .scl_toggle .search_form form input[type="submit"]{
        width: 25%;
        border:0;
        background: #f3141d;
        padding: 1em 0.5em;
        text-align:center;
        color: #fff;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 700;
        line-height:1;
        transition: all .5s;
}

.seko_cat_list .scl_search .scl_toggle .search_form form input[type="submit"]:hover{
        opacity:0.7;
}

.seko_cat_list .scl_search .keyword_wrap{
        display:none;
}

.search_result{
        text-align:center;
        margin-bottom:40px;
}

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

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

        .seko_cat_list .scl_wrap .box{
                width:100%;
                padding:calc(100vw / 750 * 30) calc(100vw / 750 * 30) calc(100vw / 750 * 30);
                margin-bottom:calc(100vw / 750 * 40);
        }
        
        .seko_cat_list .scl_wrap .box:last-child{
                margin-bottom:0;
        }
        
          .seko_cat_list .scl_toggle_btn,
          .seko_cat_list .scl_wrap .box .scl_toggle_btn{
                font-size:1.75rem;
                margin-bottom:0;
                font-weight: 700;
                line-height: 1.5;
        }
        
        .seko_cat_list .scl_wrap .box ul {
                margin-top:0.75em;
        }
        
        .seko_cat_list .scl_wrap .box ul li{
                margin-right:1.5em;
                margin-bottom:0.5em;
        }
        
        .seko_cat_list .scl_wrap .box ul li a{
                font-size:1.5rem;
        }
        
        .seko_cat_list .scl_wrap .box ul li a::after{
                border-width:calc(100vw / 750 * 8) 0 calc(100vw / 750 * 8) calc(100vw / 750 * 8);
        }
        
        .seko_cat_list .scl_toggle_btn{
                cursor:pointer;
                position:relative;
        }
        
        .seko_cat_list .scl_toggle_btn::before{
                position:absolute;
                top:50%;
                transform:translateY(-50%);
                right:0;
                content:"";
                width:calc(100vw / 750 * 35);
                height:2px;
                background:#333;
        }
        
        .seko_cat_list .scl_toggle_btn::after{
                position:absolute;
                top:4px;
                right:calc(100vw / 750 * 15.5);
                content:"";
                width:2px;
                height:calc(100vw / 750 * 35);
                background:#333;
                transition:.5s;
        }
        
        .seko_cat_list .scl_toggle_btn.active::after{
                display: none;
        }
        
        .seko_cat_list .scl_toggle{
                display:none;
        }
        
        .seko_cat_list .scl_search{
          display: block;
          border: 1px solid #333;
                width: 100%;
                padding: calc(100vw / 750 * 30) calc(100vw / 750 * 30) calc(100vw / 750 * 30);
        }
        
        .seko_cat_list .scl_search h3{
                width:100%;
                font-size:1.75rem;
                margin:0;
        }
        
        .seko_cat_list .scl_search .scl_toggle{
                width:100%;
                margin:calc(100vw / 750 * 30) 0 0;
        }
        
        .seko_cat_list .scl_search .scl_toggle .search_form{
                margin-bottom:calc(100vw / 750 * 40);
        }
        
        .seko_cat_list .scl_search .scl_toggle .search_form form{
                width:100%;
                -webkit-box-orient: vertical;
          	-webkit-box-direction: normal;
          	flex-direction: column;
          	-webkit-box-pack: center;
        	justify-content: center;
        }
        
        .seko_cat_list .scl_search .scl_toggle .search_form form input[type="text"]{
                width:100%;
                margin-bottom:calc(100vw / 750 * 20);
        }
        
        .seko_cat_list .scl_search .scl_toggle .search_form form input[type="submit"]{
                width:50%;
        }
        
        .seko_cat_list .scl_search .scl_toggle .keyword_wrap{
                display:block;
        }
        
        .seko_cat_list .scl_search .scl_toggle .keyword_wrap h4{
                font-size:1.5rem;
                font-weight:700;
                margin-bottom:0.5em;
        }
        
        .seko_cat_list .scl_search .scl_toggle .keyword_wrap .keyword-list li{
                margin:0 1em 1em 0;
        }

}

.f_car::after {
        position: relative;
        padding: 0;
        content: '';
        display: block;
        width: 100%;
        height: 80px;
        background-image: url(../img/common/f_car.png);
        background-image: image-set(url(../img/common/f_car.png) 1x, url(../img/common/f_car@2x.png) 2x);
        background-image: -webkit-image-set(url(../img/common/f_car.png) 1x, url(../img/common/f_car@2x.png) 2x);
        right: 0;
        bottom: 0;
        background-repeat: repeat-x;
        animation: car 3s linear infinite forwards;
}

@keyframes car {
        0% { background-position: 0 0; }
        100% { background-position: 600px 0; }
}

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

        .l-footer{
                margin-top:0;
        }

}



:root {
	--green: #00A599;
	--green_l: #eef4f4;
	--pink: #E66F78;
	--pink_l: #f9f0f1;
	--blue: #65a1da;
	--blue_l: rgba(101, 161, 218, 0.1);
	--orange: #f09229;
	--orange_l: rgba(240, 147, 41, 0.1);
}
.sp_only{
	display: none;
}
.pc_only{
	display: block;
}
@media screen and (max-width: 750px) {
	:root {
			--break: 750;
	}
	.sp_only{
			display: block;
	}
	.pc_only{
			display: none;
	}
	}

@media screen and (min-width: 751px) and (max-width: 1300px) {
	:root {
			--break: 1300;
	}

}

@media screen and (min-width: 1301px) {
	:root {
			--break: 1301;
	}
}

.txt_green {
	color: var(--green);
}

.bg_green {
	background-color: var(--green);
}

.bg_green_l {
	background-color: var(--green_l);
}

.bdr_green {
	border-left-color: var(--green);
}

.txt_pink {
	color: var(--pink)
}

.bg_pink {
	background-color: var(--pink);
}

.bg_pink_l {
	background-color: var(--pink_l);
}

.bdr_pink {
	border-color: var(--pink) !important;
}

.bg_blue{
	background-color: var(--blue);
}
.bg_blue_l {
	background-color: var(--blue_l);
}
.bdr_blue {
	border-color: var(--blue);
}

.bg_orange{
	background-color: var(--orange);
}
.bg_orange_l {
	background-color: var(--orange_l);
}
.bdr_orange {
	border-color: var(--orange) ;
}

.txt_white {
	color: #fff;
}

.bg_white {
	background-color: #fff
}
.bdr_white {
	border-color: #fff ;
}


.mgf {
	font-family: "Zen Maru Gothic", serif;
	font-weight: 400;
	font-style: normal;
}

#hojyokin_page {
	font-family: "Zen Maru Gothic", serif;
	line-height: 1.6;
	margin-bottom: 30px;
}
#hojyokin_page .h_mv{
  position: relative;
}

#hojyokin_page .img--fit {
	width: 100%;
}

#hojyokin_page .sec__in {
	display: block;
	margin: 0 auto;
	width: 80vw;
	max-width: 1000px;
}

#hojyokin_page .mv {
	position: relative;
	width: 100%;
	margin-bottom: 20px;
}

#hojyokin_page .h_mv .btn_h {
	position: absolute;
	right: 0;
	bottom: 20px;
}

#hojyokin_page .btn_h {
  white-space: nowrap;
}

#hojyokin_page .btn_h_contact {
	margin-left: 80px;
}

#hojyokin_page .h_mv .h-btn:hover {
	border: 2px solid #00A599;
	background: #00A599;
	color: #fff;
}

#hojyokin_page .btn_flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#hojyokin_page .btn_flex a {
	width: 32%;
}

#hojyokin_page .lg_bg {
	background: #eef4f4;
	padding: 50px 0;
	background-image: url(../img/3hojyokin/bg_house.png);
	background-position: bottom 0 right 0;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#hojyokin_page .c_flex {
	display: flex;
	justify-content: space-between;
}

#hojyokin_page .c_flex img {
	width: 95%;
}

#hojyokin_page .fw7 {
	font-weight: 700;
}

#hojyokin_page h3 {
	line-height: 1.2;
}

#hojyokin_page .fcp {
	color: #E66F78;
}

#hojyokin_page .fcb {
	color: #65A1DA;
}

#hojyokin_page .fco {
	color: #F09229;
}

#hojyokin_page .fcg {
	color: #00A599;
}

#hojyokin_page .h_mv .btn_h {
	position: absolute;
	right: 0;
	bottom: 20px;
	display: flex;
}

#hojyokin_page .h_mv .h-btn {
	border: 2px solid #00A599;
	background: #fff;
	color: #00A599;
	padding: 20px 50px;
	border-radius: 999px;
	width: 100%;
	font-size: 21px;
	text-align: center;
}

#hojyokin_page .p_btn {
	border: 2px solid #E66F78;
	background: #E66F78;
	color: #fff;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 700;
}

#hojyokin_page .p_btn:hover {
	border: 2px solid #E66F78;
	background: #fff;
	color: #E66F78;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
}

#hojyokin_page .b_btn {
	border: 2px solid #65A1DA;
	background: #65A1DA;
	color: #fff;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 700;
}

#hojyokin_page .b_btn:hover {
	border: 2px solid #65A1DA;
	background: #fff;
	color: #65A1DA;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
}

#hojyokin_page .o_btn {
	border: 2px solid #F09229;
	background: #F09229;
	color: #fff;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 700;
}

#hojyokin_page .o_btn:hover {
	border: 2px solid #F09229;
	background: #fff;
	color: #F09229;
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
}

#hojyokin_page .g_tit {
	color: #00A599;
	font-weight: 700;
	font-size: 30px;
	font-size: 3.0rem;
	line-height: 1.2;
}

#hojyokin_page .fsz2 {
	font-size: 20px;
	font-size: 2.0rem;
}

#hojyokin_page .fsz3 {
	font-size: 30px;
	font-size: 3.0rem;
	line-height: 1.5;
}

#hojyokin_page .fsz4 {
	font-size: 40px;
	font-size: 4.0rem;
}

#hojyokin_page .title_hukidashi_p {
	position: relative;
	padding: 1.5rem 2rem;
	border-bottom: 3px solid #E66F78;
	background: #fff;
}

#hojyokin_page .title_hukidashi_p:before {
	position: absolute;
	bottom: -28px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #E66F78 transparent transparent transparent;
}

#hojyokin_page .title_hukidashi_p:after {
	position: absolute;
	bottom: -24px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
}

#hojyokin_page .title_hukidashi_b {
	position: relative;
	padding: 1.5rem 2rem;
	border-bottom: 3px solid #65A1DA;
	background: #fff;
}

#hojyokin_page .title_hukidashi_b:before {
	position: absolute;
	bottom: -28px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #65A1DA transparent transparent transparent;
}

#hojyokin_page .title_hukidashi_b:after {
	position: absolute;
	bottom: -24px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
}

#hojyokin_page .title_hukidashi_o {
	position: relative;
	padding: 1.5rem 2rem;
	border-bottom: 3px solid #F09229;
	background: #fff;
}

#hojyokin_page .title_hukidashi_o:before {
	position: absolute;
	bottom: -28px;
	left: 50%;
	transform: translateX(-50%);

	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #F09229 transparent transparent transparent;
}

#hojyokin_page .title_hukidashi_o:after {
	position: absolute;
	bottom: -24px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 28px 24px 0 24px;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
}

#hojyokin_page .table_box {
	display: flex;
}
#hojyokin_page .table_box2 {
}
#hojyokin_page .kagi_box {
	--x-gradient: linear-gradient(90deg, #333 0 30px, transparent 0 calc(100% - 30px), #333 calc(100% - 30px));
	--y-gradient: linear-gradient(#333 0 30px, transparent 0 calc(100% - 30px), #333 calc(100% - 30px));
	padding: 3rem;
	background-image:
			var(--x-gradient),
			var(--y-gradient),
			var(--x-gradient),
			var(--y-gradient);
	background-repeat: no-repeat;
	background-size: 100% 5px, 5px 100%, 100% 5px, 5px 100%;
	background-position: top, right, bottom, left;
	width: 100%;
	border: 1px solid #ccc;
	text-align: left;
}

#hojyokin_page .kagi_box .tit01 {
	background: #00A599;
	border: 2px solid #00A599;
	border-radius: 20px;
	padding: 1rem;
	text-align: center;
	margin: 0 auto 20px;
	color: #fff;
	width: 300px;
}

#hojyokin_page .kagi_box .tit02 {
	background: #fff;
	border: 2px solid #00A599;
	border-radius: 20px;
	padding: 1rem;
	text-align: center;
	margin: 0 auto 20px;
	color: #00A599;
	width: 300px;
}

#hojyokin_page .kagi_box .tit03 {
	background: #65A1DA;
	border: 2px solid #65A1DA;
	border-radius: 20px;
	padding: 1rem;
	text-align: center;
	margin: 0 auto 20px;
	color: #fff;
	width: 300px;
}

#hojyokin_page .kagi_box .tit04 {
	background: #fff;
	border: 2px solid #65A1DA;
	border-radius: 20px;
	padding: 1rem;
	text-align: center;
	margin: 0 auto 20px;
	color: #65A1DA;
	width: 300px;
}

#hojyokin_page .lp_bg {
	background: #f9f0f1;
	padding: 50px 0;
}

#hojyokin_page .seko_jirei_box {
	background: #fff;
	border-radius: 10px;
	margin-bottom: 30px;
	width: 100%;
}

#hojyokin_page .seko_jirei_box .tit {
	background: #E66F78;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	margin-bottom: 1rem;
	width: 100%;
	color: #fff;
	text-align: center;
	padding: 1rem;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: 700;
	position: relative;
}

#hojyokin_page .seko_jirei_box .tit .hissu {
	background: #fff;
	border-radius: 20px;
	color: #E66F78;
	text-align: center;
	padding: .5rem 2rem;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 700;
	top: 10px;
	right: 10px;
	position: absolute;
}

#hojyokin_page .seko_jirei_box .tit .nini {
	background: #fff;
	border-radius: 20px;
	color: #808080;
	text-align: center;
	padding: .5rem 2rem;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 700;
	top: 10px;
	right: 10px;
	position: absolute;
}

#hojyokin_page .seko_jirei_box .jirei {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 3rem;
}

#hojyokin_page .seko_jirei_box .jirei .box {
	width: 31%;
	margin: 0 1% 20px;
	text-align: center;
	font-size: 1.4rem;
}

#hojyokin_page .seko_jirei_box .jirei .box img {
	width: 100%;
	margin-bottom: 8px;
}

#hojyokin_page .mado_flex {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#hojyokin_page .mado_flex .m_box {
	width: 48%;
	margin: 1%;
	text-align: center;
}

#hojyokin_page .mado_flex .m_box img {
	width: 100%;
	margin-bottom: 8px;
}

#hojyokin_page .lo_bg {
	background: #f9f8ef;
	padding: 50px 0;
}

#hojyokin_page .mb20 {
	margin-bottom: 20px;
}

#hojyokin_page .mb30 {
	margin-bottom: 30px;
}

#hojyokin_page .mb50 {
	margin-bottom: 50px;
}

#hojyokin_page .mb80 {
	margin-bottom: 80px;
}

#hojyokin_page .h_hr {
	display: none;
}

#hojyokin_page .lineup-cta-box .cmn-btns {
	width: 410px;
}

#hojyokin_page .lineup-cta__in {
	display: flex;
	justify-content: center;
}

#hojyokin_page .renov-cta .cmn-btns {
	display: flex;
	justify-content: center;
}

#hojyokin_page .renov-cta .btn_h {
	padding-top: 30px;
}

#hojyokin_page .cmn-cta-time {
	font-family: noto-sans-cjk-jp, sans-serif;
}

.hojokin_caution {
	border: solid 1px #b71c1c;
	margin-bottom: 20px !important;
	text-align: center;
	padding: 1em;
}

.hojokin_caution .ttl {
	background-color: #b71c1c;
	color: #fff;
	border-radius: 100px;
	font-weight: bold;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	padding: 0.4em 2em;
	margin-bottom: 1em;
}

.hojokin_caution .fv_l {
	font-size: 1.3em;
}

.hojokin_caution .marker {
	background: linear-gradient(transparent 60%, #ff6 60%);
}

.hojokin_caution p {
	font-weight: bold;
}

.hojokin_caution .red {
	font-size: 20px;
	font-weight: 700;
	color: #b71c1c;
	border-bottom: 1px solid #b71c1c;
}

.hojyokouji_fbox {
	display: flex;
	justify-content: flex-start;
}

.txt_tal {
	text-align: left;
}

.g_link {
	color: #00A599 !important;
	text-decoration: underline;
}

.g_link:hover {
	color: #ccc;
	text-decoration: none;
}



@media screen and (min-width: 751px) and (max-width: 1300px) {
	#hojyokin_page .h_mv .btn_h {
			position: absolute;
			right: 0;
			bottom: 20px;
			width: 23em;
			display: flex;
	}

	#hojyokin_page .h_mv .h-btn {
			border: 2px solid #00A599;
			background: #fff;
			color: #00A599;
			padding: 1em 0;
			border-radius: 999px;
			width: 100%;
			font-size: 1.8em;
			text-align: center;
	}

	#hojyokin_page .p_btn {
			border: 2px solid #E66F78;
			background: #E66F78;
			color: #fff;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
			font-size: 1.5em;
			font-weight: 700;
	}

	#hojyokin_page .p_btn:hover {
			border: 2px solid #E66F78;
			background: #fff;
			color: #E66F78;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .b_btn {
			border: 2px solid #65A1DA;
			background: #65A1DA;
			color: #fff;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
			font-size: 1.5em;
			font-weight: 700;
	}

	#hojyokin_page .b_btn:hover {
			border: 2px solid #65A1DA;
			background: #fff;
			color: #65A1DA;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .o_btn {
			border: 2px solid #F09229;
			background: #F09229;
			color: #fff;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
			font-size: 1.5em;
			font-weight: 700;
	}

	#hojyokin_page .o_btn:hover {
			border: 2px solid #F09229;
			background: #fff;
			color: #F09229;
			padding: 1em 0;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .g_tit {
			color: #00A599;
			font-weight: 700;
			font-size: 3vw;
			line-height: 1.2;
	}

	#hojyokin_page .fsz2 {
			font-size: calc(20/ var(--break) * 100vw);
	}

	#hojyokin_page .fsz3 {
			font-size: calc(30 / var(--break) * 100vw);
	}

	#hojyokin_page .fsz4 {
			font-size: 4vw;
	}

	#hojyokin_page .table_box img {
			width: 100%;
	}

	#hojyokin_page .renov-cta .cmn-btns {
			display: flex;
			justify-content: center;
			width: 100%;
	}

	#hojyokin_page .renov-cta .btn_h {
			padding-top: 2.4vw;
	}

	#hojyokin_page .lineup-cta-box .cmn-btns {
			width: 31vw;
	}
}

@media screen and (max-width: 750px) {
	#hojyokin_page {
			margin-bottom: calc(33 / 750 * 100vw);
	}

	.contact-cta-btns a {
			position: relative;
			display: block;
			align-items: center;
			width: 84.66667vw;
			padding: 3vw;
			height: 14vw;
			font-size: 6vw;
			font-weight: 500;
			line-height: 1.2em;
			transition: color .3s, background-color .3s;
	}

	#hojyokin_page .h_mv .btn_h {
			position: relative;
			right: 0;
			bottom: 1vw;
			max-width: 96%;
			width: 96%;
			display: flex;
	}

	#hojyokin_page .sec__in {
			display: block;
			margin: 0 auto;
			width: 92%;
			max-width: 92%;
	}

	#hojyokin_page .h_mv .btn_h {
			position: relative;
			right: 0;
			bottom: 0;
			margin-top: 20px;
			margin-bottom: 10px;
			font-size: 4vw;
			width: 100%;
			max-width: 100%;
			display: flex;
	}

	#hojyokin_page .cta .h-btn {
			border: 2px solid #00A599;
			background: #fff;
			color: #00A599;
			padding: 3vw 0;
			border-radius: 30px;
      margin-left: auto;
      margin-right: auto;
			width: 96% !important;
			font-size: 5vw;
      display: block;
			text-align: center;
	}

	#hojyokin_page .p_btn {
			border: 2px solid #E66F78;
			background: #E66F78;
			color: #fff;
			padding: 4vw 0;
			border-radius: 5px;
			text-align: center;
			font-size: 5vw;
			font-weight: 700;
	}

	#hojyokin_page .p_btn:hover {
			border: 2px solid #E66F78;
			background: #fff;
			color: #E66F78;
			padding: 4vw 0;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .b_btn {
			border: 2px solid #65A1DA;
			background: #65A1DA;
			color: #fff;
			padding: 4vw 0;
			border-radius: 5px;
			text-align: center;
			font-size: 5vw;
			font-weight: 700;
	}

	#hojyokin_page .b_btn:hover {
			border: 2px solid #65A1DA;
			background: #fff;
			color: #65A1DA;
			padding: 4vw 2vw;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .o_btn {
			border: 2px solid #F09229;
			background: #F09229;
			color: #fff;
			padding: 4vw 2vw;
			border-radius: 5px;
			text-align: center;
			font-size: 5vw;
			font-weight: 700;
	}

	#hojyokin_page .o_btn:hover {
			border: 2px solid #F09229;
			background: #fff;
			color: #F09229;
			padding: 4vw 2vw;
			border-radius: 5px;
			text-align: center;
	}

	#hojyokin_page .g_tit {
			color: #00A599;
			font-weight: 700;
			font-size: 6vw;
			line-height: 1.2;
	}

	#hojyokin_page .fsz2 {
			font-size: 4vw;
	}

	#hojyokin_page .fsz3 {
			font-size: 4vw;
	}

	#hojyokin_page .fsz4 {
			font-size: 7vw;
	}

	#hojyokin_page .btn_flex {
			display: block;
	}

	#hojyokin_page .btn_flex a {
			width: 100%;
			margin-bottom: 10px;
			display: block;
	}

	#hojyokin_page .btn_flex img {
			width: 100%;
	}

	#hojyokin_page .lg_bg {
			background: #eef4f4;
			padding: 50px 0;
			background-image: url(../img/3hojyokin/bg_house_sp.png);
			background-position: bottom 0 right 0;
			background-repeat: no-repeat;
			background-size: 100% auto;
	}

	#hojyokin_page .c_flex {
			display: block;
	}

	#hojyokin_page .c_flex img {
			margin-bottom: 20px;
	}

	#hojyokin_page .seko_jirei_box .jirei {
			padding: 1rem;
	}

	#hojyokin_page .seko_jirei_box .tit {
			font-size: 2rem;
			display: grid;
	}

	#hojyokin_page .seko_jirei_box .tit .hissu {
			font-size: 2rem;
			top: 0;
			right: 0;
			position: relative;
			margin: 0 auto;
			width: 50%;
	}

	#hojyokin_page .seko_jirei_box .tit .nini {
			font-size: 2rem;
			top: 0;
			right: 0;
			position: relative;
			margin: 0 auto;
			width: 50%;
	}

	#hojyokin_page .seko_jirei_box .jirei .box {
			width: 48%;
			text-align: center;
			font-size: 1.6rem;
	}

	#hojyokin_page .title_hukidashi_p:before {
			left: 50%;
			transform: translateX(-50%);
	}

	#hojyokin_page .title_hukidashi_p:after {
			left: 50%;
			transform: translateX(-50%);
	}

	#hojyokin_page .btn_h {
			width: 100%;
			margin: 1em auto;
	}

	#hojyokin_page .mb20 {
			margin-bottom: calc(23 / 750 * 100vw);
	}

	#hojyokin_page .mb30 {
			margin-bottom: calc(33 / 750 * 100vw);
	}

	#hojyokin_page .mb50 {
			margin-bottom: calc(40 / 750 * 100vw);
	}

	#hojyokin_page .mb80 {
			margin-bottom: calc(60 / 750 * 100vw);
	}

	#hojyokin_page .reserve-cta {
			margin-top: calc(80 / 750 * 100vw);
	}

	#hojyokin_page .table_box {
			display: flex;
			overflow-x: auto;
	}

	#hojyokin_page .table_box2 {
			overflow-x: auto;
	}
	
	#hojyokin_page .table_box img {
			width: 160%;
	}

	#hojyokin_page .h_hr {
			display: block;
			border: 2px solid #ccc;
			margin: calc(60 / 750 * 100vw) 0;
	}

	#hojyokin_page .lineup-cta__in {
			display: block;
	}

	#hojyokin_page .renov-cta .cmn-btns {
			display: block;
	}

	#hojyokin_page .lineup-cta-box .cmn-btns {
			width: 100%;
	}

	.hojyokouji_fbox {
			display: block;
	}
}



#hojyokin_page {
	/*jirei*/
	/*table*/
}
#hojyokin_page .box_hojokin {
	display: flex;
	justify-content: space-between;
}
#hojyokin_page .box_hojokin .col {
	width: calc(50% - 15 / var(--break) * 100vw);
	border: calc(5 / var(--break) * 100vw) solid var(--green);
	border-radius: calc(17 / var(--break) * 100vw);
	font-weight: bold;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
#hojyokin_page .box_hojokin .ttl {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: calc(32 / var(--break) * 100vw);
	line-height: 1;
	border-bottom: calc(5 / var(--break) * 100vw) solid var(--green);
	height: calc(84 / var(--break) * 100vw);
}
#hojyokin_page .box_hojokin .cont {
	background-color: #fff;
	padding: calc(30 / var(--break) * 100vw) 0;
	flex-grow: 2;
}
#hojyokin_page .box_hojokin .head {
	text-align: center;
	font-size: calc(24 / var(--break) * 100vw);
	margin-bottom: calc(10 / var(--break) * 100vw);
	line-height: 1;
}
#hojyokin_page .box_hojokin .large {
	font-size: calc(41 / var(--break) * 100vw);
	margin-bottom: calc(30 / var(--break) * 100vw);
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: baseline;
  letter-spacing: 0;
}
#hojyokin_page .box_hojokin .lg {
	font-size: calc(123 / var(--break) * 100vw);
}
#hojyokin_page .box_hojokin .md {
	font-size: calc(42 / var(--break) * 100vw);
	line-height: 1.5;
}
#hojyokin_page .box_hojokin .txt {
	text-align: left;
	padding: 0 calc(24 / var(--break) * 100vw);
	font-size: calc(23 / var(--break) * 100vw);
}
#hojyokin_page .box_hojokin .txt2 {
	text-align: left;
	padding: 0 calc(30 / var(--break) * 100vw);
	font-size: calc(23 / var(--break) * 100vw);
}
#hojyokin_page .box_hojokin .txt2 + .txt2 {
	margin-top: 1em;
}
#hojyokin_page .box_hojokin.pink {
	position: relative;
}
#hojyokin_page .box_hojokin.pink::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background-color: var(--pink);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-size: 70%;
	background-image: url(../img/hojokin/cross.svg);
	border-radius: 50%;
	width: calc(80 / var(--break) * 100vw);
	height: calc(80 / var(--break) * 100vw);
	z-index: 1;
}
#hojyokin_page .box_hojokin.pink .col {
	border-width: 1px !important;
	box-shadow: 0 calc(22 / var(--break) * 100vw) 0 0 rgba(230, 111, 121, 0.65);
	background-color: #fff;
	position: relative;
}
#hojyokin_page .box_hojokin.pink .ttl {
	margin: calc(37 / var(--break) * 100vw) calc(65 / var(--break) * 100vw) 0;
	border-radius: 999px;
	border-bottom: none;
	height: calc(52 / var(--break) * 100vw);
}
#hojyokin_page .box_lead {
	border-radius: calc(18 / var(--break) * 100vw);
	padding: calc(36 / var(--break) * 100vw) calc(55 / var(--break) * 100vw) calc(36 / var(--break) * 100vw) calc(300 / var(--break) * 100vw);
	background-position: left calc(48 / var(--break) * 100vw) center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: url(../img/hojokin/img_hojokin01.png);
	background-size: calc(202 / var(--break) * 100vw) calc(202 / var(--break) * 100vw);
	min-height: calc(240 / var(--break) * 100vw);
}
#hojyokin_page .box_lead .ttl {
	font-size: calc(36 / var(--break) * 100vw);
	margin-bottom: calc(20 / var(--break) * 100vw);
	line-height: 1;
	font-weight: bold;
	text-align: left;
}
#hojyokin_page .box_lead .txt {
	font-size: calc(14 / var(--break) * 100vw);
	line-height: 1.6;
	font-weight: bold;
	text-align: left;
}
#hojyokin_page .box_lead .txt + .txt {
	margin-top: 1.5em;
}
#hojyokin_page .box_lead.box_pink {
	background-image: url(../img/hojokin/img_hojokin01.png);
}
#hojyokin_page .box_lead.box_blue {
	background-image: url(../img/hojokin/img_hojokin02.png);
}
#hojyokin_page .box_lead.box_orange {
	background-image: url(../img/hojokin/img_hojokin03.png);
}
#hojyokin_page .box_jirei {
	display: flex;
	-moz-column-gap: calc(30 / var(--break) * 100vw);
						column-gap: calc(30 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .img {
	width: calc(55% - 15 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .txtarea {
	width: calc(45% - 15 / var(--break) * 100vw);
	text-align: left;
	font-weight: bold;
}
#hojyokin_page .box_jirei > .txtarea .ttl {
	font-size: calc(28 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .txtarea .large {
	font-size: calc(42 / var(--break) * 100vw);
	line-height: 1;
	margin-bottom: calc(20 / var(--break) * 100vw);
	letter-spacing: 0;
}
#hojyokin_page .box_jirei > .txtarea .large span {
	font-size: calc(83 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .txtarea .small {
	font-size: calc(14 / var(--break) * 100vw);
	line-height: 1.5;
}
#hojyokin_page .box_jirei > .txtarea ol {
	counter-reset: item;
	font-size: calc(22 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .txtarea ol li {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
#hojyokin_page .box_jirei > .txtarea ol li span {
	white-space: nowrap;
}
#hojyokin_page .box_jirei > .txtarea ol li:before {
	display: block;
	counter-increment: item;
	content: counter(item);
	background-color: var(--pink);
	border-radius: 50%;
	color: #fff;
	margin-right: 0.5em;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	letter-spacing: 0;
	justify-content: center;
	height: calc(24 / var(--break) * 100vw);
	width: calc(24 / var(--break) * 100vw);
	font-weight: 500;
	text-align: center;
	line-height: 1;
	font-size: calc(18 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei > .txtarea .head {
	width: calc(220 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei.ai_center {
	align-items: center;
}
#hojyokin_page .box_jirei.ai_center > .img {
	width: calc(50% - 15 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei.ai_center > .txtarea {
	width: calc(50% - 15 / var(--break) * 100vw);
}
#hojyokin_page .box_jirei:last-child > .txtarea .head {
	width: calc(280 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin {
	width: 100%;
	border-style: solid;
	border-width: 3px;
	table-layout: fixed;
}
#hojyokin_page .tbl_hojokin.bdr_blue th {
	border-color: var(--blue);
}
#hojyokin_page .tbl_hojokin.bdr_blue td {
	border-color: var(--blue);
}
#hojyokin_page .tbl_hojokin.bdr_orange {
	text-align: center;
}
#hojyokin_page .tbl_hojokin.bdr_orange th {
	border-color: var(--orange);
}
#hojyokin_page .tbl_hojokin.bdr_orange td {
	border-color: var(--orange);
}
#hojyokin_page .tbl_hojokin.bdr_green {
	text-align: center;
}
#hojyokin_page .tbl_hojokin.bdr_green th {
	border-color: var(--green);
}
#hojyokin_page .tbl_hojokin.bdr_green td {
	border-color: var(--green);
}
#hojyokin_page .tbl_hojokin thead th {
	border-style: solid;
	border-width: 3px;
	padding: calc(20 / var(--break) * 100vw);
	font-size: calc(20 / var(--break) * 100vw);
	line-height: 1.1;
	font-weight: bold;
	height: calc(100 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin thead th span {
	font-size: calc(15 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin thead th:not(:first-child):not(:last-child) {
	border-right-color: #fff !important;
}
#hojyokin_page .tbl_hojokin tbody th {
	border-style: solid;
	border-width: 3px;
	padding: calc(20 / var(--break) * 100vw);
	font-size: calc(20 / var(--break) * 100vw);
	font-weight: bold;
	line-height: 1.1;
	height: calc(120 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin tbody th span {
	font-size: calc(18 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin tbody td {
	border-style: solid;
	border-width: 3px;
	font-weight: bold;
	padding: calc(20 / var(--break) * 100vw);
	font-size: calc(20 / var(--break) * 100vw);
	height: calc(120 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin tbody td p {
	font-size: calc(13 / var(--break) * 100vw);
	line-height: 1.6;
	text-align: left;
}
#hojyokin_page .tbl_hojokin tbody td.tl {
	vertical-align: top;
	text-align: left;
}
#hojyokin_page .tbl_hojokin tbody td.cl {
	text-align: left;
}
#hojyokin_page .tbl_hojokin tbody td.md {
	font-size: calc(15 / var(--break) * 100vw);
}
#hojyokin_page .tbl_hojokin tbody td.sm {
	letter-spacing: 0;
	font-size: calc(14 / var(--break) * 100vw);
}

@media screen and (max-width: 750px) {
	#hojyokin_page {
			/*jirei*/
			/*table*/
	}
	#hojyokin_page .box_hojokin {
			flex-direction: column;
	}
	#hojyokin_page .box_hojokin .col {
			width: 100%;
			border-width: 3px;
	}
	#hojyokin_page .box_hojokin .col + .col {
			margin-top: 1em;
	}
	#hojyokin_page .box_hojokin .ttl {
			font-size: calc(36 / var(--break) * 100vw);
			border-bottom: 3px solid var(--green);
	}
	#hojyokin_page .box_hojokin .cont {
			padding: calc(40 / var(--break) * 100vw) 0;
	}
	#hojyokin_page .box_hojokin .head {
			font-size: calc(28 / var(--break) * 100vw);
			margin-bottom: calc(20 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin .large {
			font-size: calc(50 / var(--break) * 100vw);
			margin-bottom: calc(40 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin .lg {
			font-size: calc(130 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin .md {
			font-size: calc(50 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin .txt {
			padding: 0 calc(30 / var(--break) * 100vw);
			font-size: calc(30 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin .txt2 {
			text-align: left;
			padding: 0 calc(35 / var(--break) * 100vw);
			font-size: calc(30 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin.pink {
			position: relative;
	}
	#hojyokin_page .box_hojokin.pink::before {
			content: "";
			display: block;
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%, 0%);
			background-color: var(--pink);
			background-position: center;
			background-size: cover;
			background-repeat: no-repeat;
			background-size: 70%;
			background-image: url(../img/hojokin/cross.svg);
			border-radius: 50%;
			width: calc(100 / var(--break) * 100vw);
			height: calc(100 / var(--break) * 100vw);
			z-index: 1;
	}
	#hojyokin_page .box_hojokin.pink .col + .col {
			margin-top: calc(50 / var(--break) * 100vw);
	}
	#hojyokin_page .box_hojokin.pink .ttl {
			margin: calc(37 / var(--break) * 100vw) calc(65 / var(--break) * 100vw) 0;
			height: calc(60 / var(--break) * 100vw);
	}
	#hojyokin_page .box_lead {
			border-radius: calc(40 / var(--break) * 100vw);
			padding: calc(40 / var(--break) * 100vw);
			background-position: left calc(40 / var(--break) * 100vw) top calc(40 / var(--break) * 100vw);
			min-height: auto;
	}
	#hojyokin_page .box_lead .ttl {
			height: calc(202 / var(--break) * 100vw);
			line-height: 1.5;
			padding-left: calc(220 / var(--break) * 100vw);
			display: flex;
			align-items: center;
	}
	#hojyokin_page .box_lead .txt {
			font-size: calc(24 / var(--break) * 100vw);
			font-weight: 500;
			line-height: 1.5;
	}
	#hojyokin_page .box_jirei {
			flex-direction: column;
			row-gap: calc(30 / var(--break) * 100vw);
			padding-bottom: calc(50 / var(--break) * 100vw);
			border-bottom: 2px solid #999;
			margin-bottom: calc(50 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .img {
			width: 100% !important;
	}
	#hojyokin_page .box_jirei > .txtarea {
			width: 100% !important;
	}
	#hojyokin_page .box_jirei > .txtarea .ttl {
			font-size: calc(50 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea .large {
			font-size: calc(90 / var(--break) * 100vw);
			margin-bottom: calc(30 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea .large span {
			font-size: calc(150 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea .small {
			font-size: calc(20 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea ol {
			font-size: calc(40 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea ol li {
			justify-content: space-between;
			letter-spacing: 0;
	}
	#hojyokin_page .box_jirei > .txtarea ol li:before {
			height: calc(40 / var(--break) * 100vw);
			width: calc(40 / var(--break) * 100vw);
			font-size: calc(28 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei > .txtarea .head {
			width: auto;
			flex-grow: 2;
	}
	#hojyokin_page .box_jirei.ai_center > .txtarea .ttl {
			font-size: calc(40 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei.ai_center > .txtarea .large {
			font-size: calc(50 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei.ai_center > .txtarea .large span {
			font-size: calc(120 / var(--break) * 100vw);
	}
	#hojyokin_page .box_jirei.ai_center > .txtarea .small {
			font-size: calc(18 / var(--break) * 100vw);
			letter-spacing: 0;
	}
	#hojyokin_page .box_jirei:last-child {
			border-bottom: none;
	}
	#hojyokin_page .tbl_hojokin {
			width: 780px;
	}
	#hojyokin_page .tbl_hojokin thead th {
			padding: calc(10 / var(--break) * 100vw);
			font-size: calc(26 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin thead th span {
			font-size: calc(20 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin tbody th {
			padding: calc(10 / var(--break) * 100vw);
			font-size: calc(26 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin tbody th span {
			font-size: calc(22 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin tbody td {
			padding: calc(10 / var(--break) * 100vw);
			font-size: calc(26 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin tbody td.md {
			font-size: calc(24 / var(--break) * 100vw);
	}
	#hojyokin_page .tbl_hojokin tbody td.sm {
			font-size: calc(22 / var(--break) * 100vw);
	}
}
@media screen and (min-width: 1301px) {
	#hojyokin_page {
			/*jirei*/
			/*table*/
	}
	#hojyokin_page .box_hojokin .col {
			width: calc(50% - 15px);
			border: 5px solid var(--green);
			border-radius: 17px;
	}
	#hojyokin_page .box_hojokin .ttl {
			font-size: 32px;
			border-bottom: 5px solid var(--green);
			height: 84px;
	}
	#hojyokin_page .box_hojokin .cont {
			padding: 30px 0;
	}
	#hojyokin_page .box_hojokin .head {
			font-size: 24px;
			margin-bottom: 10px;
	}
	#hojyokin_page .box_hojokin .large {
			font-size: 41px;
			margin-bottom: 30px;
	}
	#hojyokin_page .box_hojokin .lg {
			font-size: 123px;
	}
	#hojyokin_page .box_hojokin .md {
			font-size: 42px;
	}
	#hojyokin_page .box_hojokin .txt {
			padding: 0 24px;
			font-size: 23px;
	}
	#hojyokin_page .box_hojokin .txt2 {
			padding: 0 30px;
			font-size: 21px;
	}
	#hojyokin_page .box_hojokin.pink::before {
			width: 80px;
			height: 80px;
	}
	#hojyokin_page .box_hojokin.pink .col {
			box-shadow: 0 22px 0 0 rgba(230, 111, 121, 0.65);
	}
	#hojyokin_page .box_hojokin.pink .ttl {
			margin: 37px 65px;
			height: 52px;
	}
	#hojyokin_page .box_lead {
			border-radius: 18px;
			padding: 36px 55px 36px 300px;
			background-position: left 48px center;
			background-size: 202px 202px;
			min-height: 240px;
	}
	#hojyokin_page .box_lead .ttl {
			font-size: 36px;
			margin-bottom: 20px;
	}
	#hojyokin_page .box_lead .txt {
			font-size: 14px;
	}
	#hojyokin_page .box_jirei {
			-moz-column-gap: 30px;
								column-gap: 30px;
	}
	#hojyokin_page .box_jirei > .img {
			width: calc(55% - 15px);
	}
	#hojyokin_page .box_jirei > .txtarea {
			width: calc(45% - 15px);
	}
	#hojyokin_page .box_jirei > .txtarea .ttl {
			font-size: 28px;
	}
	#hojyokin_page .box_jirei > .txtarea .large {
			font-size: 42px;
			margin-bottom: 20px;
	}
	#hojyokin_page .box_jirei > .txtarea .large span {
			font-size: 83px;
	}
	#hojyokin_page .box_jirei > .txtarea .small {
			font-size: 14px;
	}
	#hojyokin_page .box_jirei > .txtarea ol {
			font-size: 22px;
	}
	#hojyokin_page .box_jirei > .txtarea ol li:before {
			height: 24px;
			width: 24px;
			font-size: 18px;
	}
	#hojyokin_page .box_jirei > .txtarea .head {
			width: 220px;
	}
	#hojyokin_page .box_jirei.ai_center > .img {
			width: calc(50% - 15px);
	}
	#hojyokin_page .box_jirei.ai_center > .txtarea {
			width: calc(50% - 15px);
	}
	#hojyokin_page .box_jirei:last-child > .txtarea .head {
			width: 280px;
	}
	#hojyokin_page .tbl_hojokin thead th {
			padding: 20px;
			font-size: 20px;
			height: 100px;
	}
	#hojyokin_page .tbl_hojokin thead th span {
			font-size: 15px;
	}
	#hojyokin_page .tbl_hojokin tbody th {
			padding: 20px;
			font-size: 20px;
			height: 120px;
	}
	#hojyokin_page .tbl_hojokin tbody th span {
			font-size: 18px;
	}
	#hojyokin_page .tbl_hojokin tbody td {
			padding: 20px;
			font-size: 20px;
			height: 120px;
	}
	#hojyokin_page .tbl_hojokin tbody td p {
			font-size: 13px;
	}
	#hojyokin_page .tbl_hojokin tbody td.md {
			font-size: 15px;
	}
	#hojyokin_page .tbl_hojokin tbody td.sm {
			font-size: 14px;
	}
}

.blog-heading-desc {
  margin-top: 6.667vw;
  margin-bottom: 6.667vw;
  font-size: 3.733vw;
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
}

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

.post-blog .box {
  display: block;
  margin-left: 2.6vw;
  margin-bottom: 3.3vw;
  width: calc(50% - 2.6vw);
}

.post-blog .box .box-title {
  margin-top: 2.667vw;
  font-size: 4.267vw;
  font-weight: 700;
  line-height: 1.4;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.post-blog .box .box-contents {
  margin-top: 1.333vw;
  font-size: 3.733vw;
  font-weight: 500;
  line-height: 1.4; 
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.post-blog .box .box-btn {
  margin-top: 4vw;
}

.post-blog .box .box-btn .box-btn-link {
  position: relative;
  display: block;
  padding: .5em 1em;
  border: 2px solid #c1272d;
  background-color: #c1272d;
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  -webkit-transition: all .2s;
  transition: all .2s
}

.post-blog .box .box-btn .box-btn-link:after {
  content: '\f0da';
  margin-left: 1em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900
}

@media screen and (min-width: 980px) {
  .blog-heading-desc {
    margin-top: 30px;
    margin-bottom: 50px;
    font-size: 16px;
    line-height: 1.75;
  }
  
  .post-blog {
    margin-left: -15px;
  }

  .post-blog .box {
    margin-left: 15px;
    margin-bottom: 35px;
    width: calc(33.33333% - 15px);
  }

  .post-blog .box .box-title {
    margin-top: 10px;
    font-size: 18px;
    line-height: 1.5;
  }

  .post-blog .box .box-contents {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.75;
  }

  .post-blog .box .box-btn {
    margin-top: 30px;
  }
}
