section.shinkankaku h3 img {
  margin-bottom: 20px;
}

section.shinkankaku p {
  font-size: 0.75rem;
  line-height: 1.4375rem;
}

section.nayami .head {
  display: flex;
  flex-wrap: wrap;
}

section.nayami .head .text {
  margin-left: 0;
  margin-top: 0;
}
section.nayami .head .text P {
  font-size: 0.84375rem;
  line-height: 1.5rem;
}

section.nayami .bg_container {
  background-image: none;
}
section.nayami .bg_container .nayami_img {
  margin-top: 20px;
}

section.nayami .nayami_img p {
  margin-top: 20px;
  font-size: 13px;
  line-height: 23px;
  letter-spacing: 0;
  text-align: center;
}

section.gp .content {
  margin-top: 20px;
}

section.gp .content h3 {
  margin-top: 20px;
  font-size: 17.5px;
  line-height: 30px;
  letter-spacing: 0;
  color: #000000;
  text-align: center;
}

section.kanshu .img {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

section.kanshu .profile .profile_box {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
}

section.kanshu .profile .profile_box div.head span {
  border: 1px solid #333333;
  border-radius: 20px;
  color: #333333;
  display: inline-block;
  padding: 0 15px;
  font-size: 0.6875rem;
  line-height: 1.5625rem;
}

section.kanshu .profile .profile_box .content {
  padding-left: 0;
  margin-top: 10px;
}
section.kanshu .profile .profile_box .content p {
  font-size: 0.625rem;
  line-height: 1.0625rem;
}

section.kanshu .profile .profile_1col {
  margin-top: 20px;
  font-size: 13px;
  line-height: 22px;
  letter-spacing: 0;
}

div.section_head .headtext {
  padding: 0;
}

div.section_head .headtext h2 {
  font-size: 27.5px;
  line-height: 1;
  letter-spacing: 0.1em;
}

div.section_head .sub_text {
  position: relative;
  right: auto;
  top: auto;
  transform: none;
  text-align: center;
}

div.section_head::after {
  background-image: url(../images/sp/h_bg@2x.png);
}

div.section_head .sub_text p {
  font-size: 8px;
  line-height: 19px;
}

div.section_head {
  padding-top: 20px;
  padding-bottom: 30px;
}

section.mashine_content {
  padding-top: 0;
}

div.section_head + div {
  margin-top: -97px;
  padding-top: 60px;
}

section.machine .mashine_content h3 {
  margin-top: 40px;
  text-align: center;
  font-weight: bold;
  font-size: 0.9375rem;
  line-height: 1.5rem;
  color: white;
}

section.machine .mashine_content {
  background-image: url(../images/sp/merit_bg.png);
  background-size: cover;
  padding-bottom: 40px;
  background-position: center left;
  background-repeat: no-repeat;
}
section.machine .mashine_content .merit_img {
  margin-top: 10px;
}
section.machine .mashine_content .merit_img img {
  margin-left: auto;
  max-width: 89px;
}

section.machine .mashine_content p {
  margin-top: 20px;
  max-width: none;
  margin-left: auto;
  color: white;
  font-size: 0.78125rem;
  line-height: 1.25rem;
  letter-spacing: 0.05em;
}

section.sarani .sarani_head h2 {
  text-align: center;
  margin-top: 20px;
  font-size: 1.6875rem;
  line-height: 2.1875rem;
  letter-spacing: 0.05;
  font-weight: bold;
  color: #ef7c8e;
}

section.sarani .sarani_head h3 {
  margin-top: 20px;
  font-size: 0.9375rem;
  line-height: 1.375rem;
  text-align: center;
}

section.sarani .sarani_head p {
  margin-top: 20px;
  font-size: 0.75rem;
  line-height: 1.4375rem;
}

section.sarani .sarani_head {
  min-height: auto;
}

section.sarani .bg_container {
  background-image: none;
}

section.sarani .sarani2 {
  margin-top: 10px;
}

section.sarani .sarani3 h4 {
  font-size: 0.875rem;
  line-height: 1.125rem;
  color: #ef7c8e;
}

section.sarani .sarani3 ul {
  display: flex;
  max-width: none;
  margin-top: 20px;
}
section.sarani .sarani3 ul li {
  font-size: 0.6875rem;
  line-height: 1.0625rem;
  width: auto;
  padding: 3px 7px;
  border-radius: 5px;
  margin: 3px;
}

section.sarani .cta_box p {
  font-size: 0.75rem;
  line-height: 1.125rem;
}

section.flow h2 {
  margin-top: 20px;
  font-size: 1.5rem;
  line-height: 2.34375rem;
}

section.flow p {
  margin-top: 10px;
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.4;
}

section.flow .flow_boxes .flow_box .flow_content .num {
  max-width: 26px;
}

section.flow .flow_boxes .flow_box .bg_img {
  min-height: 210px;
}

section.flow .flow_boxes .flow_box .flow_content h3 {
  margin-top: 20px;
  font-size: 1rem;
  line-height: 1.625rem;
}

section.flow p {
  margin-top: 5px;
  font-size: 0.75rem;
  line-height: 1.25rem;
}
section.flow p span {
  padding: 0px 10px 0;
}

section.flow .flow_boxes .flow_box .flow_content h3 span {
  padding: 0px 5px 0;
}

section.flow .flow_boxes .flow_box .flow_content p span {
  padding: 0px 5px 0;
}

section.flow .flow_boxes .flow_box .flow_content {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

section.flow .flow_boxes .arrow {
  margin-top: 20px;
}
section.flow .flow_boxes .arrow img {
  max-width: 13px;
}

section.flow .flow_boxes .flow_box {
  margin-top: 20px;
}

section.flow {
  margin-top: 0;
  padding-top: 0;
  background-image: url(../images/flowbg.png);
  background-size: 100% auto;
  background-repeat: repeat-y;
}
section.flow .mochimono_box img {
  max-width: 320px;
  margin: 0 auto;
}

section.flow .flow_boxes .desc p {
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.71875rem;
}

section.flow .flow_boxes .arrow .checkout {
  max-width: 130px;
}

section.voice .voice_kv .kv_content h3 span {
  font-size: 1.09375rem;
  line-height: 1;
  padding: 8px 10px;
}

section.voice .voice_kv {
  margin-top: -12px;
}

div.section_head.section_head_2::after {
  background-image: url(../images/sp/h_bg2@2x.png);
}

section.voice .voice_kv .kv_content {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

section.voice .voice_content {
  margin-top: 20px;
}

table.price_tabel_sp {
  border-collapse: collapse;
  table-layout: fixed;
}
table.price_tabel_sp tbody tr {
  border-bottom: 1px solid #ef7c8e;
}
table.price_tabel_sp tbody tr th {
  width: 100px;
  background-color: #ef7c8e;
  font-size: 0.6875rem;
  line-height: 0.875rem;
  color: white;
  padding: 5px 0px;
  border-bottom: 1px solid #fff;
}
table.price_tabel_sp tbody tr th span.small {
  font-size: 0.625rem;
}
table.price_tabel_sp tbody tr td {
  padding: 5px;
  text-align: center;
  font-size: 0.71875rem;
  line-height: 1.4;
  font-weight: 500;
}
table.price_tabel_sp tbody tr td span.small {
  font-size: 0.6875rem;
  display: block;
  font-weight: 500;
}
table.price_tabel_sp tbody tr td span.big {
  font-size: 1.1875rem;
  font-weight: 500;
}
table.price_tabel_sp tbody tr td span.price {
  margin-top: 0;
  display: block;
  font-weight: 500;
  font-size: 2.1875rem;
}
table.price_tabel_sp tbody tr td span.price span.yen {
  font-size: 1.40625rem;
}
table.price_tabel_sp tbody tr td:nth-child(3) {
  border-left: 1px dashed #ef7c8e;
}
table.price_tabel_sp tbody tr td .price_contents {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
table.price_tabel_sp tbody tr td.text_left {
  text-align: left;
  font-weight: normal;
}

section.price_member .price2 .prices .pirce {
  display: flex;
  justify-content: center;
  align-items: center;
  border-left: 1px dotted #ef7c8e;
  padding: 10px 0;
  width: 50%;
}

section.price_member .price2 .prices .pirce .price_text .tax {
  display: none;
}

section.price_member .price2 .prices .pirce .price_text {
  padding-left: 5px;
}

section.price_member .price2 .prices .pirce .head {
  font-size: 0.9375rem;
  line-height: 1.6;
}

section.price_member .price2 .prices .pirce .price_text {
  font-size: 1.875rem;
}

section.price_member .price2 .prices .pirce .zei {
  text-align: center;
  display: block;
  font-size: 0.625rem;
}

section.price_member .price2 .prices .pirce .price_text .yen {
  font-size: 1.375rem;
}

section.price_member .price2 .prices .pirce .price_text span.kakaku {
  top: 0;
}

section.price_member .required_items {
  flex-direction: column;
  font-size: 0.75rem;
  line-height: 1.4;
  margin-top: 20px;
}

section.price_member .required_items .head {
  padding-right: 0;
  text-align: center;
}

section.price_member .required_items .item_wrap {
  width: 100%;
  margin-top: 10px;
  font-weight: 500;
}

section.price_member .required_items .item_wrap p {
  margin-top: 20px;
  font-size: 0.625rem;
}

.faq_content {
  margin-top: 50px;
}
.faq_content + .faq_content {
  margin-top: 10px;
}
.faq_content h3 {
  font-size: 0.75rem;
  line-height: 1.4;
}

section.faq .faq_content .faqs .faq .question h4 {
  padding: 14px;
  padding-left: 13px;
}

section.faq .faq_content .faqs .faq .question h4 span.text {
  margin-left: 10px;
  font-size: 0.78125rem;
  line-height: 1.1875rem;
}

section.faq .faq_content .faqs .faq .answer {
  padding: 14px;
  padding-left: 24px;
  font-size: 0.78125rem;
  line-height: 1.1875rem;
}

section.faq .faq_content .faqs .faq .question h4 span {
  flex-shrink: 0;
}
section.faq .faq_content .faqs .faq .question h4 span img {
  width: 15px;
}

section.faq .faq_content .faqs .faq .question h4 span.text {
  flex-shrink: 1;
}

section.faq .faq_content .faqs .faq .answer span {
  flex-shrink: 0;
}
section.faq .faq_content .faqs .faq .answer span img {
  width: 15px;
}

section.faq .faq_content .faqs .faq .answer span.text {
  margin-left: 13px;
  flex-shrink: 1;
}

section.faq .faq_content .faqs .faq .answer span.text a.btn {
  margin-top: 10px;
}

section.access .acces_info {
  margin-top: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

section.access .acces_info .logo img {
  width: 104px;
  margin: 0 auto;
}

section.access .acces_info .info_text {
  padding-left: 0;
}

section.access .acces_info .info_text h3 {
  font-size: 1.25rem;
  font-weight: bold;
  margin-top: 20px;
}

.location_icon {
  flex-shrink: 0;
}
.location_icon img {
  position: relative;
  top: 5px;
  width: 13px;
}

section.access .acces_info .info_text .locations .location_text {
  font-size: 0.75rem;
  line-height: 1.09375rem;
}

section.access .map {
  margin-top: 30px;
  padding-top: 74%;
  position: relative;
}

section.access .chusha .chusha_wrap {
  border: 5px solid #727F8E;
  border-radius: 30px;
  padding: 10px 15px;
  display: inline-block;
  font-size: 0.9375rem;
  font-weight: bold;
}

section.access .chusha .chusha_wrap span.num {
  font-size: 1.5625rem;
}

section.access .eigyou {
  margin-top: 20px;
  font-size: 0.71875rem;
  line-height: 1.09375rem;
}

footer .footer_info {
  margin: 0;
}

footer .footer_infos a {
  color: white;
  text-decoration: none;
  font-size: 1.5625rem;
}

footer .footer_infos a span.small {
  font-size: 1.25rem;
}

footer {
  margin-top: 20px;
  background-color: #AA872E;
  padding: 20px 0;
  margin-bottom: 140px;
}

footer .footer_infos a img {
  width: 25px;
}

footer .footer_info.sns ul li {
  margin: 0 5px;
}

footer .footer_infos {
  justify-content: space-between;
}

section.faq .faq_content h3 {
  margin-top: 0;
}/*# sourceMappingURL=sp.css.map */


footer .policy-list {
  display: block;
  padding: 1.04rem 0
}

footer .policy-list li {
  margin-bottom: 1rem;
  line-height: 1;
  font-size: 83.33%
}

div.container p {
  text-align: center;
  margin-bottom: 1rem;
  font-size: 1em;
  font-weight: 800;
}