@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
html {
	font-size: 62.5%;
	max-width: 750px;
	margin: auto;
	overflow-x: hidden;
}

body {
	color: #000;
	font-family: 'Noto Sans JP', ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
	background: #fff;
	overflow-x: hidden;
}

.jaFont {
	font-family: 'Noto Serif JP', serif;
}

div {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

img{
	zoom: 0.5;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}

a {
	outline: none;
	color: #000;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a:focus, *:focus {
	outline:none;
}

a:visited {
	color: #212121;
}

a img {
	-webkit-transition: opacity .5s ease-out;
	transition: opacity .5s ease-out;
}

.post, .page {
	margin: 0;
}


.center {
	text-align: center;
}

.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}

.clear {
	clear:both;
	height: 0;
}

small {
	font-weight: 500;
}

ul, ol {
	padding: 0;
	margin: 0;
}

li > ul, li > ol {
	margin-left: 0;
}

ul li {
	list-style: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

dl {
	margin: 0;
}

dt {
	font-weight: 500;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

dd {
	margin: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

table th,
table td {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

h1, h2, h3, h4, h5 {
	font-weight: 500;
}

p {
	margin: 0;
}

/*----------------------------------------------------
 fadeIn
----------------------------------------------------*/

.fadeIn {
	-webkit-transform: translate3d(0, -10px, 0);
	        transform: translate3d(0, -10px, 0);
	-webkit-transition: 1s;
	transition: 1s;
	opacity: 0;
}

.fadeIn.animated {
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
	opacity: 1;
}

/*----------------------------------------------------
 inner
----------------------------------------------------*/
.inner {
	width: calc(100% - 4rem);
	max-width: 750px;
	margin: 0 auto;
}

/*----------------------------------------------------
 header
----------------------------------------------------*/

#header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	max-width: 750px;
	z-index: 10000;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	pointer-events: none;
}

#header .headerTop {
	height: 53px;
	position: relative;
	background: #fff;
	z-index: 1000;
	pointer-events: auto;
}

#header .headerFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

#header .headerFlex .logo {
	max-width: 110px;
	line-height: 1;
	padding: 12px 0 0 11px;
}

#header .headerFlex .headerInfo {
	width: 64.5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: right;
	    -ms-flex-pack: right;
	        justify-content: right;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#header .headerFlex .headerInfo .telBox {
	margin: 0 8px 0 0;
}

#header .headerFlex .headerInfo .telBox a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#header .headerFlex .headerInfo .telBox a .icon {
	margin: 0 6px 0 0;
}

#header .headerFlex .headerInfo .telBox a .no {
	font-size: 14px;
	font-weight: 500;
	color: #A78243;
	margin: 0 0 4px;
}

#header .headerFlex .headerInfo .telBox a .time {
	font-size: 10px;
	font-weight: 500;
	color: #777777;
}

#header .headerFlex .lineButton {
	width: 53px;
	height: 53px;
	position: relative;
}

#header .headerFlex .lineButton a {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: #43C606;
	padding: 8px 0 0 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

#header .headerFlex .lineButton a .icon {
	margin: 0 0 6px;
}

#header .headerFlex .lineButton a .text {
	font-size: 10px;
	font-weight: 700;
	color: #fff;
}

#header .headerFlex .menuButton {
	width: 53px;
  height: 53px;
	position: relative;
	background: #A78243;
}

#header .headerFlex .menuButton .menu-trigger {
	vertical-align: middle;
	cursor: pointer;
	width: 18px;
	height: 29px;
	background: none;
	border: none;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	cursor: pointer;
	z-index: 10;
	position: absolute;
	top: 25px;
	right: 17px;
}

#header .headerFlex .menuButton .menu-trigger span {
	display: inline-block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	position: absolute;
	width: 100%;
	height: 2px;
	background: #fff;
	border-radius: 1.25vw;
	-webkit-transition: all .5s;
	transition: all .5s;
}

#header .headerFlex .menuButton .menu-trigger span:nth-child(1) {
	top: -13px;
}

#header .headerFlex .menuButton .menu-trigger span:nth-child(2) {
	top: -5px;
}

#header .headerFlex .menuButton .menu-trigger span:nth-child(3) {
	bottom: 24px;
}

#header .headerFlex .menuButton .menu-trigger .text {
	font-size: 10px;
	font-weight: 500;
	color: #fff;
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

#header .headerNav {
	padding: 16px 0;
	background: #333333;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	pointer-events: auto;
}

#header.topPosition .headerNav {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

#header.active .headerNav {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

#header .headerNav.open {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

#header .headerNav .inner {
	padding: 0 calc(100vw / 750 * 30);
	width: 100%;
}

#header .headerNavList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: distribute;
	    justify-content: space-around;
}

#header .headerNavListItem a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
}

#header .headerNavListItem a .icon {
	line-height: 1;
	margin: 0 0 0 4px;
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
}

#header .headerNavListItem a .text {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: #fff;
	display: inline-block;
}
#header .headerNavListItem a .new {
	color:#A78243;
	margin-right: 0.5em;
}
#header .headerNavListItem .campaign {
	/* position: absolute;
	right: -237px; */
	width: 237px;
}
#header .headerNav.open .headerNavListItem .campaign {
	display: none;
}
@media screen and (max-width: 768px)  {
	#header .headerNavListItem .campaign {
		width: 42vw;
		position: absolute;
		top:1.2em;
		margin: auto;
		left: -1em;
		display: none;
	}
	#header.topPosition .headerNavListItem .campaign ,
	#header.active .headerNavListItem .campaign {
		display: block;
	}
}
/*----------------------------------------------------
 remodal
----------------------------------------------------*/

.remodal {
	padding: 45px 24px !important;
}

.remodal-overlay {
	z-index: 10000 !important;
}

.remodal-close {
	left: initial !important;
	right: 0;
}

.remodal-close:before {
	color: #A78243;

}

.remodal .head {
	margin: 0 0 20px;
}

.remodal .head h2 {
	font-size: 16px;
	font-weight: 500;
	text-align: center;
}

.remodal h3 {
	font-size: 13px;
	font-weight: 700;
	color: #A78243;
	text-align: left;
	margin: 0 0 6px;
}

.remodal p {
	font-size: 11px;
	line-height: 1.81;
	text-align: left;
	margin: 0 0 20px;
}

.remodal .remodal-cancelButton {
	border: none;
	background: none;
	width: 100%;
	max-width: 63px;
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
	outline: none;
}

/*----------------------------------------------------
 sp_menu
----------------------------------------------------*/

#sp_menu {
	position: fixed;
	top: 53px;
	left: 50%;
	width: 100%;
	max-width: 750px;
	height: calc(100vh - 53px);
	background: #fff;
	z-index: 1000;
	overflow: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transform: translateY(-100vh) translateX(-50%);
  transform: translateY(-100vh) translateX(-50%);
}

#sp_menu.open {
	-webkit-transform: translateY(-0vh) translateX(-50%);
  transform: translateY(0vh) translateX(-50%);
}

#sp_menu nav {
	margin: 0 0 41px;
}

#sp_menu ul li a {
	border-top: 1px solid #707070;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 19px 29px 18px 30px;
}

#sp_menu ul li:last-child a {
	border-bottom: 1px solid #707070;
}
#sp_menu ul li li:last-child a {
	border-bottom: none;
}
#sp_menu ul li a .text {
	font-size: 14px;
	font-weight: 500;
	color: #333333;
}

#sp_menu ul li a .icon {}

#sp_menu ul li a .icon img {
	width: 20px;
}
#sp_menu ul li li a {
	padding-left: calc( 30px + 2em);
}
#sp_menu .topNavListSubSP {
	display: none;
}
#sp_menu .topNavListSubSP.open {
	display: block;
}
#sp_menu .topNavListItemSP .iconBottom img {
	height: 20px;
	width: auto;
}
#sp_menu .telNo {
	text-align: center;
	margin: 0 0 24px;
}

#sp_menu .button {
	margin: 0 0 0 -31px;
  width: calc(100% + 62px);
}

#header .headerFlex .menuButton .menu-trigger.active span:nth-child(1) {
	top: -22px;
}

#header .headerFlex .menuButton .menu-trigger.active span:nth-child(3) {
	bottom: 23px;
}

#header .headerFlex .menuButton .menu-trigger.active span:nth-of-type(1) {
	top: 0px;
	-webkit-transform: translateY(-7px) rotate(-45deg);
	transform: translateY(-7px) rotate(-45deg);
}

#header .headerFlex .menuButton .menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

#header .headerFlex .menuButton .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-11px) rotate(45deg);
	transform: translateY(-11px) rotate(45deg);
	width: 100%;
}

/*----------------------------------------------------
 main
----------------------------------------------------*/

main {
	padding: 97px 0 0 0;
}

/*----------------------------------------------------
 bottomFloating
----------------------------------------------------*/

#bottomFloating {
	position: fixed;
	bottom: 12px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 100;
	width: 100%;
}

#bottomFloating .inner {
	width: calc(100% - 3.2rem);
}

#bottomFloating .button {
	text-align: center;
	width: 100%;
	max-width: 344px;
	margin: auto;
}

#bottomFloating img {
	-webkit-box-shadow: 0 10px 18px rgba(0,0,0,0.16);
	        box-shadow: 0 10px 18px rgba(0,0,0,0.16);
}

/*----------------------------------------------------
 footer
----------------------------------------------------*/

#footer {
	position: relative;
	padding: 0;
}

#footer .footerLogo {
	width: 100%;
	max-width: 226px;
	margin: 0 auto 0;
	padding: 0 0 31px;
}

#footer .footerBg {
	padding: 32px 0 106px;
	background: #666666;
}

#footer .footerBg .inner {
	padding: 0 5px;
}

#footer .footerBg .shopListHead {
	font-size: 14px;
	font-weight: 700;
	color: #BBBBBB;
	margin: 0 0 21px;
}

#footer .shopLists {
	margin: 0 0 35px;
}

#footer .shopLists ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: ;
	    -ms-flex-pack: ;
	        justify-content: ;
}

#footer .shopLists ul li {
	width: 50%;
	margin: 0 0 19px;
}

#footer .shopLists ul li:nth-child(odd) {
	width: 54%;
}

#footer .shopLists ul li:nth-child(even) {
	width: 46%;
}

#footer .shopLists ul li a {
	font-size: 13px;
	font-weight: 500;
	color: #FFFFFF;
}

#footer .fotterInfo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

#footer .fotterInfo .companyLink a {
	font-size: 12px;
	font-weight: 500;
	color: #fff;
}

#footer .fotterInfo .copy p {
	font-size: 10px;
	font-weight: 500;
	color: #fff;
}

/*----------------------------------------------------
 visual
----------------------------------------------------*/

#visual {
	position: relative;
  text-align: center;
}
#visual .image img {
	width: 100%;
}
#visual .visualConts {
	position: relative;
	padding: 14px 0 50px;
}

#visual .visualConts p {
	font-size: 10px;
	font-weight: 400;
	line-height: 1.7;
}
#visual .visualContsBanner {
	padding-top: 40px;
}
#visual .visualContsBanner a {
	display: inline-block;
	border-radius: 6px;
	overflow: hidden;
}
/*----------------------------------------------------
 infection
----------------------------------------------------*/

#infection {
	position: relative;
	padding: 0 0 59px;
}

#infection .infectionBox {
	background: #F5ECDE;
	border-radius: 10px;
	padding: 32px 19px 28px;
}

#infection .infectionBox .head {
	margin: 0 0 26px;
}

#infection .infectionBox .head h2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#infection .infectionBox .head h2 small {
	font-size: 11px;
	font-weight: 500;
	margin: 0 0 10px;
}

#infection .infectionBox .head h2 b {
	font-size: 18px;
	font-weight: 500;
}

#infection .infectionLists {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 0 0 14px;
}

#infection .infectionLists .infection-list {
	background: #fff;
	border-radius: 4px;
	width: 31%;
	margin: 0 0 12px;
	padding: 24px 8px 13px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

#infection .infectionLists .infection-list p {
	font-size: 11px;
	font-weight: 700;
	line-height: 1.54;
	color: #A78243;
	text-align: center;
}

#infection .infectionLists .infection-list .icon {
	text-align: center;
}

#infection .infectionLists .infection-list:nth-child(1) .icon {
	-webkit-transform: translateX(-5px) translateY(-9px);
	transform: translateX(-5px) translateY(-9px);
}

#infection .infectionLists .infection-list:nth-child(2) .icon {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
}

#infection .infectionLists .infection-list:nth-child(3) .icon {
	-webkit-transform: translateY(-7px);
	transform: translateY(-7px);
}

#infection .infectionLists .infection-list:nth-child(4) .icon {
	-webkit-transform: translateY(-9px);
	transform: translateY(-9px);
}

#infection .infectionLists .infection-list:nth-child(5) .icon {
	-webkit-transform: translateY(-9px);
	transform: translateY(-9px);
}

#infection .infectionLists .infection-list:nth-child(6) .icon {
	-webkit-transform: translateY(-8px);
	transform: translateY(-8px);
}

#infection .link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: right;
	    -ms-flex-pack: right;
	        justify-content: right;
	padding: 0 4px 0 0;
}

#infection .link a {
	display: inline-block;
	width: 100%;
	text-align: right;
}

#infection .link a .text {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
}

#infection .link a .icon {
	line-height: 1;
	margin: 0 0 0 7px;
}

/*----------------------------------------------------
 bestofmisstokyo
----------------------------------------------------*/

#partner .bestofmisstokyoBox {
	background: url('../img/bestofmisstokyo-bg.jpg') no-repeat;
	background-size: cover;
	border-radius: 20px;
	padding: 43px calc(100vw / 1366 * 60) 35px;
}

#partner .bestofmisstokyoBox .image {
	margin-bottom: 6px;
	text-align: center;
}
#partner .bestofmisstokyoBox .conts {
	margin-bottom: 6px;
}
#partner .bestofmisstokyoBox .conts p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8125;
	letter-spacing: 0.04em;
	text-align: center;
	color: #000000;
}
#partner .bestofmisstokyoBox .centerConts p {
	display: block;
	margin: 0 auto;
	width: 240px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.666;
	color: #000000;
}

/*----------------------------------------------------
 future
----------------------------------------------------*/

#future {
	position: relative;
	overflow: hidden;
	padding: 0 0 56px;
}

#future .head {
	text-align: center;
	margin: 0 0 30px;
	-webkit-transform: translateX(-6px);
	transform: translateX(-6px);
}

#future .listBox {
	margin-right: 27px;
}

#future .listBox .image {
	margin-bottom: 12px;
}

#future .listBox .conts {}

#future .futureSlider {
	margin: 0 0 33px;
}

#future .futureSlider .slick-list {
	overflow: visible;
}

#future .listBox .conts p {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.6875;
	color: #A78243;
	text-align: center;
}

#future .listBox .conts p span {
	position: relative;
}

#future .listBox .conts p span:after {
	content: '';
	width: 100%;
	height: 1px;
	background: rgb(230,133,148);
	background: -webkit-gradient(linear, left top, right top, from(rgba(230,133,148,1)), to(rgba(213,156,48,1)));
	background: linear-gradient(90deg, rgba(230,133,148,1) 0%, rgba(213,156,48,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e68594",endColorstr="#d59c30",GradientType=1);
	position: absolute;
	left: 0;
	bottom: -2px;
}

#future .textConts {}

#future .textConts p {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.888;
	text-align: center;
	margin: 0 0 8px;
}

#future .textConts .textImage {
	width: calc(100% + 28px);
	margin: 0 0 0 -14px;
}

/*----------------------------------------------------
 reason
----------------------------------------------------*/

#reason {
	background: #222222;
	position: relative;
	padding: 34px 0 9px;
}

#reason:before {
	content: '';
	width: 100%;
	/* height: calc(100vw / 750 * 3937); */
	height: 100%;
	/* background: url('../img/reason-bg.png') no-repeat; */
	background: url('../img/reason-bg.jpg') top center repeat-y;
	background-size: 100% auto;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 0;
	/* opacity: 0.3; */
}

#reason:after {
	/* content: '';
	width: 100%;
	height: calc(100vw / 750 * 1975);
	background: url('../img/reason-bg02.png') no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	bottom: 24%;
	opacity: 0.3; */
}

#reason .inner {
	position: relative;
	z-index: 1;
}

#reason .head {
	text-align: center;
	margin: 0 0 3px;
}

#reason .reasonBox {
	margin: 0 0 47px;
}

#reason .reasonBox.box02 {
	margin: 0 0 70px;
}

#reason .reasonBox .image {
	width: calc(100% + 20px);
	margin: 0 0 5px -10px;
	text-align: center;
}

#reason .reasonBox .conts {
	color: #fff;
}

#reason .reasonBox .conts h3 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.7083;
	letter-spacing: 0.02em;
	margin: 0 0 11px;
}

#reason .reasonBox .conts p {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.8461;
	letter-spacing: 0.04em;
}

#reason .reasonBoxLists {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 25px 0 -18px;
}

#reason .reasonBoxLists .box {
	width: 48%;
	margin: 0 0 22px;
}

#reason .reasonBoxLists .box .boxImage {
	margin: 0 0 8px;
}

#reason .reasonBoxLists .box p {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: #fff;
}

#reason .delicaBox {
	background: #fff;
	border-radius: 10px;
	margin: 27px 0 51px;
	padding: 24px calc(100vw / 750 * 40) 35px;
}

#reason .delicaBox .delicaLogo {
	text-align: center;
	margin: 0 0 28px;
}

#reason .delicaBox h4 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	text-align: center;
	margin: 0 0 18px;
}

#reason .delicaBox h4 small {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
	margin: 0 0 7px;
}

#reason .delicaBox h4 b {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7857;
	letter-spacing: 0.06em;
}

#reason .delicaImage {
	width: 93%;
	margin: 0 auto 8px;
}

#reason .delicaBox p {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: 0.04em;
}

/*----------------------------
#award
----------------------------*/
#award {
	padding: 50px 0 40px;
}

/*----------------------------------------------------
 campaign
----------------------------------------------------*/

#campaign {
	position: relative;
	padding: 60px 0 ;
	text-align: center;
}
#campaign .head {
	margin-bottom: 40px;
}
#campaign .image {
	position: relative;
}
#campaign .image_02 {
  position: relative;
}
#campaign .image_02 img {
  width: 100%;
}
#campaign .image_03__picture {
  display: none;
}
#campaign .campaign-foot-btn {
	display: block;
	width: 85%;
	border-radius: 6px;
	background: -webkit-gradient(linear,left top, right top,from(#e68594), to(#d59c30));
	background: linear-gradient(to right,#e68594 0%, #d59c30 100%);
	-webkit-box-shadow: 0px 20px 36px rgba(0, 0, 0, 0.16);
	        box-shadow: 0px 20px 36px rgba(0, 0, 0, 0.16);
	margin: auto;
	padding: 10px;
	position: absolute;
	bottom: 80px;
	left: 0;
	right: 0;
	font-family: 'Noto Serif JP';
}
#campaign .campaign-foot-btn img {
	width: 62%;
}

#campaign .campaign-cashback-btn {
	font-size: 16px;
	position: absolute;
	bottom: 40px;
	left: 0;
	right: 0;
}

#campaign .campaign-cashback-btn:after {
	content: "";
	display: inline-block;
	width: 1.2em;
	height: 1em;
	background-image: url('../img/bottomArrow.svg');
	background-repeat: no-repeat;
	margin-left: 4px;
	transform: translateY(5px);
}

*----------------------------------------------------
 campaign2
----------------------------------------------------*/

#campaign2 {
	position: relative;
	padding: 30px 0 50px;
	text-align: center;
}
#campaign2 .inner {
	width: 100%;
}
#campaign2 .head {
	margin-bottom: 40px;
}
#campaign2 .image {
	position: relative;
}
#campaign2 .campaign-foot-btn {
	display: block;
	width: 85%;
	border-radius: 6px;
	background: -webkit-gradient(linear,left top, right top,from(#e68594), to(#d59c30));
	background: linear-gradient(to right,#e68594 0%, #d59c30 100%);
	-webkit-box-shadow: 0px 20px 36px rgba(0, 0, 0, 0.16);
	        box-shadow: 0px 20px 36px rgba(0, 0, 0, 0.16);
	margin: 30px auto auto;
	padding: 10px;
	/* position: absolute;
	bottom: 8.2vw;
	left: 0;
	right: 0; */
	font-family: 'Noto Serif JP';
}
#campaign2 .campaign-foot-btn img {
	width: 62%;
}
/*----------------------------------------------------
 practice
----------------------------------------------------*/

#practice {
	position: relative;
	padding: 76px 0 0;
}

#practice .image {
	width: 98%;
	margin: 0 0 0 2%;
	-webkit-transform: translateX(5px);
	transform: translateX(5px);
	text-align: center;
}

/*----------------------------------------------------
 achievement
----------------------------------------------------*/

#achievement {
	overflow: hidden;
	position: relative;
	padding: 66px 0 62px;
}

#achievement .head {
	text-align: center;
	margin: 0 0 25px;
}

#achievement .achievementList {
	position: relative;
	margin: 0 0 27px;
	padding: 0 5px;
}

#achievement .achievementList .slick-slide img {
	margin: auto;
}

#achievement .achievementList .prev {
	position: absolute;
	top: 50%;
	left: -27px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#achievement .achievementList .next {
	position: absolute;
	top: 50%;
	right: -27px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#achievement .addText {
	font-size: 10px;
	font-weight: 400;
	padding: 0 0 0 5px;
}

/*----------------------------------------------------
 refund
----------------------------------------------------*/

#refund {
	position: relative;
}

#refund .refundBox {
	border: 3px solid #E5D4B7;
	padding: 7px 19px 21px 5px;
}

#refund .refundBox .imageConts {
	text-align: center;
	margin: 0 0 12px;
}

#refund .refundBox p {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.83;
	letter-spacing: 0.04em;
	text-align: center;
	color: #333333;
	-webkit-transform: translateX(12px);
	transform: translateX(12px);
	margin: 0 0 15px;
}

#refund .refundBox .link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: right;
	    -ms-flex-pack: right;
	        justify-content: right;
}

#refund .refundBox .link a {
	display: inline-block;
	width: 100%;
	text-align: right;
}

#refund .refundBox .link a .icon {
	margin: 0 0 0 5px;
}

#refund .refundBox .link a .text {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
}

/*----------------------------------------------------
 counseling
----------------------------------------------------*/

#counseling {
	margin: 75px 0 0;
	padding: 0 0 50px;
	background: rgb(219,111,128);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(219,111,128,1)), to(rgba(167,130,67,1)));
	background: linear-gradient(180deg, rgba(219,111,128,1) 0%, rgba(167,130,67,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#db6f80",endColorstr="#a78243",GradientType=1);
}

#counseling.counseling02 {
	margin: 0;
}

#counseling .head {
	width: calc(100% + 12px);
	-webkit-transform: translateX(-3px) translateY(-39px);
	transform: translateX(-3px) translateY(-39px);
	margin: 0 0 -39px;
	text-align: center;
}

#counseling.counseling02 .head {
	-webkit-transform: translateX(-3px) translateY(-35px);
	transform: translateX(-3px) translateY(-35px);
	margin: 0 0 -35px;
}

#counseling .iconLists {
	margin: 0 0 20px -8px;
  width: calc(100% + 17px);
	text-align: center;
}

#counseling .counseling__campaign {
	margin-bottom: 60px;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#counseling .campaign-cashback-btn {
	font-size: 16px;
	color: white;
	text-decoration: underline;
}


#counseling .counselingAnser {
	margin: 0 0 36px;
}

#counseling .counselingAnser h3 {
	font-size: 23px;
	font-weight: 700;
	line-height: 1.73;
	color: #fff;
	letter-spacing: 0.06em;
	text-align: center;
	-webkit-transform: translateX(8px);
	transform: translateX(8px);
	margin: 0 0 23px;
}

#counseling .anserFlex {
	position: relative;
}

#counseling .anserFlex .image {
	position: absolute;
	width: 100%;
	max-width: 216px;
	left: -34px;
	top: -32px;
}

#counseling .anserFlex .anserConts {
	width: calc(100% - 166px);
	margin: 0 0 0 166px;
}

#counseling .anserFlex .anserConts p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.84;
	color: #fff;
	margin: 0 0 24px;
}

#counseling .anserFlex .anserConts p.addText {
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.84;
	text-align: right;
	color: #fff;
	padding: 0 5px 0 0;
}

#counseling .flowHead {}

#counseling .flowHead h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.7;
	color: #fff;
	text-align: center;
	margin: 0 0 23px;
}

#counseling .flowSlider {
	margin: 0 0 43px;
}

#counseling .flowSlider .slick-list {
	overflow: visible;
}

#counseling .flowSlider .box {
	background: #fff;
	margin-right: 24px;
}

#counseling .flowSlider .box .conts {
	position: relative;
	padding: 27px 17px 30px;
	height: 195px;
}

#counseling .flowSlider .box .no {
	width: 36px;
	line-height: 36px;
	border-radius: 50%;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	text-align: center;
	background: rgb(219,111,128);
	/* background: -webkit-gradient(linear, left top, left bottom, from(rgba(219,111,128,1)), to(rgba(167,130,67,1)));
	background: linear-gradient(180deg, rgba(219,111,128,1) 0%, rgba(167,130,67,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#db6f80",endColorstr="#a78243",GradientType=1); */
	background: -webkit-gradient(linear, left top, left bottom, from(#e68594), to(#d59c30));
	background: linear-gradient(#e68594 0%, #d59c30 100%);
	position: absolute;
	top: -18px;
}

#counseling .flowSlider .box h4 {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.72;
	letter-spacing: 0.06em;
	color: #A78243;
}

#counseling .flowSlider .box p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.92;
}

#counseling .slashText {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 0 0 20px;
}

#counseling .slashText .text {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	line-height: 1.5;
	letter-spacing: 0.06em;
	text-align: center;
	padding: 0 5px;
}

#counseling .button {
	margin: 0 auto;
	text-align: center;
}

#counseling .button img {
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
}

#counseling .lineButton {
	margin: 16px 0 -17px -4px;
	width: calc(100% + 8px);
	text-align: center;
}

#counseling .lineButton img {
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
}

#counseling .counseling-image {
	width: calc(100% + 16px);
	margin: 0 0 35px -8px;
	text-align: center;
}
#counseling .annotationText {
	color:#fff;
	margin-bottom:2em;
	line-height:1.4;
	margin-top:2em;
	text-align:center;
}
#counseling .annotationText .text {
	display:inline-block;
	text-align:left;
}
/*----------------------------------------------------
 plan
----------------------------------------------------*/

#plan {
	position: relative;
	padding: 64px 0 0;
}

#plan .head {
	margin: 0 0 26px 0;
}

#plan .head h2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

#plan .head h2 small {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin: 0 0 12px;
}

#plan .head h2 b {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
}

#plan .conts {
	margin: 0 0 2px;
}

#plan .conts p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.76;
}

#plan .conts p span {
	font-weight: 700;
	color: #A78243;
}

#plan .planSlider {
	position: relative;
	padding: 0;
	width: calc(100% + 32px);
	margin: 0 0 0 -16px;
}

#plan .planSlider .planBox img {
}

#plan .planSlider .prev {
	position: absolute;
	top: 51%;
	left: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#plan .planSlider .next {
	position: absolute;
	top: 51%;
	right: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#plan .addText {
	font-size: 10px;
	line-height: 1.7;
	margin: -38px 0 0 0;
	padding: 0 0 0 28px;
}

/*----------------------------------------------------
 comparison
----------------------------------------------------*/

#comparison {
	position: relative;
	padding: 54px 0 18px;
}

#comparison .head {
	text-align: center;
	margin: 0 0 9px 0;
}

#comparison .head h2 {
	font-size: 23px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
}

#comparison .tableImage {
	margin: 0 0 0 -4px;
	width: calc(100% + 8px);
}

/*----------------------------------------------------
 trainer
----------------------------------------------------*/

#trainer {
	position: relative;
	background: url('../img/trainer-bg.jpg') no-repeat;
	background-size: cover;
	margin: 60px 0 0;
	padding: 46px 0 17px;
}

#trainer .head {
	text-align: center;
	-webkit-transform: translateX(3px) translateY(-39px);
	transform: translateX(3px);
	margin: 0 0 16px;
}

#trainer .trainerBox {
	position: relative;
	padding: 33px 12px 0;
}

#trainer .trainerBox .image {
	position: absolute;
	right: -17px;
	top: 0;
	width: 100%;
	max-width: 207px;
}

#trainer .trainerBox .flexConts {
	position: relative;
	z-index: 1;
}

#trainer .trainerBox .shopName {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: #A78243;
	margin: 0 0 11px;
	line-height: 1.4;
}

#trainer .trainerBox .trainerName {
	margin: 0 0 16px;
	color: #fff;
}

#trainer .trainerBox .trainerName p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

#trainer .trainerBox .trainerName p b {
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.06em;
	margin: 0 0 14px;
}

#trainer .trainerBox .trainerName p small {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.06em;
}

#trainer .trainerMessage {
	margin: 0 0 29px;
	color: #fff;
}

#trainer .trainerMessage p {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.71;
	letter-spacing: 0.04em;
}

#trainer .trainerHistory {
	margin: 0 0 24px;
	position: relative;
	z-index: 1;
}

#trainer .historyHead {
	margin: 0 0 11px;
}

#trainer .historyHead h3 {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: #A78243;
}

#trainer .historyConts {
	padding: 0 0 19px;
	border-bottom: 1px solid #A78243;
}

#trainer .historyConts p {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.72;
	color: #fff;
}

#trainer .historyConts p span.color {
	color: #A78243;
}

#trainer .licenseHead {
	margin: 0 0 11px;
}

#trainer .licenseHead h3 {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: #A78243;
}

#trainer .licenseConts {
	padding: 0 0 9px;
}

#trainer .licenseConts p {
	font-size: 11px;
	font-weight: 500;
	line-height: 1.82;
	color: #fff;
}

#trainer .licenseConts p span.color {
	color: #A78243;
}

#trainer .trainerSlider .prev {
	position: absolute;
	top: 51%;
	left: -11px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#trainer .trainerSlider .next {
	position: absolute;
	top: 51%;
	right: -11px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
}

#trainer .trainerSlider .slick-dots li {
	margin: 0 1px;
}

#trainer .trainerSlider .slick-dots li.slick-active button:before {
	color: transparent;
	background: #A78243;
	opacity: 1;
	width: 11px;
	height: 11px;
	line-height: 11px;
	font-size: 11px;
	border-radius: 50%;
}

#trainer .trainerSlider .slick-dots li button:before {
	color: transparent;
	background: #acacac;
	opacity: 1;
	width: 11px;
	height: 11px;
	line-height: 11px;
	font-size: 11px;
	border-radius: 50%;
}

/*----------------------------------------------------
 cashback
----------------------------------------------------*/
#cashback {
	background: #FAF6EF;
	position: relative;
	padding: 68px 0 75px;
}

#cashback .head {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
	margin: 0 0 8px;
	padding: 0 0 36px;
	text-align: center;
	line-height: 1.5;
}

#cashback .cashback__table {
	font-size: 14px;
}

#cashback .cashback__table dl {
	display: flex;
	border-bottom: 1px solid #CCCCCC;
	padding: 20px 0;
}


#cashback .cashback__table dl:first-of-type {
	display: flex;
    border-top: 1px solid #CCCCCC;
    padding: 20px 0;
    align-items: center;
}

#cashback .cashback__table dt {
	width: 30%;
	line-height: 1.8;
}
#cashback .cashback__table dd {
	line-height: 1.8;
	width: 70%;
}

/*----------------------------------------------------
 faq
----------------------------------------------------*/

#faq {
	position: relative;
	padding: 68px 0 75px;
}

#faq .head {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
	margin: 0 0 8px;
	padding: 0 0 36px;
	text-align: center;
	border-bottom: 1px solid #CCCCCC;
}

#faq .faqBox {
	padding: 15px 0 15px;
	border-bottom: 1px solid #CCCCCC;
}

#faq .faqBox dt {
	position: relative;
}

#faq .faqBox dt .dtFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#faq .faqBox dt .dtFlex .boxHead {
	width: 23px;
	font-size: 22px;
	font-weight: 400;
	color: #AFAFAF;
	margin: 0 3px 0 0;
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px);
}

#faq .faqBox dt .dtFlex .boxConts {
	width: calc(100% - 64px);
}

#faq .faqBox dt .dtFlex .boxConts p {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.461;
	color: #222222;
	padding: 1px 0 0;
}

#faq .faqBox dt .dtFlex .acIcon {
	position: absolute;
	right: 2px;
	top: 2px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#faq .faqBox dt.active .dtFlex .acIcon {
	position: absolute;
	right: 2px;
	top: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

#faq .faqBox dd {
	display:none;
	position: relative;
	padding: 14px 0 0;
}

#faq .faqBox dd .ddFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#faq .faqBox dd .ddFlex .boxHead {
	width: 23px;
	font-size: 22px;
	font-weight: 400;
	color: #A78243;
	margin: 0 3px 0 0;
}

#faq .faqBox dd .ddFlex .boxConts {
	width: calc(100% - 64px);
}

#faq .faqBox dd .ddFlex .boxConts p {
	font-size: 13px;
	font-weight: 500;
	line-height: 2;
	color: #A78243;
	padding: 1px 0 0;
}

/*----------------------------------------------------
 shop
----------------------------------------------------*/

#shop {
	background: #FAF6EF;
	position: relative;
	padding: 52px 0 45px;
}

#shop .head {
	margin: 0 0 36px;
}

#shop .head h2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#shop .head h2 small {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #000000;
	margin: 0 0 17px;
}

#shop .head h2 b {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
}

#shop .shopBox {
	margin: 0 0 16px;
}

#shop .shopBox dt {
	position: relative;
	background: #A78243;
	border-radius: 6px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	padding: 22px 18px 22px;
}

#shop .shopBox dt h3 {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #fff;
}

#shop .shopBox dt .acIcon {
	position: absolute;
	top: 50%;
	right: 4.6%;
	transform: translateY(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#shop .shopBox dt.active .acIcon {
	position: absolute;
	top: 50%;
	right: 4.6%;
	transform: translateY(-50%) rotate(0deg);
	-webkit-transform: translateY(-50%) rotate(0deg);
	-ms-transform: translateY(-50%) rotate(0deg);
}

#shop .shopBox dd {
	display: none;
	padding: 20px 20px 12px;
}

#shop .shopBox dd .map {
	margin: 0 0 22px;
}
#shop .shopBox dd .map iframe {
	height: 80vw;
}

#shop .shopInfo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 20px;
}

#shop .shopInfo .infoHead {
	width: 63px;
}

#shop .shopInfo .infoHead p {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0;
	color: #A78243;
}

#shop .shopInfo .infoConts {
	width: calc(100% - 63px);
}

#shop .shopInfo .infoConts p {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.666;
	letter-spacing: 0;
	color: #000000;
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px);
}
#shop .annotationText {
	display:block;
	line-height:1.4;
	text-align:center;
}
#shop .annotationText .text {
	display:inline-block;
	text-align:left;
}
/*----------------------------------------------------
 partner
----------------------------------------------------*/

#partner {
	background: #fff;
	position: relative;
	padding: 71px 0 59px;
}

#partner .head {
	margin: 0 0 20px;
}

#partner .head h2 {
	font-size: 24px;
	font-weight: 600;
	line-height: 1.75;
	letter-spacing: 0.04em;
	text-align: center;
	color: #A78243;
}

#partner .partnerBox {
	margin: 0 0 41px;
	padding: 0 0 34px;
  border-bottom: 1px solid #CCCCCC;
}

#partner .partnerBox:last-child {
	border: none;
	margin: 0 0 0;
	padding: 0 0 0;
}

#partner .partnerBox .image {
	margin: 0 0 20px;
	text-align: center;
}

#partner .partnerBox .conts p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8125;
	letter-spacing: 0.04em;
	text-align: center;
	color: #000000;
}

#partner .centerConts {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 14px 0 0;
}

#partner .centerConts p {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.666;
	color: #000000;
}

/*----------------------------------------------------
 thanks
----------------------------------------------------*/

#thanks {
	position: relative;
	padding: 60px 0;
}

#thanks .head {
	margin: 0 0 24px;
}

#thanks .head h2 {
	font-size: 16px;
	line-height: 1.6;
	text-align: center;
}

#thanks .conts {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#thanks .conts p {
	font-size: 12px;
	letter-spacing: 0.06em;
	line-height: 1.5;
	margin: 0 0 30px;
}

#thanks .conts .link {
	font-size: 14px;
	font-weight: 700;
}

#thanks .conts .link a {
	color: #0A76BA;
	text-decoration: underline;
}

#mfp_phase_confirm_inner h4 {
	font-size: 16px;
	line-height: 1.6;
	text-align: center;
	margin: 0 0 20px;
}

#mfp_button_send {
	border-radius: 6px;
	font: inherit;
	margin: 0 0 5px;
	padding: 0;
	overflow: visible;
	text-transform: none;
	-webkit-appearance: button;
	outline: none;
	cursor: pointer;
	width: 100%;
	height: 70px;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #fff;
	border: none;
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	background: rgb(219,111,128);
	background: -webkit-gradient(linear, left top, right top, from(rgba(219,111,128,1)), to(rgba(167,130,67,1)));
	background: linear-gradient(90deg, rgba(219,111,128,1) 0%, rgba(167,130,67,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#db6f80",endColorstr="#a78243",GradientType=1);
}

#mfp_button_cancel {
	border-radius: 6px;
	font: inherit;
	margin: 0 0 5px;
	padding: 0;
	overflow: visible;
	text-transform: none;
	-webkit-appearance: button;
	outline: none;
	cursor: pointer;
	width: 100%;
	height: 70px;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #fff;
	border: none;
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	background: #464646;
}

/*----------------------------------------------------
 telArea
----------------------------------------------------*/

#telArea {
	background: #FAF6EF;
	position: relative;
	padding: 40px 0 42px;
}

#telArea .head {
	margin: 0 0 4px;
}

#telArea .head h2 {
	font-size: 24px;
	font-weight: 600;
	line-height: 1.75;
	letter-spacing: 0.04em;
	text-align: center;
	color: #A78243;
}

#telArea .centerConts {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 0 0 29px;
}

#telArea .centerConts p {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.666;
	color: #000000;
}

#telArea .telImage {
	text-align: center;
}

/*----------------------------------------------------
 contact
----------------------------------------------------*/

#contact {
	overflow: hidden;
	position: relative;
	padding: 64px 0 83px;
}

#contact .head {
	text-align: center;
	margin: 0 0 17px;
}

#contact .lineButton {
	margin: 16px 0 3px -31px;
	width: calc(100% + 62px);
}

#contact .centerText {
	text-align: center;
}

#contact .centerText {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.69;
	margin: 0 0 36px;
}

#contact .formbox {
	padding: 0 10px;
}

#contact .formbox .title-label {
	font-size: 12px;
	font-weight: 500;
	margin: 0 0 13px;
}

#contact .formbox .title-label .redPoint {
	font-size: 12px;
	font-weight: 500;
	color: #C73D3D;
	margin: 0 0 0 12px;
}

#contact .formbox .title-label .label-hissu {
	font-size: 10px;
	font-weight: 500;
	color: #fff;
	background: #C73D3D;
	border-radius: 4px;
	padding: 2px 5px;
	margin: 0 0 0 6px;
}

#contact .formbox .title-label .label-nini {
	font-size: 10px;
	font-weight: 500;
	color: #707070;
	background: #fff;
	border: 1.5px solid #707070;
	border-radius: 4px;
	padding: 0px 4px;
	margin: 0 0 0 9px;
}

#contact .formbox .addText {
	margin: 19px 0 14px;
}

#contact .formbox .addText p {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.769;
	color: #333333;
}

#contact .formbox .choice-radio {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin: 0 0 27px;
}

#contact .formbox .sprit {
	width: 99%;
	font-size: 13px;
	font-weight: 700;
	color: #333333;
	padding: 13px 15px;
	border-radius: 6px;
	border: 2px solid #C73D3D;
	background: #fff;
	margin-bottom: 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

#contact .formbox .sprit.last {
	margin: 0;
}

#contact .formbox .inlineframe {
	background-color: #FFFFFF;
	overflow: auto;
	overflow-y: scroll;
	overflow-x: hidden;
	margin: 0 0px 15px;
	padding: 15px;
	border-radius: 0.2em;
	-webkit-border-radius: 0.2em;
	-moz-border-radius: .2em;
	-ms-border-radius: .2em;
	-o-border-radius: .2em;
	width: 98%;
	height: 122px;
	border: 1px solid #CCC;
	margin: 20px auto;
	padding: 20px 15px;
	text-align: left;
}

#contact .formbox .inlineframe h4 {
	text-align: center;
	font-size: 12px;
	margin-bottom: 10px;
}

#contact .formbox .inlineframe p {
	font-size: 12px;
	line-height: 1.5;
	margin-bottom: 10px;
}

#contact form#mailformpro dl dt {
	padding: 15px 5px 5px;
}

#contact form#mailformpro dl dd {
	padding: 5px 15px 15px;
}

#contact .choice-radio input[type="radio"] {
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 20px;
	height: 20px;
	content: "";
	background-color: #FFFFFF;
	border: 2px solid #333333;
	border-radius: 50%;
	vertical-align: middle;
	cursor: pointer;
	margin: 0;
}

#contact .choice-radio input[type="radio"]:checked:after {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	content: "";
	width: 10px;
	height: 10px;
	background: #CC0000;
	border-radius: 12px;
}

#contact .choice-radio .sprit span {
	padding: 0 0 0 11px;
	display: inline-block;
	font-size: 13px;
	line-height: 1.53;
}

#contact .choice-radio .sprit .spritFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#contact .choice-radio .sprit .spritFlex input {
	width: 20px;
}

#contact .choice-radio .sprit .spritFlex > div {
	width: calc(100% - 31px);
}

#contact .choice-radio .sprit .spritFlex .try_catch {
	padding: 7px 0 6px 11px;
	display: inline-block;
	font-size: 13px;
	color: #C73D3D;
}

textarea, [type="search"], [type="date"], [type="tel"], [type="email"], [type="number"], [type="password"], [type="text"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
	font-size: inherit;
	padding: 7px 15px;
	border: 2px solid #b7b7b7;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 99%;
	height: 50px;
	line-height: inherit;
	resize: vertical;
	display: block;
	border-radius: 6px;
	background: #fff;
	outline: none;
}

::-webkit-input-placeholder {
	font-size: 12px;
	font-weight: 500;
	color: #A8A8A8;
}

::-moz-placeholder {
	font-size: 12px;
	font-weight: 500;
	color: #A8A8A8;
}

:-ms-input-placeholder {
	font-size: 12px;
	font-weight: 500;
	color: #A8A8A8;
}

::-ms-input-placeholder {
	font-size: 12px;
	font-weight: 500;
	color: #A8A8A8;
}

::placeholder {
	font-size: 12px;
	font-weight: 500;
	color: #A8A8A8;
}

#contact .form-list > li {
	margin: 0 0 29px;
}

#contact .u-selWrap {
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
	font-size: inherit;
	padding: 0 15px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	max-width: 165px;
	line-height: inherit;
	resize: vertical;
	display: block;
	border: 2px solid #b7b7b7;
	border-radius: 6px;
	outline: none;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#contact .u-selWrap::before {
	content: "";
	display: block;
	position: absolute;
	z-index: 2;
	top: 50%;
	right: 12px;
	border: 2px solid #9a9a9a;
	width: 9px;
	height: 9px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	border-left: none;
	border-top: none;
	margin-top: -2px;
}

#contact .u-selWrap select {
	margin: 0;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: 0 0;
	outline: 0;
	border: 0;
	line-height: 28px;
	height: 46px;
	width: 100%;
	border-right: 30px solid rgba(0, 0, 0, 0);
	border-radius: 0;
	cursor: pointer;
	position: relative;
	z-index: 2;
	display: block;
	font-size: 12px;
	color: #666666;
	font-weight: 500;
}

#contact .lp-checkbox {
	margin: 0 0 44px;
}

#contact .lp-checkbox ul li {
	margin: 0 0 14px;
}

#contact .lp-checkbox ul li .cbox_span {
	position: relative;
	font-weight: bold;
	padding-left: 25px;
	padding-top: 6px;
	display: inline-block;
}

#contact .lp-checkbox ul li .cbox_span::before {
	content: "";
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	width: 20px;
	height: 20px;
	border: 2px solid #333333;
	border-radius: 3px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

#contact .lp-checkbox ul li .mfp_checked .cbox_span::after {
	content: "";
	zoom: 0.7;
	display: block;
	position: absolute;
	top: 4px;
	left: 8px;
	width: 8px;
	height: 16px;
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	border-bottom: 3px solid #d01137;
	border-right: 3px solid #d01137;
}

#contact .lp-checkbox ul li input[type="checkbox"] {
  display: none;
}

#contact .form-item textarea {
	height: 180px;
}

#contact .worningBox {
	margin: -10px 0 52px;
}

#contact .worningBox p {
	font-size: 10px;
	font-weight: 500;
	line-height: 2;
}

#contact .worningBox p a {
	color: #0A76BA;
	text-decoration: underline;
}

#contact .reservation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
	font-size: 14px;
	font-weight: 500;
	color: #000;
	margin: 28px 0 55px;
}

#contact .reservation input[type="checkbox"] {
	zoom: 1.3;
	-webkit-transform: translateX(-3px) translateY(-1px);
	transform: translateX(-3px) translateY(-1px);
}

#contact input[type="submit"] {
	border-radius: 6px;
	font: inherit;
	margin: 0 0 0 -14px;
	padding: 0;
	overflow: visible;
	text-transform: none;
	-webkit-appearance: button;
	outline: none;
	cursor: pointer;
	width: calc(100% + 28px);
	height: 70px;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #fff;
	border: none;
	-webkit-box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	        box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 18px;
	background: rgb(219,111,128);
	background: -webkit-gradient(linear, left top, right top, from(rgba(219,111,128,1)), to(rgba(167,130,67,1)));
	background: linear-gradient(90deg, rgba(219,111,128,1) 0%, rgba(167,130,67,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#db6f80",endColorstr="#a78243",GradientType=1);
}


/*----------------------------------------------------
 SP
----------------------------------------------------*/

@media screen and (max-width: 768px){
	.sp_hidden {
		display: none;
	}
}

/*----------------------------------------------------
 PC
----------------------------------------------------*/
@media screen and  (max-width: 1190px) {

}

@media screen and (min-width: 769px){
	.pc_hidden {
		display: none;
	}

	.inner {
		max-width: 1200px;
	}

	a:hover {
		opacity: 0.7;
	}

	a:hover img {
		opacity: 0.9;
	}

	/*----------------------------
  elements
	----------------------------*/
	html {
		max-width: initial;
	}

	main {
    padding: 136px 0 0 0;
	}

	/*----------------------------
  Heaer
	----------------------------*/

	#header {
		max-width: initial;
	}

	#header .headerTop {
		height: 80px;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}
	#header .headerFlex {
		width: 100%;
	}
	#header .headerFlex .logo {
		max-width: 161px;
		padding: 0;
		margin: auto auto auto 31px;
	}

	#header .headerFlex .headerInfo {
		width: calc(100% - 181px);
	}

	#header .headerFlex .lineButton {
		height: 80px;
		width: 100%;
		max-width: 230px;
	}

	#header .headerFlex .lineButton a {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		padding: 0 0 0 16px;
	}

	#header .headerFlex .lineButton a .text {
		font-size: 16px;
		line-height: 1.5;
	}

	#header .headerFlex .lineButton a .icon {
		margin: 0 11px 0 0;
		width: 46px;
	}

	#header .headerFlex .lineButton a .icon img {
		width: 100%;
		height: auto;
	}

	#header .headerFlex .headerInfo .telBox {
		margin: 0 36px 0 0;
	}

	#header .headerFlex .headerInfo .telBox a .no {
		font-size: 28px;
		margin: 0 0 8px;
	}

	#header .headerFlex .headerInfo .telBox a .time {
		font-size: 13px;
	}

	#header .headerFlex .headerInfo .telBox a .icon {
		width: 28px;
		margin: -11px 9px 0 0;
	}

	#header .headerFlex .headerInfo .telBox a .icon img {
		width: 100%;
		height: auto;
	}

	#header .headerFlex .headerInfo .topNav {
		margin:  0 10px 0 0;
	}

	#header .headerFlex .headerInfo .topNavList {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	#header .headerFlex .headerInfo .topNavListItem {
		margin: 0 27px 0 0;
	}

	#header .headerFlex .headerInfo .topNavListItem a {
		font-size: 14px;
		font-weight: 500;
		color: #333333;
		position: relative;
		display: inline-block;
		padding: 1em 0;
	}
	#header .topNavListSub {
		display: none;
		position: absolute;
		background: #fff;
		color: #000;
		font-size: 11px;
		padding: .4em;
		border-radius: 4px;
		-webkit-box-shadow: 0 5px 16px rgba(0,0,0,.5);
		        box-shadow: 0 5px 16px rgba(0,0,0,.5);
	}
	#header .topNavListSub.open {
		display: block;
	}
	#header .headerFlex .headerInfo .topNavListItem:hover a + .topNavListSub {
		display: block;
	}
	#header .headerFlex .headerInfo .topNavListSub a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		-ms-flex-line-pack: center;
				align-content: center;
		padding:  .4em;
	}
	#header .topNavListSub a .text {
		font-weight: normal;
		padding-right: .4em;
	}
	#header .topNavListSub a .icon {
		margin-left: 1em;
	}
	#header .topNavListSub a .icon img {

	}
	#header .topNavListSubItem {
		display: block;
		padding: .4em .4em;
	}

	#header .headerNav {
		/* padding: 20px 0; */
		padding: 0;
	}
	#header .headerNavList {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		min-height: 56px;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}

	#header .headerNavListItem {
		margin: 0 18px;
	}

	#header .headerNavListItem a .text {
		font-size: 16px;
	}

	#header .headerNavListItem a .icon {
		width: 20px;
    margin: 0 0 0 7px;
		-webkit-transform: translateY(1px);
		transform: translateY(1px);
	}

	#header .headerNavListItem a .icon img {
		width: 100%;
		height: auto;
	}
	#header .headerNavListItem a .new {
	}
	/*----------------------------
  bottomFloating
	----------------------------*/

	#bottomFloating {
		left: initial;
    right: 20px;
    bottom: 18px;
    -webkit-transform: initial;
            transform: initial;
    max-width: 431px;
	}

	#bottomFloating img {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}

	#bottomFloating .inner {
		width: 100%;
	}

	#bottomFloating .button {
		max-width: 100%;
	}

	/*----------------------------
  visual
	----------------------------*/

	#visual .visualBg {
		background: url('../img/mainVisual-bg.jpg') center bottom no-repeat;
		background-size: cover;
	}

	#visual .image {
		width: 100%;
		max-width: 1366px;
		margin: 0 auto;
	}

	#visual .visualConts {
		padding: 38px 0 58px;
	}

	#visual .visualConts p {
		font-size: 12px;
		line-height: 1.83;
		text-align: left;
		padding: 0 0 0 20px;
	}
	#visual .visualContsBanner {
		padding-top: 40px;
	}
	#visual .visualContsBanner a {
		display: inline-block;
		border-radius: 12px;
		overflow: hidden;
	}
	/*----------------------------
  infection
	----------------------------*/

	#infection {
    /* padding: 0 0 121px; */
	}

	#infection .infectionBox {
		border-radius: 20px;
		padding: 43px calc(100vw / 1366 * 60) 35px;
	}

	#infection .infectionBox .head {
		margin: 0 0 40px;
	}

	#infection .infectionBox .head h2 small {
		font-size: 18px;
		margin: 0 0 17px;
	}

	#infection .infectionBox .head h2 b {
		font-size: 32px;
	}

	#infection .infectionLists {
		margin: 0 0 27px;
	}

	#infection .infectionLists .infection-list {
		width: 15%;
		border-radius: 8px;
		padding: 28px 8px 23px;
	}

	#infection .infectionLists .infection-list p {
		font-size: 18px;
	}

	#infection .infectionLists .infection-list .icon {
		height: calc(100vw / 1366 * 103);
		max-height: 103px;
		margin: 0 0 16px;
	}

	#infection .infectionLists .infection-list .icon img {
		width: 100%;
		height: auto;
	}

	#infection .infectionLists .infection-list:nth-child(1) .icon {
		-webkit-transform: translateX(-7px) translateY(0px);
		transform: translateX(-7px) translateY(0px);
		width: 60%;
	}

	#infection .infectionLists .infection-list:nth-child(2) .icon {
		-webkit-transform: translateX(0px) translateY(34px);
		transform: translateX(0px) translateY(34px);
    width: 77%;
	}

	#infection .infectionLists .infection-list:nth-child(3) .icon {
		-webkit-transform: translateX(-2px) translateY(5px);
		transform: translateX(-2px) translateY(5px);
    width: 73%;
	}

	#infection .infectionLists .infection-list:nth-child(4) .icon {
		-webkit-transform: translateX(1px) translateY(1px);
		transform: translateX(1px) translateY(1px);
    width: 83%;
	}

	#infection .infectionLists .infection-list:nth-child(5) .icon {
		-webkit-transform: translateX(0px) translateY(2px);
		transform: translateX(0px) translateY(2px);
    width: 84%;
	}

	#infection .infectionLists .infection-list:nth-child(6) .icon {
		-webkit-transform: translateX(-1px) translateY(2px);
		transform: translateX(-1px) translateY(2px);
    width: 69%;
	}

	#infection .link a .text {
		font-size: 18px;
	}

	#infection .link a .icon {
		margin: 0 0 0 11px;
	}

	#infection .link a .icon img {
		width: 24px;
		height: auto;
	}
	/*----------------------------
  #award
	----------------------------*/
	#award {
		padding: 60px 0 70px;
	}

	/*----------------------------
  campaign
	----------------------------*/
	#campaign {
		padding: 120px 0 ;
	}
  #campaign .image_03__picture {
    display: block;
    position: absolute;
    width: 689px;
    height: 608px;
    bottom: 0;
    right: -170px;
  }
	#campaign .head {
		width: 54%;
		margin: auto auto 68px auto;
	}
	#campaign .head img {
		width: 100%;
	}
	#campaign .campaign-foot-btn {
		border-radius: 12px;
		width: 58%;
		padding: 18px;
		bottom: 6%;
	}
	#campaign .campaign-foot-btn img {
		width: 57%;
	}
	#campaign .campaign-cashback-btn {
		font-size: 20px;
		position: absolute;
		bottom: 20px;
		left: 0;
		right: 0;
	}
	
	#campaign .campaign-cashback-btn:after {
		content: "";
		display: inline-block;
		width: 1.2em;
		height: 1em;
		background-image: url('../img/bottomArrow.svg');
		background-repeat: no-repeat;
		margin-left: 4px;
		transform: translateY(5px);
	}
		/*----------------------------
  campaign2
	----------------------------*/
	#campaign2 {
		padding: 30px 0 60px;
	}
	#campaign2 .inner {
		width: calc(100% - 4rem);
	}
	#campaign2 .head {
		width: 54%;
		margin: auto auto 68px auto;
	}
	#campaign2 .head img {
		width: 100%;
	}
	#campaign2 .campaign-foot-btn {
		border-radius: 12px;
		width: 58%;
		padding: 18px;
		margin: 40px auto auto;

		/* bottom: 6%; */
	}
	#campaign2 .campaign-foot-btn img {
		width: 57%;
	}
	/*----------------------------
  bestofmisstokyo
	----------------------------*/
	#bestofmisstokyo .bestofmisstokyoBox {
		background: url('../img/bestofmisstokyo-bg-pc.jpg') no-repeat;
		background-size: cover;
	}
	#bestofmisstokyo .bestofmisstokyoBox .image {
		width: 685px;
		margin: 0 auto 19px;
	}
	#bestofmisstokyo .bestofmisstokyoBox .conts p {
		font-size: 18px;
	}
	#bestofmisstokyo .bestofmisstokyoBox .centerConts p {
		width: auto;
		text-align: center;
		font-size: 14px;
	}

	/*----------------------------
  future
	----------------------------*/
	#future {
		padding: 0 0 91px;
	}

	#future .head {
		width: 100%;
		max-width: 633px;
		margin: 0 auto 39px;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}

	#future .head img {
		width: 100%;
	}

	#future .futureSlider {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin: 0 0 73px;
	}

	#future .inner {
		max-width: 1077px;
	}

	#future .listBox {
		margin-right: 0;
		width: 23.2%;
	}

	#future .listBox .image {
    margin-bottom: 19px;
	}

	#future .listBox .conts p {
		font-size: 18px;
		line-height: 1.666;
		white-space: nowrap;
	}

	#future .textConts p {
		font-size: 26px;
		line-height: 1.69;
		margin: 0 0 24px;
	}

	#future .textConts .textImage {
		width: 100%;
		text-align: center;
		margin: 0 0 0 0;
	}

	/*----------------------------
  reason
	----------------------------*/
	#reason {
		padding: 111px 0 124px;
		background: url('../img/reason-bg-pc.jpg') no-repeat;
    background-size: cover;
	}

	#reason:before {
		display: none;
	}

	#reason:after {
		display: none;
	}

	#reason .inner {
		max-width: 1000px;
	}

	#reason .head {
		margin: 0 auto 60px;
		width: 100%;
    max-width: 605px;
    -webkit-transform: translateX(27px);
		transform: translateX(27px);
	}

	#reason .head img {
		width: 100%;
	}

	#reason .reasonBox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin: 0 0 78px;
	}

	#reason .reasonBox.box02,
	#reason .reasonBox.box04,
	#reason .reasonBox.box06 {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
	}

	#reason .reasonBox.box02 {
		margin: 0 0 78px;
	}

	#reason .reasonBox.box04 {
		display: block;
	}

	#reason .reasonBox.box04 .innerFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
	}

	#reason .reasonBox.box05 {
		display: block;
	}

	#reason .reasonBox.box05 .innerFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	#reason .reasonBox .image {
		width: 52%;
		margin: 0;
	}

	#reason .reasonBox .conts {
    width: 44%;
		padding: 34px 0 0;
	}

	#reason .reasonBox .conts .fukidashi {
		margin: 0 0 16px;
	}

	#reason .reasonBox .conts h3 {
		line-height: 1.666;
		margin: 0 0 16px;
	}

	#reason .reasonBox .conts p {
		font-size: 16px;
	}

	#reason .reasonBox.box01 .conts .fukidashi {
		-webkit-transform: translateX(-11px);
		transform: translateX(-11px);
	}

	#reason .reasonBox.box02 .conts .fukidashi {
		-webkit-transform: translateY(-3px);
		transform: translateY(-3px);
		width: calc(100% + 70px);
	}

	#reason .reasonBox.box03 .conts .fukidashi {
		-webkit-transform: translateX(-11px);
		transform: translateX(-11px);
		width: calc(100% + 70px);
	}

	#reason .reasonBox.box04 .conts .fukidashi {
		-webkit-transform: translateY(-3px);
		transform: translateY(-3px);
		width: calc(100% + 70px);
	}

	#reason .reasonBox.box05 .conts .fukidashi {
		-webkit-transform: translateX(-11px);
		transform: translateX(-11px);
		width: calc(100% + 70px);
	}

	#reason .reasonBoxLists {
		margin: 41px 16px -18px;
	}

	#reason .reasonBoxLists .box {
    width: 23%;
    margin: 0 0 22px;
	}

	#reason .reasonBoxLists .box .boxImage {
  	margin: 0 0 12px;
	}

	#reason .reasonBoxLists .box p {
		font-size: 14px;
	}

	#reason .delicaBox {
		margin: 41px 33px 51px;
		padding: 30px 35px 32px;
		border-radius: 20px;
	}

	#reason .delicaBox .delcaTopFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	#reason .delicaBox .delicaLogo {
		width: 30%;
		margin-right: 28px;
	}

	#reason .delicaBox .delicaLogo img {
		width: 100%;
	}

	#reason .delicaBox h4 {
		width: 65%;
		text-align: left;
		padding: 16px 0 0 0;
	}

	#reason .delicaBox h4 small {
		font-size: 16px;
	}

	#reason .delicaBox h4 b {
		font-size: 16px;
	}

	#reason .delicaBox .delcaBottomFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	#reason .delicaImage {
		width: 47%;
		margin: 0 0 0;
	}

	#reason .delicaBox p {
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.04em;
		width: 49.6%;
		padding: 13px 0 0 0;
	}

	/*----------------------------
  practice
	----------------------------*/

	#practice {
		padding: 76px 0 0;
	}

	#practice .image {
		width: 100%;
		margin: 0 0 0;
		-webkit-transform: translateX(39px);
		transform: translateX(39px);
		text-align: center;
	}

	/*----------------------------
  achievement
	----------------------------*/

	#achievement {
		padding: 130px 0 94px;
	}

	#achievement .inner {
		max-width: 1100px;
	}

	#achievement .head {
		text-align: center;
		margin: 0 auto 25px;
		width: 100%;
		max-width: 536px;
	}

	#achievement .head img {
		width: 100%;
		height: auto;
	}
	#achievement .achievementList .achievementSlider {
		display: grid;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 30px;
		/* gap: 20%; */
	}

	#achievement .achievementList .achievementSlider .imageBox {
		/* width: 31.4%; */
		margin: auto;
		border-radius: 30px;
		-webkit-box-shadow: 0 20px 40px rgba(0, 0, 0, .1);
		        box-shadow: 0 20px 40px rgba(0, 0, 0, .1);
	}

	#achievement .achievementList .achievementSlider .imageBox img {
		width: 100%;
		/* max-width: 135%;
    -webkit-transform: translateX(-13%);
            transform: translateX(-13%); */
	}

	#achievement .addText {
		font-size: 14px;
		/* margin: -85px 0 0; */
	}
	/* #achievement .achievementList .achievementSlider {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	#achievement .achievementList .achievementSlider .imageBox {
		width: 31.4%;
	}

	#achievement .achievementList .achievementSlider .imageBox img {
		max-width: 135%;
    -webkit-transform: translateX(-13%);
            transform: translateX(-13%);
	}

	#achievement .addText {
		font-size: 14px;
		margin: -85px 0 0;
	} */

	/*----------------------------
  refund
	----------------------------*/

	#refund .inner {
		max-width: 1000px;
	}

	#refund .refundBox {
		position: relative;
    border: 6px solid #E5D4B7;
    padding: 48px 37px 37px;
	}

	#refund .refundBox .sp_hidden {
		position: absolute;
		left: 31px;
		top: 20px;
	}

	#refund .refundBox .imageConts {
		width: 66%;
    max-width: 600px;
    margin: auto;
	}

	#refund .refundBox .imageConts img {
		width: 100%;
		height: auto;
	}

	#refund .refundBox p {
		font-size: 18px;
		margin: 20px 0 40px;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	#refund .refundBox .link a .text {
		font-size: 18px;
	}

	#refund .refundBox .link a .icon {
    margin: 0 0 0 11px;
	}

	#refund .refundBox .link a .icon img {
    width: 24px;
    height: auto;
	}

	/*----------------------------
  counseling
	----------------------------*/

	#counseling {
		margin: 105px 0 0;
		/* padding: 0 0 6px; */
		padding: 0 0 60px;
	}

	#counseling.counseling02 {
    margin: 0;
    /* padding: 0 0 31px; */
    padding: 0 0 60px;
	}

	#counseling .head {
		width: 100%;
		margin: 0 0 -142px;
		-webkit-transform: translateX(-18px) translateY(-110px);
    transform: translateX(-18px) translateY(-110px);
	}

	#counseling.counseling02 .head {
    -webkit-transform: translateX(7px) translateY(-81px);
    transform: translateX(7px) translateY(-81px);
    margin: 0 0 -88px;
	}

	#counseling .iconLists {
		position: relative;
		z-index: 1;
	}

	#counseling .anserFlex,
	#counseling .counselingAnser {
		width: 100%;
		max-width: 1000px;
		margin: 0 auto 77px;
	}

	#counseling .counselingAnser h3 {
		font-size: 32px;
		text-align: left;
		margin: 0 0 9px 242px;
		padding: 29px 0 0 0;
	}

	#counseling .anserFlex .anserConts {
		width: calc(100% - 246px);
		margin: 0 0 0 246px;
	}

	#counseling .anserFlex .anserConts p {
		font-size: 18px;
		line-height: 1.888;
	}

	#counseling .anserFlex .anserConts p.addText {
		font-size: 14px;
		text-align: left;
		padding: 0 0 0 3px;
		margin: -2px 0 0;
	}

	#counseling .anserFlex .image {
    max-width: 290px;
    left: -34px;
    top: -190px;
		z-index: 2;
	}

	#counseling .flowHead {
		margin: 0 0 57px;
	}

	#counseling .flowHead h3 {
		font-size: 32px;
		letter-spacing: 0.06em;
	}

	#counseling .flowSlider {
		width: 100%;
		max-width: 1010px;
		margin: 0 auto 63px;
	}

	#counseling .flowSlider .box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin: 0 0 40px;
	}

	#counseling .flowSlider .box .image {
		width: 318px;
	}

	#counseling .flowSlider .box .image img {
		-o-object-fit: cover;
		   object-fit: cover;
		width: 100%;
		height: 100%;
	}

	#counseling .flowSlider .box .conts {
		width: calc(100% - 341px);
		padding: 47px 30px 30px 16px;
		height: auto;
	}

	#counseling .flowSlider .box .no {
		width: 56px;
		height: 56px;
		font-size: 28px;
		line-height: 52px;
		top: -23px;
		left: 4px;
	}

	#counseling .flowSlider .box h4 {
		font-size: 22px;
		margin: 0 0 5px;
	}

	#counseling .flowSlider .box p {
		font-size: 16px;
	}

	#counseling .slashText {
		/* margin: 0 0 0; */
		margin: 0 0 30px;
	}

	#counseling .slashText .text {
		font-size: 32px;
    line-height: 1.625;
		padding: 0 15px;
	}

	#counseling .slashText .leftObj {
		width: 34px;
		-webkit-transform: translateY(10px);
		transform: translateY(10px);
	}

	#counseling .slashText .leftObj img {
		width: 100%;
		height: auto;
	}

	#counseling .slashText .rightObj {
		width: 34px;
		-webkit-transform: translateY(10px);
		transform: translateY(10px);
	}

	#counseling .slashText .rightObj img {
		width: 100%;
		height: auto;
	}

	#counseling .button img {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}

	#counseling .lineButton img {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}

	#counseling.counseling02 .counseling-image {
		margin: 0 0 47px -8px;
		position: relative;
		z-index: 1;
	}

	#counseling .buttonsFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	#counseling .buttonsFlex .button {
		margin: 0;
		width: 50%;
	}

	#counseling .buttonsFlex .button img {
		-webkit-box-shadow: none;
		        box-shadow: none;
    max-width: 107%;
    -webkit-transform: translateX(-4px);
            transform: translateX(-4px);
	}

	#counseling .buttonsFlex .lineButton {
		margin: 0;
		width: 50%;
	}

	#counseling .buttonsFlex .lineButton img {
		-webkit-box-shadow: none;
		        box-shadow: none;
    max-width: 107%;
    -webkit-transform: translateX(-78px);
		transform: translateX(-78px);
	}
	#counseling .annotationText {
		font-size: 1.25em;
	}
	/*----------------------------
  plan
	----------------------------*/

	#plan {
		margin: 0 0 0;
		padding: 126px 0 6px;
	}

	#plan .head {
    margin: 0 0 48px 0;
	}

	#plan .head h2 small {
    font-size: 32px;
		margin: 0 0 27px;
	}

	#plan .head h2 b {
    font-size: 60px;
	}

	#plan .conts {
		text-align: center;
		margin: 0;
	}

	#plan .conts p {
		font-size: 26px;
	}

	#plan .planSlider {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		/* margin: -25px 0 0; */
		padding: 0 7%;
		margin-bottom: -40px;
	}

	#plan .planSlider .planBox {
		/* width: 50%; */
		width: 25%;
		overflow: visible;
	}

	#plan .planSlider .planBox img {
		/* max-width: 158%; */
    width: 100%;
		/* margin-left: -14%; */
	}
/*

	#plan .planSlider .planBox:first-child img {
		-webkit-transform: translateX(-23px);
		transform: translateX(-23px);
	}

	#plan .planSlider .planBox:last-child img {
		-webkit-transform: translateX(-144px);
		transform: translateX(-144px);
	} */

	#plan .addText {
		font-size: 13px;
    line-height: 1.7;
    /* margin: -76px 11% 0 0; */
    margin: 0 11% 0 0;
		padding: 0 0 0;
		text-align: right;
	}

	/*----------------------------
  comparison
	----------------------------*/

	#comparison {
		padding: 108px 0 0;
	}

	#comparison .head {
		margin: 0 0 14px 0;
	}

	#comparison .head h2 {
		font-size: 46px;
	}

	#comparison .tableImage {
		text-align: center;
		margin: 0 0 57px calc(100vw / 1366 * -53);
    width: 100%;
	}

	/*----------------------------
  trainer
	----------------------------*/

	#trainer {
		margin: 120px 0 0;
    padding: 90px 0 90px;
		background: url('../img/trainer-bg-pc.jpg') no-repeat;
		background-size: cover;
	}

	#trainer .inner {
		max-width: 973px;
	}

	#trainer .head {
		width: 100%;
		max-width: 742px;
		margin: 0 auto 57px;
	}

	#trainer .head img {
		width: 100%;
	}

	#trainer .trainerSlider .prev {
		left: -102px;
		width: 24px;
	}

	#trainer .trainerSlider .prev img {
		width: 100%;
		height: auto;
	}

	#trainer .trainerSlider .next {
		right: -102px;
		width: 24px;
	}

	#trainer .trainerSlider .next img {
		width: 100%;
		height: auto;
	}

	#trainer .trainerBox .shopName {
		font-size: 16px;
		margin: 0 0 17px;
	}

	#trainer .trainerBox .trainerName {
		margin: 0 0 29px;
		min-height: 66px;
	}

	#trainer .trainerBox .trainerName p b {
		font-size: 36px;
	}

	#trainer .trainerBox .trainerName p small {
		font-size: 16px;
	}

	#trainer .trainerMessage {
		margin: 0 0 24px;
	}

	#trainer .trainerMessage p {
		font-size: 18px;
	}

	#trainer .historyHead h3 {
		font-size: 16px;
	}

	#trainer .historyConts {
		padding: 0 0 21px;
	}

	#trainer .historyConts p {
		font-size: 14px;
		line-height: 1.83;
	}

	#trainer .licenseHead h3 {
		font-size: 16px;
	}

	#trainer .licenseConts p {
		font-size: 14px;
	}

	#trainer .trainerBox {
    position: relative;
    padding: 33px 63px 0 12px;
	}

	#trainer .trainerBox .image {
		position: absolute;
		right: 26px;
		top: 0;
		width: 100%;
		max-width: 257px;
	}

	#trainer .slick-dots {
		bottom: -60px;
	}

	#trainer .trainerSlider .slick-dots li {
		margin: 0 9px;
	}

	#trainer .trainerSlider .slick-dots li.slick-active button:before {
		width: 16px;
		height: 16px;
		line-height: 16px;
		font-size: 16px;
	}

	#trainer .trainerSlider .slick-dots li button:before {
		width: 16px;
		height: 16px;
		line-height: 16px;
		font-size: 16px;
	}

	/*----------------------------
	cashback
	----------------------------*/
	#cashback {
        padding: 100px 0 120px;
	}
	#cashback .inner {
		max-width: 1000px;
	}

	#cashback .head {
		font-size: 44px;
		margin: 0;
		padding: 0 0 69px;
	}

	#cashback .cashback__table {
		font-size: 16px;
	}

	/*----------------------------
  faq
	----------------------------*/

	#faq {
		padding: 171px 0 220px;
	}

	#faq .inner {
		max-width: 1000px;
	}

	#faq .head {
		font-size: 44px;
		margin: 0;
		padding: 0 0 69px;
	}

	#faq .faqBox {
    padding: 37px 0;
	}

	#faq .faqBox dt .dtFlex {
		padding: 0 0 0 30px;
	}

	#faq .faqBox dt .dtFlex .boxHead {
		font-size: 28px;
		width: 29px;
		margin: 0 8px 0 0;
	}

	#faq .faqBox dt .dtFlex .boxConts {
    width: calc(100% - 110px);
	}

	#faq .faqBox dt .dtFlex .boxConts p {
		font-size: 18px;
	}

	#faq .faqBox dt .dtFlex .acIcon {
		width: 24px;
		height: 24px;
		right: 31px;
	}

	#faq .faqBox dt.active .dtFlex .acIcon {
		right: 31px;
	}

	#faq .faqBox dt .dtFlex .acIcon img {
		width: 100%;
		height: auto;
	}

	#faq .faqBox dd .ddFlex {
		padding: 13px 0 0 32px;
	}

	#faq .faqBox dd .ddFlex .boxHead {
		font-size: 28px;
		width: 29px;
		margin: 0 6px 0 0;
		padding: 10px 0 0 0;
	}

	#faq .faqBox dd .ddFlex .boxConts p {
		font-size: 18px;
		line-height: 2;
	}

	/*----------------------------
  shop
	----------------------------*/

	#shop {
		padding: 96px 0 41px;
	}

	#shop .inner {
		max-width: 1008px;
	}

	#shop .head {
		margin: 0 0 59px;
	}

	#shop .head h2 small {
		font-size: 28px;
		margin: 0 0 26px;
	}

	#shop .head h2 b {
		font-size: 48px;
	}

	#shop .shopBox {
    margin: 0 0 48px;
	}

	#shop .shopBox dt {
		border-radius: 12px;
		padding: 17px 38px 17px;
	}

	#shop .shopBox dt h3 {
		font-size: 22px;
	}

	#shop .shopBox dt .acIcon {
		right: 2.8%;
    width: 19px;
    height: 19px;
	}

	#shop .shopBox dt.active .acIcon {
		right: 2.8%;
	}

	#shop .shopBox dt .acIcon img {
		width: 100%;
		height: auto;
	}

	#shop .shopBox dd {
		padding: 41px 0 0;
	}

	#shop .shopBox .ddFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	#shop .shopBox .ddFlex .map {
		width: 53%;
		margin: 0;
	}
	#shop .shopBox .ddFlex .map iframe {
		height: 550px;
	}

	#shop .shopBox .ddFlex .shopConts {
		width: 44.8%;
		padding: 12px 0 0 0;
	}

	#shop .shopInfo {
		margin: 0 0 80px;
	}

	#shop .shopInfo .infoHead {
		width: 93px;
	}

	#shop .shopInfo .infoHead p {
		font-size: 18px;
	}

	#shop .shopInfo .infoConts {
		width: calc(100% - 93px);
	}

	#shop .shopInfo .infoConts p {
		font-size: 18px;
		line-height: 1.444;
	}
	#shop .annotationText {
		font-size: 1.25em;
	}

	/*----------------------------
  partner
	----------------------------*/

	#partner {
		padding: 90px 0 66px;
	}

	#partner .inner {
		max-width: 1110px;
	}

	#partner .head {
    margin: 0 0 49px;
	}

	#partner .head h2 {
		font-size: 36px;
		line-height: 1.5;
	}

	#partner .partnerFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: distribute;
		    justify-content: space-around;
	}

	#partner .partnerFlex .partnerBox {
		width: 31.3%;
		border: none;
		margin-top: 20px;
	}

	#partner .partnerFlex .partnerBox:first-child .image {
		/* margin: -40px 0 40px 0; */
	}

	#partner .partnerBox .conts p {
		line-height: 1.75;
	}

	#partner .centerConts p {
		text-align: center;
	}

	/*----------------------------
  telArea
	----------------------------*/

	#telArea {
		padding: 48px 0 11px;
	}

	#telArea .telFlex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	#telArea .head h2 {
		font-size: 34px;
	}

	#telArea .centerConts p {
		font-size: 18px;
	}

	#telArea .telImage {
		width: 100%;
		max-width: 398px;
		margin: 0 0 0 31px;
		padding: 13px 0 0 0;
	}

	#telArea .telImage img {
		width: 100%;
		height: auto;
	}

	/*----------------------------
  contact
	----------------------------*/

	#contact {
		padding: 163px 0 168px;
	}

	#contact .head {
		width: 100%;
		max-width: 546px;
		margin: 0 auto 56px;
	}

	#contact .head img {
		width: 100%;
		height: auto;
	}

	#contact .lineButton {
		margin: 16px auto 3px;
		width: 54%;
	}

	#contact .lp-form-btn {
		text-align: center;
	}

	#contact input[type="submit"] {
		width: 100%;
		max-width: 536px;
		height: 110px;
		font-size: 24px;
		margin: 0 0 0 0;
	}

	#contact .centerText {
		font-size: 18px;
		margin: 0 0 64px;
	}

	#contact .formbox .title-label {
		font-size: 18px;
	}

	#contact .formbox .title-label .label-hissu {
		font-size: 13px;
		margin: 0 0 0 12px;
	}

	#contact .choice-radio .sprit span {
		font-size: 16px;
	}

	#contact .choice-radio .sprit .spritFlex .try_catch {
		font-size: 16px;
		padding: 0 0 0 11px;
	}

	#contact .formbox {
		padding: 0 10px;
		margin: 0 auto;
		width: 100%;
		max-width: 1000px;
	}


	#contact .choice-radio .sprit .spritFlex input {
		-webkit-transform: translateY(2px);
		transform: translateY(2px);
	}

	textarea, [type="search"], [type="date"], [type="tel"], [type="email"], [type="number"], [type="password"], [type="text"] {
		height: 56px;
		font-size: 16px;
	}

	#contact .choice-radio input[type="radio"] {
		-webkit-transform: translateY(-3px);
		transform: translateY(-3px);
	}

	#contact .form-list > li {
    margin: 0 0 40px;
	}

	::-webkit-input-placeholder {
		font-size: 16px;
	}

	::-moz-placeholder {
		font-size: 16px;
	}

	:-ms-input-placeholder {
		font-size: 16px;
	}

	::-ms-input-placeholder {
		font-size: 16px;
	}

	::placeholder {
		font-size: 16px;
	}

	#contact .formbox .title-label .redPoint {
		font-size: 14px;
	}

	#contact .lp-checkbox ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	#contact .lp-checkbox ul li {
		margin: 0 28px 14px 0;
	}

	#contact .lp-checkbox ul li .cbox_span {
		font-size: 16px;
		padding-left: 28px;
	}

	#contact .formbox .addText p {
		font-size: 15px;
	}

	#contact .lp-checkbox ul li .cbox_span::before {
		top: 5px;
	}

	#contact .lp-checkbox ul li .mfp_checked .cbox_span::after {
		top: 9px;
	}

	#contact .formbox .title-label .label-nini {
		font-size: 13px;
		margin: 0 0 0 12px;
	}

	#contact .worningBox p {
		font-size: 13px;
	}

	#contact .formbox .inlineframe h4 {
		font-size: 16px;
		margin-bottom: 26px;
	}

	#contact .formbox .inlineframe p {
		font-size: 13px;
	}

	#contact .formbox .inlineframe {
		height: 180px;
	}

	#contact form#mailformpro dl dt {
		float: initial;
		width: 100%;
		text-align: left;
		border: none;
		padding: 15px 5px 10px;
		font-size: 14px;
	}

	#contact form#mailformpro dl dd {
		font-size: 13px;
		line-height: 1.56;
	}

	#contact .reservation span {
		font-size: 18px;
	}

	#contact .reservation input[type="checkbox"] {
		zoom: 1.5;
	}

	#contact .u-selWrap {
		max-width: 260px;
	}

	#contact .u-selWrap select {
		font-size: 16px;
		height: 56px;
	}

	table#mfp_confirm_table tr th {
		font-size: 1.55rem;
	}

	#thanks .head h2 {
		font-size: 24px;
	}

	#thanks .conts p {
    font-size: 16px;
    margin: 0 0 50px;
	}

	#thanks .conts .link {
		font-size: 20px;
	}

	/*----------------------------
  footer
	----------------------------*/

	#footer .footerLogo {
		width: 100%;
    max-width: 408px;
    margin: 0 auto 0;
    padding: 0 0 77px;
		-webkit-transform: translateX(-23px);
		transform: translateX(-23px);
	}

	#footer .footerBg {
		padding: 65px 0 136px;
	}

	#footer .footerBg .inner {
		max-width: 1006px;
	}

	#footer .footerBg .shopListHead {
		font-size: 20px;
		margin: 0 0 24px;
	}

	#footer .shopLists ul li:nth-child(odd) {
		width: auto;
	}

	#footer .shopLists ul li:nth-child(even) {
		width: auto;
	}

	#footer .shopLists ul li {
		margin-right: 44px;
	}

	#footer .shopLists ul li a {
		font-size: 16px;
	}

	#footer .shopLists {
    margin: 0 0 96px;
	}

	#footer .fotterInfo .companyLink a {
		font-size: 16px;
	}

	#footer .fotterInfo .copy p {
		font-size: 12px;
	}

}


/*----------------------------------------------------
 Pc Max 1000
----------------------------------------------------*/

@media screen and (min-width: 769px) and (max-width: 1000px) {

	#header .headerFlex .logo {
		width: 125px;
	}

	#header .headerFlex .headerInfo .telBox {
		margin: 0 17px 0 0;
	}

	#header .headerFlex .headerInfo .telBox a .no {
		font-size: 20px;
		white-space: nowrap;
	}

	#header .headerFlex .headerInfo .telBox a .time {
		font-size: 12px;
		white-space: nowrap;
	}

	#header .headerFlex .headerInfo .telBox a .icon {
    width: 20px;
    margin: -18px 9px 0 0;
	}

	#header .headerFlex .lineButton a .text {
		font-size: 14px;
	}

	#header .headerFlex .lineButton a .icon {
		width: 38px;
	}

	#header .headerFlex .lineButton {
		max-width: 206px;
	}

	#reason .reasonBox.box01 .conts .fukidashi {
		width: 100%;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}

	#reason .reasonBox.box02 .conts .fukidashi {
		width: 100%;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}

	#reason .reasonBox.box03 .conts .fukidashi {
		width: 100%;
	}

	#reason .reasonBox.box04 .conts .fukidashi {
		width: 100%;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}

	#reason .reasonBox.box05 .conts .fukidashi {
		width: 100%;
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
	}

	#practice .image {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	#achievement .addText {
    /* margin: -74px 0 0; */
	}

	#counseling .head {
		-webkit-transform: translateX(0px) translateY(-110px);
		transform: translateX(0px) translateY(-110px);
	}

	/* #plan .planSlider .planBox:first-child img {
		-webkit-transform: translateX(-7%);
		transform: translateX(-7%);
	}

	#plan .planSlider .planBox:last-child img {
		-webkit-transform: translateX(-7%);
		transform: translateX(-7%);
	} */

	#plan .addText {
		margin: 0 11% 0 0;
	}

	#comparison .tableImage {
		margin: 0 0 57px;
	}

	#trainer .trainerBox {
    padding: 33px 40px 0;
	}

	#trainer .trainerSlider .prev {
		left: -5px;
	}

	#trainer .trainerSlider .next {
		right: -5px;
	}

	#partner .partnerFlex .partnerBox:first-child .image {
		margin: -31px 0 31px 0;
	}

}


/*----------------------------
once_a_week
----------------------------*/
#once_a_week {
	text-align: center;
	padding: 30px 0;
}

#once_a_week .inner{
	padding: 30px 0;
  width: 100%;
  padding: 0 5.07vw;
}
#once_a_week .head {
	margin: auto auto 45px auto;
	width: 86vw;
	max-width: 86vw;
}
#once_a_week .head img {
	width: 100%;
	height: auto;
}
#once_a_week .once_a_weekList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	font-family:  'Noto Serif JP', serif;
  flex-direction: column;
}
#once_a_week .once_a_weekListItem {
	width: 100%;
  display: flex;
	color: #ffffff;
	font-weight: 400;
	font-size: 3.7vw;
	line-height: 1.7;
  padding: 0 45px;
  height: min(calc(620 / (100 - 4) * 100vw), 82.67vw);
  background-repeat: no-repeat;
  background-size: 100%;
}

#once_a_week .once_a_weekListItem.bg_1 {
  background-image: url('../img/once_a_week-img_sp_01.png');
}

#once_a_week .once_a_weekListItem.bg_2 {
  background-image: url('../img/once_a_week-img_sp_02.png');
  margin-top: -9.86vw;
}

#once_a_week .once_a_weekListItem.bg_3 {
  background-image: url('../img/once_a_week-img_sp_03.png');
  margin-top: -9.86vw;
}

#once_a_week .once_a_weekListItem.bg_4 {
  background-image: url('../img/once_a_week-img_sp_04.png');
  margin-top: -10.66vw;
}

.once_a_weekListItem__right-50 {
  width: 100%;
  margin-top: 18.67vw;
  text-align: left;
}

.once_a_weekListItem__left-50 {
  width: 100%;
  margin-top: 18.67vw;
  text-align: left;
}

.once_a_weekListItem__head {
  margin-bottom: 2.4vw;
}

.once_a_weekListItem__head-sm {
  font-size: 3.73vw;
  display: block;
  font-weight: 500;
}
.once_a_weekListItem__head-lg {
  font-size: 4.8vw;
  display: block;
  font-weight: bold;
}

.once_a_weekListItem__sub {
  font-size: 2.67vw;
  line-height: 1.5;
  border-top: solid 1px #ffffff;
  padding: 1.87vw 0 !important;
  font-weight: 500;
}

.once_a_weekListItem__text {
  font-size: 2.13vw;
  line-height: 1.875;
  border-top: solid 1px #ffffff;
  padding: 4.27vw 0 0 !important;
  font-weight: 400;
}

@media screen and (min-width: 769px){
	#once_a_week {
		padding: 60px 0 120px;
	}
	#once_a_week .inner {
    width: calc(100% - 4rem);
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
  }

	#once_a_week .head {
		margin-bottom: 90px;
		width: 678px;
	}
	#once_a_week .head img {
	}
	#once_a_week .once_a_weekList {
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
		margin: auto;
	}
	#once_a_week .once_a_weekListItem {
    width: 100%;
		font-size: 18px;
    height: 620px;
    background-repeat: no-repeat;
    background-size: 100%;
    padding: 0 100px;
	}

  #once_a_week .once_a_weekListItem.bg_1 {
    background-image: url('../img/once_a_week-img_pc_01.png');
    justify-content:flex-end;
  }
  #once_a_week .once_a_weekListItem.bg_2 {
    background-image: url('../img/once_a_week-img_pc_02.png');
    margin-top: -70px;
  }
  #once_a_week .once_a_weekListItem.bg_3 {
    background-image: url('../img/once_a_week-img_pc_03.png');
    justify-content:flex-end;
    margin-top: -70px;
  }
  #once_a_week .once_a_weekListItem.bg_4 {
    background-image: url('../img/once_a_week-img_pc_04.png');
    margin-top: -77px;
  }
  #once_a_week .once_a_weekListItem p {
    margin: auto;
    padding: .6em 0 1.5em;
  }

  .once_a_weekListItem__right-50 {
    width: 50%;
    margin-top: 130px;
    text-align: left;
  }

  .once_a_weekListItem__left-50 {
    width: 50%;
    margin-top: 130px;
    text-align: left;
  }

  .once_a_weekListItem__head {
    margin-bottom: 18px;
  }

  .once_a_weekListItem__head-sm {
    font-size: 28px;
    display: block;
    font-weight: 500;
  }
  .once_a_weekListItem__head-lg {
    font-size: 36px;
    display: block;
    font-weight: bold;
  }

  .once_a_weekListItem__sub {
    font-size: 20px;
    line-height: 1.5;
    border-top: solid 1px #ffffff;
    padding: 15px 0 !important;
    font-weight: 500;
  }

  .once_a_weekListItem__text {
    font-size: 16px;
    line-height: 1.875;
    border-top: solid 1px #ffffff;
    padding: 32px 0 0 !important;
    font-weight: 400;
  }
}
@media screen and (min-width: 769px) and (max-width: 1000px) {
	#once_a_week .once_a_weekListItem {
		font-size: 1.7vw;
	}
}
/*----------------------------
efficient
----------------------------*/
#efficient {
	background: #FFFAF2;
	padding: 60px 0 30px;
}
#efficient .head {
	width: 80vw;
	margin: auto;
}
#efficient .head img {
	width: 100%;
	max-width: 100%;
}

#efficient .head-flex {
	width: 100%;
	margin: auto;
	text-align: center;
}
#efficient .head-flex h2 {
	margin-bottom: 80px;
}

#efficient .efficient-picture {
  display: block;
  width: 100%;
}

#efficient .head-flex img {
	width: 100%;
}
#efficient .head-flex h2 img {
	max-width: 90%;
}
#efficient .efficient-chart img {
	max-width: 80%;
}

#efficient .efficientListItem {
	padding: 10vw 0;
	width: 100%;
}
#efficient .efficientListItem .itemTitle {
	position: absolute;
	z-index: 1;
	font-size: 8.8vw;
	font-family: 'Marcellus', sans-serif;
	color: #A78243;
	line-height: 1;
	width: 100%;
	top:-.6em;
}

#efficient .efficientListItem .image {
	position: relative;
	width: 100%;
	margin: 0;
}
#efficient .efficientListItem .image img {
	position: relative;
	margin: 0;
	width: calc(100% + 4rem);
	max-width: calc(100% + 4rem);
}
#efficient .efficientListItem:nth-child(2n) .image {
}
#efficient .efficientListItem:nth-child(2n) .image img {
}
#efficient .efficientListItem:nth-child(2n-1) .image img  {
	left:-4rem;
}
#efficient .efficientListItem:nth-child(2n) .itemTitle {
	text-align: right;
}
#efficient .efficientListItem:nth-child(2n-1) .itemTitle {
}


#efficient .efficientListItem .conts {}
#efficient .efficientListItem .conts .text-01 {
	font-family: 'Noto Serif JP' ,serif;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1.8;
	margin-top: 0.5em;
	text-align: center;
}
#efficient .efficientListItem .conts .text-01 span {
	display: inline-block;
	text-align: left;
}
#efficient .efficientListItem .conts .text-01 em {
	font-weight: bold;
	font-style: normal;
	color: #A78243;
}
#efficient .efficientListItem .conts .text-02 {
	font-size: 13px;
	line-height: 1.875;
	margin-top: 0.5em;
}
#efficient .efficientListItem .conts .text-03 {
	font-size: 10px;
	line-height: 1.7142;
	margin-top: .5em;
}
@media screen and (min-width: 769px){
	#efficient {
		padding: 110px 0;
	}
	#efficient .head {
		width: 672px;
		margin-bottom: 20px;
	}

	#efficient .head-flex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		gap: 0 15vw;
		width: 100%;
		margin: auto;
	}
  #efficient .efficient-picture {
    display: block;
    width: 637px;
  }
	#efficient .head-flex h2 {
		margin-bottom: 0;
	}
	#efficient .head-flex h2 img {
		max-width: 100%;
	}
	#efficient .efficient-chart img {
		max-width: 100%;
	}

	#efficient .efficientListItem .itemTitle {
		font-size: 66px;
	}
	#efficient .efficientListItem {
		width: 92%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		padding: 50px 0;
	}
	#efficient .efficientListItem .image {
		width: 56%;
	}
	#efficient .efficientListItem .conts {
		width: 40%;
	}
	#efficient .efficientListItem:nth-child(2n) {
		margin: auto 0 auto auto;
	}
	#efficient .efficientListItem:nth-child(2n-1) {
		margin: auto auto auto 0;
	}
	#efficient .efficientListItem:nth-child(2n) .image {
		-webkit-box-ordinal-group:3;
		    -ms-flex-order:2;
		        order:2;
	}
	#efficient .efficientListItem:nth-child(2n-1) .image {
		-webkit-box-ordinal-group:2;
		    -ms-flex-order:1;
		        order:1;
	}
	#efficient .efficientListItem:nth-child(2n) .conts {
		        -webkit-box-ordinal-group:2;
		            -ms-flex-order:1;
		                order:1;
	}
	#efficient .efficientListItem:nth-child(2n-1) .conts {
		        -webkit-box-ordinal-group:3;
		            -ms-flex-order:2;
		                order:2;
	}
	#efficient .efficientListItem .image img {
		position: static;
		width: 100%;
		margin: 0;
	}
	#efficient .efficientListItem .conts .text-01 {
		font-size: 24px;
		text-align: left;
	}
	#efficient .efficientListItem .conts .text-02 {
		font-size: 16px;
	}
	#efficient .efficientListItem .conts .text-03 {
		font-size: 14px;
	}
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
	#efficient .efficientListItem .conts .text-01 {
		font-size: 1.9vw;
	}
	#header .headerFlex .lineButton a .text {
		font-size: 1.3vw;
	}

	#header .headerFlex .headerInfo .telBox a .no {
		font-size: 2.2vw;
	}

	#header .headerFlex .headerInfo .topNavListItem {
		margin-right: 1vw;
	}

	#header .headerFlex .headerInfo .topNavListItem a {
		font-size: 1vw;
	}
}


#plan .headNext {
	max-width: 100%;
	width: 690px;
	margin: 20px auto auto auto;
}
#plan .headNext img {
	width: 100%;
}
@media screen and (min-width: 769px){
	#plan .headNext {}
}

.planNyukaikin_wrap {
	margin: 44px auto auto;
}
.planNyukaikin {
	width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	max-width: 480px;
	margin: auto;
	background: #FDFAF4;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 25px;
	font-weight: 500;
	border-radius: 12px;
}
.planNyukaikin span {
	display: inline-block;
}
.planNyukaikin .txt1 {
	background: #A78243;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	margin: auto auto auto 0;
	padding: .5em 1em;
	border-radius: 12px;
}
.planNyukaikin .txt2 {
	font-size: 44px;
	margin: auto 0 0 auto;
}
.planNyukaikin .txt3 {
	font-size: 44px;
	margin: auto 0 0 auto;
	font-size: 18px;
}
.planNyukaikin_wrap .plus {
	text-align: center;
	margin: 20px auto 0;
	font-weight: bold;
	font-size: 44px;
	color: #A78243;
	line-height: 1;
}
@media screen and (max-width: 768px){
	.planNyukaikin_wrap .plus {
		margin: 10px auto 0;
	}
}


/*----------------------------------------------------
columnList
----------------------------------------------------*/
.related-article {
	margin: auto;
	padding: 120px 0;
}
.related-article .head {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #A78243;
	margin: 0 0 8px;
	padding: 0 0 36px;
	text-align: center;
}
.columnList {
	width: auto;
	margin: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, calc( ( 100% - 28px ) / 2) );
	grid-row-gap: 28px;
	grid-column-gap: 28px;
}
.columnListItem {
	-webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, .1);
	box-shadow: 0 10px 20px rgba(0, 0, 0, .1);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			border-radius: 10px;
	overflow: hidden;
	max-width: 100%;
}
.columnListItem-link {
	display: block;
}
.columnListItem-image {
}
.columnListItem-image img {
	-o-object-fit: cover;
		object-fit: cover;
	width: 100%;
	height: 54vw;
	margin: auto;
}
.columnListItem-body {
	padding: 10px 10px 0 ;
	margin-bottom: auto;
}
.columnListItem-date {
	color: #8B8B8B;
	font-size: 12px;
	font-weight: 500;
	margin: 10px auto;
}
.columnListItem-title {
	font-weight: 500;
	font-size: 14px;
	line-height: 1.7;
	margin: 10px auto;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.columnListItem-cates {
	padding: 0 5px 10px 5px;
	margin-top: auto;
}
.columnListItem-cate {
	display: inline-block;
	margin: 5px auto;
	background: #A78243;
	color: #fff;
	padding: .5em .8em;
	font-size: 12px;
	line-height: 1;
	margin: 5px;
	border-radius: 30px;
}
.columnListItem-cate:visited {
	color: #fff;
}
.columnListFootLink {
	margin-top: 30px;
	text-align: right;
	padding-right: 1em;
}
.columnListFootLink-btn {
	display: inline-block;
	font-weight: bold;
	font-size: 12px;
}
.columnListFootLink-btn span {
	vertical-align:middle;
}
.columnListFootLink-btn::after {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	background: url(../img/common/right-arrow.svg) center right no-repeat;
	background-size: contain;
	vertical-align:middle;
	margin-left: 0.2em;
}
@media screen and (max-width: 768px)  {
/* sp */
	.related-article {
		padding: 60px 0;
	}
	.columnList {
		/* grid-template-columns: 1fr; */
		grid-template-columns: repeat(auto-fill, calc( ( 100% - 14px ) / 2) );
		grid-row-gap: 14px;
		grid-column-gap: 14px;
		margin-top: 6vw;
	}
	.columnListItem {
	}
}

@media screen and (min-width: 769px)  {
/* pc */
	.related-article .head {
		font-size: 44px;
		margin: 0;
		padding: 0 0 69px;
	}
	.columnList {
	}
	.columnListItem {
	}
	.columnListItem-link {
    width: 100%;;
	}
	.columnListItem-image {
	}
	.columnListItem-image img {
		height: 404px;
	}
	.columnListItem-body {
		padding: 10px 20px 0;
	}
	.columnListItem-date {
		font-size: 18px;
	}
	.columnListItem-title {
		font-size: 20px;
	}
	.columnListItem-cates {
		padding: 10px 20px 20px;
	}
	.columnListItem-cate {
		font-size: 14px;
	}
	.columnListFootLink {
		margin: 40px auto;
	}
	.columnListFootLink-btn {
		font-size: 16px;
	}
}
.columnList.column3 {
	grid-template-columns: repeat(auto-fill, calc( ( 100% - 56px ) / 3) );
}
@media screen and (max-width: 1000px) {
	/* pc */
	.columnList.column3 {
		grid-template-columns: repeat(auto-fill, calc( ( 100% - 14px ) / 2) );
	}
}


/* 追加分 */
#plan .conts {
	margin-bottom: 30px;
}

#plan .planNyukaikin_wrap {
    margin: 44px auto 40px;
}

#plan .planSlider {
	gap: 30px;
	margin-bottom: 40px;
}

#plan .planSlider:last-child {
	margin-bottom: 0;
}

#plan .planSlider .planBox.planBox--50 {
	width: 100%;
	max-width: 80%;
	margin: 0 auto 40px;
}

#plan .planSlider .planBox.planBox--100 {
	width: 100%;
	max-width: 80%;
	margin: 0 auto 40px;
  float: inherit !important;
}

#plan .planSlider .planBox.planBox--100 > img  {
	width: 100%;
}

#plan .planSlider .planBox.planBox--50 > img {
	width: 100%;
	margin: 0 auto;
	filter: drop-shadow(0px 0px 40px rgba(0, 0, 0, 0.1));
}

#plan  .lineBox {
	padding: 0 7%;
}

#plan .lineBox .lineBox > img {
	width: 100%;
	margin: 0 auto;
	filter: drop-shadow(0px 0px 40px rgba(0, 0, 0, 0.1));
}

#plan .planNyukaikin {
	max-width: 100%;
	background: none;
}

#plan .planNyukaikin img {
	width: 100%;
}

@media screen and (min-width: 769px) {
	#plan .conts {
		margin-bottom: 60px;
	}
	
	#plan .planSlider .planBox.planBox--50 {
		width: 50%;
	}

	#plan .planSlider .planBox.planBox--50 > img {
		width: 100%;
		margin: 0 auto;
	}

	#plan .lineBox .lineBox > img {
		width: 50%;
	}

	/* 追加分 */
}