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

ul {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

.NPLink {
  border-bottom: solid 1px;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  letter-spacing: 0.3em;
  color: #333;
  line-height: 1.6;
  position: relative;
}

.button_pink, .button_wh {
  font-size: 18px;
  padding: 16px 0;
  border: 1px solid #333;
  font-weight: 500;
  display: block;
  transition: all 0.3s;
  text-align: center;
}
.button_pink:hover, .button_wh:hover {
  transition: all 0.3s;
}
@media screen and (max-width: 559px) {
  .button_pink, .button_wh {
    padding: 8px 0;
  }
}

.button {
  font-size: 18px;
  padding: 16px 0;
  border: 1px solid #333;
  font-weight: 500;
  display: block;
  transition: all 0.3s;
  text-align: center;
}
.button:hover {
  transition: all 0.3s;
}
@media screen and (max-width: 559px) {
  .button {
    padding: 8px 0;
  }
}
.buttonContetns {
  margin-top: 80px;
  max-width: 326px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 559px) {
  .buttonContetns {
    margin-top: 56px;
  }
}
.button_wh {
  box-shadow: 3px 3px #333;
}
.button_wh:hover {
  transform: translate(3px, 3px);
  background: #333;
  color: #fff;
  box-shadow: none;
}
.button_pink {
  background: #DE9198;
  color: #fff;
  box-shadow: 3px 3px #333;
}
.button_pink:hover {
  transform: translate(3px, 3px);
  background: #fff;
  color: #DE9198;
  box-shadow: none;
  border-color: #DE9198;
}

.modalBtnTtl {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .modalBtnTtl {
    font-size: 24px;
  }
}

.label-blue, .label-pink {
  padding: 4px;
  font-size: 12px;
  letter-spacing: 0.1em;
}

.modalContents_txt p {
  margin-top: 16px;
}
.modalContents_txt p:first-child {
  margin-top: 0;
}

.modalContents_txt-strong {
  border-bottom: 2px solid #DE9198;
}

.pagesection {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .pagesection {
    padding: 56px 16px;
  }
}

.pagesection-gray {
  background: #F5F5F5;
}

.pagesection-pink {
  background: #FFF4F9;
}

.pagesection-blue {
  background: #EEF2F6;
}

.contentsTxt p {
  margin-top: 16px;
}
.contentsTxt p:first-child {
  margin-top: 0;
}

.underline_txt {
  border-bottom: 2px solid #DE9198;
}

.line_txt {
  background: linear-gradient(transparent 75%, #DE9198 75%);
}

.label {
  padding: 4px;
  font-size: 12px;
  letter-spacing: 0.1em;
}
.label-pink {
  background: #DE9198;
  color: #fff;
}
.label-blue {
  background: #144F84;
  color: #fff;
}

.notice {
  font-size: 12px;
  letter-spacing: 0.1em;
}

.modal {
  padding: 80px 16px;
  background: #F5F5F5;
}
.modalBtn {
  cursor: pointer;
  font-weight: 500;
  border: 1px solid #333;
  box-shadow: 3px 3px #333;
  transition: all 0.3s;
  max-width: 640px;
  margin: auto;
  background: #fff;
}
.modalBtn:hover {
  transform: translate(3px, 3px);
  transition: all 0.3s;
  box-shadow: none;
}
.modalBtnContent {
  display: flex;
  padding: 16px;
  justify-content: center;
}
@media screen and (max-width: 559px) {
  .modalBtnContent {
    flex-direction: column;
    text-align: center;
  }
}
@media screen and (max-width: 559px) {
  .modalBtnContent {
    padding: 8px;
  }
}
.modalBtnTtl {
  margin-right: 8px;
}
@media screen and (max-width: 559px) {
  .modalBtnTtl {
    font-size: 18px;
    margin-right: 0;
  }
}
.modalBtnTtl_sub {
  display: block;
}
.modalBtnProfile {
  position: relative;
}
@media screen and (max-width: 559px) {
  .modalBtnProfile {
    margin-top: 16px;
  }
}
.modalBtnProfile_img {
  border-radius: 50%;
  width: 100px;
  height: 100px;
}
.modalBtnProfile_name {
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  background: #fff;
  border: 1px solid #DE9198;
  border-radius: 50px;
  letter-spacing: 0;
  line-height: 1;
  display: inline-block;
  padding: 4px;
}
@media screen and (max-width: 559px) {
  .modalBtnProfile_name {
    width: auto;
    left: 50%;
    transform: translate(-50%);
  }
}
.modalBtnProfile_name-job {
  font-size: 10px;
  display: block;
}
.modalBtn_strong {
  background: #DE9198;
  color: #fff;
  text-align: center;
  padding: 4px 0;
}
.modalBox {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalBox_bg {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
}
.modalContents {
  position: relative;
  max-width: 720px;
  max-height: calc(100% - 80px);
  padding: 24px;
  background-color: #fff;
  overflow-y: scroll;
}
@media screen and (max-width: 559px) {
  .modalContents {
    max-height: calc(100% - 56px);
    padding: 16px;
  }
}
.modalContents_txt-strong {
  font-weight: bold;
}
.modalContents_profile {
  display: flex;
  margin-top: 24px;
  padding: 16px;
  background: #F8F7F7;
}
@media screen and (max-width: 559px) {
  .modalContents_profile {
    padding: 8px;
    flex-direction: column;
  }
}
.modalContents_profile-img {
  margin-right: 8px;
}
@media screen and (max-width: 559px) {
  .modalContents_profile-img {
    margin-right: 0;
  }
}
@media screen and (max-width: 559px) {
  .modalContents_profile-img {
    margin-top: 8px;
  }
}
.modalClose {
  width: 18px;
  height: 18px;
  position: absolute;
  top: 4px;
  right: 4px;
  cursor: pointer;
}

.Table {
  margin: 40px auto 0;
  max-width: 720px;
}
@media screen and (max-width: 719px) {
  .Table {
    overflow-x: scroll;
    white-space: nowrap;
  }
}

.break-sp {
  display: none;
}
@media screen and (max-width: 559px) {
  .break-sp {
    display: block;
  }
}

.Heading_border {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .Heading_border {
    font-size: 16px;
  }
}

.Heading {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .Heading {
    font-size: 24px;
  }
}
.Heading_small {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .Heading_small {
    font-size: 16px;
  }
}
.Heading_strong {
  background: #DE9198;
  color: #fff;
}
.Heading_blue {
  color: #144F84;
}
.Heading_pink {
  color: #DE9198;
}
.Heading_border {
  border-bottom: 1px solid #333;
  position: relative;
  text-align: center;
  display: inline-block;
}
.Heading_border:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.HeadingWrap {
  margin-top: 80px;
  text-align: center;
}
@media screen and (max-width: 559px) {
  .HeadingWrap {
    margin-top: 56px;
  }
}
.HeadingSectionWrap {
  text-align: center;
}

.heading-little {
  font-size: 0.75em;
}
@media screen and (max-width: 559px) {
  .heading-little {
    font-size: 0.85em;
  }
}

.slider_lead-men, .slider_lead-mom, .slider_lead-premom, .slider_lead-women {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .slider_lead-men, .slider_lead-mom, .slider_lead-premom, .slider_lead-women {
    font-size: 16px;
  }
}

.slider_txt-men, .slider_txt-mom, .slider_txt-premom, .slider_txt-women {
  margin-top: 16px;
  font-weight: 500;
}

.slider {
  margin-top: 40px;
  width: 100%;
}
.sliderBox {
  background: #fcfcfc;
  text-align: center;
  padding: 32px 0;
}
.sliderBox:nth-child(even) {
  background: #F5F5F5;
}
@media screen and (max-width: 559px) {
  .sliderBox {
    padding: 16px 8px;
  }
}
.slider_lead {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .slider_lead {
    font-size: 16px;
  }
}
.slider_lead-women {
  color: #DE9198;
}
.slider_lead-premom {
  color: #78AC80;
}
.slider_lead-mom {
  color: #D5AB45;
}
.slider_lead-men {
  color: #144F84;
}
.slider_package {
  width: 146px;
  height: 231px;
  margin: 16px auto 0;
}
@media screen and (max-width: 559px) {
  .slider_package {
    width: 121px;
    height: 192px;
  }
}
.slider_txt {
  margin-top: 16px;
  font-weight: 500;
}
.slider_txt-women {
  color: #DE9198;
}
.slider_txt-premom {
  color: #78AC80;
}
.slider_txt-mom {
  color: #D5AB45;
}
.slider_txt-men {
  color: #144F84;
}
.slider_logo {
  margin: 8px auto 0;
  width: 120px;
  height: 60px;
}
@media screen and (max-width: 559px) {
  .slider_logo {
    width: 90px;
    height: 42px;
  }
}

.Header {
  padding: 0 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 40px;
  width: 100%;
  position: fixed;
  top: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 99;
}
@media screen and (max-width: 896px) {
  .Header {
    padding: 0 40px 0px 16px;
  }
}
.HeaderLogo {
  padding-top: 8px;
}
.HeaderLogo_img {
  width: 162px;
  height: 26px;
}
@media screen and (max-width: 559px) {
  .HeaderLogo_img {
    width: 127px;
    height: 21px;
  }
}
.HeaderNav {
  display: flex;
  align-items: center;
}
.HeaderTel {
  display: flex;
  align-items: center;
  pointer-events: none;
  margin-right: 16px;
}
@media screen and (max-width: 896px) {
  .HeaderTel {
    pointer-events: auto;
    background: #DE9198;
    height: 40px;
    padding: 0 8px;
  }
}
.HeaderTel_icon {
  width: 33px;
  height: 22px;
  margin-right: 4px;
}
@media screen and (max-width: 896px) {
  .HeaderTel_icon {
    display: none;
  }
}
.HeaderTel_num {
  color: #DE9198;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
}
@media screen and (max-width: 896px) {
  .HeaderTel_num {
    color: #fff;
    letter-spacing: 0;
  }
}
.HeaderTel_num-notice {
  display: block;
  font-size: 8px;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 559px) {
  .HeaderTel_num-notice {
    letter-spacing: -1px;
  }
}
.HeaderContents {
  display: flex;
  font-size: 12px;
  letter-spacing: 0.12em;
  font-weight: 500;
  align-items: center;
}
@media screen and (max-width: 896px) {
  .HeaderContents {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    background: rgba(255, 255, 255, 0.8);
    transform: translateY(-100%);
    transition: all 0.6s;
    z-index: -1;
  }
}
@media screen and (max-width: 896px) {
  .HeaderContentsOpen {
    transform: translateY(0%);
    top: 40px;
    transition: all 0.6s;
  }
}
.HeaderList {
  margin-right: 32px;
}
.HeaderList:last-child {
  margin-right: 0;
}
@media screen and (max-width: 896px) {
  .HeaderList {
    margin-right: 0;
  }
}
@media screen and (max-width: 896px) {
  .HeaderList_Link {
    padding: 16px;
    display: block;
  }
}
.HeaderList_cv {
  background: #DE9198;
  border: 1px solid #DE9198;
  padding: 11px 16px;
  color: #fff;
  transition: all 0.3s;
}
.HeaderList_cv:hover {
  background: #fff;
  color: #DE9198;
  transition: all 0.3s;
}
@media screen and (max-width: 896px) {
  .HeaderList_cv {
    display: block;
  }
}

.Hamburger {
  width: 52px;
  height: 16px;
  cursor: pointer;
  position: absolute;
  justify-content: center;
  right: 0;
  top: calc(50% - 8px);
  display: none;
}
@media screen and (max-width: 896px) {
  .Hamburger {
    display: flex;
  }
}
.HamburgerBar {
  position: absolute;
  width: 24px;
  height: 1px;
  background: #333;
  transform: rotate(0);
  transition: transform 0.6s;
}
.HamburgerBar:nth-child(1) {
  top: 0;
}
.HamburgerBar:nth-child(2) {
  top: 7px;
  opacity: 1;
}
.HamburgerBar:nth-child(3) {
  bottom: 0;
}
.HamburgerClose {
  transition: transform 0.6s;
}
.HamburgerClose .HamburgerBar:nth-child(1) {
  transform: rotate(45deg);
  top: 8px;
}
.HamburgerClose .HamburgerBar:nth-child(2) {
  opacity: 0;
}
.HamburgerClose .HamburgerBar:nth-child(3) {
  transform: rotate(-45deg);
  top: 8px;
}

.mvCopy-husband {
  color: #144F84;
}

.mvCopy-wife {
  color: #DE9198;
}

.mv_cv {
  font-size: 18px;
  padding: 16px 0;
  border: 1px solid #333;
  font-weight: 500;
  display: block;
  transition: all 0.3s;
  text-align: center;
}
.mv_cv:hover {
  transition: all 0.3s;
}
@media screen and (max-width: 559px) {
  .mv_cv {
    padding: 8px 0;
  }
}

.mv_cv {
  background: #DE9198;
  color: #fff;
  box-shadow: 3px 3px #333;
}
.mv_cv:hover {
  transform: translate(3px, 3px);
  background: #fff;
  color: #DE9198;
  box-shadow: none;
  border-color: #DE9198;
}

.mvImg-women, .mvImg-men {
  overflow: hidden;
  height: 100%;
  position: relative;
  width: calc(50% - 187.5px);
}
@media screen and (max-width: 896px) {
  .mvImg-women, .mvImg-men {
    width: 100%;
    border-radius: 0;
  }
}

.mv {
  width: 100%;
  height: 100vh;
  padding: 40px;
  position: relative;
}
@media screen and (max-width: 896px) {
  .mv {
    padding: 0;
  }
}
@media screen and (max-width: 559px) {
  .mv {
    height: calc(100vh - 75px);
  }
}
.mvWrap {
  display: flex;
  height: 100%;
}
@media screen and (max-width: 896px) {
  .mvWrap {
    flex-direction: column;
  }
}
.mvImg {
  overflow: hidden;
  height: 100%;
  position: relative;
  width: calc(50% - 187.5px);
}
@media screen and (max-width: 896px) {
  .mvImg {
    width: 100%;
    border-radius: 0;
  }
}
.mvImg-men {
  background: #EEF2F6;
  border-radius: 10px 0 0 10px;
}
@media screen and (max-width: 896px) {
  .mvImg-men {
    border-radius: 0;
  }
}
.mvImg-women {
  background: #FFF4F9;
  border-radius: 0 10px 10px 0;
}
@media screen and (max-width: 896px) {
  .mvImg-women {
    border-radius: 0;
  }
}
.mvPlususformen {
  position: absolute;
  left: -150px;
  bottom: -100px;
}
@media screen and (max-width: 896px) {
  .mvPlususformen {
    width: 395px;
    height: 557px;
    left: -30px;
    bottom: -160px;
    transform: rotate(45deg);
  }
}
@media screen and (max-width: 559px) {
  .mvPlususformen {
    width: 215px;
    height: 315px;
    left: -10px;
    bottom: -100px;
  }
}
.mvMen {
  position: absolute;
  right: -40px;
  bottom: -11px;
  width: 165px;
  height: 326px;
}
@media screen and (max-width: 896px) {
  .mvMen {
    width: 125px;
    height: 247px;
  }
}
@media screen and (max-width: 559px) {
  .mvMen {
    width: 77px;
    height: 152px;
    right: -10px;
    bottom: -60px;
  }
}
.mvPlususforwomen {
  position: absolute;
  right: -150px;
  bottom: -100px;
}
@media screen and (max-width: 896px) {
  .mvPlususforwomen {
    width: 395px;
    height: 557px;
    right: -30px;
    bottom: -160px;
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 559px) {
  .mvPlususforwomen {
    width: 215px;
    height: 315px;
    right: -10px;
    bottom: -80px;
  }
}
.mvWomen {
  position: absolute;
  left: -20px;
  bottom: -21px;
  width: 143px;
  height: 297px;
}
@media screen and (max-width: 896px) {
  .mvWomen {
    width: 111px;
    height: 230px;
  }
}
@media screen and (max-width: 559px) {
  .mvWomen {
    width: 70px;
    height: 146px;
    left: -5px;
    bottom: -49px;
  }
}
.mvBox {
  width: 370px;
  padding: 0 16px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 896px) {
  .mvBox {
    padding: 16px 0;
    width: 100%;
  }
}
@media screen and (max-width: 559px) {
  .mvBox {
    display: block;
    padding: 16px;
  }
}
.mvContents {
  text-align: center;
}
.mvLead {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .mvLead {
    font-size: 12px;
  }
}
.mvLead-strong {
  font-size: 24px;
  margin-top: 16px;
}
@media screen and (max-width: 559px) {
  .mvLead-strong {
    font-size: 14px;
  }
}
.mvCopy {
  font-size: 37px;
  line-height: 1;
  padding: 24px 0;
  margin-top: 16px;
  font-weight: 500;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  position: relative;
}
.mvCopy:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.mvCopy:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
@media screen and (max-width: 559px) {
  .mvCopy {
    font-size: 24px;
    padding: 16px 0 8px;
  }
}
.mvCopy-husband {
  position: relative;
}
.mvCopy-husband:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.mvCopy-wife {
  position: relative;
}
.mvCopy-wife:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.mvCopy_main {
  display: block;
  margin-top: 16px;
  font-size: 42px;
  color: #fff;
  text-stroke: 1.5px #333;
  -webkit-text-stroke: 1.5px #333;
}
@media screen and (max-width: 559px) {
  .mvCopy_main {
    font-size: 28px;
    margin-top: 8px;
    text-stroke: 1px #333;
    -webkit-text-stroke: 1px #333;
  }
}
.mvCopy_main-sub {
  margin-top: 16px;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 559px) {
  .mvCopy_main-sub {
    margin-top: 8px;
  }
}
.mvCopy_main-plususlogo {
  width: 76px;
  margin-right: 5px;
  height: 25px;
  transform: translateY(-2px);
}
@media screen and (max-width: 559px) {
  .mvCopy_main-plususlogo {
    width: 63px;
    margin-left: -5px;
    height: 19px;
    margin-right: 0px;
  }
}
.mv_cv {
  margin-top: 32px;
}
@media screen and (max-width: 559px) {
  .mv_cv {
    margin-top: 8px;
    font-size: 14px;
    padding: 8px 0;
  }
}
.mv_scroll {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translate(-50%);
  width: 44px;
  height: 61px;
}
@media screen and (max-width: 559px) {
  .mv_scroll {
    width: 24px;
    height: 34px;
  }
}
.mv_badge {
  position: absolute;
  bottom: 0px;
  right: 25px;
}
@media screen and (max-width: 559px) {
  .mv_badge {
    width: 146px;
    bottom: -30px;
    left: 0;
  }
}

.about {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .about {
    padding: 56px 16px;
  }
}

.aboutBenefit_heading, .aboutHeading {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .aboutBenefit_heading, .aboutHeading {
    font-size: 24px;
  }
}

.aboutBenefit_heading-lead, .aboutHeading_lead {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .aboutBenefit_heading-lead, .aboutHeading_lead {
    font-size: 16px;
  }
}

.aboutBenefit_heading-husband {
  color: #144F84;
}

.aboutBenefit_heading-wife {
  color: #DE9198;
}

.aboutMedia_spreadimg {
  margin-top: 16px;
}
@media screen and (max-width: 559px) {
  .aboutMedia_spreadimg {
    width: 100%;
  }
}

.about {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
}
.aboutHeading {
  text-align: center;
}
.aboutHeading_lead {
  position: relative;
}
.aboutHeading_lead:before, .aboutHeading_lead:after {
  content: "";
  width: 1px;
  height: 80%;
  position: absolute;
  background: #333;
  bottom: 0;
}
.aboutHeading_lead:before {
  left: -16px;
  transform: rotate(-20deg);
}
.aboutHeading_lead:after {
  right: -16px;
  transform: rotate(20deg);
}
.aboutHeading_main {
  display: block;
}
.aboutHeading_strong {
  background: #DE9198;
  color: #fff;
  font-size: 40px;
}
@media screen and (max-width: 559px) {
  .aboutHeading_strong {
    font-size: 28px;
  }
}
.aboutLead-description {
  font-size: 16px;
  font-weight: 500;
  margin-top: 24px;
}
.aboutMedia {
  margin-top: 80px;
  border: dashed 1px #333;
  padding: 24px 0;
  text-align: center;
  background: #FFF4F9;
}
@media screen and (max-width: 559px) {
  .aboutMedia {
    margin-top: 56px;
  }
}
@media screen and (max-width: 896px) {
  .aboutMedia {
    padding: 24px;
  }
}
@media screen and (max-width: 559px) {
  .aboutMedia {
    padding: 8px;
  }
}
.aboutMedia_img {
  margin-top: 16px;
}
@media screen and (max-width: 559px) {
  .aboutMedia_img {
    width: 100%;
  }
}
@media screen and (max-width: 896px) {
  .aboutMedia_spreadimg {
    width: 100%;
  }
}
.aboutBenefit {
  margin-top: 80px;
  text-align: center;
}
@media screen and (max-width: 559px) {
  .aboutBenefit {
    margin-top: 56px;
  }
}
.aboutBenefit_heading {
  border-bottom: 1px solid #333;
  position: relative;
  text-align: center;
  display: inline-block;
}
.aboutBenefit_heading:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.aboutBenefit_heading-circle {
  position: relative;
}
.aboutBenefit_heading-circle:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.aboutBenefit_heading-husband {
  position: relative;
}
.aboutBenefit_heading-husband:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.aboutBenefit_heading-wife {
  position: relative;
}
.aboutBenefit_heading-wife:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.aboutBenefit_heading-main {
  display: block;
}
.aboutBenefit_content {
  display: flex;
  justify-content: space-between;
  margin: 40px auto 0;
}
@media screen and (max-width: 559px) {
  .aboutBenefit_content {
    flex-direction: column;
  }
}
.aboutBenefit_contentList {
  margin-bottom: 24px;
  width: 33.3%;
}
.aboutBenefit_contentList:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 559px) {
  .aboutBenefit_contentList {
    width: auto;
  }
}
.aboutBenefit_content-img {
  width: 160px;
  height: 160px;
}
.aboutBenefit_content-ttl {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .aboutBenefit_content-ttl {
    font-size: 16px;
  }
}
.aboutAuthority {
  margin-top: 80px;
  display: flex;
}
@media screen and (max-width: 559px) {
  .aboutAuthority {
    margin-top: 56px;
  }
}
@media screen and (max-width: 559px) {
  .aboutAuthority {
    flex-direction: column;
  }
}
.aboutAuthority_box {
  width: 50%;
  margin-right: 16px;
}
.aboutAuthority_box:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .aboutAuthority_box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 16px;
  }
  .aboutAuthority_box:last-child {
    margin-bottom: 0;
  }
}
.aboutAuthority_btn {
  text-align: center;
  padding: 16px 0;
}
.aboutAuthority_btn-txt {
  font-size: 16px;
  font-weight: bold;
}
.aboutAuthority_btn-name {
  margin-top: 8px;
}

.ItemBox {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .ItemBox {
    padding: 56px 16px;
  }
}

.ItemBox_img-men {
  margin-right: 32px;
}
@media screen and (max-width: 896px) {
  .ItemBox_img-men {
    order: 1;
    margin-right: 0;
    margin-top: 32px;
    height: 370px;
    overflow: hidden;
  }
}
@media screen and (max-width: 559px) {
  .ItemBox_img-men {
    height: 250px;
  }
}

.ItemBoxContetns_ttl-men, .ItemBoxContetns_ttl-women {
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #333;
  padding-bottom: 16px;
  margin-bottom: 24px;
}
@media screen and (max-width: 559px) {
  .ItemBoxContetns_ttl-men, .ItemBoxContetns_ttl-women {
    font-size: 16px;
  }
}

.ItemPlusus_women {
  background: #FFF4F9;
}
.ItemPlusus_men {
  background: #EEF2F6;
}
.ItemBox {
  display: flex;
}
@media screen and (max-width: 896px) {
  .ItemBox {
    flex-direction: column;
    padding-bottom: 0;
    align-items: center;
  }
}
.ItemBox_img {
  margin-right: 32px;
}
@media screen and (max-width: 896px) {
  .ItemBox_img {
    order: 1;
    margin-right: 0;
    margin-top: 32px;
    height: 370px;
    overflow: hidden;
  }
}
@media screen and (max-width: 559px) {
  .ItemBox_img {
    height: 250px;
  }
}
.ItemBox_img-package {
  width: 315px;
  height: 499px;
}
@media screen and (max-width: 559px) {
  .ItemBox_img-package {
    width: 206px;
    height: 325px;
  }
}
.ItemBox_img-men {
  margin-left: 32px;
  margin-right: 0;
  order: 1;
}
@media screen and (max-width: 896px) {
  .ItemBox_img-men {
    margin-left: 0;
    margin-top: 32px;
  }
}
@media screen and (max-width: 896px) {
  .ItemBoxContetns {
    order: 0;
    width: 100%;
  }
}
.ItemBoxContetns-men {
  order: 0;
}
@media screen and (max-width: 896px) {
  .ItemBoxContetns-men {
    order: 0;
    width: 100%;
  }
}
.ItemBoxContetns_ttl {
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #333;
  padding-bottom: 16px;
  margin-bottom: 24px;
}
@media screen and (max-width: 559px) {
  .ItemBoxContetns_ttl {
    font-size: 16px;
  }
}
.ItemBoxContetns_ttl-women {
  color: #DE9198;
}
.ItemBoxContetns_ttl-men {
  color: #144F84;
}
.ItemBoxContetns_lead {
  font-size: 28px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .ItemBoxContetns_lead {
    font-size: 22px;
  }
}
.ItemBoxIngredient {
  border: dashed 1px #333;
  background: #F5F5F5;
  padding: 16px;
  position: relative;
  margin-top: 40px;
}
.ItemBoxIngredient_ttl {
  position: absolute;
  top: -19px;
  left: calc(50% - 52px);
  border: 1px solid #333;
  padding: 4px 16px;
  background: #fff;
  border-radius: 50px;
  font-weight: bold;
}
.ItemBoxIngredientWrap {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 896px) {
  .ItemBoxIngredientWrap {
    flex-wrap: wrap;
  }
}
.ItemBoxIngredientList {
  margin-right: 8px;
}
@media screen and (max-width: 896px) {
  .ItemBoxIngredientList {
    margin-bottom: 8px;
  }
}
.ItemBoxIngredientList:last-child {
  margin-right: 0;
}
.ItemBoxIngredientList_img {
  width: 137px;
  height: 137px;
}
.ItemBoxIngredientList_name {
  display: block;
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.12em;
}

.Soy {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .Soy {
    padding: 56px 16px;
  }
}

.SoyHeading {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .SoyHeading {
    font-size: 24px;
  }
}

.SoyHeading {
  text-align: center;
  font-weight: 500;
}
.SoyHeading_strong {
  background: #DE9198;
  color: #fff;
}
.SoyHeading_sub {
  display: block;
}
.SoyContents {
  display: flex;
  margin-top: 40px;
}
@media screen and (max-width: 559px) {
  .SoyContents {
    flex-direction: column;
  }
}
.SoyContentsList {
  margin-right: 32px;
  text-align: center;
}
.SoyContentsList:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .SoyContentsList {
    margin-right: 0;
    margin-bottom: 32px;
  }
  .SoyContentsList:last-child {
    margin-bottom: 0;
  }
}
.SoyContentsList_ttl {
  position: relative;
  font-size: 20px;
  font-weight: 500;
  border-bottom: 1px solid #333;
  padding-bottom: 4px;
}
.SoyContentsList_ttl:after {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  bottom: -7px;
  left: calc(50% - 6px);
  transform: rotate(45deg);
  background: #fff;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
}
@media screen and (max-width: 559px) {
  .SoyContentsList_ttl {
    font-size: 18px;
  }
}
.SoyContentsList_img {
  margin-top: 24px;
  width: 160px;
  height: 160px;
}
.SoyContentsList_description {
  margin-top: 24px;
}
.SoyContentsList_description-lead {
  font-size: 16px;
  font-weight: 500;
}
.SoyContentsList_description-txt {
  margin-top: 16px;
  text-align: left;
}

.folicacid {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .folicacid {
    padding: 56px 16px;
  }
}

.folicacidSubHeading, .folicacidHeading {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .folicacidSubHeading, .folicacidHeading {
    font-size: 24px;
  }
}

.folicacidSubHeading_sub {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .folicacidSubHeading_sub {
    font-size: 16px;
  }
}

.folicacidHeading {
  text-align: center;
}
.folicacidHeading_main {
  display: block;
}
.folicacidHeading_main-circle {
  position: relative;
}
.folicacidHeading_main-circle:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.folicacidHeading_main-circle:before {
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.folicacidDescription {
  margin: 16px auto 0;
  max-width: 560px;
}
.folicacidSubHeading {
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  position: relative;
  margin-top: 40px;
  padding: 16px 0;
  text-align: center;
}
.folicacidSubHeading:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.folicacidSubHeading:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.folicacidSubHeading_circle {
  position: relative;
}
.folicacidSubHeading_circle:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.folicacidSubHeading_sub {
  display: block;
}
.folicacidContents {
  margin-top: 40px;
}
.folicacidContentsBox {
  display: flex;
  margin-top: 40px;
}
.folicacidContentsBox:first-child {
  margin-top: 0;
}
.folicacidContentsBox:nth-child(odd) .folicacidContents_description {
  order: 1;
  margin-right: 0;
}
.folicacidContentsBox:nth-child(odd) .folicacidContents_img {
  order: 0;
  margin-right: 16px;
}
@media screen and (max-width: 559px) {
  .folicacidContentsBox:nth-child(odd) .folicacidContents_description {
    order: 0;
  }
  .folicacidContentsBox:nth-child(odd) .folicacidContents_img {
    order: 1;
    margin-right: 0;
  }
}
@media screen and (max-width: 559px) {
  .folicacidContentsBox {
    flex-direction: column;
    align-items: center;
  }
}
.folicacidContents_img {
  width: 294px;
  height: 207px;
}
@media screen and (max-width: 559px) {
  .folicacidContents_img {
    margin-top: 16px;
  }
}
.folicacidContents_description {
  margin-right: 16px;
}
@media screen and (max-width: 559px) {
  .folicacidContents_description {
    margin-right: 0;
  }
}
.folicacidContents_description-ttl {
  font-size: 18px;
  border-bottom: 1px solid #333;
  padding-bottom: 8px;
}
.folicacidContents_description-txt {
  margin-top: 16px;
}

.Nutrition {
  background: #FFF4F9;
}

.NutritionHeading {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .NutritionHeading {
    font-size: 24px;
  }
}

.NutritionIngredientContents_description-ttl {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientContents_description-ttl {
    font-size: 16px;
  }
}

.NutritionIngredientTable, .NutritionIngredientContents {
  position: relative;
  max-width: 720px;
  max-height: calc(100% - 80px);
  padding: 24px;
  background-color: #fff;
  overflow-y: scroll;
}

.NutritionIngredientTableBtn {
  margin-top: 80px;
  max-width: 326px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientTableBtn {
    margin-top: 56px;
  }
}

.Nutrition {
  padding: 80px 0;
}
.NutritionHeading {
  display: flex;
  align-items: center;
  justify-content: center;
}
.NutritionHeading_num {
  font-size: 107px;
  color: #fff;
  text-stroke: 1.5px #333;
  -webkit-text-stroke: 1.5px #333;
  line-height: 1;
}
@media screen and (max-width: 559px) {
  .NutritionHeading_num {
    font-size: 80px;
  }
}
.NutritionHeading_circle {
  position: relative;
}
.NutritionHeading_circle:before {
  content: "";
  position: absolute;
  border: 1px solid #333;
  border-radius: 50%;
  top: -4px;
  left: calc(50% - 7px);
  width: 6px;
  height: 6px;
}
.NutritionHeading_sub {
  display: block;
}
.NutritionHeading_sub-strong {
  border-bottom: 1px solid #333;
  position: relative;
}
.NutritionHeading_sub-strong:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
.NutritionBox {
  position: relative;
  overflow: hidden;
  padding: 40px 0;
}
.Nutrition_bg {
  position: absolute;
}
.Nutrition_bg-soy {
  position: absolute;
  left: -50px;
  top: -40px;
}
@media screen and (max-width: 559px) {
  .Nutrition_bg-soy {
    width: 141px;
    height: 115px;
    left: -30px;
    top: 0;
  }
}
.Nutrition_bg-folicacid {
  position: absolute;
  right: -3px;
  top: 0;
}
@media screen and (max-width: 559px) {
  .Nutrition_bg-folicacid {
    width: 135px;
    height: 184px;
  }
}
.Nutrition_bg-ginger {
  position: absolute;
  left: -70px;
  bottom: -9px;
}
@media screen and (max-width: 559px) {
  .Nutrition_bg-ginger {
    width: 170px;
    height: 131px;
    left: -70px;
    bottom: -30px;
  }
}
.Nutrition_bg-pomegranate {
  position: absolute;
  right: -80px;
  bottom: -10px;
}
@media screen and (max-width: 559px) {
  .Nutrition_bg-pomegranate {
    width: 175px;
    height: 159px;
    right: -50px;
    bottom: 0;
  }
}
.NutritionContents {
  position: relative;
  max-width: 358px;
  margin: auto;
}
@media screen and (max-width: 559px) {
  .NutritionContents {
    width: 220px;
  }
}
.NutritionContentsImg {
  width: 358px;
  height: 569px;
}
@media screen and (max-width: 559px) {
  .NutritionContentsImg {
    width: 220px;
    height: 374px;
  }
}
.NutritionIngredient {
  position: absolute;
}
.NutritionIngredient-folicacid {
  position: absolute;
  top: 0;
  right: -70px;
}
@media screen and (max-width: 559px) {
  .NutritionIngredient-folicacid {
    right: -25px;
  }
}
.NutritionIngredient-soy {
  position: absolute;
  top: 80px;
  left: -70px;
}
@media screen and (max-width: 559px) {
  .NutritionIngredient-soy {
    left: -28px;
  }
}
.NutritionIngredient-pomegranate {
  position: absolute;
  bottom: 80px;
  right: -70px;
}
@media screen and (max-width: 559px) {
  .NutritionIngredient-pomegranate {
    right: -25px;
  }
}
.NutritionIngredient-ginger {
  position: absolute;
  bottom: -30px;
  left: -70px;
}
@media screen and (max-width: 559px) {
  .NutritionIngredient-ginger {
    left: -28px;
  }
}
.NutritionIngredientItem {
  position: relative;
  cursor: pointer;
  border: none;
  box-shadow: none;
  background: none;
}
.NutritionIngredientImg {
  border: 3px solid #DE9198;
  border-radius: 50%;
  width: 137px;
  height: 137px;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientImg {
    width: 100px;
    height: 100px;
  }
}
.NutritionIngredientName {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 10px;
  background: #DE9198;
  color: #fff;
  padding: 4px;
  border-radius: 5px;
  text-align: center;
  letter-spacing: normal;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientName {
    width: 136px;
    left: 50%;
    transform: translate(-50%);
  }
}
.NutritionIngredientContents {
  background: #FFF4F9;
  text-align: center;
}
.NutritionIngredientContents_description {
  text-align: left;
}
.NutritionIngredientContents_description-ttl {
  padding-bottom: 8px;
  border-bottom: 1px dashed #333;
}
.NutritionIngredientContents_description-ttllittle {
  font-size: 16px;
}
.NutritionIngredientContents_description-ttl .label-pink {
  margin-right: 4px;
}
.NutritionIngredientContents_description-txt {
  margin-top: 16px;
}
.NutritionIngredientTable {
  display: flex;
  font-size: 12px;
  text-align: left;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientTable {
    flex-direction: column;
  }
}
.NutritionIngredientTableBtn {
  margin-top: 24px;
  font-size: 18px;
}
.NutritionIngredientTableCol {
  width: 328px;
  margin-right: 16px;
}
.NutritionIngredientTableCol:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .NutritionIngredientTableCol {
    width: 100%;
  }
}
.NutritionIngredientTableList {
  display: flex;
  padding: 4px 0;
  border-bottom: 1px solid #333;
}
.NutritionIngredientTableList_ttl {
  width: 65%;
}
.NutritionDescription {
  text-align: center;
  margin-top: 24px;
  padding: 0 16px;
}
.NutritionDescription-txt {
  margin-top: 8px;
}

.CompareTableHead_heading-plusus {
  padding: 8px;
  font-size: 16px;
  font-weight: bold;
}

.CompareTableBody_data-plusus {
  font-size: 12px;
  width: 192px;
  padding: 24px 8px;
  vertical-align: middle;
  text-align: center;
  border-left: 1px solid #333;
}

.CompareTable {
  width: 100%;
  border-collapse: collapse;
}
.CompareTableHead_heading {
  padding: 8px;
  font-size: 16px;
  font-weight: bold;
}
.CompareTableHead_heading-plusus {
  border: 3px solid #F8E2EC;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
}
.CompareTableHead_heading-logo {
  width: 93px;
  height: 45px;
}
.CompareTableHead_heading-notice {
  display: block;
  font-size: 10px;
  display: block;
}
.CompareTableBody tr:nth-child(odd) {
  background: #F5F5F5;
}
.CompareTableBody tr:nth-child(odd) .CompareTableBody_data-plusus {
  background: #FFF4F9;
}
.CompareTableBody tr:nth-child(even) .CompareTableBody_data-plusus {
  background: #FFFCFE;
}
.CompareTableBody tr:last-child .CompareTableBody_data-plusus {
  border-bottom: 3px solid #F8E2EC;
}
.CompareTableBody_head {
  font-size: 16px;
  text-align: left;
  width: 143px;
  padding: 8px;
  vertical-align: middle;
}
@media screen and (max-width: 719px) {
  .CompareTableBody_head {
    font-size: 14px;
    padding: 4px;
  }
}
.CompareTableBody_data {
  font-size: 12px;
  width: 192px;
  padding: 24px 8px;
  vertical-align: middle;
  text-align: center;
  border-left: 1px solid #333;
}
.CompareTableBody_data-plusus {
  font-weight: bold;
  font-size: 14px;
  border-left: 3px solid #F8E2EC;
  border-right: 3px solid #F8E2EC;
}
.CompareTableBody_data-txt {
  text-align: left;
  word-wrap: break-word;
}
.CompareTableBody_data-notice {
  display: block;
  font-size: 12px;
}
.CompareTableIcon {
  width: 20px;
  height: 20px;
}

.Safety {
  background: #EEF2F6;
}

.Safety {
  padding: 80px 16px;
}
.SafetyContents {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  display: flex;
}
@media screen and (max-width: 896px) {
  .SafetyContents {
    flex-direction: column;
    align-items: center;
  }
}
.SafetyDescription_lead {
  margin-top: 24px;
  font-size: 18px;
  font-weight: 500;
}
.SafetyDescription_txt {
  margin-top: 8px;
}
@media screen and (max-width: 896px) {
  .SafetyDescription_img {
    margin-top: 16px;
  }
}
.SafetyCertification {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  border: dashed 1px #333;
  background: #fff;
  display: flex;
  padding: 16px;
}
@media screen and (max-width: 559px) {
  .SafetyCertification {
    flex-direction: column;
  }
}
.SafetyCertificationContetns {
  margin-right: 16px;
  width: 50%;
  text-align: center;
  font-size: 12px;
}
.SafetyCertificationContetns:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .SafetyCertificationContetns {
    width: 100%;
    margin-right: 0;
    margin-top: 16px;
  }
  .SafetyCertificationContetns:first-child {
    margin-top: 0;
  }
}
.SafetyCertificationContetns_ttl {
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  border-bottom: 1px solid #333;
  padding: 8px;
}
.SafetyCertificationContetns_img {
  margin-top: 16px;
  display: flex;
  justify-content: center;
}
.SafetyCertificationContetns_img-box {
  margin-right: 8px;
}
.SafetyCertificationContetns_img-box:last-child {
  margin-right: 0;
}
.SafetyCertificationContetns_txt {
  margin-top: 8px;
  text-align: left;
}

.PresentLead {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .PresentLead {
    font-size: 24px;
  }
}

.Present_notice {
  font-size: 12px;
  letter-spacing: 0.1em;
}

.Present {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  padding: 8px;
  border: 2px solid #333;
}
.PresentInner {
  border: 1px solid #333;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 559px) {
  .PresentInner {
    flex-direction: column;
  }
}
.PresentImg {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8px;
}
@media screen and (max-width: 559px) {
  .PresentImg {
    flex-direction: column;
  }
}
.PresentContents {
  background: #F5F5F5;
  text-align: center;
  padding: 24px 16px;
}
@media screen and (max-width: 559px) {
  .PresentContents {
    padding: 24px 8px;
  }
}
.PresentLead {
  position: relative;
  display: inline-block;
}
.PresentLead_callout {
  position: relative;
  font-size: 16px;
  position: absolute;
  left: -20px;
  top: -13px;
  transform: rotate(-15deg);
}
.PresentLead_callout:before, .PresentLead_callout:after {
  content: "";
  width: 1px;
  height: 80%;
  position: absolute;
  background: #333;
  bottom: 0;
}
.PresentLead_callout:before {
  left: -16px;
  transform: rotate(-20deg);
}
.PresentLead_callout:after {
  right: -16px;
  transform: rotate(20deg);
}
.PresentLead_callout:before {
  left: -5px;
}
.PresentLead_callout:after {
  right: -5px;
}
.PresentLead_sub {
  font-weight: bold;
}
.PresentDescription {
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 8px 0;
  margin-top: 16px;
}
.PresentName {
  font-size: 22px;
  font-weight: bold;
}
.PresentName-sub {
  display: block;
  font-size: 16px;
}
.Present_img {
  width: 24px;
  height: 24px;
}
.PresentHeading {
  margin-top: 16px;
  font-size: 50px;
  font-weight: 500;
  color: #fff;
  text-stroke: 1.5px #333;
  -webkit-text-stroke: 1.5px #333;
  line-height: 1;
}
@media screen and (max-width: 559px) {
  .PresentHeading {
    font-size: 42px;
  }
}
.Present_notice {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  margin-top: 8px;
  padding: 0;
  text-align: right;
}
@media screen and (max-width: 559px) {
  .Present_notice {
    text-align: left;
  }
}

.Cvmain {
  background: #FFF4F9;
}

.CvPriceBalloon-sub {
  font-size: 0.75em;
}
@media screen and (max-width: 559px) {
  .CvPriceBalloon-sub {
    font-size: 0.85em;
  }
}

.CvButton {
  font-size: 18px;
  padding: 16px 0;
  border: 1px solid #333;
  font-weight: 500;
  display: block;
  transition: all 0.3s;
  text-align: center;
}
.CvButton:hover {
  transition: all 0.3s;
}
@media screen and (max-width: 559px) {
  .CvButton {
    padding: 8px 0;
  }
}

.CvButton {
  background: #DE9198;
  color: #fff;
  box-shadow: 3px 3px #333;
}
.CvButton:hover {
  transform: translate(3px, 3px);
  background: #fff;
  color: #DE9198;
  box-shadow: none;
  border-color: #DE9198;
}

.CvPair {
  margin-right: 16px;
}
@media screen and (max-width: 896px) {
  .CvPair {
    margin-right: 0;
  }
}

.Cvmain {
  padding: 80px 16px;
}
.CvBox {
  border: dashed 1px #333;
  max-width: 800px;
  margin: auto;
  background: #fff;
  padding: 24px;
}
.CvContents {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
@media screen and (max-width: 896px) {
  .CvContents {
    flex-direction: column;
    align-items: center;
  }
}
.CvPair {
  display: flex;
}
.CvItem {
  text-align: center;
  margin-right: 8px;
}
.CvItem:last-child {
  margin-right: 0;
}
@media screen and (max-width: 896px) {
  .CvItem {
    margin-top: 8px;
  }
}
.CvItemBox {
  margin-right: 16px;
}
@media screen and (max-width: 896px) {
  .CvItemBox {
    margin-right: 0;
  }
}
.CvItem_img {
  width: 137px;
  height: 233px;
}
.CvItem_txt {
  font-size: 10px;
  letter-spacing: 0.1em;
}
.CvDescription {
  text-align: center;
  width: 439px;
}
@media screen and (max-width: 896px) {
  .CvDescription {
    margin-top: 16px;
  }
}
@media screen and (max-width: 559px) {
  .CvDescription {
    width: 100%;
  }
}
.CvCallout {
  position: relative;
  font-size: 18px;
  display: inline-block;
  font-weight: 500;
}
.CvCallout:before, .CvCallout:after {
  content: "";
  width: 1px;
  height: 80%;
  position: absolute;
  background: #333;
  bottom: 0;
}
.CvCallout:before {
  left: -16px;
  transform: rotate(-20deg);
}
.CvCallout:after {
  right: -16px;
  transform: rotate(20deg);
}
.CvCallout:before {
  left: -5px;
}
.CvCallout:after {
  right: -5px;
}
@media screen and (max-width: 559px) {
  .CvCallout {
    font-size: 14px;
  }
}
.CvPrice {
  display: flex;
  margin-top: 8px;
  justify-content: space-between;
  border-bottom: 1px solid #333;
  padding-bottom: 16px;
}
@media screen and (max-width: 559px) {
  .CvPrice {
    flex-direction: column;
  }
}
.CvPriceBox {
  width: 207px;
}
@media screen and (max-width: 559px) {
  .CvPriceBox {
    width: 100%;
    margin-top: 16px;
  }
  .CvPriceBox:first-child {
    margin-top: 0;
  }
}
.CvPricePeriod {
  text-align: center;
  padding: 8px;
  font-weight: bold;
  background: #FFF4F9;
  font-size: 18px;
}
.CvPriceTxt {
  position: relative;
  font-weight: 500;
  font-size: 32px;
  text-align: left;
  line-height: 1;
  margin-top: 8px;
}
@media screen and (max-width: 559px) {
  .CvPriceTxt {
    text-align: center;
  }
}
.CvPriceTxt_Normal {
  display: block;
  font-size: 21px;
  color: #808080;
  text-decoration: line-through;
}
.CvPriceBalloon {
  position: absolute;
  top: -19px;
  right: 20px;
  font-size: 20px;
  line-height: 1;
  text-align: center;
  color: #DE9198;
  background: #fff;
  border: 3px solid #DE9198;
  border-radius: 50%;
  padding: 6px 4px;
  letter-spacing: 0;
}
.CvPriceBalloon:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -7px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #DE9198;
  transform: rotate(45deg);
}
.CvPriceBalloon:after {
  content: "";
  position: absolute;
  bottom: 3px;
  left: -4px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #fff;
  transform: rotate(45deg);
}
.CvPriceBalloon-sub {
  display: block;
}
.CvPriceCenter {
  justify-content: center;
  border-bottom: none;
}
.CvNotice {
  font-size: 9px;
  margin-top: 8px;
}
.CvButton {
  margin-top: 16px;
}
.CvLink {
  display: block;
  font-size: 12px;
  font-weight: 500;
  text-decoration: underline;
  margin-top: 8px;
}
.CvLink:hover {
  text-decoration: none;
}

.Purchase {
  background: #F5F5F5;
}

.NekoposuHeading_lead-strong {
  font-size: 32px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .NekoposuHeading_lead-strong {
    font-size: 24px;
  }
}

.NekoposuHeading {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .NekoposuHeading {
    font-size: 16px;
  }
}

.Purchase {
  padding: 80px 16px;
}
.PurchaseContents {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.PurchaseBox {
  width: calc(50% - 8px);
  margin-bottom: 24px;
}
.PurchaseBox:nth-last-child(-n+2) {
  margin-bottom: 0;
}
@media screen and (max-width: 559px) {
  .PurchaseBox {
    width: 100%;
  }
  .PurchaseBox:nth-last-child(-n+2) {
    margin-bottom: 24px;
  }
  .PurchaseBox:last-child {
    margin-bottom: 0;
  }
}
.PurchaseHeading {
  font-size: 18px;
  text-align: center;
  border-bottom: 1px solid #333;
  padding-bottom: 8px;
}
.PurchaseDescription {
  margin-top: 24px;
}
.PurchaseDescription_ttl {
  font-size: 16px;
  font-weight: 500;
  padding-bottom: 8px;
  border-bottom: 1px dotted #333;
}
.PurchaseDescription_txt {
  margin-top: 8px;
}
@media screen and (max-width: 559px) {
  .PurchaseDescription_txt-img {
    width: 100%;
  }
}

.Nekoposu {
  border: dashed 1px #333;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  background: #fff;
  padding: 40px;
  text-align: center;
}
@media screen and (max-width: 559px) {
  .Nekoposu {
    padding: 8px;
  }
}
.NekoposuHeading {
  margin-top: 24px;
}
.NekoposuHeading_sub {
  display: block;
  font-size: 14px;
  font-weight: 500;
}
.NekoposuHeading_lead {
  font-size: 24px;
  border-bottom: 1px solid #333;
  position: relative;
  display: inline-block;
}
.NekoposuHeading_lead:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background: #333;
}
@media screen and (max-width: 559px) {
  .NekoposuHeading_lead {
    display: block;
  }
}
.NekoposuHeading_lead-strong {
  color: #DE9198;
}
.NekoposuHeading_main {
  display: inline-flex;
  align-items: center;
  margin-top: 4px;
}
@media screen and (max-width: 559px) {
  .NekoposuHeading_main {
    flex-direction: column;
  }
}
.Nekoposu_notice {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
  margin-top: 8px;
}

.Story {
  background: #FFF4F9;
}

.UservoiceHeading {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 559px) {
  .UservoiceHeading {
    font-size: 16px;
  }
}

.Uservoice_notice {
  font-size: 12px;
  letter-spacing: 0.1em;
}

.Story {
  padding: 80px 16px;
}
.StoryModal {
  margin-top: 40px;
}

.Uservoice {
  margin-top: 80px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .Uservoice {
    margin-top: 56px;
  }
}
.UservoiceHeading {
  display: inline-block;
  background: #fff;
  border: 2px solid #333;
  padding: 16px 24px;
  position: relative;
}
.UservoiceHeading:before, .UservoiceHeading:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
}
.UservoiceHeading:before {
  left: 50%;
  bottom: -16px;
  border-left: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-top: 8px solid #333;
  border-right: 8px solid #333;
}
.UservoiceHeading:after {
  left: calc(50% - 2px);
  bottom: -11px;
  border-left: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-top: 8px solid #fff;
  border-right: 8px solid #fff;
}
@media screen and (max-width: 559px) {
  .UservoiceHeading {
    display: block;
  }
}
.UservoiceContents {
  margin-top: 40px;
  display: flex;
}
@media screen and (max-width: 559px) {
  .UservoiceContents {
    flex-direction: column;
  }
}
.UservoiceBox {
  border: dashed 1px #333;
  padding: 16px;
  background: #fff;
  width: 309px;
  margin-right: 16px;
}
.UservoiceBox:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .UservoiceBox {
    width: 100%;
    margin-right: 0;
    margin-top: 16px;
  }
  .UservoiceBox:first-child {
    margin-top: 0;
  }
}
.UservoiceBoxHead {
  border-bottom: 1px solid #333;
  padding-bottom: 16px;
}
.UservoiceBoxHead_ttl {
  font-size: 18px;
  color: #DE9198;
}
.UservoiceBoxHead_ttl-sub {
  margin-top: 8px;
}
.UservoiceBox_txt {
  margin-top: 16px;
}
.Uservoice_notice {
  text-align: right;
  margin-top: 8px;
}
@media screen and (max-width: 559px) {
  .Uservoice_notice {
    text-align: left;
  }
}

.Faq {
  margin-top: 40px;
}
.FaqQuetion {
  position: relative;
  font-size: 18px;
  padding: 16px 32px;
  border-bottom: 1px dashed #333;
  cursor: pointer;
  transition: all 0.3s;
}
.FaqQuetion:hover {
  background: #EEF2F6;
}
.FaqQuetion:before {
  content: "Q";
  position: absolute;
  left: 8px;
  top: 18px;
  font-size: 22px;
  font-weight: 500;
  color: #144F84;
  line-height: 1;
}
.FaqQuetion:after {
  content: "";
  position: absolute;
  right: 12px;
  top: 18px;
  width: 12px;
  height: 12px;
  border-left: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(-45deg);
  transition: all 0.6s;
}
@media screen and (max-width: 559px) {
  .FaqQuetion {
    font-size: 16px;
  }
}
.FaqAnswer {
  position: relative;
  padding: 32px;
  display: none;
}
.FaqAnswer:before {
  content: "A";
  position: absolute;
  left: 8px;
  top: 32px;
  font-size: 22px;
  font-weight: 500;
  color: #DE9198;
  line-height: 1;
  transform: translateY(-32px);
  transition: all 0.6s;
}
.FaqOpen:after {
  top: 25px;
  transform: rotate(135deg);
  transition: all 0.6s;
}
.FaqOpen + .FaqAnswer:before {
  transform: translateY(0px);
  transition: all 0.6s;
}
.FaqPackage {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
@media screen and (max-width: 559px) {
  .FaqPackage {
    flex-direction: column;
  }
}
.FaqPackageDescription {
  margin-right: 8px;
  text-align: center;
}
.FaqPackageDescription:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .FaqPackageDescription {
    margin-right: 0;
    margin-top: 8px;
  }
  .FaqPackageDescription:first-child {
    margin-top: 0;
  }
}
.FaqPackageDescription_badge {
  text-align: center;
  padding: 8px;
  font-weight: bold;
  background: #FFF4F9;
  font-size: 12px;
  padding: 4px;
}
.FaqPackageDescription_image {
  margin-top: 8px;
}

.Contact {
  padding: 80px 16px;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 559px) {
  .Contact {
    padding: 56px 16px;
  }
}

.ContactLead {
  margin-top: 24px;
  text-align: center;
}
.ContactContents {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}
@media screen and (max-width: 559px) {
  .ContactContents {
    flex-direction: column;
  }
}
.ContactBox {
  margin-right: 16px;
  text-align: center;
  width: 343px;
}
.ContactBox:last-child {
  margin-right: 0;
}
@media screen and (max-width: 559px) {
  .ContactBox {
    width: 100%;
    margin-right: 0;
    margin-top: 16px;
  }
  .ContactBox:first-child {
    margin-top: 0;
  }
}
.ContactHeading {
  text-align: center;
  padding: 8px;
  font-weight: bold;
  background: #FFF4F9;
  font-size: 18px;
}
.ContactTxt {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.15em;
}
.ContactTxt-notice {
  display: block;
  font-size: 12px;
  font-weight: normal;
}

.Footer {
  padding: 16px 16px 8px;
  background: #DE9198;
  color: #fff;
  font-size: 12px;
}
.FooterContents {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.FooterList {
  padding: 0 8px;
  margin-bottom: 8px;
  position: relative;
}
.FooterList:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: #fff;
}
.FooterList:last-child:after {
  display: none;
}
.FooterLink:hover {
  text-decoration: underline;
}
.Footer_Copyright {
  color: #fff;
  font-size: 12px;
  text-align: center;
}