@charset "utf-8";

header,
header .subl.top {
	background-color:#fdd000;
	color:#000;
}
header .td.logo {
	color:#000;
}
header :where(.td.mainMenu) a {
	--arc:#000000;
}
header .logo svg * {
	fill:#000000;
}
header .cart svg * {
	fill:#ffffff;
}
header .td.tp,
header input + .swh li {
	background-color:#29ada0;
}
header .td.cart .cart {
	background-color:#000000;
}
@media screen and (min-width:840px) {
	header .subl.top .xi > label > .subl:before {
		background-color:#fdd000;
	}
}

.display-pc {
	display: block !important;
}
.display-pc-div {
	display: block !important;
}
.display-sp {
	display: none !important;
}
.display-sp-div {
	display: none !important;
}

.LineUpTitles {
	overflow:hidden;
	position:relative;
}
.LineUpTitles * {
	position:absolute;
}

section {
	font-size:3vw;
	padding:5vw 0;
	overflow:hidden;
}
section > .dots {
	width:fit-content;
	font-size:300%;
	color:#89aec3;
	margin:0 auto;
	line-height:1;
}
section > .dots:before {
	content:'…';
}
section .inner {
	max-width:1296px;
	margin:0 auto;
	padding:5vw;
}
@media screen and (max-width: 767px) {
	section.lineUP .product_list#first-product {
		padding-top:1vw;
	}
}
section .inner.switch {
	padding:0 5vw;
}

@media screen and (min-width:840px) {
	section {
		font-size:16px;
		padding:40px 0;
	}
	section .inner {
		padding:40px;
	}
}

.topizumi-pc, .topizumi-sp {
	position:relative;
	padding:0;
	overflow:hidden;
}
.topizumi-pc .controlr, .topizumi-sp .controlr {
	display:flex;
	position:absolute;
	inset:50% 0 0;
	padding:1em 1em .2em;
	gap:1em;
	justify-content:center;
	align-items:flex-end;
	pointer-events:none;
}
.topizumi-pc .controlr li, .topizumi-sp .controlr li {
	display:block;
	pointer-events:all;
	cursor:pointer;
}
.topizumi-pc .controlr :is(.back, .front), 
.topizumi-sp .controlr :is(.back, .front) {
    z-index: 5;
	background: 
	/*display:none;*/
}
.topizumi-pc .controlr :where(.back, .front), 
.topizumi-sp .controlr :where(.back, .front) {
	position:absolute;
	inset:-3em auto auto;
	height:4em;
	width:1.5em;
}
.topizumi-pc .controlr :where(.back, .front):before,
.topizumi-pc .controlr :where(.back, .front):after,
.topizumi-sp .controlr :where(.back, .front):before,
.topizumi-sp .controlr :where(.back, .front):after {
	position:absolute;
	display:block;
	content:'';
	width:4px;
	height:2em;
	color: #aaaaaa;
	background-color:#ddddddcc;
	inset:auto;
	top:0;
}
.topizumi-pc .controlr .back:before,
.topizumi-sp .controlr .back:before {
	transform:skewX(-30deg);
}
.topizumi-pc .controlr .front:before,
.topizumi-sp .controlr .front:before {
	transform:skewX(30deg);
}
.topizumi-pc .controlr .back:after, 
.topizumi-sp .controlr .back:after {
	transform:rotateX(180deg) skewX(-30deg);
}
.topizumi-pc .controlr .front:after, 
.topizumi-sp .controlr .front:after {
	transform:rotateX(180deg) skewX(30deg);
}
.topizumi-pc .controlr .back:before,
.topizumi-pc .controlr .back:after, 
.topizumi-sp .controlr .back:before,
.topizumi-sp .controlr .back:after {
	left:0;
	transform-origin:bottom left;
}
.topizumi-pc .controlr .front:before,
.topizumi-pc .controlr .front:after, 
.topizumi-sp .controlr .front:before,
.topizumi-sp .controlr .front:after{
	right:0;
	transform-origin:bottom right;
}
.topizumi-pc .controlr .back, 
.topizumi-sp .controlr .back {
	left:.5em;
}
.topizumi-pc .controlr .front, 
.topizumi-sp .controlr .front {
	right:.5em;
}
.topizumi-pc .controlr .dirt,
.topizumi-sp .controlr .dirt {
	width:1.6em;
	height:1.6em;
	border:2px solid #ffffffaa;
	background:#ffffff00;
	border-radius:.8em;
	transition:all 250ms ease;
}
.topizumi-pc .controlr .dirt.act, 
.topizumi-sp .controlr .dirt.act {
	background:#ffffff;
}
.topizumi-pc .scrrs::-webkit-scrollbar, 
.topizumi-sp .scrrs::-webkit-scrollbar {
	width:8px;
	height:8px;
	border-radius:4px;
}
.topizumi-pc .scrrs::-webkit-scrollbar-track, 
.topizumi-sp .scrrs::-webkit-scrollbar-track {
	#background-color:#f4f5f6;
	background-image:linear-gradient(to left, #00000000 0%, #f4f5f655 10%, #f4f5f6dd 50%, #f4f5f655 90%, #00000000 100%);
}
.topizumi-pc .scrrs::-webkit-scrollbar-thumb, 
.topizumi-sp .scrrs::-webkit-scrollbar-thumb {
	background-color:#031746;
	width:8px;
	height:8px;
	border-radius:4px;
}
.topizumi-pc .scrrs, .topizumi-sp .scrrs {
	display:block;
	scroll-snap-type:x mandatory;
	scroll-behavior:smooth;
	overflow-x:auto;
	margin-bottom:-8px;
}
.topizumi-pc .yscrl, .topizumi-sp .yscrl {
	position:relative;
	display:flex;
	flex-direction:row;
	justify-content:center;
	width:800vw;
	white-space:nowrap;
	background: #dddddd;
}
.topizumi-sp .yscrl {
	width:600vw;
}
.topizumi-pc .ymove, .topizumi-sp .ymove {
	position:relative;
	display:block;
	width:95vw;
	aspect-ratio:390/505;
	overflow:hidden;
	scroll-snap-align: center;
}
.topizumi-sp .ymove {
	width:100vw;
}
.topizumi-pc .iz1, .topizumi-sp .iz1 {
	background-color:#fdd000;
}
.topizumi-pc .izm, .topizumi-sp .izm {
	background-color:#ffffff;
}
.topizumi-pc .cbdbk, .topizumi-sp .cbdbk {
	position:relative;
	overflow:hidden;
	height:100%;
}
.topizumi-pc .cbdbk img, .topizumi-sp .cbdbk img {
	position:absolute;
	display:block;
	height:100%;
	width:auto;
	inset:0 auto 0 0;
}
@media screen and (max-width:1100px) {
	.topizumi-pc .controlr :where(.back, .front) {
		height: 4em;
		width: 1.5em;
	}
	.topizumi-pc .controlr :where(.back, .front):before,
	.topizumi-pc .controlr :where(.back, .front):after {
		height:2em;
	}
}
@media screen and (max-width:839px) {
	.topizumi-sp .controlr :where(.back, .front) {
		display: none !important;
	}
	
	.topizumi-sp .controlr :where(.back, .front) {
		height: 2em;
		width: 1em;
	}
	.topizumi-sp .controlr :where(.back, .front):before,
	.topizumi-sp .controlr :where(.back, .front):after {
		height:1em;
	}
}

.topizumi-pc .regulast .buttons {
	position: absolute;
    inset: auto auto 14% 38%;
    width: 24%;
    height: 7.3%;
}
.topizumi-pc .heatx .buttons {
	position: absolute;
    inset: auto auto 7.8% 39%;
    width: 22%;
    height: 10.3%;
}
.topizumi-pc .spike .buttons {
	position: absolute;
    inset: auto auto 5% 39%;
    width: 22%;
    height: 7%;
    /*
	position: relative;
	width: 100%;
	height: 100%;
	*/
}
.topizumi-pc .verse .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-pc .cupon .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-pc .nonnicopouchs .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-pc .nicolessnil .buttons {
	position: absolute;
    inset: auto auto 5% 39%;
    width: 22%;
    height: 7%;
}

.topizumi-pc .nfreelumia .buttons {
    position: absolute;
    inset: auto auto 5% 39%;
    width: 22%;
    height: 7%;
}

.topizumi-pc .izumi .buttons {
    position: absolute;
    inset: auto auto 15% 41%;
    width: 18%;
    height: 5%;
}
.topizumi-pc .izc .buttons {
	position: absolute;
    inset: auto auto 45% 20.9%;
    width: 24%;
    height: 6%;
}
.topizumi-pc .hunt .buttons {
    position: absolute;
    inset: auto auto 70% 20%;
    width: 55%;
    height: 5%;
}
.topizumi-pc .minzero .buttons {
    position: absolute;
    inset: auto auto 13% 71%;
    width: 11%;
    height: 6%;
}

.topizumi-sp .regulast .buttons {

	position: absolute;
    inset: auto auto 8.6% 18%;
    width: 63.5%;
    height: 7%;
}
.topizumi-sp .heatx .buttons {

	position: absolute;
    inset: auto auto 8% 29%;
    width: 41.5%;
    height: 7%;
}
.topizumi-sp .spike .buttons {

	position: absolute;
    inset: auto auto 7% 30%;
    width: 40%;
    height: 5%;
	/*
	position: relative;
	width: 100%;
	height: 100%;
	*/
}
.topizumi-sp .verse .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-sp .cupon .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-sp .nonnicopouchs .buttons {
	position: absolute;
    width: 100%;
    height: 100%;
}
.topizumi-sp .nicolessnil .buttons {
	position: absolute;
    inset: auto auto 6% 29%;
    width: 40%;
    height: 5%;
}
.topizumi-sp .nfreelumia .buttons {
	position: absolute;
    inset: auto auto 10% 30%;
    width: 40%;
    height: 4%;
}
.topizumi-sp .izumi .buttons {
	position: absolute;
    inset: auto auto 12% 27%;
    width: 46%;
    height: 4%;
}
.topizumi-sp .izc .buttons {
	position: absolute;
    inset: auto auto 12% 22%;
    width: 53%;
    height: 5%;
}
.topizumi-sp .izm .buttons {
    position: absolute;
    inset: auto auto 64% 12%;
    width: 45%;
    height: 6%;
}
.topizumi-sp .hunt .buttons {
    position: absolute;
    inset: auto auto 74% 25%;
    width: 75%;
    height: 5%;
}
.topizumi-sp .minzero .buttons {
	position: absolute;
    inset: auto auto 14% 66%;
    width: 27%;
    height: 5%;
}


.topizumi-pc .regulast .buttons li,
.topizumi-pc .heatx .buttons li,
.topizumi-pc .spike .buttons li,
.topizumi-pc .verse .buttons li,
.topizumi-pc .cupon .buttons li,
.topizumi-pc .nonnicopouchs .buttons li,
.topizumi-pc .nicolessnil .buttons li,
.topizumi-pc .nfreelumia .buttons li,
.topizumi-pc .izumi .buttons li,
.topizumi-pc .izc .buttons li,
.topizumi-pc .hunt .buttons li,
.topizumi-pc .minzero .buttons li,
.topizumi-pc .kiccha .buttons li,
.topizumi-sp .regulast .buttons li,
.topizumi-sp .heatx .buttons li,
.topizumi-sp .spike .buttons li,
.topizumi-sp .verse .buttons li,
.topizumi-sp .cupon .buttons li,
.topizumi-sp .nonnicopouchs .buttons li,
.topizumi-sp .nicolessnil .buttons li,
.topizumi-sp .nfreelumia .buttons li,
.topizumi-sp .izumi .buttons li,
.topizumi-sp .izc .buttons li,
.topizumi-sp .izm .buttons li,
.topizumi-sp .hunt .buttons li,
.topizumi-sp .minzero .buttons li,
.topizumi-sp .kiccha .buttons li{
    display: block;
    height: 100%;
}

.topizumi-pc .regulast .buttons a,
.topizumi-pc .heatx .buttons a,
.topizumi-pc .spike .buttons a,
.topizumi-pc .verse .buttons a,
.topizumi-pc .cupon .buttons a,
.topizumi-pc .nonnicopouchs .buttons a,
.topizumi-pc .nicolessnil .buttons a,
.topizumi-pc .nfreelumia .buttons a,
.topizumi-pc .izumi .buttons a,
.topizumi-pc .izc .buttons a,
.topizumi-pc .hunt .buttons a,
.topizumi-pc .minzero .buttons a,
.topizumi-pc .kiccha .buttons a,
.topizumi-sp .regulast .buttons a,
.topizumi-sp .heatx .buttons a,
.topizumi-sp .spike .buttons a,
.topizumi-sp .verse .buttons a,
.topizumi-sp .cupon .buttons a,
.topizumi-sp .nonnicopouchs .buttons a,
.topizumi-sp .nicolessnil .buttons a,
.topizumi-sp .nfreelumia .buttons a,
.topizumi-sp .izumi .buttons a,
.topizumi-sp .izc .buttons a,
.topizumi-sp .izm .buttons a,
.topizumi-sp .hunt .buttons a,
.topizumi-sp .minzero .buttons a,
.topizumi-sp .kiccha .buttons a{
    display: block;
    width: 100%;
    height: 100%;
/*    border: solid 1px; */
}

@media screen and (min-width:840px) {
	.topizumi-pc .ymove {
		aspect-ratio:1111/530;
	}
	.topizumi-pc .cbdbk img {
		height:auto;
		width:100%;
	}
}
.topizumi-pc .bk, .topizumi-sp .bk {
	position:relative;
	max-width:1290px;
	margin:auto;
	height:100%;
	overflow:visible;
}
/* ==================================metaslim */
.topizumi-pc .mbk, .topizumi-sp .mbk {
    position: relative;
    width: 100%;
    margin: auto;
    height: 100%;
    overflow: visible;
    border-left: solid 2vw #eb6112;
    border-bottom: solid 2vw #2e3841;
}
.izm-inner-div {
	position: relative;
    right: 0;
    width: 50vw;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.top-metaslim-part2 {
    width: 30vw;
    margin-top: 10vw;
}
.top-metaslim-part3 {
    width: 50vw;
    margin-top: 2vw;
}
.top-metaslim-part4 {
	position: absolute;
	right: 0;
    z-index: 1;
    width: 40vw;
}
.top-metaslim-part1 {
    position: absolute;
    left: 15vw;
    top: 1.5vw;
    width: 35%;
}
.top-metaslim-part5 {
    position: absolute;
	left: 0;
	width: 46%;
	margin-top: 3vw;
}
.top-metaslim-part6 {
    position: absolute;
    top: 3vw;
    left: 17vw;
    width: 18%;
    z-index: 4;
}
.izm-inner-metaslim-div {
    position: relative;
	width: 100%;
}
.top-metaslim-span {
    position: absolute;
    bottom: 2vw;
    left: 1vw;
    font-size: 1.2vw;
    color: #898989;
}

.top-metaslim-href {
	color: #ffffff;
	margin-top: -3.2vw;
	margin-left: 2vw;
	padding: 1vw;
    font-size: 1.2vw;
}

@media screen and (max-width:840px) {
	.top-metaslim-part4 {
		position: absolute;
		right: 0;
		z-index: 1;
		width: 100vw;
		margin-right: -25vw;
	}
	.topizumi-sp .mbk {
		position: relative;
		width: 100%;
		margin: auto;
		height: 100%;
		overflow: visible;
		border-left: solid 5vw #eb6112;
		border-bottom: solid 8vw #2e3841;
	}
	.izm-inner-div {
		position: relative;
		right: 0;
		width: 90vw;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.top-metaslim-part2 {
		width: 80vw;
		margin-top: 20vw;
		margin-left: 5vw;
		z-index: 1;
	}
	.top-metaslim-part3 {
		width: 140vw;
		margin-top: 5vw;
		margin-left: -2vw;
		z-index: 1;
	}
	.top-metaslim-href {
		color: #ffffff;
		margin-top: -9vw;
		margin-left: 10vw;
		padding: 1vw;
		font-size: 6vw;
		z-index: 3;
	}
	.top-metaslim-part5 {
		position: absolute;
		left: -4vw;
		width: 65vw;
		margin-top: 8vw;
		z-index: 4;
	}
	.top-metaslim-part6 {
		position: absolute;
		top: 15vw;
		left: 42vw;
		width: 25vw;
		z-index: 4;
	}
	.top-metaslim-part1 {
		position: absolute;
		left: 42vw;
		top: 18vw;
		width: 40vw;
		z-index: 4;
	}
	.top-metaslim-span {
		position: absolute;
		bottom: 8vw;
		left: 3vw;
		font-size: 4vw;
		color: #000000;
	}
}


.topizumi-pc .pos, .topizumi-sp .pos {
	position:absolute;
	inset:0 46% 50% auto;
	#inset:0 46% 55% auto;
	transform:translate(2vw, -11%);
	width:0;
}
.topizumi-pc .blur img, .topizumi-sp .blur img {
	position:absolute;
	inset:0 -100vw auto;
	margin:auto;
	height:200%;
	width:auto;
	opacity:.7;
}
.topizumi-pc .tama b, .topizumi-sp .tama b {
	position:absolute;
	display:block;
	inset:auto -100vw -12%;
	margin:auto;
	height:24%;
	width:auto;
	aspect-ratio:1;
	border-radius:50%;
	overflow:hidden;
}
.topizumi-pc .tama b:before, .topizumi-sp .tama b:before {
	content:'';
	display:block;
	padding-top:100%;
}
.topizumi-pc .tama img, .topizumi-sp .tama img {
	position:absolute;
	inset:-50%;
	margin:auto;
	width:124%;
	height:auto;
}
.topizumi-pc .inner, .topizumi-sp .inner {
	position:absolute;
	inset:0;
	padding:0;
}
.topizumi-pc .tiromi, .topizumi-sp .tiromi {
	position:absolute;
	inset:4% 55% auto auto;
	display:block;
	height:147%;
	width:auto;
	max-width:none;
}
.topizumi-pc .packs, .topizumi-sp .packs {
	position:absolute;
	inset:0 0 55% 50%;
	inset:0 0 67% 58%;
	display:block;
	margin:auto auto -22% -4%;
	width:50%;
	transform:translate(-2em,1em) rotate(-16deg);
}
.topizumi-pc .packs:not(.fl6), .topizumi-sp .packs:not(.fl6) {
	margin:auto auto -12% -7%;
}
.topizumi-pc .packs.fl6, .topizumi-sp .packs.fl6 {
	inset:0 0 56% 51%;
}
.topizumi-pc .logo, .topizumi-sp .logo {
	position:absolute;
	inset:45% 0 0 35%;
	inset:37% 0 0 35%;
	margin:auto;
	width:50%;
	color:#29aea1;
	height:fit-content;
}
.topizumi-pc .logo img, .topizumi-sp .logo img {
	width:100%;
}
.topizumi-pc .logo b, .topizumi-sp .logo b {
	display:block;
	letter-spacing:1em;
	padding-left:1em;
	width:fit-content;
	margin:auto;
	text-shadow:0 .2em .3em #00000066;
}
.topizumi-pc .lu, .topizumi-sp .lu {
	position:absolute;
	inset:auto 0 5em 33%;
	max-width:65%;
	height:auto;
	margin:auto;
	pointer-events:none;
}
.topizumi-pc .lu :is(path, ellipse), .topizumi-sp .lu :is(path, ellipse) {
	fill:#fdd000;
	stroke:#000000;
	stroke-width:0.75;
	stroke-miterlimit:10;
}
.topizumi-pc .lu .black, .topizumi-sp .lu .black {
	fill:#000000;
}
.topizumi-pc .lu text, .topizumi-sp .lu text {
	text-anchor:end;
	fill:#000000;
}
.topizumi-pc .lu .tx1, .topizumi-sp .lu .tx1 {
	font-size:100%;
}
.topizumi-pc .lu .tx2, .topizumi-sp .lu .tx2 {
	font-size:150%;
}

.topizumi-pc .toprod a, .topizumi-sp .toprod a {
	display:block;
	line-height:2;
	margin:1em auto;
	margin:1em 0;
	padding:0;
	border:2px solid #000000;
	border-radius:1.5em;
	background-color:#ffffff;
	background-color:#ff6c0000;
	color:#000000;
	font-weight:bold;
	text-align:center;
	transition-duration:.5s;
	transition-property:all;
	#transition-timing-function:ease-in-out;
	transition-timing-function:cubic-bezier(0.02, 1.06, 0.7, 0.92);
}
.topizumi-pc .toprod a:hover, .topizumi-sp .toprod a:hover {
	background-color:#ff6c00cc;
	border-color:#00000000;
	color:#ffffff;
	cursor:pointer;
}
@media screen and (min-width:840px) {
	.topizumi-pc {
		padding:0;
	}
	.topizumi-pc .pos {
		inset:0 40% 50% auto;
		#inset:0 35% 45% auto;
		transform:translate(min(5vw, calc(1290px * .05)), 11%);
	}
	.topizumi-pc .blur img {
		position:absolute;
		inset:0 -100vw auto;
		margin:auto;
		height:200%;
		width:auto;
		opacity:.7;
	}
	.topizumi-pc .inner {
		padding:0;
	}
	.topizumi-pc .tiromi {
		inset:0 70% auto auto;
		height:160%;
	}
	.topizumi-pc .packs {
		inset:-5% 0 43% 67%;
		margin:auto auto -10% -6%;
		width:32%;
		transform:none;
	}
	.topizumi-pc .packs.fl6 {
		inset:-5% 0 29% 62%;
		inset:-8% 0 29% 63%;
		inset:0 0 0 57%;
		margin:auto auto auto 0;
	}
	.topizumi-pc .logo {
	#	inset:9em 50% 0 0;
	#	width:35%;
		inset:0 13% -4em 0;
		width:25%;
	}
	.topizumi-pc .lu {
	#	inset:auto auto 2em 2%;
	#	max-width:60%;
		inset:auto auto 4em 30%;
		max-width:30%;
	}
}
@media screen and (min-width:1800px) {
	.topizumi-pc .pos {
		transform:translate(min(5vw, calc(1290px * .05)), 5%);
	}
	.topizumi-pc .packs:not(.fl6) {
		margin:auto auto -7% -5%;
		width:41%;
	}
}

.devSupp {

}
.devSupp .xinn {
	padding:1em;
}
.devSupp .bodyimg {
	position:relative;
	width:fit-content;
	height:fit-content;
	margin:auto;
}
.devSupp .bodyimg img {
	display:block;
	max-width:640px;
	width:100%;
}
.devSupp .bodyimg ul {
    position: absolute;
    inset: auto auto 2.6% 2%;
    width: 44%;
    height: 81%;
	#background-color:#0000ff55;
}
@media screen and (max-width:767px) {
	.devSupp .bodyimg ul {
		inset: auto auto 4.2% 2%;
	}
}
.devSupp .bodyimg li {
	display:block;
	padding:1%;
	height:7.89%;
}
@media screen and (max-width:767px) {
	.devSupp .bodyimg li {
		height:7.49%;
	}
}
.devSupp .bodyimg a {
	display:block;
	width:100%;
	height:100%;
	#background-color:#ff000055;
}

.CompairS {
	background-color:#f4f5f6;
	color:#031746;
	padding:0;
	overflow:inherit;
	display:none;
}
.CompairS h2 {
	font-size:200%;
	width:fit-content;
	margin:0 auto .3em;
	padding:.1em 0 0;
	font-weight:bold;
	line-height:1;
}
.CompairS .wtp {
	position:relative;
	overflow:hidden;
	border-radius:0 0 3vw 3vw;
	border-radius:3vw 3vw 3vw 3vw;
	background-color:#fff;
}
.CompairS .wrap {
	position:relative;
	background-color:#fff;
	border-radius:3vw 3vw 0 0;
	min-height:200px;
	padding:2em 1em 1em;
	overflow:auto;
	z-index:3;
	margin-bottom:1em;
}

.CompairS .wrap::-webkit-scrollbar {
	width:1em;
	height:1em;
}
.CompairS .wrap::-webkit-scrollbar-track {
	background-color:#f00;
	background-color:#fff;
}
.CompairS .wrap::-webkit-scrollbar-thumb {
	background-color:#00f;
	background-color:#fff;
}
.CompairS .dbar {
	position:sticky;
	position:absolute;
	display:flex;
	inset:auto .5em 1em;
	background-color:#aaa;
	background-image:linear-gradient(to right, #aaa, #555, #aaa);
	padding:.1em;
	border-radius:.5em;
	cursor:default;
	#opacity:.5;
	z-index:3;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
	pointer-events:none;
}
.CompairS .dbar.close {
	bottom:-1em;
}
.CompairS .dbar li {
	display:block;
}
.CompairS .aro {
	position:absolute;
	inset:50% .5em;
	line-height:1;
}
.CompairS .aro:after {
	content:'';
	position:absolute;
	display:block;
	inset:-1em auto;
	height:fit-content;
	width:fit-content;
	margin:auto;
	border-color:#00000000;
	border-style:solid;
	border-width:.3em .6em;
	opacity:.5;
	width:1.2em;
	height:.6em;
}
.CompairS .xl {
	right:auto;
}
.CompairS .xr {
	left:auto;
}
.CompairS .xl:after {
	left:-0.7em;
	border-right-color:#000;
}
.CompairS .xr:after {
	right:-0.7em;
	border-left-color:#000;
}
.CompairS .dth {
	height:.8em;
	border-radius:.4em;
	background-color:#fff;
	transition-duration:.1s;
	transition-property:all;
	transition-timing-function:linear;
}
.CompairS .dbar:not(.close) {
	box-shadow:0 .2em .6em #00000033;
}
.CompairS:hover .dbar:not(.close) .dth {
	box-shadow:0 .2em .6em;
}
.CompairS table {
	position:relative;
	width:100%;
	border-spacing:0;
	margin-bottom:1em;
	z-index:4;
}
.CompairS tr {
	#overflow-x:auto;
}
.CompairS .thh {
	display:flex;
	width:fit-content;
	padding:1em 0 1em 3em;
}
.CompairS .thh li {
	position:relative;
	display:block;
	#background-color:#fff;
}
.CompairS .thh .dev {
	#position:relative;
}
.CompairS .thh .dev img {
	position:absolute;
	display:block;
	z-index:6;
	width:auto;
	height:5em;
	inset:-1em 0 0 -2em;
}
.CompairS .thh .wrd {
	padding:0 2em;
}
.CompairS .thh .wrd div {
	position:relative;
	z-index:2;
	min-width:11em;
}
.CompairS .thh .wrd:after,
.CompairS .thh .wrd:before {
	position:absolute;
	content:'';
	display:block;
	transform-origin:bottom right;
}
.CompairS .thh .wrd:after {
	inset:auto 1em 0 0;
	height:3px;
	background-image:linear-gradient(to right, #000, #00a29a);
}
.CompairS .thh .wrd:before {
	inset:0 1em 0 auto;
	inset:0 1em 0 .5em;
	#width:3px;
	transform:skewX(-20deg);
	#background-color:#00a29a;
	background-color:#fff;
	border-right:3px solid #00a29a;
}
.CompairS :where(th, td, .thh) {
	position:sticky;
	#z-index:4;
}
.CompairS :where(th, .thh) {
	left:0;
	right:0;
	z-index:5;
}
.CompairS tbody tr {
	background-color:#fff;
}
.CompairS tbody td {
	padding:2.5em 1em;
	height:32em;
}
.CompairS tbody :not(th) + td:not(:first-child) {
	border-left:2px dashed #efefef;
}
.CompairS .mater {
	position:relative;
	height:100%;
}
.CompairS .mater img {
	display:block;
	margin:-2.5em auto;
	box-shadow:.4em .4em .6em #00000077;
}
.CompairS .mater b {
	display:block;
	width:100%;
	height:var(--per);
}
.CompairS .mater i {
	position:relative;
	display:block;
	font-style:normal;
	text-align:center;
	text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff;
}
.CompairS .mater i span {
	inset:2.5em 0 auto;
	width:100%;
	display:block;
	position: absolute;
	display:block;
	inset:.5em -2em auto auto;
	width:100%;
	background-image: url(recom.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	padding:1.4em 1em;
	transform-origin: center;
	transform:scale(.7) rotate(-13deg);
	white-space: nowrap;
}
.CompairS thead :where(th, td) {
	#top:0;
	#z-index:6;
	font-size:130%;
}
.CompairS thead td {
	padding:0 2em;
}
.CompairS tfoot :where(th, td) {
	bottom:0;
	padding:.8em;
}
.CompairS .yrrow {
	position:absolute;
	display:block;
	inset:0 0 -5em;
	background-image:linear-gradient(to bottom, #e60012, #f8b62d);
	filter:drop-shadow(0 0 .2em #fff) drop-shadow(0 0 .2em #fff) drop-shadow(0 0 .2em #fff);
}
.CompairS .yrrow li {
	display:block;
	position:absolute;
	inset:auto -1em calc(100% - 1px);
	border-width:0 1.85em 5em;
	border-color:#00000000 #00000000 #e60012;
	border-style:solid;
}
.CompairS .vlb {
	position:relative;
	color:#fff;
	padding:0;
	margin:0;
	text-align:center;
	line-height:1.1;
	width:1.5em;
}
.CompairS .vlb.top {
	position:absolute;
	inset:auto auto 100%;
}
.CompairS .bimg {
	width:auto;
	height:5em;
}
.CompairS .cate {
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:.5em;
	--bk:#888;
	background-color:var(--bk);
	overflow:hidden;
	height:3em;
	font-weight:bold;
	box-shadow:0 0 .6em #00000077;
}
.CompairS .cate:before {
	content:'';
	position:absolute;
	inset:-1px;
	background-image:linear-gradient(to bottom, #00000000 50%, #00000033);
}
.CompairS .cate li {
	position:relative;
	display:block;
	width:fit-content;
	height:fit-content;
}
@media screen and (min-width:840px) {
	.CompairS .wtp {
		border-radius:0 0 10px 10px;
		border-radius:10px 10px 10px 10px;
	}
	.CompairS .wrap {
		border-radius:10px 10px 0 0;
	}
}

.topRoll {
	background-image:linear-gradient(to bottom,#d3dcef 0, #f0f5ff 50%, #d3dcef 100%);
	color:#031746;
	font-size:2.5vw;
#IZUMI	display:none;
}
.topRoll .inner {
	position:relative;
	max-width:none;
}
.topRoll:not([loaded]) .inner {
	opacity:0;
}
.topRoll .back {
	position:absolute;
	top:10px;
	bottom:10px;
	left:0;
	right:0;
	margin:auto;
	--dott:3.5vw;
}
.topRoll .back .in {
	position:relative;
	height:100%;
	overflow:hidden;
}
.topRoll .back b {
	position:absolute;
	display:block;
	width:0;
	height:0;
	transition-duration:1s;
	transition-property:all;
	transition-timing-function:linear;
}
.topRoll .back:not([ready]) b {
	opacity:0;
}
.topRoll .back b:after {
	position:absolute;
	content:'';
	display:block;
	background-color:#ffffff66;
	width:calc(var(--dott) / 2);
	height:calc(var(--dott) / 2);
	left:calc(var(--dott) / -4);
	top:calc(var(--dott) / -4);
	border-radius:calc(var(--dott) / 4);
}
.topRoll small,
.topRoll strong {
	position:relative;
	display:block;
	width:fit-content;
	font-weight:bold;
	margin:.5em auto;
	line-height:1.3;
	text-align:center;
}
.topRoll strong {
	font-size:200%;
}
.topRoll strong span {
	width:fit-content;
	margin:0 auto;
	display:inline-block;
}
.topRoll .inner {
	padding:3vw 0 5vw;
}
.topRoll .disp {
	position:relative;
	overflow:hidden;
	#border:1px dashed #ff0000;
}
.topRoll .disp:before {
	content:'';
	display:block;
	padding-top:70%;
}
.topRoll[lock] .con {
	pointer-events:none;
	#position:static;
}
.topRoll .con {
	position:absolute;
	top:0;
	bottom:0;
}
.topRoll:not([lock]) .con.mn:hover {
	background-image:linear-gradient(to right, #00000022, #00000000);
}
.topRoll:not([lock]) .con.pl:hover {
	background-image:linear-gradient(to left, #00000022, #00000000);
}
.topRoll:not([lock]) .con.mn {
	left:0;
	right:90%;
}
.topRoll:not([lock]) .con.pl {
	left:90%;
	right:0;
}
.topRoll .prod {
	position:absolute;
	width:0;
	top:0;
	transition-duration:.2s;
	transition-property:all;
	transition-timing-function:linear;
}
.topRoll .disp:hover .prod {
	transition-duration:.2s;
}
.topRoll .prod > * {
	position:absolute;
	width:60vw;
	left:-30vw;
	text-align:center;
}
.topRoll .prod .red {
	color:#ff0000;
	font-weight:bold;
	font-size:140%;
	padding:0 0 1em;
}
.topRoll .prod .cent {
	top:0;
	padding:10px;
	min-height:200px;
}
.topRoll .prod h3 {
	text-align:center;
	#white-space:nowrap;
	word-break:keep-all;
	font-weight:bold;
	font-size:140%;
}
.topRoll .prod img {
	width:100%;
	filter:drop-shadow(0 .3em .6em #00000088);
	cursor:pointer;
}
.topRoll .prod img:hover + h3 {
	color:#ff6c00;
}
@media screen and (min-width:840px) {
	.topRoll {
		font-size:inherit;
	}
	.topRoll .inner {
		padding:20px 0 40px;
	}
	.topRoll .back {
		--dott:20px;
	}
	.topRoll .disp:before {
		padding-top:300px;
	}
	.topRoll .prod > * {
		width:300px;
		left:-150px;
	}
}

.PageTitle {
	background-color:#f4f5f6;
	color:#031746;
	padding:0 10%;
}
.PageTitle h1 {
	text-align:center;
}
@media screen and (min-width:840px) {
	.PageTitle {
		padding:0;
	}
}

.lineUP {
	background-color:#f4f5f6;
	color:#031746;
}
.lineUP h2 {
	font-size:200%;
	width:fit-content;
	margin:.1em auto .3em;
	font-weight:bold;
	line-height:1;
}
.lineUP .inner.switch {
	display:flex;
	justify-content:flex-end;
}
.lineUP .part:not(.disp_switch) {
	background-color:#ffffff;
	border-radius:3vw;
	min-height:200px;
	margin-bottom:5vw;
	padding:2em 1em;
	scroll-behavior:smooth;
	scroll-snap-type:x mandatory;
	padding-bottom:0;
}
.lineUP .part.ranking {
	scroll-snap-type:none;
}
.lineUP .part#disp_switch {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  font-size: 12px;
  color: #333;
  text-align: center;
  margin: 4px; /* 任意で余白 */
}
.lineUP .part:last-of-type:not(.cbd, .catechin, .osboost, .cannabitus) {
	margin-bottom:0;
}
.lineUP .part small,
.lineUP .part h3,
.lineUP .part .red {
	display:block;
	width:fit-content;
	font-weight:bold;
	margin:.5em auto;
	line-height:1;
}
.lineUP .part h3 {
	font-size:200%;
	text-align:center;
}
.lineUP .part h3 img,
.lineUP .part h3 svg {
	width:300px;
	max-width:100%;
}
.lineUP .part .red {
	color:#ff0000;
}
.lineUP .items {
	display:-webkit-flex;
	display:flex;
	flex-wrap:wrap;
	-webkit-justify-content:space-evenly;
	justify-content:space-evenly;
}
.lineUP div.item {
	width:60%;
}

.lineUP > .inner > .part.yucontents {
	display:block;
	overflow:auto;
	white-space:nowrap;
}
.lineUP > .inner > .part.yucontents .item {
	display:inline-block;
	width:80%;
	vertical-align:top;
	padding:15px;
}
.lineUP > .inner > .part.yucontents .img {
	position:relative;
	display:block;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	background-image:var(--tbk);
	filter:drop-shadow(0 5px 4px #00000055);
}
.lineUP > .inner > .part.yucontents .img.mode1 {
	background-size:300%;
	background-image:linear-gradient(#000000bb, #000000bb), var(--tbk);
}
.lineUP > .inner > .part.yucontents .img:before {
	content:'';
	display:block;
	padding-top:calc(100% / 16 * 9);
}
.lineUP > .inner > .part.yucontents .img.mode1:before {
	backdrop-filter:blur(1.5px);
}
.lineUP > .inner > .part.yucontents .img img {
	position:absolute;
	inset:0;
	display:block;
	max-width:100%;
	max-height:100%;
	margin:auto;
	filter:none;
	transition-duration:1s;
	transition-property:all;
	transition-timing-function:ease;
}
.lineUP .part.yucontents .play {
	position:absolute;
	inset:0;
	display:flex;
	place-content:center;
	place-items:center;
	font-size:25px;
	color:#000000;
	mix-blend-mode:lighten;
	opacity:.5;
	transition-duration:1s;
	transition-property:all;
	transition-timing-function:ease;
	z-index:2;
}
.lineUP .part.yucontents .r1 {
	width:50px;
	height:50px;
	border-radius:25px;
	background-color:#ffffff;
	display:flex;
	place-content:center;
	place-items:center;
}
.lineUP .part.yucontents .r1:before {
	content:'▶';
	display:block;
	padding-left:0.08em;
}
.lineUP > .inner > .part.yucontents .img:after {
	content:'';
	display:block;
	position:absolute;
	inset:0;
	transition-duration:1s;
	transition-property:all;
	transition-timing-function:ease;
}
.lineUP > .inner > .part.yucontents .img:hover:after {
	background-color:#000000aa;
}
.lineUP .part.yucontents .img:hover .play {
	opacity:.9;
}
.lineUP .part.yucontents :is(.desc, h4) {
	white-space:normal;
}
.lineUP .part.yucontents h4 {
	min-height:3em;
}
@media screen and (min-width:640px) {

	.lineUP > .inner > .part.yucontents {
		font-size:50%;
	}
	.lineUP > .inner > .part.yucontents .item {
		width:44%;
	}
}
@media screen and (min-width:1000px) {
	.lineUP > .inner > .part.yucontents .item {
		width:30%;
	}
}

.lineUP > .inner > .part.ranking .item {
	position:relative;
	transform-style:preserve-3d;
	perspective:420px;
	width:43%;
	font-size:60%;
}
@media screen and (max-width:767px) {
	.lineUP > .inner > .part.ranking .item {
		font-size:100%;
		width:46%;
	}
}
.lineUP .ranking .sort {
	position:relative;
	z-index:2;
}
.lineUP .ranking .sort h3 {
	position:absolute;
	top:0;
	left:0;
	font-size:90%;
	padding:.5em 2em .5em 1em;
	background-color:#bb6600;
	color:#ffffff;
	clip-path:polygon(0% 0%, 100% 0%, 90% 100%, 0% 100%);
}
.lineUP .part.ranking {
	white-space:nowrap;
	overflow-x:auto;
	overflow-y:hidden;
}
.lineUP .part:is(.ranking, .yucontents)::-webkit-scrollbar {
	width:8px;
	height:8px;
	border-radius:4px;
}
.lineUP .part:is(.ranking, .yucontents)::-webkit-scrollbar-track {
	#background-color:#f4f5f6;
	background-image:linear-gradient(to left, #00000000 0%, #f4f5f655 10%, #f4f5f6dd 50%, #f4f5f655 90%, #00000000 100%);
}
.lineUP .part:is(.ranking, .yucontents)::-webkit-scrollbar-thumb {
	background-color:#031746;
	width:8px;
	height:8px;
	border-radius:4px;
}
.lineUP .part:where(.yucontents) .item {
	scroll-snap-align:center;
}
.lineUP .part.ranking .item {
	display:inline-block;
	vertical-align:top;
}
.lineUP .item:not(:empty) {
	padding:30px;
}
.lineUP .ranking .item:not(:empty) {
	padding:10px;
}
.lineUP .item img {
	display:block;
	max-width:75%;
	max-height:500px;
	max-height:25vh;
	margin:0 auto;
	filter:drop-shadow(0 5px 4px #00000055);
}
@media screen and (max-width:767px) {
	.lineUP .two_columns .sale .item img {
		max-height:8vh;
	}
}
.lineUP .ranking .item .image {
	position:relative;
	width:85%;
	margin:0 auto;
}
.lineUP .ranking .item .image:before {
	content:'';
	display:block;
	padding-top:100%;
}
.lineUP .ranking .item .image img {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	top:0;
	max-width:100%;
	max-height:100%;
	margin:auto;
}
.lineUP .item label {
	display:block;
	line-height:3;
	margin:1em auto;
	padding:0;
	border-radius:1.5em;
	background-color:#000000cc;
	color:#ffffff;
	font-weight:bold;
	text-align:center;
	max-width: 44vw;
}
.lineUP .ranking .item label {
	font-size:100%;
}
.lineUP .item label:hover {
	background-color:#ff6c00cc;
	cursor:pointer;
}
.lineUP .item label:after {
	content:'カートに入れる';
}
.lineUP .item .regular:after {
	content:'定期購入';
}
.lineUP .item label svg {
	margin-right:1em;
	vertical-align:middle;
}
.lineUP .ranking .item label svg {
	width:1.2em;
	vertical-align:middle;
}
.lineUP .item label svg * {
	fill:#ffffff;
}
.lineUP .item label svg .member * {
	fill:none;
}
.lineUP .item label input {
	display:none;
}
.lineUP .item h4,
.lineUP .item + h4 {
	margin-top:1em;
	margin-bottom:1em;
	font-size:110%;
	font-weight:bold;
	text-align:center;
	word-break:keep-all;

	word-break:break-all;
	white-space:normal;
}
.lineUP .item h4 > span,
.lineUP .item + h4 > span {
	display:inline-block;
	padding-right:.4em;
}
.lineUP .item:hover label + h4,
.lineUP .item:hover + h4 {
	color:#ff6c00;
}
.lineUP .item .price,
.lineUP .item + h4 + .price {
	font-size:80%;
	font-weight:bold;
	text-align:center;
	color:#959090;
}
.lineUP .link {
	padding:1em 2em;
}
.lineUP .link a {
	position:relative;
	display:block;
	width:fit-content;
	margin-left:auto;
	text-decoration:underline;
	color:#000000;
}
.lineUP .link a:before {
	position:absolute;
	content:'▶';
	width:2em;
	top:0;
	bottom:0;
	left:-2em;
}
.lineUP .lineup-caution {
	width: 80%;
	margin: 1em auto;
}
.lineUP .sale-red {
	color:#ff0000;
	font-weight:bold;
}
@keyframes linkroll {
	from { transform:rotate3d(1,0,0, 0deg); }
	to { transform:rotate3d(1,0,0, 360deg); }
}
.lineUP .link a:hover:before {
	animation:1s linear 0s infinite alternate linkroll;
}
@media screen and (min-width:540px) {
	.lineUP .items .item:not(.singleline):not(:only-child) {
		width:calc((100% - 20px) / 2);
	}
	.lineUP .items .item.singleline > img {
		width:400px;
	}
	.lineUP .items .item.singleline > img,
	.lineUP .items .item.singleline > label {
		max-height:none;
	}
	
	.lineUP .items .item.singleline > img {
		max-width:calc((100% - 20px) / 2);	
	}
}
@media screen and (min-width:840px) {
	.lineUP .inner {
		display:-webkit-flex;
		display:flex;
		flex-wrap:wrap;
		-webkit-justify-content:space-between;
		justify-content:space-between;
	}
	.lineUP .part {
		border-radius:10px;
		margin-bottom:40px;
		width:100%;
	}
	.lineUP > .inner > .part.ranking .item {
		width:calc(100% / 4.5);
	}
	/*
	.lineUP .ranking .sort {
		transform:translate3d(80px,20px,140px) rotate3d(1,0,0,26deg);
	}*/
	.lineUP .ex {
		position:relative;
		/*
		display:-webkit-flex;
		display:flex;
		flex-wrap:wrap-reverse;
		-webkit-flex-wrap:wrap-reverse;
		flex-direction:column;
		-webkit-justify-content:space-evenly;
		justify-content:space-evenly;
		align-content:space-around;
		*/
	}
	.lineUP .ex > * {
		width:400px;
		max-width:50%;
		/*
		flex:1 1 0;
		border:1px solid #0000ff;
		width:40%;
		height:fit-content;*/
	}
	.lineUP .ex h3,
	.lineUP .ex h4,
	.lineUP .ex .price {
		width:30%;
		text-align:center;
	}
	.lineUP .ex h3 {
		float:left;
		margin:3em 0 0 20%;
	}
	.lineUP .ex h4 {
		margin:1em 0 0 20%;
		clear:left;
	}
	.lineUP .ex .price {
		margin:1em 0 0 20%;
	}
	.lineUP .ex .item {
		float:right;
		width:40%;
		margin-right:10%;
	}
	.lineUP .ex .link {
		clear:both;
		width:auto;
		max-width:none;
	}
	.lineUP .ranking .item label svg {
		vertical-align:sub;
	}
	.lineUP .part:last-of-type:not(.cbd, .catechin, .osboost, .cannabitus) {
		margin-bottom:0;
	}
	.lineUP .ranking .item:first-of-type {
		width:calc(60%);
	}
	.lineUP .ranking .item:not(:first-of-type) {
		width:calc(50% - 20px);
	}
	.lineUP .item:not(:only-child) {
		#width:calc((100% - 20px) / 2);
	}
	.lineUP .item label {
		max-width:80%;
		margin-top:-2em;
		transform:scale(1.2);
		transition-duration:1.5s;
		transition-property:all;
		#transition-timing-function:ease-in-out;
		transition-timing-function:cubic-bezier(0.02, 1.06, 0.7, 0.92);
	}
	.lineUP .ranking .sort h3 {
		font-size:130%;
	}
	.lineUP .ranking .item h4 {
		font-size:130%;
	}
	.lineUP .ranking .item .price {
		font-size:180%;
	}
	.lineUP .ranking .item label {
		font-size:120%;
	}
	.lineUP .ranking .item .regular {
		font-size:140%;
	}
	.lineUP .ranking .item label svg {
		width:1.3em;
	}
	.lineUP .item:not(:hover) label {
		transform:scale(1.7);
		filter:blur(3px);
		transition-duration:.2s;
		transition-timing-function:linear;
		opacity:0;
		pointer-events:none;
	}
	.lineUP .item img {
		max-height:22vh;
	}
	.lineUP .items .item.singleline > img {
		width:800px;
	}
}
@media screen and (min-width:1200px) {
	.lineUP .items .item:not(.singleline):not(:only-child) {
		width:calc((100% - 40px) / 3);
	}
	.lineUP .items .item.singleline > img,
	.lineUP .items .item.singleline > label {
		max-width:calc((100% - 40px) / 3);
	}
}

@media screen and (max-width: 767px) {
	.product_list.two_columns .part .items {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
	}

	.product_list.two_columns .part .item {
		flex: 1 1 calc(50% - 8px);
	}

	.lineUP .product_list.two_columns .part .item:not(:empty) {
		padding: 10px;
	}

	.lineUP .product_list.two_columns .part .item label svg {
		margin-right: 0.5em;
	}

	/* .items.one-column .item {
		flex: 1 1 100%;
	}

	.items.two-column .item {
		flex: 1 1 calc(50% - 8px);
	} */
}

.Doctor {
	background-image:linear-gradient(to bottom, #f4f5f6, #cfdde5);
}
/*
.Doctor {
	height:calc(33vw + 20vw);
	background-color:#f4f5f6;
	background-image:linear-gradient(to bottom, #f4f5f6, #cfdde5);
	z-index:4;
	overflow:visible;
}
.Doctor h2 {
	display:block;
	position:absolute;
	margin:auto;
	inset:.5em 0 auto;
	width:fit-content;
	padding:0;
}
.Doctor .close {
	position:absolute;
	inset:0;
	display:block;
	background-color:#00000099;
	cursor:pointer;
}
.Doctor .area {
	position:absolute;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
	padding:15vw 0 0;
	box-shadow:0 10px 10px #00000055;
}
.Doctor input:checked ~ .area {
	box-shadow:none;
}
.Doctor input:not(:checked) ~ .area {
	max-height:33vw;
	max-width:1216px;
	width:calc(100% - 10vw);
	top:10vw;
	padding-top:0;
	transition-delay:.5s;
	border-radius:22px;
	transition-duration:.1s;
}
.Doctor .banner {
	cursor:pointer;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
	box-shadow:none;
}
.Doctor input:not(:checked) ~ .area .banner {
	width:100%;
	transition-delay:.5s;
	transition-duration:.1s;
}
.Doctor .wr {
	padding:1em 2em;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
}
.Doctor .marg {
	height:15vw;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
}
.Doctor input:not(:checked) ~ .area .marg {
	height:0;
	margin-bottom:5vw;
	transition-delay:.5s;
}
.Doctor .ttle .labl {
	font-size:80%;
	background-color:#dd3333;
	color:#ffffff;
	padding:.3em 2px .3em 1em;
	line-height:1.2;
	margin-left:-3em;
	width:fit-content;
	position:relative;
}
.Doctor .ttle .labl:after,
.Doctor .ttle .labl:before {
	position:absolute;
	content:'';
	display:block;
	inset:0 -7px 0 100%;
}
.Doctor .ttle .labl:before {
	inset:0 -7px auto calc(100% + 1px);
	border:3px solid #dd333300;
	border-left-color:#dd3333;
	border-bottom-color:#dd3333;
}
.Doctor .ttle .labl:after {
	inset:7px -7px 0 calc(100% - 1px);
	background-color:#dd3333;
}
.Doctor .ttle b {
	font-size:180%;
}
.Doctor .texts {
	margin-top:calc(-15vw + 10px);
	margin-bottom:10vw;
	transition-duration:.5s;
	transition-property:all;
	transition-timing-function:ease;
	box-shadow:none;
}
.Doctor input:checked ~ .area .texts {
	transition-delay:.5s;
}
.Doctor input:not(:checked) ~ .area .texts {
	margin-top:-5vw;
	margin-bottom:0;
	padding:0 1em;
	max-height:0;
	transition-duration:.3s;
}
.Doctor .texts .prof h4:before {
	content:'【';
}
.Doctor .texts .prof h4:after {
	content:'】';
}
@media screen and (min-width:840px) {
	.Doctor {
		height:calc(300px + 20vw);
	}
	.Doctor .texts {
		margin-top:calc(-15vw + 10px);
		margin-bottom:10vw;
	}
	.Doctor input:not(:checked) ~ .area {
		max-height:300px;
		max-width:1216px;
		width:calc(100% - 80px);
	}
}
*/

.Magazine {
	background-color:#cfdde5;
	color:#031746;
}
.Magazine .inner {
	word-break:keep-all;
}
.Magazine small,
.Magazine h3 {
	display:block;
	width:fit-content;
	font-weight:bold;
	margin:.5em auto;
	line-height:2;
	text-align:center;
	max-width:100%;
}
.Magazine h3 {
	font-size:200%;
}
.Magazine small {
	font-size:120%;
}
.Magazine .inner div {
	position:relative;
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
	color:#ffffff;
	height:80vw;
	font-size:240%;
	--shd:linear-gradient(#00000033,#00000022);
}
.Magazine .inner div:not(:last-of-type) {
	margin-bottom:5vw;
}
.Magazine .inner div:nth-of-type(1) {
	grid-column:1/2;
	grid-row:3/5;
}
.Magazine[ready] .inner div:nth-of-type(1) {
	background-image:var(--shd), url(maga01.jpg);
}
.Magazine .inner div:nth-of-type(2) {
	grid-column:2/3;
	grid-row:3/4;
}
.Magazine[ready] .inner div:nth-of-type(2) {
	background-image:var(--shd), url(maga02.jpg);
}
.Magazine .inner div:nth-of-type(3) {
	grid-column:2/3;
	grid-row:4/5;
}
.Magazine[ready] .inner div:nth-of-type(3) {
	background-image:var(--shd), url(maga03.jpg);
}
.Magazine .inner strong {
	position:absolute;
	display:block;
	padding:1em;
	width:fit-content;
	max-width:100%;
	max-height:100%;
}
.Magazine .inner div:nth-of-type(1) strong {
	top:0;
	left:0;
}
.Magazine .inner div:nth-of-type(2) strong {
	bottom:0;
	right:0;
	text-align:right;
}
.Magazine .inner div:nth-of-type(3) strong {
	bottom:0;
	left:0;
}

@media screen and (min-width:840px) {
	.Magazine {
	}
	.Magazine .inner {
		display:grid;
		grid-gap:30px;
		grid-template-rows:1fr 1fr 300px 300px;
		grid-template-columns:1fr 1.3fr;
	}
	.Magazine .inner h3,
	.Magazine .inner small {
	    grid-column:1/3;
		margin:0 auto;
		line-height:1.2;
	}
	.Magazine .inner h3 {
	    grid-row:1/2;
	}
	.Magazine .inner small {
	    grid-row:2/3;
	}
	.Magazine .inner div {
		height:auto;
		font-size:min(220%, 3.2vw);
	}
	.Magazine .inner div:not(:last-of-type) {
		margin-bottom:0;
	}
	.Magazine .inner div:nth-of-type(1) {
		background-position:87% center;
	}
	.Magazine .inner div:nth-of-type(2) {
		background-position:center 25%;
	}
	.Magazine .inner div:nth-of-type(3) {
		background-position:center 22%;
	}
}

.Champaign {
	background-color:#ffffff;
	color:#031746;
}
.Champaign h2 {
	font-size:200%;
	width:fit-content;
	margin:.1em auto .3em;
	font-weight:bold;
	line-height:1;
}
.Champaign small {
	display:block;
	width:fit-content;
	font-weight:bold;
	margin:.5em auto;
	line-height:1;
}

.rollScr {
	overflow:auto;
	white-space:nowrap;
	padding:5vw;
	text-align:center;
}
.rollScr::-webkit-scrollbar {
	height:4px;
}
.rollScr::-webkit-scrollbar-track {
	background-color:#0d010044;
	border-radius:2px;
}
.rollScr::-webkit-scrollbar-thumb {
	background-color:#0d0100;
	border-radius:2px;
}
.rollScr li {
	position:relative;
	display:inline-block;
	width:60vw;
	border-radius:3px;
	overflow:hidden;
}
.rollScr li:only-child {
	width:100%;
}
.rollScr li:not(:last-of-type) {
	margin-right:5vw;
}
.rollScr li:before {
	content:'';
	display:block;
	padding-top:125%;
}
.rollScr li > * {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	#background-color:#00000033;
}
.rollScr a {
	display:block;
}
.rollScr img {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	max-width:100%;
	max-height:100%;
	margin:auto;
	display:block;
}
.rollScr .img {
	width:100%;
	height:80%;
	white-space:normal;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	color:#000000;
}
.rollScr .img:before {
	content:'COMING SOON';
	display:block;
	font-size:200%;
	width:fit-content;
	height:fit-content;
	text-align:center;
	filter:blur(.4vw);
}
.rollScr .caution {
	top:80%;
	height:20%;
	bottom:auto;
	white-space:normal;
}
.rollScr .caution small {
	display:block;
	text-align:left;
}
@media screen and (min-width:840px) {
	.rollScr {
		padding:20px 10px;
	}
	.rollScr li {
		width:270px;
	}
	.rollScr li:only-child {
		width:400px;
		max-width:100%;
	}
	.rollScr li:not(:last-of-type) {
		margin-right:20px;
	}
	.rollScr .img:before {
		filter:blur(2px);
	}
}

.Faq { 
	background-color:#f4f5f6;
	color:#031746;

} 
.Faq h2 {
	font-size:200%;
	width:fit-content;
	margin:.1em auto .3em;
	font-weight:bold;
	line-height:1;
}
.Faq li {
	position:relative;
	border-radius:3px;
	background-color:#ffffff;
	margin:.1em 2em .3em;
	font-weight:bold;
	list-style: none;
	overflow: hidden;
}
@media screen and (max-width:839px) {
	.Faq {
		padding: 20px 0px;
	}
	.Faq li {
		margin: .1em auto .3em;
	}
}
.Faq li .question {
	display:flex;
	justify-content: space-between;
	align-items: center;
	font-weight:bold;
	cursor: pointer;
	transition: background-color 0.3s ease;
}
.Faq li .question:hover {
	background-color: #f8f9fa;
}
.Faq li .answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, padding 0.3s ease;
	padding: 0 1em;
	color: #aa2f2f;
	display: flex;
	align-items: flex-start;
	gap: 0.5em;
}
.Faq li .answer-label {
	flex-shrink: 0;
	font-weight: bold;
}

.Faq li .answer-content {
	flex: 1;
	font-weight: normal;
}
.Faq li.open .answer {
	padding: .6em 1em;
}
.Faq li > .question {
	line-height:1.8;
	padding:.6em 1em;
}

.toggle {
	font-size: 1.2em;
	font-weight: bold;
	transition: transform 0.3s ease;
	display: inline-block;
	width: 20px;
	text-align: center;
}

@media screen and (max-width:839px) {
	.toggle {
		font-size: 1.8em;
	}
}

.Faq li.open .toggle {
	transform: rotate(180deg);
}

.Faq .qa_link {
	text-align: right;
	margin-top: .8em;
	margin-right: 2.3em;
	a {
		text-decoration: none;
		color: #031746;
		&:after {
			content: '▶';
			font-size: 80%;
			margin-left: 0.3em;
		}
		&:hover {
			opacity: 0.7;
		}
	}
}
@media screen and (max-width:839px) {
	.Faq .qa_link {
		margin-right: .3em;
	}
}

.News {
	background-color:#f4f5f6;
	color:#031746;
}
.News h2 {
	font-size:200%;
	width:fit-content;
	margin:.1em auto .3em;
	font-weight:bold;
	line-height:1;
}
.News li {
	position:relative;
	border-radius:3px;
	display:grid;
	grid-template-rows:2em 1fr;
	grid-template-columns:1fr 10vw;
	background-color:#ffffff;
	margin:.1em auto .3em;
}
.News li > * {
	display:block;
	line-height:1.8;
	padding:.6em 1em;
}
.News li > *:nth-child(1) {
	grid-column:1/2;
	grid-row:1/2;
	color:#d0d0d0;
	font-size:80%;
	line-height:calc(100 / 60 * 1.8);
	padding:calc(100em / 80 * .6) 1em;
}
.News li > *:nth-child(2) {
	grid-column:1/2;
	grid-row:2/3;
	font-weight:bold;
}
.News li > *:nth-child(3) {
	grid-column:2/3;
	grid-row:1/3;
	font-size:140%;
}
.News li > a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
}
.News li > a:before {
	content:'▶';
	display:block;
	width:fit-content;
	height:fit-content;
	color:#000000;
}
.News li > a:hover:before {
	animation:1s linear 0s infinite alternate linkroll;
}
@media screen and (min-width:840px) {
	.News li {
		grid-template-rows:1fr;
		grid-template-columns:100px 1fr 50px;
	}
	.News li > * {
		padding:1.2em 1em;
	}
	.News li > *:nth-child(n) {
		grid-row:1/2;
		padding:calc(100em / 60 * 1.2) 1em;
	}
	.News li > *:nth-child(1) {
		grid-column:1/2;
	}
	.News li > *:nth-child(2) {
		grid-column:2/3;
	}
	.News li > *:nth-child(3) {
		grid-column:3/4;
	}
}


.Contact {
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	color:#ffffff;
}
.Contact[ready] {
	background-image:linear-gradient(#00000096, #00000096), url(contactback.jpg);
}
.Contact .dots {
	color:#ffffff;
}
.Contact h2 {
	font-size:200%;
	width:fit-content;
	margin:.1em auto .3em;
	font-weight:bold;
	line-height:1;
}
.Contact small {
	display:block;
	width:fit-content;
	font-weight:bold;
	margin:.5em auto;
	line-height:2;
	text-align:center;
}
.Contact .inner {
    padding:1vw 5vw 10vw;
}
.Contact a {
	position:relative;
	display:block;
	width:fit-content;
	font-size:4vw;
	line-height:1;
	padding:1em 2em;
	color:#ffffff;
	margin:auto;
	border-radius:1.5em;
	overflow:hidden;
	box-shadow:0 .25em .5em #00000066;
}
.Contact a span {
	position:relative;
	display:inline-block;
}
.Contact a:before {
	content:'';
	display:block;
	position:absolute;
	left:calc(50% - 400px);
	right:calc(50% - 400px);
	top:calc(50% - 400px);
	bottom:calc(50% - 400px);
	background-image:radial-gradient(closest-side, #00000066 0%, #000000bb 15%,#00000066 30%, #000000 65%);
	transition-duration:20s;
	transition-property:all;
	transition-timing-function:cubic-bezier(0.02, 1.06, 0.7, 0.92);
}
.Contact a:not(:hover):before {
	transform:scale(.5) translateY(5em);
	transition-duration:.4s;
	transition-timing-function:ease;
}
@media screen and (min-width:840px) {
	.Contact .inner {
	    padding:10px 40px 100px;
	}
	.Contact a {
		font-size:19px;
	}
}
@media screen and (max-width: 840px) {
	.display-pc {
		display: none !important;
	}
	.display-pc-div {
		display: none !important;
	}
	.display-sp {
		display: block !important;
		max-width: 100%;
	    max-height: 100%;
	}
	.display-sp-div {
		display: block !important;
	}
}
  

.bborder-11 {
	border-bottom:solid 11vw #2e3841;
}

.auto-width img {
	width: auto !important;
}

.regular10 {
	margin-bottom:5vw;
}

.regular10 img {
	width:100%;
	height:100%;
}

@media screen and (min-width: 840px) {
	.regular10 {
		margin-bottom: 40px;
	}
}


/* hide device section */
/*
.bodyimg {
	display: none;
}
.devSupp {
	padding: 0;
}
.devSupp .xinn {
	padding: 0;
}
*/

.pay-banner {
	width: 100%;
    display: flex !important;
    justify-content: center;
    align-items: center;
    margin: 30px auto;
}

.pay-banner img {
	width: 65vw;
	transition: opacity 0.3s ease-in-out; 
}

.pay-banner img:hover {
	opacity: 0.8;
}

.pc-show {
  display: block;
}

.sp-show {
  display: none;
}

.lineUP .switch.sp-show {
	display: none;
}

@media screen and (max-width: 767px) {
	
	.pay-banner img {
		width: 100vw;
		transition: opacity 0.3s ease-in-out; 
	}
	.pay-banner {
		width: 100%;
		display: flex !important;
		justify-content: center;
		align-items: center;
		margin: 0px auto;
		padding: 0px;
	}
  .pc-show {
    display: none !important;
  }
  .sp-show {
    display: flex !important;
  }
  
}

.floatTOP > div {
	right:max(0px, calc(env(safe-area-inset-right) / 2));
	left:auto !important;
	bottom:max(2px, calc(env(safe-area-inset-left) / 2));
}

div.campaign_banner {
	background-color: #f4f5f6;
	width: 80%;
	margin: 0 auto;
}

div.campaign_banner a {
	display: block;
}

div.campaign_banner img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 767px) {
	div.campaign_banner {
		width: 100%;
	}
}