@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100;400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.1.1/dist/css/yakuhanrp.css");
.roboto-thin {
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: normal;
}

_:lang(x)::-internal-media-controls-overlay-cast-button, img {
  image-rendering: -webkit-optimize-contrast;
}

/*--------------------------------------------------------------
/pub/template/
--------------------------------------------------------------*/
/* *****************************************
/*+  common  +******************************
/***************************************** */
body {
  margin: 0;
  padding: 0;
}
@media (min-width: 513px) {
  body {
    background: #7678cc url("../img/sp/pc_bg.jpg") no-repeat center;
    background-size: cover;
    background-attachment: fixed;
  }
}

#template {
  max-width: 512px;
  overflow: hidden;
  margin: 0 auto;
  text-align: center;
  font-family: YakuHanRP, "Noto Sans JP", -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","游ゴシック Medium",YuGothic,YuGothicM,メイリオ,Meiryo,sans-serif;
  background-color: #FFF;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.375vw;
  color: #404040;
  font-weight: 400;
}
@media (min-width: 513px) {
  #template {
    box-shadow: 0px 0px 54px 0px rgba(0, 0, 0, 0.3);
  }
}
@media (min-width: 513px) {
  #template {
    font-size: 22.4px;
  }
}
#template a {
  color: #573288;
  text-decoration: underline;
}
#template a:link, #template a:visited {
  color: #573288;
  text-decoration: underline;
}
#template a:hover, #template a:active {
  color: #573288;
  text-decoration: none;
}
@media (min-width: 513px) {
  #template a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
  #template a {
    transition: .3s all;
  }
  #template a:hover {
    opacity: .7;
  }
}
#template * {
  margin: 0;
  padding: 0;
}
#template div, #template h1, #template h2, #template h3, #template h4, #template h5, #template h6, #template form, #template fieldset, #template p, #template th, #template td, #template dl, #template dt, #template dd {
  line-height: 1.65;
}
#template img, #template input[type="image"] {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: bottom;
}
#template video {
  width: 100%;
  height: auto;
  display: block;
}
#template ol, #template ul {
  list-style: none;
}
#template sup {
  font-size: 60%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
  letter-spacing: .05em;
}
#template .clearfix:after {
  content: "";
  display: block;
  clear: both;
}
#template *, #template *:before, #template *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#template .fade {
  transition: 0.5s;
}
#template .fade:hover {
  opacity: .75;
}
#template .bold {
  font-weight: 700;
}
#template .notes {
  margin: 0 6.25%;
}
#template .note {
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.8125vw;
  text-align: left;
  letter-spacing: 0.05em;
  color: #404040;
}
@media (min-width: 513px) {
  #template .note {
    font-size: 14.4px;
  }
}
#template .note li {
  letter-spacing: normal;
  text-indent: -1em;
  padding-left: 1em;
}
#template dl.note {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.4;
  text-align: left;
}
#template dl.note dt {
  width: 1em;
}
#template dl.note dd {
  width: calc(100% - 1em);
}
#template dl.note.numbering dt {
  width: 2em;
}
#template dl.note.numbering dd {
  width: calc(100% - 2em);
}
#template .tr {
  text-align: right;
}
#template .tl {
  text-align: left;
}
#template .tc {
  text-align: center;
}
#template .under-line {
  background: linear-gradient(0deg, #f9ba00 15%, white 15%);
}
#template #footer {
  padding: 1em 0;
}
#template .fadeIn {
  opacity: 0;
  transition: .3s;
}
#template .fadeIn.lazyloaded {
  opacity: 1;
}

.effected, .effected::before, .effected::after {
  opacity: 1 !important;
  transform: translate(0, 0) scale(1, 1) !important;
}

/* *****************************************
/*+  content  +********************************
/***************************************** */
/*+ common object + ------------------------------ */
#template .colored_btn, #template a.colored_btn {
  position: relative;
  color: #FFF;
  background-color: #573288;
  border-radius: 999px;
  display: inline-block;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.0625vw;
  text-decoration: none;
  font-weight: bold;
  padding: .6em 3em;
}
@media (min-width: 513px) {
  #template .colored_btn, #template a.colored_btn {
    font-size: 20.8px;
  }
}
#template .colored_btn.icon-plus::before, #template .colored_btn.icon-plus::after, #template a.colored_btn.icon-plus::before, #template a.colored_btn.icon-plus::after {
  content: "";
  display: block;
  position: absolute;
  width: .85em;
  height: 2px;
  background-color: #FFF;
  right: 1em;
  top: calc(50% - 1px);
}
#template .colored_btn.icon-plus::after, #template a.colored_btn.icon-plus::after {
  transform: rotate(90deg);
  transition: all .3s;
}
#template .colored_btn.icon-plus.active::after, #template a.colored_btn.icon-plus.active::after {
  transform: rotate(180deg);
  opacity: 0;
}
#template .colored_btn.icon-arrow::after, #template a.colored_btn.icon-arrow::after {
  content: "";
  display: block;
  position: absolute;
  width: .6em;
  height: .6em;
  border-bottom: #FFF solid 2px;
  border-right: #FFF solid 2px;
  right: 1em;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}
#template .ul-yellow {
  background-image: linear-gradient(0deg, #f8e8c0 30%, rgba(248, 232, 192, 0) 30%);
}

/*+ block + ------------------------------ */
#content > section, #content .area {
  position: relative;
  z-index: 0;
}
#content .mv {
  position: relative;
}
#content .cv {
  position: relative;
  background-color: #ddc8ec;
  padding: 0 0 calc( 60 / 640 * 100%);
}
#content .cv__service {
  margin-bottom: 1em;
}
#content .cv .note {
  margin: 1em 1em 0;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.5vw;
  letter-spacing: normal;
  font-weight: 600;
}
@media (min-width: 513px) {
  #content .cv .note {
    font-size: 12.8px;
  }
}
#content .cv .note.numbering {
  letter-spacing: normal;
  font-weight: 400;
}
#content .cv .todokede {
  text-align: left;
  background-color: #f0f0f9;
  margin: 1em 1em 0;
  padding: 1em;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.8125vw;
  letter-spacing: normal;
}
@media (min-width: 513px) {
  #content .cv .todokede {
    font-size: 14.4px;
  }
}
#content .cv .todokede__ttl {
  color: #573288;
  font-weight: bold;
}
#content .cv .todokede__txt {
  line-height: 1.5;
}
#content .cv__guide {
  margin: 1em 1em 0;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 3.75vw;
  letter-spacing: .05em;
}
@media (min-width: 513px) {
  #content .cv__guide {
    font-size: 19.2px;
  }
}
#content .cv__guide--item {
  margin-bottom: .5em;
}
#content .cv__guide--item:last-child {
  margin-bottom: 0;
}
#content .cv__guide a {
  font-weight: bold;
  position: relative;
  color: #573288;
  text-decoration: underline;
  display: block;
}
#content .cv01 {
  padding-top: calc( 40 / 640 * 100%);
}
#content .cv02 .cv__inner--ttl {
  margin-bottom: calc( -310 / 640 * 100%);
}
#content .cv02 .cv-monitor {
  display: inline-block;
}
#content .cv03 {
  background-color: #d0c8ec;
}
#content .cv03 .cv__inner--ttl {
  margin-bottom: calc( -100 / 640 * 100%);
}
#content .cv03 .cv-monitor {
  display: inline-block;
}
#content .cv04 {
  background-color: #cac8ec;
}
#content .cv04 .cv__inner--ttl {
  margin-bottom: calc( -80 / 640 * 100%);
}
#content .cv04 .cv-monitor {
  display: inline-block;
}
#content .cv-monitor {
  overflow: hidden;
  border-radius: clamp(6px, 1.875vw, 9.6px);
  background: #4943a4 url("../img/sp/cv_base_bg.jpg") no-repeat center top/100% auto;
  box-shadow: 0.125em 0.125em 0.35em 0px rgba(0, 0, 0, 0.25);
  margin: 0 calc( 15 / 640 * 100%);
  padding-bottom: 1em;
}
#content .cv-monitor__wrapper {
  overflow: hidden;
  border-radius: clamp(6px, 1.875vw, 9.6px);
  background-color: #FFF;
  margin: 0 calc( 20 / 640 * 100%) 0;
  padding-bottom: 1.5em;
}
#content .cv-monitor .cv_btn input {
  position: relative;
  cursor: pointer;
  display: block;
  width: calc( 518 / 570 * 100%);
  height: 0;
  margin: 0 auto 0.4em;
  padding-top: calc( 132 / 570 * 100%);
  border: none;
  text-indent: -9999px;
  background: url(../img/sp/cv_btn.png) no-repeat 0 0/100% auto;
  transition: all .3s;
}
#content .cv-monitor .cv_btn input:hover {
  opacity: .9;
  transform: translateY(5px);
}
#content .cv-monitor .cv_btn_member input {
  position: relative;
  cursor: pointer;
  display: block;
  width: calc( 430 / 570 * 100% + 1px);
  height: 0;
  margin: 0 auto 1em;
  padding: calc( 80 / 570 * 100%) 0 0;
  border: #404040 solid clamp(1.5px, 0.46875vw, 2.4px);
  border-radius: 999px;
  text-indent: -9999px;
  background: url("../img/sp/cv_btn_member.png") no-repeat 0 0/100% auto;
  transition: all .3s;
}
#content .cv-monitor .cv_btn_member input:hover {
  opacity: .7;
  transform: translateY(5px);
}
#content .cv-normal {
  position: relative;
  background-color: #ddc8ec;
  margin: calc( 40 / 640 * 100%) calc( 15 / 640 * 100%);
  padding: 0;
  overflow: hidden;
  background-color: #FFF;
  border-radius: clamp(6px, 1.875vw, 9.6px);
  outline: clamp(2px, 0.78125vw, 4px) solid #874ea9;
  outline-offset: clamp(-2px, -0.78125vw, -4px);
  box-shadow: 0.125em 0.125em 0.35em 0px rgba(0, 0, 0, 0.25);
}
#content .cv-normal__head {
  background-color: #874ea9;
}
#content .cv-normal__list {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
#content .cv-normal__list p {
  width: calc( 256 / 570 * 100%);
  margin: 0 0 .5em;
  transition: all .3s;
}
#content .cv-normal__list p:hover {
  opacity: .9;
  transform: translateY(5px);
}
#content .cv-shop {
  position: relative;
  background-color: #ddc8ec;
  margin: calc( 60 / 640 * 100%) calc( 15 / 640 * 100%) 0;
  padding: 0;
  overflow: hidden;
  background-color: #FFF;
  border-radius: clamp(6px, 1.875vw, 9.6px);
  outline: clamp(2px, 0.78125vw, 4px) solid #42266e;
  outline-offset: clamp(-2px, -0.78125vw, -4px);
  box-shadow: 0.125em 0.125em 0.35em 0px rgba(0, 0, 0, 0.25);
}
#content .cv-shop__btn {
  width: calc( 526 / 610 * 100%);
  margin: 0 auto;
  transition: all .3s;
}
#content .cv-shop__btn:hover {
  opacity: .9;
  transform: translateY(5px);
}
#content .cv-shop__telbtn {
  margin-top: 1.5em;
}
#content .cv-enkin {
  overflow: hidden;
  border-radius: clamp(6px, 1.875vw, 9.6px);
  outline: clamp(2px, 0.78125vw, 4px) solid #563285;
  outline-offset: clamp(-2px, -0.78125vw, -4px);
  box-shadow: 0.125em 0.125em 0.35em 0px rgba(0, 0, 0, 0.25);
  margin: 0 calc( 15 / 640 * 100%);
  padding-bottom: 1em;
  background-color: #FFF;
}
#content .cv-enkin__container {
  background-color: #e9e2f5;
}
#content .cv-enkin .cv_btn input {
  position: relative;
  cursor: pointer;
  display: block;
  width: calc( 568 / 610 * 100%);
  height: 0;
  margin: 0 auto 0.4em;
  padding-top: calc( 132 / 610 * 100%);
  border: none;
  text-indent: -9999px;
  background: url("../img/sp/cv_enkin_btn.png") no-repeat 0 0/100% auto;
  transition: all .3s;
}
#content .cv-enkin .cv_btn input:hover {
  opacity: .9;
  transform: translateY(5px);
}
#content .cv-enkin .cv_btn_member input {
  position: relative;
  cursor: pointer;
  display: block;
  width: calc( 430 / 610 * 100% + 1px);
  height: 0;
  margin: 0 auto 1em;
  padding: calc( 80 / 610 * 100%) 0 0;
  border: #404040 solid clamp(1.5px, 0.46875vw, 2.4px);
  border-radius: 999px;
  text-indent: -9999px;
  background: url("../img/sp/cv_btn_member.png") no-repeat 0 0/100% auto;
  transition: all .3s;
}
#content .cv-enkin .cv_btn_member input:hover {
  opacity: .7;
  transform: translateY(5px);
}
#content .function__slider {
  position: relative;
  margin: 0 0;
  padding: 0 calc( 25 / 640 * 100%) calc( 94 / 640 * 100%);
  background: url("../img/sp/function_02-graph02_bg.jpg") no-repeat center top/100% auto;
}
#content .function .slick-slide {
  padding: 0 calc( 20px * 0.8);
}
#content .function__slider-item {
  padding: 0 1.25em;
}
#content .function__slider-item img {
  border: solid #b29667 clamp(2px, 0.46875vw, 2.4px);
  border-radius: clamp(4px, 1.25vw, 6.4px);
}
#content .function .slick-arrow {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: calc( 62 / 640 * 100%);
  height: 0;
  padding: calc( 62 / 640 * 100%) 0 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  z-index: 99;
}
#content .function .slick-arrow.slick-disabled {
  visibility: hidden;
}
#content .function .slick-prev {
  left: 1.5%;
  background: url("../img/sp/function_carousel_prev.png") no-repeat center center/100% auto;
}
#content .function .slick-next {
  right: 1.5%;
  background: url("../img/sp/function_carousel_next.png") no-repeat center center/100% auto;
}
#content .voice {
  background-color: #e6e7e8;
  padding: 0 0 calc( 60 / 640 * 100%);
}
#content .voice__note {
  margin: 0 calc( 40 / 640 * 100%);
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.5vw;
  letter-spacing: normal;
}
@media (min-width: 513px) {
  #content .voice__note {
    font-size: 12.8px;
  }
}
#content .faq {
  padding: 0 calc( 30 / 640 * 100%) calc( 60 / 640 * 100%);
}
#content .faq .faqBlock {
  text-align: left;
  margin: 0 0 calc( 40 / 640 * 100%);
}
#content .faq .faqBlock:last-of-type {
  margin-bottom: 0;
}
#content .faq .faqBlock .question {
  display: flex;
  background-color: #573288;
  color: #FFF;
  padding: .5em .75em;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.6875vw;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 128%;
}
@media (min-width: 513px) {
  #content .faq .faqBlock .question {
    font-size: 24px;
  }
}
#content .faq .faqBlock .question::before {
  color: #FFF;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.6875vw;
  line-height: 128%;
  content: "Q";
  margin-right: .25em;
}
@media (min-width: 513px) {
  #content .faq .faqBlock .question::before {
    font-size: 24px;
  }
}
#content .faq .faqBlock .answer {
  display: flex;
  background-color: #edebf7;
  color: #404040;
  margin-top: .25em;
  padding: .5em .75em;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.6875vw;
  letter-spacing: .1em;
  line-height: 1.4;
}
@media (min-width: 513px) {
  #content .faq .faqBlock .answer {
    font-size: 24px;
  }
}
#content .faq .faqBlock .answer::before {
  color: #573288;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.6875vw;
  line-height: 1.4;
  font-weight: 500;
  content: "A";
  margin-right: .25em;
}
@media (min-width: 513px) {
  #content .faq .faqBlock .answer::before {
    font-size: 24px;
  }
}
#content .faq .note {
  margin: 0 calc( 40 / 640 * 100%);
}
#content .commitment {
  background: #f7f6fc;
  padding-bottom: calc( 100 / 640 * 100%);
}
#content .commitment .inner {
  position: relative;
}
#content .commitment__ttl {
  margin-bottom: 2.5em;
}
#content .commitment__block {
  text-align: left;
  margin: 0 calc( 50 / 640 * 100%) calc( 40 / 640 * 100%);
  padding: 0 0 calc( 40 / 640 * 100%);
  border-bottom: #d6d8d7 solid 1px;
}
#content .commitment__block:last-of-type {
  margin-bottom: 0;
}
#content .commitment__head {
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.84375vw;
  letter-spacing: .03em;
  font-weight: 500;
  color: #573288;
  padding: 0 .5em 0 0;
  position: relative;
  cursor: pointer;
  display: flex;
  align-content: center;
}
@media (min-width: 513px) {
  #content .commitment__head {
    font-size: 24.8px;
  }
}
#content .commitment__head .icon_num {
  align-self: center;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 7.5vw;
  line-height: 1;
  letter-spacing: .02em;
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: normal;
  padding-right: .4em;
  color: #666;
}
@media (min-width: 513px) {
  #content .commitment__head .icon_num {
    font-size: 38.4px;
  }
}
#content .commitment__head::before, #content .commitment__head::after {
  content: "";
  display: block;
  position: absolute;
  width: 0.6em;
  height: 1px;
  background-color: #FFF;
  right: 0.2em;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 3;
}
#content .commitment__head::after {
  transform: rotate(90deg);
  transition: all .3s;
}
#content .commitment__head.active::after {
  transform: rotate(180deg);
}
#content .commitment__head-txt {
  align-self: center;
  margin: -.2em 0;
  line-height: 1.4;
}
#content .commitment__head-txt::after {
  content: "";
  display: block;
  position: absolute;
  width: 1em;
  height: 1em;
  background-color: #573288;
  border-radius: 50%;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 2;
}
#content .commitment__content {
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 4.375vw;
}
@media (min-width: 513px) {
  #content .commitment__content {
    font-size: 22.4px;
  }
}
#content .commitment__content-inner {
  margin: 1em 0 0;
}
#content .commitment__content-inner > p, #content .commitment__content-inner > div {
  margin-bottom: 1em;
}
#content .commitment__content-inner > p:last-child, #content .commitment__content-inner > div:last-child {
  margin-bottom: 0;
}
#content .commitment__content-inner .point {
  color: #573288;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 3.75vw;
}
@media (min-width: 513px) {
  #content .commitment__content-inner .point {
    font-size: 19.2px;
  }
}
#content .commitment__content-inner .point__list li {
  position: relative;
  margin-bottom: 0.5em;
  padding-left: .8em;
}
#content .commitment__content-inner .point__list li::before {
  content: "";
  position: absolute;
  display: block;
  width: 3px;
  height: 3px;
  background-color: #573288;
  left: 0;
  top: 0.7em;
  border-radius: 999px;
}
#content .commitment__linkbtn span {
  display: block;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 3.4375vw;
}
@media (min-width: 513px) {
  #content .commitment__linkbtn span {
    font-size: 17.6px;
  }
}
#content .service {
  background-color: #f1f1f1;
  margin: 0;
  padding: 0;
}
#content .service__note {
  margin: 0 calc( 30 / 640 * 100%) 0;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.5vw;
  letter-spacing: normal;
}
@media (min-width: 513px) {
  #content .service__note {
    font-size: 12.8px;
  }
}
#content .bnr_fixed {
  transition: all .3s;
  position: fixed;
  z-index: 9999;
  bottom: 0;
  right: 0;
  left: 0;
  width: calc( 590 / 640 * 100%);
  height: auto;
  margin: 0 auto calc(10 / 640 * 100% );
  visibility: hidden;
  opacity: 0;
  transform: translateY(2rem);
}
@media print, screen and (min-width: 513px) {
  #content .bnr_fixed {
    width: calc(590px * 512 / 640);
  }
}
#content .bnr_fixed.is-active {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
#content .bnr_fixed .bnr_close {
  cursor: pointer;
  position: absolute;
  background-color: #FFF;
  border: #666 solid 1px;
  border-radius: 50%;
  width: 1.5em;
  height: 1.5em;
  top: -.5em;
  right: 0;
}
#content .bnr_fixed .bnr_close::before, #content .bnr_fixed .bnr_close::after {
  content: "";
  display: block;
  position: absolute;
  width: .7em;
  height: 1px;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #666;
}
#content .bnr_fixed .bnr_close::before {
  transform: rotate(45deg);
}
#content .bnr_fixed .bnr_close::after {
  transform: rotate(-45deg);
}

#template .guide {
  margin: 0;
  padding: 2em 0 0;
  letter-spacing: normal;
}
#template .guide .guidance {
  width: 49.21875%;
  margin: 0 auto 6.25%;
}
#template .guide #tokushou, #template .guide .company-outline, #template .guide .policy {
  margin-bottom: 1em;
}
#template .guide .note {
  text-align: left;
  margin: 0 4.6875%;
}
#template .guide .note h3 {
  margin-top: 1em;
}
#template .guide .note p {
  margin-bottom: 1em;
}
#template .guide .returnTop {
  text-align: right;
  margin: 1.5em 3.125%;
}
#template .guide a {
  color: #573288;
  font-weight: 500;
}
#template .spec {
  margin: 0 1em;
  text-align: left;
}
#template .spec__block {
  background-color: #eae2f6;
  margin-bottom: 2em;
}
#template .spec__ttl {
  padding: .5em;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 3.75vw;
  letter-spacing: normal;
  line-height: 1.3;
  color: #FFF;
  background-color: #573288;
  text-align: center;
}
@media (min-width: 513px) {
  #template .spec__ttl {
    font-size: 19.2px;
  }
}
#template .spec__txtwrapper {
  padding: .75em .5em;
}
#template .spec__sttl {
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.96875vw;
  letter-spacing: normal;
  font-weight: 600;
  margin: 0;
}
@media (min-width: 513px) {
  #template .spec__sttl {
    font-size: 15.2px;
  }
}
#template .spec__txt {
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 2.96875vw;
  letter-spacing: normal;
  margin: 0 0 1em;
}
@media (min-width: 513px) {
  #template .spec__txt {
    font-size: 15.2px;
  }
}
#template .spec__enkin {
  background-color: #e9e8f5;
}
#template .spec__enkin .spec__ttl {
  background-color: #887ec6;
}
#template .returnTop {
  text-align: right;
  margin: 1.5em 1em 0;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: .16em;
  line-height: 1.65;
  font-size: 3.75vw;
  letter-spacing: normal;
}
@media (min-width: 513px) {
  #template .returnTop {
    font-size: 19.2px;
  }
}
#template .returnTop a {
  color: #573288;
  font-weight: 500;
}
