@charset "utf-8";
:root {
  --color-blue:#1a3c81;
	--color-pink:#f6d5de;
	--color-red:#cc3333;
	--text-serif:'Noto Serif JP', serif;
	--text-en:'Poppins', serif;
}
/*-------------------------------------------------------------------

	main

-------------------------------------------------------------------*/
.main-contents {
	max-width:640px;
	margin:0 auto;
}
.c-title {
	position:absolute;
	top:-.6rem;
	left:2rem;
	color:var(--color-blue);
	line-height: 1.4rem;
}
.c-title .en {
	display: block;
	margin-bottom:2rem;
	font-family: var(--text-en);
	font-size:3.6rem;
	font-weight:600;
	letter-spacing: .1em;
}
.c-title .jp {
	display: block;
	font-family: var(--text-serif);
	font-size:1.5rem;
	font-weight:600;
}
.basic-section {
  padding: 4rem 2rem 5rem;
}
.basic-section > :last-child {
  margin-bottom:0;
}
.basic-title {
	text-align: center;
	margin-bottom: 2rem;
	color:var(--color-blue);
}
.basic-title.white {
	color:white;
}
.basic-title .en {
	display:block;
	margin-bottom:1em;
	font-size:1.2rem;
	font-weight:300;
	line-height: 1.4;
	font-family: var(--text-en);
	letter-spacing: .2em;
}
.basic-title .jp {
	display:block;
	font-size:1.6rem;
	line-height: 1.4;
	font-family: var(--text-serif);
	font-weight:600;
}
.subtitle {
	font-family:var(--text-serif);
	line-height:1.5;
	font-weight:600;
	text-align: center;
	margin-bottom:1em;
}
/*-------------------------------------------------------------------

	mv

-------------------------------------------------------------------*/
.mv {
	max-width:640px;
	margin:0 auto;
}
.mv_inner {
	width:100%;
	height:calc(1301 / 750 * 100vw);
	padding:1rem 1.5rem 0;
	position:relative;
	background:url("../img/top/mv.png") no-repeat center center;
	background-size: 100% auto;
}
.mv_text {
	font-size:1rem;
	line-height:1.3;
	margin-bottom:.3em;
	font-weight:400;
}
.mv_logo {
	width:22rem;
}
.mv .mv_price {
	position:relative;
	z-index: 1;
	margin-top:-6.5rem;
}
.mv_price {
	width:33.5rem;
	margin-left:auto;
	margin-right:auto;
	padding:1.5rem 0;
	border:3px solid white;
	border-radius: 1rem;
	background: linear-gradient(180deg,#385fab,#1b3d82);
	color:white;
	text-align: center;
	box-shadow:0 1px 10px 0 rgba(0,0,0,.15);
}
.mv_price .s-title {
	font-family:var(--text-serif);
	font-size:1.5rem;
	line-height: 1.3;
	font-weight:700;
	letter-spacing: .08em;
	margin-bottom: .5rem;
}
.mv_price .s-title strong {
	color:var(--color-pink);
	font-size:2.2rem;
}
.mv_price .s-title .sub{
	font-size: 0.8rem;
}
.mv_price .s-price {
	color:var(--color-pink);
	width: fit-content;
	margin: 0 auto;
	line-height: 1.2;
}
.mv_price .s-price .sub{
	display: block;
	text-align: right;
	/* color: #fff; */
    font-weight: 700;
    font-size: 1.1rem;
}
.mv_price .s-price small {
	font-size:1.5rem;
	font-weight:600;
	letter-spacing: .08em;
}
.mv_price .s-price .num {
	font-family:var(--text-en);
	font-size:4.2rem;
	font-weight:700;
}
.mv_price .s-price ruby {
	font-size:2.3rem;
	font-weight:600;
}
.mv_price .s-price ruby rt {
	font-size:1rem;
	font-weight:400;
}
@media screen and (min-width: 641px) {
.mv_inner {
	height:calc(640 / 750 * 1301px);
}
}
/*-------------------------------------------------------------------

	lower header

-------------------------------------------------------------------*/
.header {
  background-color: #FFF;
	box-shadow:0 2px 6px 0 rgba(0,0,0,.1);
}
.header_inner {
  padding: 1em;
}
.header_logo {
  display: block;
  width: 60%;
  margin: 0 auto;
}
@media (min-width: 641px) {
	.header_logo {
		width: 300px;
	}
}
/*-------------------------------------------------------------------

	about

-------------------------------------------------------------------*/
.p-about {
	padding:5rem 2rem 7rem;
}
.p-about_title {
	margin-bottom:1em;
	text-align: center;
	color:var(--color-blue);
	line-height: 1.4;
}
.p-about_title .en {
	display:block;
	margin-bottom:.5em;
	font-family:var(--text-en);
	font-weight:300;
	letter-spacing: .2em;
}
.p-about_title .jp {
	display:block;
	font-family:var(--text-serif);
	font-size:2.5rem;
	font-weight:600;
}
.p-about_photo {
	width:15rem;
	float:left;
	margin:0 1.5rem .5rem 0;
}
/*-------------------------------------------------------------------

	feature

-------------------------------------------------------------------*/
.p-feature {
	position:relative;
	padding:8rem 2rem 8rem;
	background: url(../img/top/feature_back.jpg) repeat-y center top;
	background-size:100% auto;
}
.p-feature_item {
	margin:0 -2rem 4.5rem;
}
.p-feature_item .s-title {
	display:flex;
	align-items: center;
	margin:0 auto 1.3rem 2rem;
	color:var(--color-blue);
	font-family: var(--text-serif);
	line-height: 1.4rem;
}
.p-feature_item .s-title .s-num {
	width:7.5rem;
	height:7.5rem;
	border-radius: 50%;
	margin-right:1.6rem;
	padding-top:1.3rem;
	border:2px solid white;
	background-color:var(--color-pink);
	text-align: center;
	font-family: Poppins, var(--text-serif);
	font-size:1.5rem;
	line-height: 1.2;
	font-weight: 600;
}
.p-feature_item .s-title .s-num i {
	display:block;
	font-size:2.5rem;
	font-style:normal;
	font-weight: 700;
}
.p-feature_item .s-title .s-text {
	flex:1;
	font-size:2rem;
	line-height: 1.3;
}
.p-feature_item .s-image {
	width:calc(670 / 750 * 100%);
	box-shadow:2rem 2rem 0 0 rgba(255,255,255,.8);
}
.p-feature_item .s-maintext {
	position:relative;
	z-index: 1;
	width:calc(670 / 750 * 100%);
	padding:2.5rem;
	margin:-2rem 0 0 auto;
	background-color:white;
}
.p-feature_item .s-maintext > :last-child {
	margin-bottom:0;
}
.p-feature_more {
	font-family:var(--text-serif);
	text-align:center;
	font-size:1.8rem;
	line-height:1.5;
	font-weight:600;
	color:var(--color-blue);
	margin-bottom:.5em;
}
.p-feature_arrow {
	width:1.1rem;
	margin:0 auto .5em;
}
.p-feature_logo {
	width:22rem;
	margin:0 auto .5em;
}
.p-feature_lowprice {
	font-family:var(--text-serif);
	text-align:center;
	font-size:1.3rem;
	line-height:1.5;
	font-weight:600;
	color:#784823;
	margin-bottom:1em;
}
.p-feature_lowprice strong {
	color:var(--color-red);
	font-size:2rem;
}
.p-feature_price {
	margin-bottom:6rem;
}
.c-table {
	width:100%;
	border-collapse: collapse;
	table-layout: fixed;
	border:1px solid #999;
}
.c-table th, .c-table td {
	border:1px solid #999;
	padding:1.3rem .5rem;
	vertical-align: middle;
	font-size:1.2rem;
	line-height: 1.5;
	background-color: white;
}
.c-table.hikaku th, .c-table td {
	text-align: center;
}
.c-table.hikaku thead th {
	background-color: #efefef;
	font-weight:600;
}
.c-table.hikaku tbody th {
	background-color: #ebeff7;
	font-weight:500;
}
.c-table.hikaku .current {
	background-color: #fff0f4;
	font-weight:600;
	border-left:3px solid #f18ba7;
	border-right:3px solid #f18ba7;
}
.c-table.hikaku .current.top {
	border-top:3px solid #f18ba7;
}
.c-table.hikaku .current.bottom {
	border-bottom:3px solid #f18ba7;
}
.c-table.detail th, .c-table.detail td {
	padding-left:1rem;
	padding-right:1rem;
	text-align: left;
}
.c-table.detail th {
	background-color: #ebeff7;
}
/*-------------------------------------------------------------------

	voice

-------------------------------------------------------------------*/
.p-voice {
	position:relative;
	padding:6rem 0 0;
	/* background-color: #f3f3f3; */
}
.p-voice .c-title{
	position: relative;
	/* top: 0; */
	left: 0;
	margin-bottom: 2rem;
}
.p-voice >:last-child {
	margin-bottom:0;
}
.voice_slider-wrap{
	width: calc(100% - 50px);
	box-sizing: border-box;
	margin: 0 auto;
}
.p-voice_item {
	/* margin-bottom:4rem; */
	margin-bottom: 1rem;
	background-color: #fff;
	padding: 1.5rem;
}
.p-voice_flex-area{
	width: 100%;
	/* display: flex; */
	/* flex-wrap: nowrap; */
}
.p-voice_flex-image{
	/* width: 40%; */
	/* margin-right: 2%; */
	max-width: 36%;
	margin: 0 0 0 auto;
	overflow: hidden;
	float: right;
}
.p-voice_item-image {
	width:100%;

}
.p-voice_item-image-text {
	text-align: center;
	color: #f18ba7;
	font-size: 1.6rem;
	margin: 0;
}
.p-voice_item-image-text.men {
	color: var(--color-blue);
}
.p-voice_flex-text{
	/* width: 58%; */
	width: 100%;
	/* padding: 2.5rem; */
	/* background-color: #fff; */
}
.p-voice_flex-text p{
	margin: 0;
}

/*-------------------------------------------------------------------

	flow

-------------------------------------------------------------------*/
.p-flow {
	position:relative;
	padding:8rem 2rem 5rem;
	background: linear-gradient(180deg,#f0f5ff,#c6d5f4);
}
.p-flow >:last-child {
	margin-bottom:0;
}
.p-flow_item {
	margin-bottom:4rem;
}
.p-flow_item-title {
	display:flex;
	margin-bottom:1rem;
	align-items: center;
}
.p-flow_item-title .s-num {
	display:block;
	width:6rem;
	height:6rem;
	border-radius: .5rem;
	background-color:#395fac;
	color:white;
	font-family: var(--text-en);
	font-size:1.3rem;
	line-height: 1.2;
	font-weight:600;
	text-align: center;
	letter-spacing: .1em;
	margin-right:1.7rem;
	padding-top:.8rem;
}
.p-flow_item-title .s-num i {
	display:block;
	font-size:2.6rem;
	font-style:normal;
}
.p-flow_item-title .s-text {
	display:block;
	font-size:1.6rem;
	font-family: var(--text-serif);
	color:var(--color-blue);
	font-weight:600;
}
.p-flow_item-image {
	width:27.5rem;
	box-shadow: 2rem 2rem 0 0 rgba(57,95,172,.2);
}
.p-flow_item-text {
	position:relative;
	z-index: 1;
	width:27.5rem;
	background-color:white;
	padding:2.5rem;
	margin:-2rem 0 0 auto;
}
.p-flow_item:nth-of-type(even) .p-flow_item-image {
	box-shadow: -2rem 2rem 0 0 rgba(57,95,172,.2);
	margin:0 0 0 auto;
}
.p-flow_item:nth-of-type(even) .p-flow_item-text {
	margin:-2rem auto 0 0;
}
/*-------------------------------------------------------------------

	faq

-------------------------------------------------------------------*/
.p-faq_list {
	margin-bottom:1rem;
	box-shadow:0 1px 1rem 0 rgba(0,0,0,.1);
	background-color:white;
	border-radius: .5rem;
	padding:2rem;
}
.p-faq_list dt {
	position:relative;
	padding:0 2.5rem 0 3.5rem;
	font-size:1.5rem;
	line-height: 1.5;
	font-weight:600;
}
.p-faq_list dd {
	position:relative;
	padding:0 0 0 3.5rem;
	font-size:1.4rem;
	line-height: 1.5;
	padding-top:1rem;
	display:none;
}
.p-faq_list dt::before,.p-faq_list dd::before {
	position:absolute;
	top:0;
	left:0;
	content:"";
	display:block;
	font-family: var(--text-en);
	line-height:1;
	font-weight:600;
	font-size:2rem;
	color:var(--color-blue);
}
.p-faq_list dt::before {
	content:"Q";
}
.p-faq_list dd::before {
	content:"A";
	top:1rem;
}
.p-faq_list dt .icon-slide {
	position:absolute;
	top:50%;
	transform: translateY(-50%);
	right:0;
	font-size:2rem;
	line-height: 1;
	font-weight:600;
	color:var(--color-blue);
	transition: all .2s ease-out;
}
.p-faq_list dt .icon-slide.is-close {
	transform: translateY(-50%) rotate(180deg);
}
/*-------------------------------------------------------------------

	price

-------------------------------------------------------------------*/
.p-price {
	background:linear-gradient(180deg,#365daa,#1b3f83);
}
.p-price_counseling {
	text-align: center;
	color:var(--color-pink);
	font-size:1.6rem;
	font-weight:600;
}
.p-price_counseling strong {
	font-size:4rem;
}
.p-price_item {
	display:flex;
	margin-bottom:1rem;
	line-height:1.4;
}
.p-price_item dt {
	display:flex;
	width: 45%;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color:#efefef;
	font-size:1.3rem;
	font-weight:600;
	padding:3rem 0;
}
.p-price_item dt.camp {
	background-color:#f18ba7;
	color:white;
}
.p-price_item dd {
	display:flex;
	flex:1;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color:white;
	font-size:1.8rem;
	font-weight:700;
	padding:3rem 0;
	font-family: Poppins, sans-serif;
}
.p-price_item dd .yen {
	font-size:1.3rem;
}
.p-price_item dd .tax {
	font-size:1rem;
}
.p-price_caption {
	color:white;
	font-size:1.2rem;
	text-align: right;
}
/*-------------------------------------------------------------------

	doctor

-------------------------------------------------------------------*/
.p-doctor {
	border-bottom:1px solid #ececec;
}
.p-doctor_image {
	width:16.5rem;
	margin:0 auto 1em;
}
.p-doctor_name {
	text-align: center;
	font-size:2rem;
	line-height:1.5;
}
.p-doctor_name .small {
	font-size:1.4rem;
	display:block;
}
.p-doctor_name .en {
	font-size:1.3rem;
	display:block;
}
.p-doctor_list {
	font-size:1.3rem;
	line-height:1.5;
	display: flex;
	/* justify-content: space-between; */
	flex-wrap: wrap;
	width: 100%;
	justify-content: flex-start;
}
.p-doctor_list dt {
	/* clear:left;
	float:left; */
	width:24%;
}
.p-doctor_list dd {
	width: 74%;
	margin-left: 2%;
	/* padding:0 0 .5em 6em; */
}
/*-------------------------------------------------------------------

	clinic

-------------------------------------------------------------------*/
.p-clinic_logo {
	width:22rem;
	margin-bottom:1em;
}
.p-clinic_data {
	width:100%;
	border-top:1px solid #ececec;
	margin-bottom:2rem;
}
.p-clinic_data th, .p-clinic_data td {
	font-size:1.3rem;
	line-height: 1.5;
	text-align: left;
	vertical-align: top;
	padding:1.3em 1em;
	border-bottom:1px solid #ececec;
}
.p-clinic_data th {
	font-weight:600;
}
.googlemap {
	position:relative;
	width:100%;
	height:50rem;
	margin-bottom:1em;
}
.googlemap iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
/*-------------------------------------------------------------------

	contact

-------------------------------------------------------------------*/
.p-contact {
	position:relative;
	padding:8rem 2rem 5rem;
	background-color: #fffbef;
}
.p-contact_lead {
	font-family: var(--text-serif);
	font-weight:600;
}

/*reset*/
.form-data {
  width: 100%;
}
.form-data input[type="submit"], .form-data input[type="button"] {
  border-radius: 0;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  cursor: pointer;
}
.form-data input[type="submit"]::-webkit-search-decoration, .form-data input[type="button"]::-webkit-search-decoration {
  display: none;
}
.form-data input[type="submit"]::focus, .form-data input[type="button"]::focus {
  outline-offset: -2px;
}

/*setting*/
.must-icon::after {
  content: "必須";
  display: inline-block;
  font-weight: 500;
	line-height:1;
  color: #FFF;
  border-radius: .4rem;
  padding: .5em .5em .4em;
  background: #f18ba7;
  font-size: .9rem;
	vertical-align: .3rem;
}
.must-icon-option {
  display: inline-block;
  font-weight: 500;
	line-height:1;
  color: #FFF;
  border-radius: 4px;
  padding: .5em .5em .4em;
  background: #f18ba7;
  font-size: .9rem;
}
.form-flow {
  display:flex;
	margin-bottom:1em;
	justify-content: space-between;
}
.form-flow li {
  width: 32%;
  background-color:white;
	font-size:1.3rem;
	line-height:1.2;
	font-weight:600;
	text-align: center;
	padding:1.4em .5em;
	border:2px solid #DDD;
	border-radius: .5rem;
}
.form-flow li.current {
  border-color: #f18ba7;
	background-color:#fff0f4;
}

/*form parts*/
.form-data .cell-even tr:nth-child(even) th, .form-data .cell-even tr:nth-child(even) td {
  background: #fffbef;
}
.form-data .cell-odd tr:nth-child(odd) th, .form-data .cell-odd tr:nth-child(odd) td {
  background: #fffdf7;
}
.form-data table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0px;
}
.form-data #yoyaku + table {
	border-bottom: 1px solid #dad1b4;
}
.form-data table th, .form-data table td {
  display: block;
  width: 100%;
  text-align: left;
}
.form-data table th {
  padding: 1em .8em .5em;
  line-height: 1.5;
  font-weight: 600;
  font-size: 1.6rem;
  border-top: 1px solid #dad1b4;
}
.form-data table td {
  padding: 0 .8em 1.5em;
}
.form-data .list-inline > li {
  display: inline-block;
  margin: 0 .5em 0 0;
}
.form-data .list-inline.is-margin > li {
  display: inline-block;
  margin: 0 .5em .7em 0;
}
.form-data .list-block > li {
  display: block !important;
  margin: 0 0 .5em 0;
}
.form-data .caption {
  margin: 5px 0 0;
  font-size: .88em;
  line-height: 1.5;
  font-weight: 500;
}
.form-data .hope > div {
  margin-bottom: .5em;
  padding-bottom: .5em;
  border-bottom: 1px solid #DDD;
}
.form-data .hope > div > span {
  display: inline-block;
  margin: 0 .2em .5em 0;
}
.form-data .hope > div > span:last-child {
  margin-right: 0;
}
.form-data .hope > div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.form-data .spot li {
  margin-bottom: 1em;
}
.form-data input[type="text"], .form-data input[type="number"], .form-data input[type="email"], .form-data input[type="tel"], .form-data textarea {
  -webkit-appearance: none;
	appearance: none;
  padding: 1em .5em;
  font-size: 1.6rem;
  border: 1px solid #DDD;
  border-radius: 6px;
}
.form-data input[name="age"] {
  width: 5em;
}
.form-data input[type="radio"], .form-data input[type="checkbox"] {
  margin: 0 8px 0 0;
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  -webkit-transform-origin: left 50%;
  transform-origin: left 50%;
}
.form-data select {
  -webkit-appearance: none;
	appearance: none;
  border: 1px solid #DDD;
  padding: 1em 1.5em 1em .5em;
  font-size: 1.6rem;
  min-height: 3em;
  border-radius: 4px;
  background: #FFF url(../img/common/arrow_default_under.png) no-repeat right 6px center;
  background-size: 10px;
}
.form-data .wide {
  width: 100%;
}
.form-data .wide-s {
  width: 80%;
}
.form-data .half {
  width: 50%;
}
.form-data .tel-small {
  width: 25%;
}
.form-data .s-button {
  display:block;
	border-radius: .5rem;
	padding:1em;
	background-color:white;
	border:1px solid #DDD;
}

/*button*/
.form-data .form-button {
  padding-top: 2em;
  margin-bottom: 2em;
}
.form-data .form-button input.button {
  display: block;
  width: 80%;
  border-radius: 8px;
  padding: 1.4em 0 1.3em;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: bold;
  margin: 0 auto 1em;
  color: #FFF;
  text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
}
.form-data .form-button.is-2col {
  display: flex;
  flex-direction: column;
}
.form-data .form-button.is-2col form {
  width: 100%;
}
.form-data .form-button input.button-send {
  background: #cc3333;
  color: #fff;
}
.form-data .form-button input.button-mod {
  background: #999;
  color: #fff;
}
/*option*/
div#ui-datepicker-div {
  z-index: 9999 !important;
}
.ui-datepicker-trigger {
	display:inline-block;
	width:2em;
	margin-left:.5em;
	vertical-align: middle;
}
/*-------------------------------------------------------------------

	footer

-------------------------------------------------------------------*/
.footer {
	text-align: center;
	font-size: 9px;
	padding: 4rem 0 8rem;
}
.footer-fixed-button_outer {
	position: fixed;
	width: 100%;
	bottom: -200px;
	left: 0;
	z-index: 1500;
  transition: all 0.2s ease-out;
}
.footer-fixed-button_outer.is-show {
	bottom: 0;
}
.footer-fixed-button {
	max-width: 640px;
	margin:0 auto;
	display: flex;
}
.footer-fixed-button .button-tel,
.footer-fixed-button .button-mail,
.footer-fixed-button .button-line{
	flex:1;
}
.footer-fixed-button a {
	display: block;
	padding-top:.6em;
	color:#FFF;
	font-weight:600;
	font-size:1.3rem;
	text-decoration: none;
	width: 100%;
	height: 6rem;
	text-align: center;
}
.footer-fixed-button .button-tel {
	background: linear-gradient(180deg,#f18ba7,#c7748a);
}
.footer-fixed-button .button-mail {
	background: linear-gradient(180deg,#1a4eb5,#1d3563);
}
.footer-fixed-button .button-line {
	background: linear-gradient(180deg,#07c654,#1d954e);
}
.footer-fixed-button a::before {
	content:"";
	display:block;
	width:2rem;
	height:2rem;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:contain;
	margin:0 auto .2rem;
}
.footer-fixed-button .button-tel a::before {
	background-image: url("../img/top/ico_tel.svg");
}
.footer-fixed-button .button-mail a::before {
	background-image: url("../img/top/ico_mail.svg");
}
.footer-fixed-button .button-line a::before {
	background-image: url("../img/top/ico_line.svg");
}
.pagetop-button {
	z-index: 1400;
	width:4rem;
	position:fixed;
	right:1rem;
	bottom:-100rem;
	transition: all .2s ease-out;
}
.pagetop-button.is-show {
	bottom:6rem;
}

/*-------------------------------------------------------------------

	menu

-------------------------------------------------------------------*/
.body-fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}
.menu-button_outer {
  position: fixed;
  width:100%;
	left: 0;
	top: 0;
  z-index: 8890;
}
.menu-button_inner {
  max-width:640px;
	margin:0 auto;
}
#menu-button {
	position:relative;
	width: 3.8rem;
	height:3.8rem;
  margin:1rem 1rem 0 auto;
	background-color:#333;
	border-radius: .3rem;
}
#menu-button span,
#menu-button::before,
#menu-button::after {
	content:'';
	display:block;
	position: absolute;
	width:2rem;
	height:2px;
	left:50%;
	transform: translateX(-50%);
	background-color:white;
	transition: all 0.2s ease-out;
	border-radius: .3rem;
}
#menu-button span {
	top:50%;
	transform: translate(-50%,-50%);
}
#menu-button::before {
	top:1rem;
}
#menu-button::after {
	bottom:1rem;
}
#menu-button.is-close span {
	display:none;
}
#menu-button.is-close::before {
	top:50%;
	left:50%;
	transform: rotate(-45deg) translate(-50%, -50%);
	transform-origin: 0 0;
}
#menu-button.is-close::after {
	top:50%;
	left:50%;
	transform: rotate(45deg) translate(-50%, -50%);
	transform-origin: 0 0;
}
#menu-list_sp {
	position: fixed;
	z-index: 8888;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	background: #efefef;
	padding: 6rem 2rem 2rem;
	font-size: 1.3rem;
	line-height: 1.2;
	overflow: auto;
}
#menu-list_sp .menu-inner {
  max-width:600px;
	margin: 0 auto 1em;
  border-top:1px solid #DDD;
	margin-bottom:1em;
}
#menu-list_sp .menu-inner li a {
	display: block;
	background: url(../img/common/arrow.svg) no-repeat 96% center;
	background-size: .6rem;
	text-decoration: none;
	padding: 1.1em 2em 1em .8em;
  border-bottom:1px solid #DDD;
}
.sp{
	display: block;
}
@media (min-width: 414px) {
	.sp {
		display: none;
	}
}

