@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');

/* ===============================
フォント設定
=============================== */
:root {
  --font_noto_sans: 'Noto Sans JP', sans-serif;
  --font_noto_serif: 'Noto Serif JP', sans-serif;
  --font_libre: 'Libre Baskerville', serif;
}
.font_libre {
  font-family: 'Libre Baskerville', serif;
}
/* ===============================
行間・文字間隔等
=============================== */
#line_id_page h2,
#line_id_page h4 {
  line-height: 1.8em!important;
  letter-spacing: 0.03em!important;
}
#line_id_page h3,
#line_id_page h5 {
  line-height: 1.5em!important;
  letter-spacing: 0.03em!important;
}
@media screen and (max-width: 599px) {
  #line_id_page h2,
  #line_id_page h3,
  #line_id_page h4,
  #line_id_page h5 {
    letter-spacing: 0.02em!important;
  }
}
#line_id_page p,
#line_id_page p span,
#line_id_page p small,
#line_id_page dt,
#line_id_page dd  {
  line-height: 2.0em!important;
  letter-spacing: 0.06em!important;
  font-family: var(--font_noto_sans)!important;
  font-weight: 400;
  font-size: 1.6rem;
}
@media screen and (max-width: 599px) {
#line_id_page p,
#line_id_page p span,
#line_id_page p small,
#line_id_page dt,
#line_id_page dd  {
  font-size: 1.5rem;
  letter-spacing: 0em!important;
}
}
/* ===============================
リンク設定
=============================== */
#line_id_page a {
  text-decoration: none!important;
}
#line_id_page a:hover {
  color: inherit!important;
}
/* ===============================
レイアウト
=============================== */
#line_id_page {
  margin-bottom: 12rem;
}
@media screen and (max-width: 599px) {
  #line_id_page {
  margin-bottom: 6rem;
}
}
#line_id_wrap {
    width: 850px; 
    margin: 0 auto 6rem;
}
@media screen and (max-width: 1280px) {
    #line_id_wrap {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  #line_id_wrap {
    margin-bottom: 4rem;
  }
}
.line_id_inner {
    width: 750px;
    margin: 0 auto 4rem;
}
@media screen and (max-width: 1100px) {
  .line_id_inner {
    width: 100%;
}
}
@media screen and (max-width: 980px) {
    .line_id_inner {
      width: 850px;
}
}
@media screen and (max-width: 880px) {
    .line_id_inner {
      width: 94%;
  }
}
@media screen and (max-width: 599px) {
  .line_id_inner {
    margin: 0 auto 3rem;
}
}
/* ===============================
見出し
=============================== */
.line_id_ttl01 {
  font-size: 2.5rem;
  text-align: center;
  font-weight: 500;
  margin-bottom: 2rem;
}
@media screen and (max-width: 599px) {
  .line_id_ttl01 {
    font-size: 2.0rem;
    margin-bottom: 1rem;
  }
}
.line_id_ttl02 {
    display: flex;
    align-items: center;
    font-size: 1.7rem;
    font-weight: 500;
    color: #020227;
    margin-bottom: 4rem;
}
@media screen and (max-width: 599px) {
  .line_id_ttl02 {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.line_id_ttl02:before,
.line_id_ttl02:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    border-top: double 3px #020227;
}
.line_id_ttl02:before {
    margin-right: 1rem;
}
.line_id_ttl02:after {
    margin-left: 1rem;
}
.ttl_under_line:after {
  content: '';
  display: block;
  width: 290px;
  height: 1px;
  background-color: #161616;
  margin: 1.6rem auto 0;
}
#membership_program .ttl_under_line + p {
  padding-bottom: 1rem;
  font-size: 1.6rem!important
}
/* ===============================
コンテンツ
=============================== */
.otoku_list {
    margin: 4rem 0 0;
    display: flex;
    flex-wrap: wrap;
}
@media screen and (max-width: 599px) {
    .otoku_list {
      margin: 3rem 0;
      flex-direction: column;
    }
}
.otoku_list li {
    display: flex;
    align-items: center;
    width: 50%;
    margin-bottom: 2.6rem;
}
.otoku_list li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 599px) {
    .otoku_list li {
        width: 100%;
    }
}
.otoku_list li img {
  width: 68px;
  flex-shrink: 0;
}
.otoku_list span {
    font-size: 2.5rem;
    font-weight: 500;
    padding-left: 2rem;
    line-height: 1.3;
}
@media screen and (max-width: 599px) {
  .otoku_list span {
    font-size: 1.8rem;
    padding-left: 1.6rem;
  }
}
@media screen and (max-width: 1030px) {
.otoku_list span br {
    display: none;
}
}
@media screen and (max-width: 599px) {
  .otoku_list span br {
    display: block;
}
}
.qr_code_wrap {
  background: #FAFBF1;
  padding: 4rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 599px) {
  .qr_code_wrap {
    flex-direction: column;
    padding: 8%;
    align-items: center;
  }
}
.qr_img {
  width: 26%;
}
.qr_txt {
  width: 70%;
}
@media screen and (max-width: 599px) {
  .qr_img {
  width: 50%;
  margin-bottom: 1.6rem;
}
.qr_txt {
  width: 100%;
}
}
#line_id_page .qr_txt p {
  font-size: 1.9rem;
}
.qr_txt span.red {
  font-size: 1.9rem!important;
  color: #E10101;
}
#line_id_page .qr_txt span.big {
  font-size: 2.5rem;
}
@media screen and (max-width: 599px) {
  #line_id_page .qr_txt p {
  font-size: 1.5rem;
}
.qr_txt span.red {
  font-size: 1.5rem!important;
}
#line_id_page .qr_txt span.big {
  font-size: 1.8rem;
  font-weight: 500;
}
}
.line_id_3colwrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8rem;
}
@media screen and (max-width: 599px) {
  .line_id_3colwrap {
    flex-direction: column;
    margin-bottom: 6rem;
  }
}
.line_id_3colbox {
    width: 30%;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
@media screen and (max-width: 599px) {
  .line_id_3colbox {
    width: 100%;
    margin-bottom: 0;
  }
}
.line_id_3colbox:after {
  position: absolute;
  top: 10%;
  left: 100%;
  content: '';
  width: 37px;
  height: 34px;
  background: url(https://morpho1995noij.itembox.design/item/line_id/icon_arrow.png) no-repeat;
  background-size: contain;
}
@media screen and (max-width: 599px) {
  .line_id_3colbox:after {
    position: relative;
    top: 0;
    left: 0px;
    width: 23px;
    height: 25px;
    transform: rotate(90deg);/* 回転 */
    margin: 2rem 0;
  }
}
.line_id_3colbox.step03:after {
  display: none;
}
.line_id_3colbox .step_no {
  margin-bottom: 5rem;
}
@media screen and (max-width: 599px) {
  .line_id_3colbox .step_no {
    width: 40%;
  margin-bottom: 2.5rem;
}
}
.line_id_3colbox .step_cap {
  margin-bottom: 2rem;
}
/* ===============================
メンバーシップ
=============================== */
.ttl_under_line + p {
  margin-bottom: 3rem;
}
@media screen and (max-width: 599px) {
  #membership_program .ttl_under_line + p {
  margin-bottom: 2rem;
  font-size: 1.5rem!important;
}
}
#membership_program {
    background: linear-gradient(180deg,#FFF 0px,#FFF 280px,#e5e5e5 280px,#e5e5e5 100%)!important;
}
@media screen and (max-width: 599px) {
  #membership_program {
    background: linear-gradient(180deg,#FFF 0px,#FFF 140px,#e5e5e5 140px,#e5e5e5 100%);
}
}
/* ===============================
moreボタン
=============================== */
#membership_pro .btn_more_info {
  display: inline-block;
  min-width: 443px;
  margin: 2.6rem auto 4rem;
  cursor: pointer;
  border-radius: 100vh;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: all .2s ease;
  position: relative;
}
@media screen and (max-width: 599px) {
  #membership_pro .btn_more_info {
    min-width: 90%;
    font-size: 1.3rem!important;
    margin: 3rem auto 4rem;
  }
}
.btn_more_info.more_white {
    color: #000!important;
    background-color: #FFF;
    border: solid 2px #000;
}
.btn_more_info.more_white:hover {
  background-color: #e5e5e5;
}
#membership_pro .btn_more_info a {
  font-size: 1.6rem!important;
  display: inline-block;
  width: 100%;
  padding: 1.5rem;
  line-height: 1.6!important;
}
@media screen and (max-width: 400px) {
  #membership_pro .btn_more_info a {
    font-size: 1.2rem!important;
  }
}
@media screen and (max-width: 1430px) {
  #membership_pro .btn_more_info a {
    font-size: inherit;
    padding: 1.5rem 2rem;
  }
}
@media screen and (max-width: 599px) {
  #membership_pro .btn_more_info a {
    width: auto;
  }
}
#membership_pro .btn_more_info a:after {
  content: '\02192';
  font-size: 1.7rem;
  position: absolute;
  padding-left: 0.5rem; 
  top: 24%;
  transition: all .3s ease;
}
@media screen and (max-width: 599px) {
  #membership_pro .btn_more_info a:after {
    top: 22%;
  }
}
#membership_pro .btn_more_info a:hover:after {
  position: absolute;
  padding-left: 1rem; 
}
#membership_pro .btn_more_info:hover {
  opacity: 1.0!important;
}
#membership_pro .btn_more_info:hover a {
  opacity: 1.0!important;
}

