@charset "UTF-8";
/* 設定
******************************************************************************************** */
/* txt-maker */
/* btn */
/* $width-pc: 1281px; */
/* $width-smartphone: 600px; */
/* $width-scrollbar: 20px; */
/* 基本設定
******************************************************************************************** */
html {
  position: relative;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  overflow: visible;
}

body {
  position: relative;
  width: 100%;
  min-width: 100%;
  overflow: visible;
}

img {
  width: 100%;
  height: auto;
}

/* 🍔
******************************************************************************************** */
.drawer-navbar {
  z-index: 20 !important;
}

.drawer--navbarTopGutter {
  padding-top: 6rem !important;
}

.drawer-navbar-header {
  height: 6rem !important;
}

.drawer-navbar .drawer-nav {
  padding-top: 6rem !important;
  padding-left: 5%;
  padding-right: 5%;
}
.drawer-navbar .drawer-nav a {
  font-size: 16px;
  font-size: 1.6rem;
}

.drawer-dropdown-menu {
  padding-top: 20px !important;
}
.drawer-dropdown-menu > li {
  border-bottom: 0 !important;
}
.drawer-dropdown-menu > li::before {
  display: none;
}

.drawer-hamburger {
  width: 3rem !important;
  padding-top: 20px !important;
}

.drawer-brand {
  width: 30%;
  padding-top: 5px !important;
}

.drawer-menu {
  display: flex;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  padding-top: 1rem !important;
}
.drawer-menu li {
  font-size: 14px;
  font-size: 1.4rem;
  width: 49%;
  text-align: left;
  border-bottom: 1px solid #666;
  padding: 5px;
  position: relative;
}
.drawer-menu li::before {
  text-align: center;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  position: absolute;
  left: 2%;
}
.drawer-menu li span {
  font-size: 12px;
  font-size: 1.2rem;
  margin-left: 20px;
}
.drawer-menu li a i {
  color: #a63235;
  margin-left: 5px;
}
.drawer-menu li.info {
  padding: 0;
  margin-top: 20px;
  border: 0;
  background: #a63235;
}
.drawer-menu li.info::before {
  display: none;
}
.drawer-menu li .btn {
  color: #fff;
  background: #a63235;
  display: inline-block;
  padding: 3px 20px;
  text-shadow: none;
  position: relative;
  text-align: center;
  margin: 0;
  border: 0;
  padding: 0;
  width: 100%;
}
.drawer-menu li .btn i {
  margin-right: 1em;
}
.drawer-menu li .btn:hover {
  transition: 0.5s ease-in-out;
  opacity: 0.8;
  filter: alpha(opacity=80);
  text-decoration: none;
}
.drawer-menu li .btn:hover i {
  transition: 0.5s ease-in-out;
  transform: scale(1.5);
}
.drawer-menu li .btn a {
  color: #fff !important;
  font-size: 3vw;
  display: block;
  padding: 8px;
}
.drawer-menu li .btn a i {
  display: block;
  margin: 0;
  font-size: 5vw;
  color: #fff;
}

/* frame */
.drawer-menu .frame {
  border: 1px solid #a63235;
  display: flex;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  overflow: hidden;
  padding: 0;
  margin-top: 20px;
}
.drawer-menu .frame::before {
  display: none;
}
.drawer-menu .frame__left {
  background: #a63235;
  color: #fff;
  margin: 0;
  padding: 4px 0 0 6px;
  position: relative;
}
.drawer-menu .frame__left::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
  top: -5px;
  right: -1em;
  border-style: solid;
  border-color: transparent transparent transparent #a63235;
  border-width: 40px 0 40px 1em;
  z-index: 10;
}
.drawer-menu .frame__right {
  margin: 0;
  padding: 4px 4px 0 10px;
  margin: 0;
}
.drawer-menu .frame__zan {
  font-size: 15px;
  font-size: 1.5rem;
  vertical-align: top;
  margin: 0;
}
.drawer-menu .frame__number {
  font-size: 38px;
  font-size: 3.8rem;
  color: #a63235;
  font-weight: bold;
  margin: 0;
}
.drawer-menu .frame__mei {
  margin: 0;
}

.drawer-navbar .drawer-hamburger-icon,
.drawer-navbar .drawer-hamburger-icon::after,
.drawer-navbar .drawer-hamburger-icon::before {
  background-color: #666;
}

.drawer--top.drawer-open .drawer-nav {
  top: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
  left: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
  right: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.pager__prev {
  width: 100%;
  display: block;
  margin-bottom: 10px;
}
.pager__next {
  width: 100%;
  display: block;
  margin-bottom: 10px;
}

/* レイアウト設定
******************************************************************************************** */
.header {
  display: none;
}

.footer .gotop {
  display: none !important;
}
.footer__in {
  padding: 10% 5% 30% 5%;
}
.footer__logo {
  width: 40%;
  margin: 0 auto;
}
.footer__copy {
  font-size: 3.5vw;
  text-align: center;
}
.footer__ttl {
  font-size: 5vw;
  text-align: center;
}
.footer__w {
  margin: 40px 0;
}
.footer__left address {
  font-size: 3.5vw;
}
.footer .fnav {
  display: none;
}
.footer__caution {
  font-size: 2.8vw;
  text-align: left;
}
.footer .copyright {
  font-size: 3vw;
  text-align: left;
}

/* front page
******************************************************************************************** */
.btn {
  width: 80%;
  margin: 40px auto;
}

.cta__top {
  margin: 0;
}
.cta__seikon {
  width: 90%;
  margin: 10px auto;
}

.front {
  padding-top: 5%;
}
.front__ttl {
  font-size: 5vw;
}
.front__sub {
  font-size: 5vw;
}
.front__sub::before {
  width: 27px;
  height: 30px;
}

.kv__seikon {
  display: none;
}
.kv .swiper-pagination {
  display: none;
}

/* tms-seikon */
.tms-seikon {
  padding: 0 5%;
}

/* concept */
.concept__in {
  padding: 5%;
}
.concept__detail {
  width: 100%;
}
.concept__ttl {
  position: relative;
  min-height: 100px;
}
.concept__ttl-in {
  padding: 0;
  width: 100%;
  display: block;
  position: absolute;
  top: 0;
}
.concept__ttl-in h2 {
  font-size: 5vw;
}
.concept__ttl-in p {
  font-size: 4vw;
}
.concept__ttl::before, .concept__ttl::after {
  width: 50px;
  height: 47px;
  position: absolute;
  top: 0;
}
.concept__ttl::before {
  left: 0;
}
.concept__ttl::after {
  right: 0;
}
.concept__img {
  width: 60%;
  margin: 0 auto;
}

/* membership */
.membership {
  padding: 40px 0;
}
.membership__ttl {
  font-size: 5vw;
}
.membership__img {
  width: 100%;
}
.membership__detail {
  width: 100%;
  padding: 0 5%;
}
.membership .frame {
  display: flex;
  margin: 20px auto 0 auto;
  min-height: 64px;
}
.membership .frame__left::after {
  right: -0.9em;
}

/* news */
.news {
  padding: 40px 5%;
}
.news__date {
  width: 100%;
}

/* reason */
.reason {
  padding: 40px 5%;
}
.reason__ttl h2 {
  font-size: 4vw;
}
.reason__ttl p {
  font-size: 4.5vw;
}
.reason__ttl p strong {
  font-size: 5.5vw;
}
.reason__seikon {
  margin-top: 0;
}
.reason .point__num span {
  font-size: 10vw;
}
.reason .point__detail {
  width: 100%;
}
.reason .point__ttl {
  font-size: 5vw;
}
.reason .point__txt {
  font-size: 3.5vw;
}
.reason .point__img {
  width: 100%;
}
.reason .point2 {
  padding: 10% 5%;
}
.reason .point2__img {
  width: 60%;
  margin: 0 auto;
}
.reason .point2__answer {
  width: 100%;
}
.reason .point2__answer li {
  font-size: 4vw;
  -moz-align-items: start;
  -ms-align-items: start;
  -o-align-items: start;
  align-items: start;
}
.reason .point2__num {
  width: 8%;
  margin-right: 2%;
  padding: 0 2%;
}
.reason .point2__txt {
  display: inline-block;
  width: 88%;
}
.reason .point2__rank {
  width: 100%;
}
.reason .point2__rank li {
  font-size: 4vw;
}
.reason__bottom {
  margin-top: 0;
}

/* support */
.support {
  padding: 40px 0;
}
.support__list li {
  width: 48%;
  margin-bottom: 15px;
}
.support__ttl {
  font-size: 3vw;
  margin-bottom: 0;
}
.support__img {
  padding: 10px;
}
.support__img img {
  width: auto;
  height: 120px;
}

/* marriage */
.marriage {
  padding: 40px 5%;
}
.marriage__data li {
  width: 100%;
  margin-bottom: 5%;
  border: 3px solid #c7910e;
}
.marriage__data li::before {
  top: -3px;
  bottom: -3px;
  left: 6px;
  right: 6px;
}
.marriage__data li::after {
  top: 6px;
  bottom: 6px;
  left: -3px;
  right: -3px;
}
.marriage__pic {
  padding: 2%;
  display: flex;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
.marriage__pic img {
  width: 49%;
  height: auto;
}
.marriage__cap {
  width: 49%;
  font-size: 3.5vw;
}
.marriage__list {
  padding: 0 5%;
}
.marriage__list li {
  width: 100%;
  margin-bottom: 1%;
}
.marriage__list .slick-next {
  right: -4%;
  width: 15px;
  height: auto;
  margin-top: -30px;
}
.marriage__list .slick-prev {
  left: -4%;
  width: 15px;
  height: auto;
  margin-top: -30px;
}
.marriage__date {
  font-size: 3.5vw;
}
.marriage__label a {
  font-size: 3.5vw;
}
.marriage__ttl {
  font-size: 4vw;
}
.marriage__txt {
  font-size: 3.5vw;
  text-align: left;
}

/* blog */
.blog {
  padding: 40px 5%;
}
.blog__list {
  padding: 0 5%;
}
.blog__list li {
  width: 100%;
  margin-bottom: 1%;
}
.blog__list .slick-next {
  right: -4%;
  width: 15px;
  height: auto;
  margin-top: -30px;
}
.blog__list .slick-prev {
  left: -4%;
  width: 15px;
  height: auto;
  margin-top: -30px;
}
.blog__date {
  font-size: 3.5vw;
}
.blog__ttl {
  font-size: 4vw;
}

/* advice */
.advice {
  padding: 20px 5%;
}

/* online */
.online {
  padding: 40px 0;
}
.online__ttl {
  padding: 0 5%;
}
.online__detail {
  width: 100%;
  padding: 0 5%;
}
.online__img {
  width: 100%;
}

/* line */
.line {
  padding: 40px 5%;
}

/* award */
.award {
  padding: 40px 5%;
}
.award__detail {
  width: 100%;
}
.award__img {
  width: 100%;
}
.award__list li {
  width: 100%;
}

/* group */
.group {
  padding: 40px 5%;
}
.group__list {
  margin: 20px 0;
}
.group__list li {
  width: 60%;
  margin-bottom: 5%;
}
.group__list li img {
  width: 100%;
  height: auto;
}
.group__bnr li {
  width: 80%;
}

/* media */
.media {
  padding: 40px 5%;
}
.media__date {
  width: 100%;
}

/* 下層ページ
******************************************************************************************** */
.main {
  padding: 20px 5% 40px 5%;
}
.main__btn {
  width: 80%;
  margin: 40px auto;
}

/* guide */
.guide .block__ttl {
  font-size: 5.5vw;
}
.guide .block__sub {
  font-size: 5vw;
}
.guide .block__sub span {
  display: block;
  margin: 0;
  font-size: 3.5vw;
}
.guide .plan__ttl {
  font-size: 5vw;
}
.guide .box__ttl {
  font-size: 5vw;
}
.guide .box__table th, .guide .box__table td {
  width: 100%;
  display: block;
}

/* merit */
.merit .block__ttl {
  font-size: 5vw;
}
.merit .block__txt {
  font-size: 3.5vw;
}
.merit .block__pic img {
  width: 100%;
}

/* member */
.member__btn p {
  width: 48%;
}

/* company */
.company .block__detail {
  width: 100%;
  margin-bottom: 20px;
}
.company .block__img {
  width: 40%;
  margin: 0 auto;
}
.company .block__table th {
  padding-right: 20px;
}
.company .block__table td {
  padding-left: 20px;
}
.company .outline__table th, .company .outline__table td {
  width: 100%;
  display: block;
  padding: 10px 0;
}
.company .outline__table td {
  margin-bottom: 20px;
}

/* online */
.online .block__img {
  width: 100%;
}
.online .block__detail {
  width: 100%;
}

/* kirara */
.kirara .block__img {
  width: 70%;
  margin: 0 auto;
}
.kirara .block__detail {
  width: 100%;
}
.kirara__img li {
  width: 48%;
}

/* link */
.link__table th, .link__table td {
  width: 100%;
  display: block;
}

/* form */
.form .block__table th, .form .block__table td {
  width: 100%;
  display: block;
}
.form .block .submit input {
  width: 80%;
}

/* contact */
.contact .block__table th, .contact .block__table td {
  width: 100%;
  display: block;
}
.contact .block .submit input {
  width: 80%;
}

/* etc */
.etc__copy {
  text-align: left;
}
.etc__video {
  width: 100%;
}
.etc__detail {
  width: 100%;
}

/* support */
.support .block__ttl {
  font-size: 5vw;
}
.support .block__pic {
  width: 50%;
  margin: 0 auto 20px auto;
}
.support .block__detail {
  max-width: 100%;
}
.support .block__txt {
  font-size: 3.5vw;
}

.pc-mode {
  display: none;
}

.sp-mode {
  display: block;
}/*# sourceMappingURL=sp.css.map */