@charset "utf-8";

/**********************************

 general

***********************************/
html {
	font-size: 13.3333333px;
	/*font-size: 10px;*/
}

@media screen and (max-width:1086px){
	html {
		font-size: 1.335vw;
	}
}

@media screen and (max-width:767px){
	html {
		font-size: 1.33333333vw;
	}
}

/**********************************

 parts

***********************************/
.define_inner {
	width: 75rem;
}

.p-din {
	font-family: "din-2014", sans-serif;
}

.c-anchor {
	display: block;
	/*margin-top: -81px;*/
	/*padding-top: 81px;*/
}

@media screen and (max-width:1499px){
	.define_wrap {
		padding-left: 8%;
		padding-right: 8%;
	}
}

@media screen and (max-width:767px){

	.c-anchor {
		/*margin-top: -70px;*/
		/*padding-top: 70px;*/
	}
}

/**********************************

 .l-wrap

***********************************/
.l-wrap {
	background: #fff;
}

.l-main {
}


/**********************************

 l-header

***********************************/
.l-header {

}

.l-header__inner {
	/*height: 163px;*/
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}

/**********************************

 l-footer

***********************************/
.l-footer .define_inner {
	width: 930px;
}

@media screen and (max-width:767px){

	/*.l-footer__bottom {*/
		/*padding-bottom: 25px;*/
	/*}*/
}


/**********************************

 p-comingsoon

***********************************/
.p-comingsoon {

}

.p-comingsoon__inner {
	padding: 8rem 0;
}

.p-comingsoon__box {
	padding: 5rem 3rem;
	background: #ddd;
}

.p-comingsoon__txt01 {
	font-size: 3.4rem;
	font-weight: bold;
	text-align: center;
}

.p-comingsoon__txt01 .inline-block {
	display: inline-block;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-pagetop

***********************************/
.p-pagetop {
	display: none;
	width: 123px;
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 10;
}

@media (hover: hover) {

	.p-pagetop a {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.p-pagetop a:hover {
		opacity: .7;
	}
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

	.p-pagetop {
		width: 12.3rem;
		bottom: 5rem;
		right: 5rem;
	}
}


/**********************************

 p-head

***********************************/
.p-head {
	background: #fff;
}

.p-head__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 9rem;
}

.p-head__logo {
	width: 44.4rem;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-hero

***********************************/
.p-hero {
	position: relative;
	z-index: 1;
}

.p-hero:before {
	content: "";
	display: block;
	width: 50%;
	height: 100%;
	background: #fff000;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.p-hero:after {
	content: "";
	display: block;
	width: 50%;
	height: 100%;
	background: #009fe8;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.p-hero__inner {
	display: flex;
	flex-wrap: wrap;
	padding: 3rem 0 4rem;
	position: relative;
	z-index: 2;
}

.p-hero__ttl {
	width: 68rem;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}

.p-hero__faction {
	width: 50%;
	padding-top: 5rem;
}

.p-hero__faction-pic {

}

.p-hero__faction-pic01 {
	margin-left: -3.5rem;
	margin-bottom: -1rem;
}

.p-hero__faction-pic02 {
	margin-top: 2.5rem;
	margin-bottom: 3rem;
}

.p-hero__faction-ttl {

}

.p-hero__feature {
	width: 31.6rem;
	margin: 2.5rem auto 0;
}

.p-hero__feature-ttl {

}

.p-hero__feature ul {
	margin-top: .7em;
	margin-left: 3.5rem;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: calc(35 / 24);
}

.p-hero__feature ul li {
	margin-top: .5em;
	padding-left: 3.2rem;
	position: relative;
	z-index: 1;
}

.p-hero__feature ul li:first-child {
	margin-top: 0;
}

.p-hero__feature ul li.white {
	color: #fff;
}

.p-hero__feature ul li:before {
	content: "";
	display: block;
	width: 2.4rem;
	height: 2.4rem;
	box-sizing: border-box;
	border: .1rem solid #000000;
	border-radius: 50%;
	position: absolute;
	top: .7rem;
	left: 0;
	z-index: 1;
}

.p-hero__feature ul li.white:before {
	border: .1rem solid #fff;
}

.p-hero__btn {
	margin-top: 3rem;
	text-align: center;
}

.p-hero__btn a {
	display: inline-block;
	width: 24.4rem;
	padding: .5rem 0 2.2rem;
	color: #fff000;
	font-size: 2.3rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #000000;
	border: .3rem solid #000000;
	box-sizing: border-box;
	border-radius: 20rem;
	position: relative;
	z-index: 1;
}

.p-hero__btn a.white {
	color: #009fe8;
	background: #fff;
	border: .3rem solid #fff;
}

.p-hero__btn a:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 1rem solid transparent;
	border-left: 1rem solid transparent;
	border-top: 1rem solid #fff000;
	border-bottom: 0;
	position: absolute;
	bottom: .9rem;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.p-hero__btn a.white:before {
	border-top: 1rem solid #009fe8;
}

@media (hover: hover) {

	.p-hero__btn a {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.p-hero__btn a:hover {
		color: #000;
		background: #fff000;
	}

	.p-hero__btn a.white:hover {
		color: #fff;
		background: #009fe8;
	}

	.p-hero__btn a:before {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.p-hero__btn a:hover:before {
		border-top: 1rem solid #000;
	}

	.p-hero__btn a.white:hover:before {
		border-top: 1rem solid #fff;
	}

}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-about

***********************************/
.p-about {
	background: #e8edf2;
}

.p-about__inner {
	padding: 4.5rem 0 7.5rem;
	position: relative;
	z-index: 1;
}

.p-about__desc {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 2;
	letter-spacing: .1em;
}

.p-about__desc .large {
	display: inline-block;
	font-size: 3.5rem;
	font-weight: 900;
	text-align: center;
	line-height: 1.8;
	letter-spacing: .1em;
}

.p-about__desc .bg {
	display: inline-block;
	padding: 0 1rem;
	background: #fff000;
	line-height: 1.3;
}

.p-about__info {
	margin-top: 5rem;
}

.p-about__info-sec {
	margin-top: 7rem;
	position: relative;
	z-index: 1;
}

.p-about__info-sec:first-child {
	margin-top: 0;
}

.p-about__info-sec:before {
	content: "";
	display: block;
	width: 59.7rem;
	height: 4.7rem;
	background: url(../images/about_line01.png) no-repeat center / contain;
	position: absolute;
	bottom: -7rem;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.p-about__info-sec:last-child:before {
	display: none;
}

.p-about__info-ttl {

}

.p-about__info-ttl .txt01 {
	display: block;
	font-size: 5rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
}

.p-about__info-ttl .txt02 {
	display: block;
	margin-top: .8rem;
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: .1em;
	text-align: center;
}

.p-about__info-date {
	display: flex;
	justify-content: center;
	margin-top: 2rem;
	position: relative;
	z-index: 1;
}

.p-about__info-date .year {
	display: flex;
	align-items: center;
	margin-right: 2rem;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: .05em;
}

.p-about__info-date .box {
	width: 7.2rem;
	height: 7.2rem;
	margin-right: 1rem;
	position: relative;
	z-index: 1;
}

.p-about__info-date .box.digits {
	margin-right: 2rem;
}

.p-about__info-date .box:before {
	content: "";
	display: block;
	width: 10rem;
	height: .1rem;
	background: #000;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%) rotate(135deg);
	-webkit-transform: translateY(-50%) translateX(-50%) rotate(135deg);
}

.p-about__info-date .box .month,
.p-about__info-date .box .day {
	font-size: 4.4rem;
	font-weight: bold;
	line-height: .7;
	/*letter-spacing: -.05em;*/
	white-space: nowrap;
	position: absolute;
	z-index: 1;
}

.p-about__info-date .box .month {
	top: 0;
	left: 0;
}

.p-about__info-date .box .day {
	bottom: 0;
	right: 0;
}

.p-about__info-date .box.digits .day {
	right: auto;
	left: 3.5rem;
}

.p-about__info-date .dow {
	display: flex;
	align-items: flex-end;
	margin-right: 5.5rem;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: .05em;
	line-height: 1;
	position: relative;
	z-index: 1;
}

.p-about__info-date .dow:last-child {
	margin-right: 0;
}

.p-about__info-date .dow:before {
	content: "";
	display: block;
	width: 1.1rem;
	height: 1.8rem;
	background: url(../images/about_arr01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	right: -3rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.p-about__info-date .dow:last-of-type:before {
	display: none;
}

.p-about__info-date .dow .end {
	display: block;
	margin-top: .8rem;
	font-size: 2.4rem;
	font-weight: 500;
	white-space: nowrap;
	position: absolute;
	top: 100%;
	right: .8rem;
	z-index: 1;
}

.p-about__star01 {
	width: 7.6rem;
	position: absolute;
	top: 3rem;
	right: 3.6rem;
	z-index: -1;
}

.p-about__star02 {
	width: 6.1rem;
	position: absolute;
	top: 29.5rem;
	left: 3.5rem;
	z-index: -1;
}

.p-about__star03 {
	width: 3.9rem;
	position: absolute;
	bottom: 44rem;
	right: 3.6rem;
	z-index: -1;
}

.p-about__star04 {
	width: 6.1rem;
	position: absolute;
	bottom: 8rem;
	left: 3.5rem;
	z-index: -1;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-howto

***********************************/
.p-howto {
	background: #4cbdef;
}

.p-howto__inner {
	padding: 10rem 0 7rem;
}

.p-howto__acc {
	width: 62rem;
	margin: 0 auto;
}

.p-howto__ttl {
	padding: 1.4rem 11rem;
	font-size: 3.4rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: .1em;
	background: #fff;
	border: .4rem solid #000;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

@media (hover: hover) {
	.p-howto__ttl {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}
	.p-howto__ttl:hover {
		opacity: .7;
	}
}

.p-howto__ttl:before {
	content: "";
	display: block;
	width: 3.6rem;
	height: .4rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 3.6rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-howto__ttl:after {
	content: "";
	display: block;
	width: .4rem;
	height: 3.6rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 5.2rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-howto__ttl.is-active:after {
	margin-top: -3.6rem;
	opacity: 0;
}

.p-howto__content {
	display: none;
}

.p-howto__content-inner {
	padding: 7rem 0 5rem 0;
	background: #fff;
	border-left: .4rem solid #000;
	border-right: .4rem solid #000;
	border-bottom: .4rem solid #000;
}

.p-howto__step {

}

.p-howto__step-sec {
	margin-bottom: 3rem;
	padding-bottom: 5rem;
	position: relative;
	z-index: 1;
}

.p-howto__step-sec:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.p-howto__step-sec:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 2.2rem solid transparent;
	border-left: 2.2rem solid transparent;
	border-top: 2.2rem solid #000000;
	border-bottom: 0;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.p-howto__step-sec:last-child:before {
	display: none;
}

.p-howto__step-ttl {
	font-size: 4.55rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
}

.p-howto__step-desc {
	margin-top: .7em;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 2;
}

.p-howto__step-desc.large {
	margin-top: 0;
	font-size: 3.3rem;
	font-weight: 900;
	line-height: calc(54 / 33);
}

.p-howto__step-desc .block {
	display: inline-block;
	padding: 0 1rem;
	background: #fff000;
	line-height: 1.3;
}

.p-howto__step-pic01 {
	width: 51.8rem;
	margin: 5rem auto 0;
}

.p-howto__note {
	margin-top: 4rem;
	padding: 0 6rem;
	font-size: 2rem;
	font-weight: bold;
	line-height: calc(34.5 / 20);
}

.p-howto__note li {
	text-indent: -1em;
	margin-left: 1em;
}

.p-howto__btn {
	margin-top: 5rem;
	font-size: 3rem;
	font-weight: bold;
	letter-spacing: .1em;
	text-align: center;
}

.p-howto__btn a {
	display: inline-block;
	padding: 1.4rem 8rem;
	color: #fff;
	text-decoration: none;
	background: #000;
	border: .3rem solid #000;
	border-radius: 20rem;
	position: relative;
	z-index: 1;
}

.p-howto__btn a:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
	border-left: 1.7rem solid #ffffff;
	border-right: 0;
	position: absolute;
	top: 50%;
	right: 2.4rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media (hover: hover) {

	.p-howto__btn a {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.p-howto__btn a:hover {
		color: #000;
		background: #fff;
	}

	.p-howto__btn a:before {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.p-howto__btn a:hover:before {
		border-left: 1.7rem solid #000;
	}
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-photochromic

***********************************/
.p-photochromic {

}

.p-photochromic__head {
	background: #000;
}

.p-photochromic__head-inner {
	padding: 3rem 0;
}

.p-photochromic__head-ttl {
	color: #fff;
	font-size: 5rem;
	font-weight: 900;
	text-align: center;
	letter-spacing: .06em;
}

.p-photochromic__body {
	background: #e8edf2;
}

.p-photochromic__body-inner {
	padding: 9.8rem 0 12rem;
	position: relative;
	z-index: 1;
}

.p-photochromic__body-ttl {
	font-size: 4.35rem;
	font-weight: 900;
	text-align: center;
	letter-spacing: .06em;
}

.p-photochromic__body-ttl .block {
	display: inline-block;
	padding: .5rem 4rem;
	background: #fff000;
	line-height: 1.3;
}

.p-photochromic__body-list {
	margin-top: 4rem;
}

.p-photochromic__body-list-sec {
	margin-top: 4rem;
}

.p-photochromic__body-list-sec:first-child {
	margin-top: 0;
}

.p-photochromic__body-list-ttl {
	padding-bottom: 2rem;
	font-size: 3rem;
	font-weight: 900;
	text-align: center;
	letter-spacing: .06em;
	position: relative;
	z-index: 1;
}

.p-photochromic__body-list-ttl.line01:before {
	content: "";
	display: block;
	width: 58.6rem;
	height: 1.6rem;
	background: url(../images/photochromic_line01.png) no-repeat center / contain;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.p-photochromic__body-list-ttl.line02:before {
	content: "";
	display: block;
	width: 43.5rem;
	height: 1.5rem;
	background: url(../images/photochromic_line02.png) no-repeat center / contain;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.p-photochromic__body-list-desc {
	margin-top: 1.5rem;
	font-size: 2.5rem;
	font-weight: 500;
	text-align: center;
	line-height: calc(40 / 25);
}

.p-photochromic__body-pic01 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 62rem;
	height: 58rem;
	margin: 6rem auto 0;
	border: .3rem solid #000;
	background: #fff;
}

.p-photochromic__body-pic01 img {
	display: block;
	width: 53.9rem;
}

.p-photochromic__body__star01 {
	width: 7.6rem;
	position: absolute;
	top: 12rem;
	right: 3.6rem;
	z-index: -1;
}

.p-photochromic__body__star02 {
	width: 6.1rem;
	position: absolute;
	top: 38rem;
	left: 3.5rem;
	z-index: -1;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 p-faction

***********************************/
.p-faction {
	padding: 0 6.5rem;
}

.p-faction.faction01 {
	background: #fff000;
}

.p-faction.faction02 {
	background: #009fe8;
}

.p-faction__inner {
	padding: 7rem 0 10rem;
	position: relative;
	z-index: 1;
}

.p-faction.faction01 .p-faction__inner:before {
	content: "";
	display: block;
	width: 22.4rem;
	height: 20.3rem;
	background: url(../images/faction_illust01.png) no-repeat center / contain;
	position: absolute;
	top: 5.6rem;
	right: -2.4rem;
	z-index: -1;
}

.p-faction.faction02 .p-faction__inner:before {
	content: "";
	display: block;
	width: 23.7rem;
	height: 18.7rem;
	background: url(../images/faction_illust02.png) no-repeat center / contain;
	position: absolute;
	top: 5.6rem;
	right: -3.6rem;
	z-index: -1;
}

.p-faction__ttl {
	width: 42.2rem;
	margin-left: -2.4rem;
}

.p-faction__lens {
	margin-top: 2rem;
}

.p-faction__lens-ttl {
	padding: .9rem 1rem;
	font-size: 3.25rem;
	font-weight: 900;
	text-align: center;
}

.p-faction.faction01 .p-faction__lens-ttl {
	color: #fff000;
	background: #000000;
}

.p-faction.faction02 .p-faction__lens-ttl {
	color: #009fe8;
	background: #fff;
}

.p-faction__lens-pic01 {
	margin-top: 2rem;
}

.p-faction__lens-refraction {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 2rem;
	padding: 3rem 5.4rem 3rem 3.4rem;
	border: .3rem solid #000;
	background: #fff;
}

.p-faction.faction01 .p-faction__lens-refraction {
	margin-top: 1.7rem;
}

.p-faction__lens-refraction .box01 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 13rem;
	height: 13rem;
	border: .1rem solid #000;
	border-radius: 50%;
}

.p-faction__lens-refraction .box01 .txt01 {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
}

.p-faction__lens-refraction .box01 .txt01 .large {
	font-size: 2.9rem;
}

.p-faction__lens-refraction .pic {
	padding-top: 1rem;
}

.p-faction__lens-refraction .pic img {
	display: block;
	width: 15.3rem;
}

.p-faction__lens-refraction .pic figcaption {
	margin-top: 1rem;
	font-size: 2.4rem;
	text-align: center;
}

.p-faction__detail {
	margin-top: 6rem;
	padding: 0 5.5rem;
}

.p-faction__detail-ttl {
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: .15em;
	line-height: 1.4;
}

.p-faction__detail-ttl .block {
	display: inline-block;
	padding: 0 1rem;
}

.p-faction.faction01 .p-faction__detail-ttl .block {
	color: #fff;
	background: #000;
}

.p-faction.faction02 .p-faction__detail-ttl .block {
	color: #009fe8;
	background: #fff;
}

.p-faction__detail-desc {
	margin-top: 3rem;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 2;
}

.p-faction.faction02 .p-faction__detail-desc {
	color: #fff;
}

.p-faction__price {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 3rem;
	margin-top: 4rem;
	padding: 2.4rem 0;
}

.p-faction.faction01 .p-faction__price {
	border-top: .1rem solid #000;
	border-bottom: .1rem solid #000;
}

.p-faction.faction02 .p-faction__price {
	color: #fff;
	border-top: .1rem solid #fff;
	border-bottom: .1rem solid #fff;
}

.p-faction__price-ttl {
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: .1em;
}

.p-faction__price-txt01 {
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: .1em;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

	.p-faction__price {
		gap: 0 2.5rem;
	}

}


/**********************************

 p-mall

***********************************/
.p-mall {
	background: #e8edf2;
}

.p-mall__inner {
	padding: 7rem 0 5rem;
}

.p-mall__acc {
	width: 60rem;
	margin: 0 auto;
}

.p-mall__ttl {
	padding: 1.4rem 11rem;
	font-size: 3.4rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: .1em;
	background: #fff;
	border: .4rem solid #000;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

@media (hover: hover) {
	.p-mall__ttl {
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}
	.p-mall__ttl:hover {
		opacity: .7;
	}
}

.p-mall__ttl:before {
	content: "";
	display: block;
	width: 3.6rem;
	height: .4rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 3.6rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-mall__ttl:after {
	content: "";
	display: block;
	width: .4rem;
	height: 3.6rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 5.2rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-mall__ttl.is-active:after {
	margin-top: -3.6rem;
	opacity: 0;
}

.p-mall__content {
	display: none;
}

.p-mall__content-inner {
	padding: 2rem 3.4rem 3rem;
	background: #fff;
	border-left: .4rem solid #000;
	border-right: .4rem solid #000;
	border-bottom: .4rem solid #000;
}

.p-mall__content-inner dl {
	border-bottom: .1rem solid #000;
}

.p-mall__content-inner dl:last-child {
	border-bottom: none;
}

.p-mall__content-inner dl dt {
	padding: 1.9rem 5rem 1.9rem 1rem;
	font-size: 2.6rem;
	font-weight: bold;
	letter-spacing: .1em;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.p-mall__content-inner dl dt:before {
	content: "";
	display: block;
	width: 2.3rem;
	height: .2rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 1rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-mall__content-inner dl dt:after {
	content: "";
	display: block;
	width: .2rem;
	height: 2.3rem;
	background: #000;
	position: absolute;
	top: 50%;
	right: 2.1rem;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.p-mall__content-inner dl dt.is-active:after {
	margin-top: -2.3rem;
	opacity: 0;
}

.p-mall__content-inner dl dd {
	display: none;
	padding: 0 2.5rem;
}

.p-mall__content-inner dl dd ul {
	margin-top: -2rem;
	font-size: 2.5rem;
	letter-spacing: .1em;
}

.p-mall__content-inner dl dd ul li {
	border-bottom: .1rem solid #000;
}

.p-mall__content-inner dl dd ul li:last-child {
	border-bottom: none;
}

.p-mall__content-inner dl dd ul li a {
	display: block;
	padding: 1rem 3rem 1rem 1.2rem;
	color: #000;
	text-decoration: none;
	position: relative;
	z-index: 1;
}

.p-mall__content-inner dl dd ul li a:before {
	content: "";
	display: block;
	width: 1.2rem;
	height: 2.2rem;
	background: url(../images/mall_arr01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.p-mall__note {
	margin-top: 4.5rem;
	padding: 0 7rem;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: calc(30 / 21);
}

.p-mall__note li {
	text-indent: -1em;
	margin-left: 1em;
}

@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}


/**********************************

 xxx

***********************************/


@media screen and (max-width:1499px){

}

@media screen and (max-width:767px){

}

