/*
Theme Name: MYTREX Official Site
Author: Sotsu Medical
Author URI: https://www.mytrex.jp/neck
Description: MYTREX mediloop
Version: 1.0
*/

/*フェイスライン*/

#header{
	/*はじめの高さを設定*/
	height: 7vw;
	width:100%;
	/*以下はレイアウトのためのCSS*/
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin{
	position: fixed;
	z-index: 999;/*最前面へ*/
	height: 0px;
	animation: DownAnime 0.5s forwards;
	margin-top: -7vw !important;
}

@keyframes DownAnime{
	from {
		opacity: 0;
		transform: translateY(-14vw);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
main {
    font-family: "Noto Sans JP", sans-serif;
	/*	font-family: "Noto Sans JP", "M PLUS 1p", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;*/
	height: 100%;
	/*min-height: 100vh;*/
	padding: 0 0px;
	background-color: #fff;
	transition: all .5s;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-top:8vw;
}
@media screen and (max-width: 767px) {
	main {
		margin-top:0vw;
	}
	.wrapper > main {
		margin-top: 20vw;
	}
	.pc{
		display: none !important;
	}
}
@media screen and (min-width: 768px) {
	main {
		margin-top:3vw !important;
	}
	.sp{
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	.container{
		
	}
}
@media screen and (min-width: 768px) {
	.container{
		padding-right: 0px;
		padding-left: 0px;
		margin-right: auto;
		margin-left: auto;
	}
}

.fs{
	font-family: 'Times New Roman', 'YuMincho', 'Hiragino Mincho ProN', 'Yu Mincho', 'MS PMincho', serif !important;
}

/* pagetop -------------------------------------------------------------- */

@media screen and (max-width: 767px) {
	.pd_shop{
		padding:0.5vw 1vw 0vw 0vw;
	}
}
@media screen and (min-width: 768px) {
	.pd_shop{
		padding:0.5vw 1vw 0vw 0vw;
	}
}


@media screen and (max-width: 767px) {
	#pageTop2 {
		position: fixed;
		bottom: 12vw;
		left: 2vw;
		z-index: 10000;
	}
}
@media screen and (min-width: 768px) {
	#pageTop2 {
		position: fixed;
		bottom: 2vw;
		right: 2vw;
		z-index: 10000;
	}
}

#pageTop2 img{
	width: 100%;
}

#pageTop2 a {
	display: block;
	z-index: 999;
	padding: 8px 8px 8px 8px;
	border-radius: 0px;
	width: 35px;
	height: 35px;
	background-color: #231815;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
}
#pageTop2 a:hover {
	text-decoration: none;
	background-color: #ffffff;
}
/* pagetop -------------------------------------------------------------- */

/***          menu sub          ***/
@media screen and (max-width: 767px) {
	.menu_sp_list_logo {
		padding: 18px 0vw 18px 0vw;
		text-align: center;
		width: 100%;
		background: #ffffff;
		z-index: 999;
		position: fixed;
	}
	.menu_sub{
		background:#d9e5da;
		padding: 0.5vw 0.5vw;
		width: 100%;
		position: fixed;
		top: 11vw;
		z-index: 999;
	}
	.menu_sub_item_nm{
		font-size: 1.2vw;
		font-weight: 800;
		letter-spacing: 0.1vw;
		line-height: 1vw;
		color: #231815;
		padding: 0.5vw 0.5vw;
		text-align: center;
	}
	.menu_sub_item_link{
		font-size: 3vw;
		font-weight: normal;
		letter-spacing: 0.1vw;
		line-height: 3vw;
		color: #b5b5b6;
		padding: 2.5vw 0.5vw;
		width: 100%;
		overflow-x: auto;
		white-space: nowrap;
		overflow-scrolling: touch;
		-webkit-overflow-scrolling: touch;
	}
	.menu_sub_item_link a{
		color: #231815;
		display: inline-block;
		list-style: none;
		padding: 0vw 3vw;
	}
	.menu_sub_item_link a:hover{
		color:#b5b5b6;
	}
	#mt_pc_top_buy_cartin {
		position: fixed;
		bottom: 0px;
		right: 0px;
		background: #0000004f;
		padding: 4px 0px 0px;
	}
	.mt_pc_top_buy{
		padding: 0 12vw;
	}
	/* state */
	.menu_sub.is-fixed {
		width: 86%;
		position: absolute;
		top: 0;
		transition-duration: 0.2s;
	}
	.is-fixed .menu_sub_item_link {
		padding: 4vw 0.5vw;
	}
}
@media screen and (min-width: 768px) {
	.menu_sub{
		background:#d9e5da;
		padding: 0vw;
		position: fixed;
		z-index: 999;
		top: 7.02vw;
		width: 100%;
		height: 3vw;
	}
	.menu_sub_item_nm{
		font-size: 1.2vw;
		font-weight: 800;
		letter-spacing: 0.1vw;
		line-height: 1vw;
		color: #231815;
		padding: 1.0vw 0.5vw;
		text-align: center;
	}
	.menu_sub_item_link{
		font-size:0.75vw;
		font-weight:normal;
		letter-spacing:0.08vw;
		line-height:1vw;
		color:#b5b5b6;
		padding: 1.0vw 0vw;
	}
	.menu_sub_item_link a{
		color:#231815;
	}
	.menu_sub_item_link a:hover{
		color:#b5b5b6;
	}
	#mt_pc_top_buy_cartin {
		padding: 0;
	}
	.mt_pc_top_buy{
		padding: 0vw 0vw !important;
	}
}

/***          menu sub          ***/

/***          l          ***/
@media screen and (max-width: 767px) {
	.pd_l_area{
		padding:4vw 0vw;
	}
	.pd_l_area_ttl{
		font-size: 5vw;
		line-height: 5vw;
		letter-spacing: 1.0vw;
		color: #231815;
		padding-bottom: 6vw;
		text-align: center;
	}
	.pd_l_box_are{
		padding:0vw 0vw;
	}
	.swiper-container {
		min-width: 300px;
		margin: 30px 0;
	}
	.swiper-container {
		margin-left: auto;
		margin-right: auto;
		position: relative;
		overflow: hidden;
		list-style: none;
		padding: 0;
		/* Fix of Webkit flickering */
		z-index: 1;
	}
	.swiper-wrapper {
		position: relative;
		width: 100%;
		height: 100%;
		z-index: 1;
		display: flex;
		transition-property: transform;
		box-sizing: content-box;
	}
	.swiper-slide {
		flex-shrink: 0 !important;
		width: 33%;
		height: 100% !important;
		position: relative !important;
		transition-property: transform !important;
		padding: 0vw 0vw !important;
	}
	.swiper-button-prev,
	.swiper-button-next {
		position: absolute;
		top: 50%;
		width: calc(var(--swiper-navigation-size) / 44 * 27);
		height: var(--swiper-navigation-size);
		margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
		z-index: 10;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--swiper-navigation-color, var(--swiper-theme-color));
	}
	.pd_l_item{
		padding:0.1vw;
		text-align:center;
	}
	.pd_l_item_img{
		
	}
	.pd_l_item_img img{
		width:100%;
	}
	.pd_l_item_ttl{
		font-size: 1.1vw;
		line-height: 1.6vw;
		letter-spacing: 0.1vw;
		color: #231815;
		text-align: left;
		display:none;
	}
}
@media screen and (min-width: 768px) {
	.pd_l_area{
		padding:4vw 0vw;
	}
	.pd_l_area_ttl{
		font-size: 1.8vw;
		line-height: 2vw;
		letter-spacing: 0.1vw;
		color: #231815;
		padding-bottom: 1.5vw;
		text-align: center;
	}
	.pd_l_box_are{
		padding:0vw 0vw;
	}
	.swiper-container {
		min-width: 500px;
		margin: 30px 0;
	}
	.swiper-container {
		margin-left: auto;
		margin-right: auto;
		position: relative;
		overflow: hidden;
		list-style: none;
		padding: 0;
		/* Fix of Webkit flickering */
		z-index: 1;
	}
	
	.swiper-wrapper {
		position: relative;
		width: 100%;
		height: 100%;
		z-index: 1;
		display: flex;
		transition-property: transform;
		box-sizing: content-box;
	}
	
	.swiper-slide {
		flex-shrink: 0 !important;
		width: 25%;
		height: 100% !important;
		position: relative !important;
		transition-property: transform !important;
		padding: 0vw 0vw !important;
		background: none !important;
	}
	
	.swiper-button-prev,
	.swiper-button-next {
		position: absolute;
		top: 50%;
		width: calc(var(--swiper-navigation-size) / 44 * 27);
		height: var(--swiper-navigation-size);
		margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
		z-index: 10;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--swiper-navigation-color, var(--swiper-theme-color));
	}
	
	.pd_l_item{
		padding:0.1vw;
		text-align:center;
	}
	.pd_l_item_img{
		
	}
	.pd_l_item_img img{
		width:100%;
	}
	.pd_l_item_ttl{
		font-size: 1.1vw;
		line-height: 1.6vw;
		letter-spacing: 0.1vw;
		color: #231815;
		text-align: left;
	}
}
/***          l          ***/


/***          modal          ***/
@media screen and (max-width: 767px) {
	#btn-close-modal {
		width: 23vw;
		text-align: center;
		cursor: pointer;
		color: #3e3c3d;
		font-size: 3.5vw;
		font-weight: normal;
		border: 1px solid #3e3c3d;
		padding: 1.5vw 0.2vw;
		border-radius: 10vw;
		line-height: 3.5vw;
		margin: 0 auto 10vw;
	}
	.modal-content {
		width: 94%;
	}
}
@media screen and (min-width: 768px) {
	#btn-close-modal {
		width: 7vw;
		text-align: center;
		cursor: pointer;
		color: #3e3c3d;
		font-size: 1vw;
		font-weight: normal;
		border: 1px solid #3e3c3d;
		padding: 0.5vw 0.2vw;
		border-radius: 10vw;
		line-height: 1vw;
		margin: 0 auto 5vw;
	}
	.modal-content {
		width: 80%;
	}
}
.modal-content {
	margin: 60px auto 80px;
	-webkit-box-shadow: 0 0px 0px rgba(0,0,0,0);
	box-shadow: 0 0px 0px rgba(0,0,0,0);
	background: rgba(255,255,255,1);
	border: 0px solid rgba(0,0,0,0);
	border-radius: 0px;
}
/***          modal          ***/

/***          q         ***/

/* 多言語対応(フランス語,英語) */
font + br {
	display: none;
}
@media screen and (max-width: 767px) {
	html:lang(en) .pd_d_box2_ttl {
		height: 3em;
	}
}



.accordion {
	border: 1px solid #2d2d2d;
	border-radius: 5px;
}

.accordion_btn {
	width: 100%;
	background: none;
	border: 0;
	cursor: pointer;
	padding: 1vw 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2vw;
		letter-spacing: 0.05em;
}

.accordion_content {
	max-height: 0;
	overflow: hidden;
	transition: max-height .4s ease;
}

.accordion.open .accordion_content {
	max-height: 3000px;
	padding: 3% 4% 4%;
}

.accordion_inner {
	padding-bottom: 20px;
}

.ps_a01_3b1b_txt2b_arr2 {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.1vw;
	height: 1.1vw;
	transform: translate(0.2em, -0.05em) rotate(90deg);
	background: #2d2d2d;
	border-radius: 0.2vw;
	right: -34%;
}
.ps_a01_3b1b_txt2b_arr2::before, .ps_a01_3b1b_txt2b_arr2::after {
	box-sizing: border-box;
}
.ps_a01_3b1b_txt2b_arr2::after {
	content: '';
	width: 50%;
	height: 50%;
	border-top: 0.1em solid #fff;
	border-right: 0.1em solid #fff;
	transform: translateX(-15%) rotate(45deg);
}

.accordion.open .ps_a01_3b1b_txt2b_arr2 {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.1vw;
	height: 1.1vw;
	transform: translate(0.2em, -0.05em) rotate(90deg);
	background: #2d2d2d;
	border-radius: 0.2vw;
	right: -34%;
}
.accordion.open .ps_a01_3b1b_txt2b_arr2::before, .ps_a01_3b1b_txt2b_arr2::after {
	box-sizing: border-box;
}
.accordion.open .ps_a01_3b1b_txt2b_arr2::after {
	content: '';
	width: 50%;
	height: 50%;
	border-top: 0.1em solid #fff;
	border-right: 0.1em solid #fff;
	transform: translateX(-15%) rotate(-135deg);
	margin-left: 0.5vw;
}

img {
	width: 100%;
	height: auto;
}

@media screen and (min-width: 768px) {
	#ps_a01{
		min-height: 90vw;
	}
	.ps_a01_1a{
		/*
		clip-path: polygon(100% 0%, 100% 0%, 100% 63.8%, 0% 100%, 0% 100%, 0% 0%);
		*/
	}
	.ps_a01_1{
		position: relative;
	}
	.ps_a01_2{
		clip-path: polygon(0% 50.2%, 100% 0%, 100% 49.2%, 0% 100%, 0% 100%, 0% 0%);
		position: absolute;
		top: 64.8%;
		width: 100%;
	}
	.ps_a01_3{
		position: absolute;
		top: 113%;
		width: 100%;
	}
	.ps_a01_3a{
		position: relative;
		padding: 0% 5%;
	}
	.ps_a01_3b2{
		position: absolute;
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 2% 0%);
		background: #ffd700;
		padding: 0.9vw 0vw 0.9vw 5vw;
		width: 78%;
		bottom: 0%;
	}
	.ps_a01_3b2 img{
		width: 8vw;
	}
	.ps_a01_3b1{
		display: grid;
		grid-template-columns: 3fr 4fr 3fr;
		padding: 0vw 0% 0% 6%;
	}
	
	.ps_a01_3b1a{
		padding: 0;
		position: absolute;
		width: 33%;
	}
	.ps_a01_3b1b{
		padding:30% 15% 0% 11%;
	}
	.ps_a01_3b1b_txt1 {
		color: #2d2d2d;
		font-size: 1.05vw;
		line-height: 1;
		letter-spacing: 0.04em;
		text-align: center;
		padding-bottom: 0.7vw;
		border-bottom: 1px solid #2d2d2d;
	}
	.ps_a01_3b1b_txt1a{
		width: 9vw;
		padding: 0vw 0vw;
		display: inline-block;
		vertical-align: middle;
	}
	.ps_a01_3b1b_txt2{
		color: #2d2d2d;
		font-size: 1vw;
		display: grid;
		grid-template-columns: 1fr 1.2fr;
		gap: 0vw;
	}
	.ps_a01_3b1b_txt2a1 {
		font-size: 0.8vw;
		letter-spacing: 0.08em;
		padding-bottom: 0.1vw;
	}
	.ps_a01_3b1b_txt2a2{
		display: grid;
		grid-template-columns: 45% 55%;
		gap: 0.5vw;
	}
	
	.ps_a01_3b1b_txt2a3{
		font-size: 4.0vw;
		font-weight: 800;
		transform: scale(1, 0.82);
		letter-spacing: -0.3vw;
		line-height: 1;
	}
	.ps_a01_3b1b_txt2a4{
		font-size: 0.75vw;
		line-height: 1.2;
		padding-top: 0.6vw;
	}
	.ps_a01_3b1b_txt2a{
		padding:1vw 0vw;
		
	}
	.ps_a01_3b1b_txt2a1{
	}
	
	.ps_a01_3b1b_txt2b{
		background: #2d2d2d;
		text-align: center;
		color: #fff !important;
		font-size: 0.85vw;
		line-height: 1;
		letter-spacing: 0.05em;
		display: block;
		margin-top: 1.5vw !important;
		padding: 1.4vw 0vw;
		border-radius: 0.2vw;
	}
	.ps_a01_3b1b_txt2b_arr {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 0.85vw;
		height: 0.85vw;
		transform: translate(0.2em, -0.05em) rotate(90deg);
		background: #fff;
		border-radius: 0.2vw;
	}
	.ps_a01_3b1b_txt2b_arr::before, .ps_a01_3b1b_txt2b_arr::after {
		box-sizing: border-box;
	}
	.ps_a01_3b1b_txt2b_arr::after {
		content: '';
		width: 50%;
		height: 50%;
		border-top: 0.1em solid #2d2d2d;
		border-right: 0.1em solid #2d2d2d;
		transform: translateX(-15%) rotate(45deg);
	}
	.ps_a01_3b1b2{
		z-index: 1;
		position: relative;
		top: 2vw;
	}
	.ps_a02_1{
		position: relative;
		min-height: 53vw;
	}
	.ps_a02_1_bg{
		clip-path: polygon(0% 36%, 100% 0%, 100% 63%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		min-height: 52.7vw;
		position: absolute;
		width: 100%;
	}
	.ps_a02_1_img{
		position: absolute;
		bottom: -8%;
		width: 100%;
	}
	.ps_a02_1_ttl{
		writing-mode: vertical-rl;
		color: #fff;
		position: absolute;
		font-size: 0.8vw;
		letter-spacing: 0.05em;
		line-height: 1.6;
		top: 15%;
		right: 8%;
	}
	.ps_a02_2{
		position: absolute;
		width: 100%;
		top: 29%;
	}
	.ps_a02_2_img{
		padding: 16% 20% 12% 20%;
		width: 87%;
	}
	.ps_a02_2_vd{
		position: absolute;
		left: 9%;
		width: 75%;
		border-radius: 6px;
		border: 2px solid #fff;
	}
	.ps_a02_2_vd iframe{
		aspect-ratio: 1 / 0.565;
		width: 100%;
	}
	.ps_a02_2_ttl {
		color: #fff;
		font-size: 1.7vw;
		line-height: 1.4;
	}
	.ps_a02_2_ttl span{
		font-size: 1.3vw;
		letter-spacing: 0.05em;
	}
	.ps_a02_2_txt{
		color: #fff;
		font-size: 1.03vw;
		letter-spacing: 0.07em;
		line-height: 1.75;
		padding-top: 8%;
	}
	.ps_a02_2_txt2{
		color: #fff;
		font-size: 0.7vw;
		padding-top: 5%;
	}
	
	#ps_a03{
		
	}
	.ps_a03_1 {
		position: relative;
		padding-top: 14%;
	}
	.ps_a03_1_bg{
		clip-path: polygon(0% 56%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		height: 35vw;
		margin-top: -19.8vw !important;
	}
	.ps_a03_2{
		position: absolute;
		top: -10%;
		width: 100%;
	}
	.ps_a03_2_ttl{
		text-align: center;
		font-size: 1.3vw;
		line-height: 2;
			}
	.ps_a03_2_ttl span{
		font-size: 1.6vw;
		position: relative;
		display: inline-block;
		z-index: 1;
		margin: 0 0.4vw;
		font-weight: 600;
		
	}
	.ps_a03_2_ttl span::before{
		content: "";
		position: absolute;
		left: -0.2em;
		right: -0.2em;
		bottom: 0.3em;
		height: 0.55em;
		background: #ffd700;
		transform: skewX(-10deg);
		z-index: -1;
	}
	.ps_a03_2_txt{
		text-align: center;
		font-size: 1.2vw;
		padding-top: 2vw;
	}
	.ps_a03_3{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 2vw;
		padding: 5% 7%;
	}
	.ps_a03_3a{
		border: 1px solid #000;
		border-radius: 6px;
		padding: 2vw 3vw;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1vw;
		background: #fff;
	}
	.ps_a03_3_txta{
		ext-align: left;
		font-size: 1.2vw;
		line-height: 1.4;
		padding-bottom: 1vw;
	}
	.ps_a03_3_txtb{
		text-align: left;
		font-size: 0.9vw;
		line-height: 1.4;
	}
	.ps_a03_3_img{
		padding: 0vw 1vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.ps_a04_1{
		transform: skewX(-20deg);
		display: inline-block;
		font-size: 1.9vw;
		line-height: 1.5;
		bottom: 7%;
		position: absolute;
		color: #fff;
		left: 18%;
		padding-left: 1vw;
		text-indent: -1vw;
		font-weight: 600;
		text-decoration: underline;
	}
	.ps_a04_3{
		position: absolute;
		bottom: 29.1%;
		font-size: 4.4vw;
		font-weight: 800;
		color: #fff;
		transform: rotate(-11deg);
		left: 11%;
		letter-spacing: 0.01em;
	}
	.ps_a04_3 span{
		font-size: 2.5vw;
		margin-right: 0.8vw;
	}
	.ps_a04_2{
		position: absolute;
		bottom: 6%;
		display: grid;
		grid-template-columns: 20% 80%;
		gap: 1vw;
		width: 25%;
		right: 15%;
	}
	.ps_a04_2_ttl{
		color: #fff;
		writing-mode: vertical-rl;
		position: absolute;
		bottom: 3%;
	}
	.ps_a04_2_ttl1{
		font-size: 0.75vw;
		line-height: 1.6;
	}
	.ps_a04_2_ttl2{
		font-size: 1.2vw;
		letter-spacing: 0.05em;
		line-height: 1.2;
	}
	.ps_a04_2_ttl3{
		font-size: 0.75vw;
		line-height: 1.6;
	}
	.ps_b01{
		position: relative;
	}
	.ps_b01_1a{
		position: relative;
		line-height: 0;
	}
	.ps_b01_1b{
		background: #2d2d2d;
		color: #fff;
		text-align: center;
		padding: 1.2vw;
		font-size: 1.8vw;
		letter-spacing: 0.03em;
	}
	.ps_b01_1b1{
		font-size: 2.2vw;
		line-height: 1;
	}
	.ps_b01_1b2{
		font-size: 1.4vw;
		line-height: 1;
	}
	.ps_b01_1b3{
		font-size: 1.1vw;
		padding-left: 0.5vw;
	}
	.ps_b01_1c1{
		background: #fff;
		color: #2d2d2d;
		padding: 0.5vw 0.5vw 0.5vw 0.5vw;
		margin: 0 auto;
		margin-top: 0px;
		letter-spacing: 0.1em;
		text-align: center;
		line-height: 1.3;
		position: absolute;
		top: 28.8%;
		right: 47.3%;
/*		left: 0%;
		right: -4%;*/
		display: inline-table;
		font-size: 1.24vw;
		font-weight: 600;
	}
	.ps_b01_1c1 span{
		position: relative;
		left: 44%;
		bottom: 0.5vw;
	}
	.ps_b01_1c2{
		background: #fff;
		color: #2d2d2d;
		padding: 0.5vw 0.5vw 0.5vw 0.5vw;
		margin: 0 auto;
		letter-spacing: 0.1em;
		text-align: center;
		line-height: 1.3;
		display: inline-table;
		position: absolute;
		top: 28.8%;
		left: 47.3%;
/*		left: -4%;
		right: 0%; */
		font-size: 1.24vw;
		font-weight: 600;
	}
	.ps_b01_1c2 span{
		position: relative;
		left: 44%;
		bottom: 0.5vw;
	}
	.ps_b01_1d{
		position: absolute;
		bottom: -6.2%;
		width: 23%;
		left: 11%;
	}
	.ps_b02{
		padding-top: 5%;
		padding-bottom: 5.5%;
	}
	.ps_b02_1{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		width: 48%;
		margin: 0 auto;
	}
	.ps_b02_1a{
		display: grid;
		grid-template-columns: 22% 78%;
		gap: 1.0vw;
		padding: 0vw 1.0vw;
	}
	.ps_b02_1aa{
		border-left: 1px solid #2d2d2d;
		border-right: 1px solid #2d2d2d;
	}
	.ps_b02_1a1{
		line-height: 1;
		display: flex;
		align-items: center;
		justify-content: left;
		padding: 0.6vw 0vw;
	}
	.ps_b02_1a2{
		color: #2d2d2d;
		font-size: 0.83vw;
		letter-spacing: 0.1em;
		line-height: 1.4;
		display: flex;
		align-items: center;
		justify-content: left;
	}
	.ps_b02_1b{
		text-align: center;
		font-size: 0.8vw;
		letter-spacing: 0.1em;
		padding-top: 3%;
	}
	#ps_b03{
		padding: 5% 0%;
	}
	.ps_b03_1{
		clip-path: polygon(0% 0%, 100% 0%, 98.5% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		padding: 0.9vw 0vw 0.9vw 5vw;
		width: 90%;
		height: 3.5vw;
	}
	.ps_b03_1a{
		width: 11vw;
		position: relative;
		left: 27%;
	}
	.ps_b03_1b{
		width: 24%;
		position: absolute;
		bottom: -5%;
		right: 10%;
	}
	#ps_b03_2{
		padding: 4% 0%;
	}
	.ps_b03_2{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		width: 100%;
		margin: 0 auto;
		font-size: 1.2vw;
		padding-bottom: 5%;
	}
	.ps_b03_2 span{
		font-size: 0.9vw;
		padding-left: 0.2vw;
	}
	.ps_b03_2a{
		font-size: 0.8vw;
		padding-top: 0.3vw;
	}
	
	.ps_b03_3_list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 2vw;
	}
	.ps_b03_3_list_area{
		background: #2d2d2d;
		color: #fff;
		font-size: 1vw;
		text-align: center;
		line-height: 1;
		padding: 0.5vw;
		letter-spacing: 0.05em;
		margin-bottom: 1vw;
	}
	.ps_b03_3_list_shop{
		font-size: 0.9vw;
		line-height: 1.8;
	}
	
	
	.ps_b04_2c{
		background: #2d2d2d;
		text-align: center;
		color: #fff !important;
		font-size: 0.85vw;
		line-height: 1;
		letter-spacing: 0.05em;
		display: block;
		margin-top: 1.5vw !important;
		padding: 1.4vw;
		border-radius: 0.2vw;
		border: 1px solid #fff;
		width: 59%;
	}
	.ps_b04_2c_arr {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 0.85vw;
		height: 0.85vw;
		transform: translate(0.2em, -0.05em) rotate(90deg);
		background: #fff;
		border-radius: 0.2vw;
		right: -25%;
	}
	.ps_b04_2c_arr::before, .ps_b04_2c_arr::after {
		box-sizing: border-box;
	}
	.ps_b04_2c_arr::after {
		content: '';
		width: 50%;
		height: 50%;
		border-top: 0.1em solid #2d2d2d;
		border-right: 0.1em solid #2d2d2d;
		transform: translateX(-15%) rotate(45deg);
	}
	#ps_b04{
		position: relative;
		clip-path: polygon(0 23%, 100% 0%, 100% 77%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		min-height: 85vw;
	}
	.ps_b04_1{
		position: absolute;
		top: 23%;
		width: 87%;
		margin: 0 auto;
		left: 0;
		right: 0;
	}
	.ps_b04_2{
		
	}
	.ps_b04_2{
		padding-left: 15%;
		padding-top: 15%;
	}
	.ps_b04_2a_logo{
		width: 60%;
	}
	.ps_b04_2a_price1{
		color: #fff;
		font-size: 0.9vw;
		letter-spacing: 0.08em;
		padding-top: 4%;
	}
	.ps_b04_2a_price2{
		color: #fff;
		font-weight: 600;
		font-size: 2.6vw;
		padding-top: 0.5vw;
	}
	.ps_b04_2a_price2 span{
		font-size: 0.9vw;
		letter-spacing: 0.09em;
	}
	.ps_b04_2b{
		font-size: 1.0vw;
		color: #fff;
		letter-spacing: 0.09em;
		padding-top: 14%;
		line-height: 1;
	}
	.ps_b04_2a{
		border-bottom: 1px solid #fff;
		padding-bottom: 14%;
	}
	.ps_b04_2b_logo{
		width: 8vw;
		display: inline-block;
		margin: 0 0.1vw;
		vertical-align: text-bottom;
	}
	#ps_c01{
		position: relative;
		top: -19.5vw;
	}
	.ps_c01_1{
		clip-path: polygon(0% 22.9%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		position: relative;
	}
	.ps_c01_1a{
		position: absolute;
		writing-mode: vertical-rl;
		top: 28%;
		font-size: 1.25vw;
		line-height: 1.6;
		letter-spacing: 0.1em;
		width: 100%;
		left: 4%;
		transform: translate(-50%, -50%);
		font-weight: 600;
	}
	.ps_c01_1a span{
		transform: scaleY(-1);
		writing-mode: sideways-lr;
	}
	.ps_c01_1b{
		position: absolute;
		top: 4%;
		z-index: 1;
		right: 2%;
		font-size: 0.85vw;
		transform: rotate(-11deg);
		line-height: 1.3;
		text-align: right;
	}
}
@media screen and (max-width: 767px) {
	#ps_a01{
		min-height: 351vw;
	}
	.ps_a01_1a{
		/*
		clip-path: polygon(100% 0%, 100% 0%, 100% 63.8%, 0% 100%, 0% 100%, 0% 0%);
		*/
	}
	.ps_a01_1{
		position: relative;
	}
	.ps_a01_2{
		clip-path: polygon(0% 37.2%, 100% 0%, 100% 69.2%, 0% 100%, 0% 100%, 0% 0%);
		position: absolute;
		top: 85.5%;
		width: 100%;
	}
	.ps_a01_3{
		position: absolute;
		top: 127%;
	}
	.ps_a01_3a{
		position: relative;
		padding: 0% 0%;
	}
	.ps_a01_3b2{
		position: absolute;
		clip-path: polygon(0% 0%, 100% 0%, 96% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #ffd700;
		padding: 5vw 8vw 5vw 5vw;
		width: 95%;
		top: 25%;
		text-align: right;
	}
	.ps_a01_3b2 img{
		width: 45%;
	}
	.ps_a01_3b1{
	}
	
	.ps_a01_3b1a{
		padding: 0;
		position: absolute;
		width: 67%;
		top: -15%;
	}
	.ps_a01_3b1b{
		z-index: 1;
		position: relative;
	}
	.ps_a01_3b1b_txt1 {
		color: #2d2d2d;
		font-size: 4.1vw;
		line-height: 1;
		letter-spacing: 0.04em;
		text-align: left;
		padding-bottom: 0.7vw;
		position: absolute;
		left: 58%;
		top: -30%;
	}
	.ps_a01_3b1b_txt1a{
		width: 32vw;
		padding: 4vw 0vw 1vw;
		display: inline-block;
	}
	.ps_a01_3b1b_txt2{
		color: #2d2d2d;
		font-size: 1vw;
		/*		display: grid;
		grid-template-columns: 1fr 1.2fr;
		gap: 0vw; */
	}
	.ps_a01_3b1b_txt2a1 {
		font-size: 0.8vw;
		letter-spacing: 0.08em;
		padding-bottom: 0.1vw;
	}
	.ps_a01_3b1b_txt2a2{
		display: grid;
		grid-template-columns: 45% 55%;
		gap: 0.5vw;
	}
	
	.ps_a01_3b1b_txt2a3{
		font-size: 4.0vw;
		font-weight: 800;
		transform: scale(1, 0.82);
		letter-spacing: -0.3vw;
		line-height: 1;
	}
	.ps_a01_3b1b_txt2a4{
		font-size: 0.75vw;
		line-height: 1.2;
		padding-top: 0.6vw;
	}
	.ps_a01_3b1b_txt2a{
		padding:1vw 0vw;
		
	}
	.ps_a01_3b1b_txt2a1{
	}
	
	.ps_a01_3b1b_txt2b{
		background: #2d2d2d;
		text-align: center;
		color: #fff !important;
		font-size: 3.2vw;
		line-height: 1;
		letter-spacing: 0.1em;
		display: block;
		padding: 4.6vw 0vw;
		border-radius: 0.7vw;
		width: 65%;
		margin: 4vw auto 2vw !important;
	}
	.ps_a01_3b1b_txt2b_arr {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.85vw;
		height: 2.85vw;
		transform: translate(4.0em, -0.05em) rotate(90deg);
		background: #fff;
		border-radius: 0.5vw;
	}
	.ps_a01_3b1b_txt2b_arr::before, .ps_a01_3b1b_txt2b_arr::after {
		box-sizing: border-box;
	}
	.ps_a01_3b1b_txt2b_arr::after {
		content: '';
		width: 50%;
		height: 50%;
		border-top: 0.1em solid #2d2d2d;
		border-right: 0.1em solid #2d2d2d;
		transform: translateX(-15%) rotate(45deg);
	}
	.ps_a01_3b1b2{
		z-index: 1;
		position: relative;
		top: -14%;
		left: 0;
	}
	#ps_a02{
		padding-top: 15%;
	}
	.ps_a02_1{
		position: relative;
		min-height: 249vw;
	}
	.ps_a02_1_bg{
		clip-path: polygon(0% 11%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		min-height: 196.9vw;
		position: absolute;
		width: 100%;
	}
	.ps_a02_1_img{
		position: absolute;
		bottom: -9%;
		z-index: 1;
	}
	.ps_a02_1_ttl{
		writing-mode: vertical-rl;
		color: #fff;
		position: absolute;
		font-size: 2.9vw;
		letter-spacing: 0.13em;
		line-height: 1.6;
		top: 6%;
		right: 4%;
	}
	.ps_a02_2{
		position: absolute;
		width: 100%;
		top: 14%;
	}
	.ps_a02_2_box {
		padding: 0% 11% 17%;
	}
	.ps_a02_2_img{
		padding: 14% 23% 12% 9%;
	}
	.ps_a02_2_vd{
		position: absolute;
		width: 100%;
	}
	.ps_a02_2_vd iframe{
		aspect-ratio: 1 / 0.565;
		width: 100%;
	}
	.ps_a02_2_ttl {
		color: #fff;
		font-size: 5.8vw;
		line-height: 1.5;
	}
	.ps_a02_2_ttl span{
		font-size: 4.3vw;
		letter-spacing: 0.1em;
	}
	.ps_a02_2_txt{
		color: #fff;
		font-size: 3.53vw;
		letter-spacing: 0.1em;
		line-height: 1.75;
		padding-top: 8%;
			}
	.ps_a02_2_txt2{
		color: #fff;
		font-size: 1.75vw;
		padding-top: 5%;
				letter-spacing: 0.08em;
	}
	
	#ps_a03{
		padding-top: 30%;
	}
	.ps_a03_1 {
		position: relative;
		top: 0%;
		padding-top: 55%;
	}
	.ps_a03_1_bg{
		clip-path: polygon(0% 18.5%, 100% -0.5%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		height: 103vw;
		margin-top: -19.8vw !important;
	}
	.ps_a03_2{
		position: absolute;
		top: -29%;
		width: 100%;
	}
	.ps_a03_2_ttl{
		text-align: center;
		font-size: 4.3vw;
		line-height: 2;
				padding-top: 8%;
	}
	.ps_a03_2_ttl span{
		font-size: 5.5vw;
		position: relative;
		display: inline-block;
		z-index: 1;
		margin: 0 0.4vw;
		font-weight: 600;
	}
	.ps_a03_2_ttl span::before{
		content: "";
		position: absolute;
		left: -0.2em;
		right: -0.2em;
		bottom: 0.3em;
		height: 0.55em;
		background: #ffd700;
		transform: skewX(-10deg);
		z-index: -1;
	}
	.ps_a03_2_txt{
		text-align: center;
		font-size: 3.7vw;
		padding-top: 6vw;
				padding-bottom: 8vw;
	}
	.ps_a03_3{
		padding: 5% 0%;
	}
	.ps_a03_3a{
		border: 1px solid #000;
		border-radius: 6px;
		padding: 2vw 3vw 6vw;
		background: #fff;
	}
	.ps_a03_3_txta{
		text-align: center;
		font-size: 4.8vw;
		line-height: 1.5;
		padding-bottom: 1vw;
			}
	.ps_a03_3_txtb{
		text-align: center;
		font-size: 3.2vw;
		line-height: 1.6;
				padding-top: 2vw;
	}
	.ps_a03_3_img{
		padding: 6vw 0vw;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 70%;
		margin: 0 auto;
		min-height: 40vw;
	}
	.ps_a04_1{
		text-decoration: underline;
		display: inline-block;
		font-size: 5.9vw;
		line-height: 1.5;
		bottom: 23%;
		position: absolute;
		color: #fff;
		right: 9%;
		writing-mode: vertical-rl;
		text-align: left;
		letter-spacing: 0.04em;
		font-weight: 600;
	}
	.ps_a04_1 span{
		transform: scaleY(-1);
  writing-mode: sideways-lr;
  position: absolute;
  margin-right: 0.5vw;
	}
	.ps_a04_3{
		position: absolute;
		bottom: 41.1%;
		font-size: 12.0vw;
		font-weight: 800;
		color: #fff;
		transform: rotate(-11deg);
		left: 5%;
		letter-spacing: 0.01em;
	}
	.ps_a04_3 span{
		font-size: 5.5vw;
		margin-right: 1.5vw;
	}
	.ps_a04_2{
		position: absolute;
		bottom: 6%;
		display: grid;
		grid-template-columns: 55% 45%;
		gap: 1vw;
		width: 100%;
		padding: 11% 11% 1%;
	}
	.ps_a04_2_ttl{
		color: #fff;
				position: absolute;
		bottom: 3%;
		padding-left: 3%;
	}
	.ps_a04_2_ttl1{
		font-size: 2.5vw;
		line-height: 1.6;
	}
	.ps_a04_2_ttl2{
		font-size: 3.5vw;
		letter-spacing: 0.05em;
		line-height: 1.4;
	}
	.ps_a04_2_ttl3{
		font-size: 2.5vw;
		line-height: 1.6;
		letter-spacing: 0.1em;
	}
	#ps_b01{
		line-height: 0;
	}
	.ps_b01{
		position: relative;
	}
	.ps_b01_1a{
		position: relative;
		line-height: 0;
		padding-top: 0.1vw;
		background: #2d2d2d;
	}
	.ps_b01_1b{
		background: #2d2d2d;
		color: #fff;
		text-align: center;
		padding: 1.2vw;
		font-size: 1.8vw;
				letter-spacing: 0.03em;
	}
	.ps_b01_1b1{
		font-size: 2.2vw;
		line-height: 1;
	}
	.ps_b01_1b2{
		font-size: 1.4vw;
		line-height: 1;
			}
	.ps_b01_1b3{
		font-size: 1.1vw;
				padding-left: 0.5vw;
	}
	.ps_b01_1c1{
		background: #fff;
		color: #2d2d2d;
		padding: 0.5vw 0.5vw 0.5vw 0.9vw;
		writing-mode: vertical-rl;
		margin: 0 auto;
		letter-spacing: 0.1em;
		text-align: center;
		line-height: 1;
				width: 2.9%;
		position: absolute;
		top: 28.8%;
		left: 0%;
		right: -4%;
		font-weight: 600;
	}
	.ps_b01_1c2{
		background: #fff;
		color: #2d2d2d;
		padding: 0.5vw 0.5vw 0.5vw 0.9vw;
		writing-mode: vertical-rl;
		margin: 0 auto;
		letter-spacing: 0.1em;
		text-align: center;
		line-height: 1;
		width: 2.9%;
		position: absolute;
		top: 28.8%;
		left: -4%;
		right: 0%;
		font-weight: 600;
	}
	.ps_b01_1d{
		position: absolute;
		bottom: -6.2%;
		width: 51%;
		left: 4%;
	}
	.ps_b02{
		padding-top: 18%;
		padding-bottom: 12.5%;
	}
	.ps_b02_1{
		display: grid;
		grid-template-columns: 1fr;
		width: 70%;
	}
	.ps_b02_1a{
		display: grid;
		grid-template-columns: 22% 78%;
		gap: 7vw;
		padding: 4vw 12vw;
	}
	.ps_b02_1aa{
		border-top: 1px solid #2d2d2d;
		border-bottom: 1px solid #2d2d2d;
	}
	.ps_b02_1a1{
		line-height: 1;
		display: flex;
		align-items: center;
		justify-content: left;
		padding: 0.6vw 0vw;
	}
	.ps_b02_1a2{
		color: #2d2d2d;
		font-size: 3.1vw;
		letter-spacing: 0.1em;
		line-height: 1.4;
		display: flex;
		align-items: center;
		justify-content: left;
			}
	.ps_b02_1b{
		text-align: left;
		font-size: 2.6vw;
		letter-spacing: 0.1em;
		padding: 6% 0% 0% 10%;
				line-height: 1.5;
	}
	#ps_b03{
		padding: 10% 0%;
	}
	.ps_b03_1{
		clip-path: polygon(0% 0%, 100% 0%, 98.5% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		padding: 4.9vw 0vw 4.9vw 5vw;
		width: 95%;
	}
	.ps_b03_1a{
		width: 40vw;
		position: relative;
		left: 6%;
	}
	.ps_b03_1b{
		width: 51%;
		position: absolute;
		bottom: 9.5%;
		right: 0%;
	}
	#ps_b03_2{
		padding: 4% 0%;
	}
	.ps_b03_2{
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
		margin: 0 auto;
		margin-top: 0px;
		font-size: 4.2vw;
				padding: 0% 11% 5%;
		gap: 0;
	}
	.ps_b03_2 span{
		font-size: 3.4vw;
		padding-left: 1.0vw;
	}
	.ps_b03_2 div{
		font-size: 4.2vw;
		padding: 7.5% 1%;
	}
	.ps_b03_2l{
		border-bottom:#2d2d2d 1px solid;
	}
	.ps_b03_2a{
		font-size: 1.8vw !important;
		padding: 1.5vw 0vw 0vw !important;
	}
	
	.ps_b03_3{
		padding: 0% 11%;
	}
	.ps_b03_3_list {
		display: grid;
		grid-template-columns: 1fr;
		gap: 4vw;
	}
	.ps_b03_3_list_area{
		background: #2d2d2d;
		color: #fff;
		font-size: 3.5vw;
		text-align: center;
		line-height: 1;
		padding: 1.5vw;
				letter-spacing: 0.05em;
		margin-bottom: 1vw;
	}
	.ps_b03_3_list_shop{
		font-size: 3.1vw;
		line-height: 2;
				padding: 2vw 1vw;
	}
	.ps_b04_2c{
		background: #2d2d2d;
		text-align: center;
		color: #fff !important;
		font-size: 3.2vw;
		line-height: 1;
		letter-spacing: 0.05em;
		display: block;
		border-radius: 0.2vw;
		border: 1px solid #fff;
		width: 80%;
		margin: 7vw auto !important;
		padding: 5vw;
			}
	.ps_b04_2c_arr {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 0.85vw;
		height: 0.85vw;
		transform: translate(0.2em, -0.05em) rotate(90deg);
		background: #fff;
		border-radius: 0.2vw;
		right: -25%;
	}
	.ps_b04_2c_arr::before, .ps_b04_2c_arr::after {
		box-sizing: border-box;
	}
	.ps_b04_2c_arr::after {
		content: '';
		width: 50%;
		height: 50%;
		border-top: 0.1em solid #2d2d2d;
		border-right: 0.1em solid #2d2d2d;
		transform: translateX(-15%) rotate(45deg);
	}
	#ps_b04{
		position: relative;
		clip-path: polygon(0 7%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		background: #2d2d2d;
		min-height: 263vw;
	}
	.ps_b04_1{
		position: absolute;
		top: 18%;
		width: 80%;
		margin: 0 auto;
		left: 0;
		right: 0;
	}
	.ps_b04_2{
		padding: 10% 0%;
	}
	.ps_b04_2a_logo{
		width: 85%;
	}
	.ps_b04_2a_price1{
		color: #fff;
		font-size: 2.3vw;
				letter-spacing: 0.08em;
		padding-top: 4%;
	}
	.ps_b04_2a_price2{
		color: #fff;
		font-weight: 600;
		font-size: 6.6vw;
		padding-top: 0.7vw;
	}
	.ps_b04_2a_price2 span{
		font-size: 2.4vw;
				letter-spacing: 0.09em;
	}
	.ps_b04_2b{
		font-size: 4vw;
		color: #fff;
		letter-spacing: 0.09em;
				padding-top: 14%;
		line-height: 1;
		text-align: center;
	}
	.ps_b04_2a{
		border-bottom: 1px solid #fff;
		padding-bottom: 14%;
	}
	.ps_b04_2b_logo{
		width: 25vw;
		display: inline-block;
		margin: 0 0.1vw;
		vertical-align: text-bottom;
	}
	#ps_c01{
		position: relative;
		top: -19.5vw;
		background: #2d2d2d;
	}
	.ps_c01_1{
		clip-path: polygon(0% 10.4%, 100% 0.4%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		position: relative;
		background: #2d2d2d;
	}
	.ps_c01_1a{
		position: absolute;
		writing-mode: vertical-rl;
		top: 27%;
		font-size: 5.25vw;
		line-height: 1.6;
		letter-spacing: 0.1em;
		left: 28%;
		transform: translate(-50%, -50%);
		font-weight: 600;
	}
	.ps_c01_1a span{
		transform: scaleY(-1);
		writing-mode: sideways-lr;
		position: absolute;
		margin-right: 0.5vw;
	}
	.ps_c01_1b{
		position: absolute;
		top: 5%;
		z-index: 1;
		right: 4%;
		font-size: 3.0vw;
		transform: rotate(-11deg);
		line-height: 1.7;
		text-align: right;
		letter-spacing: 0.04em;
	}
	.accordion_btn {
		width: 100%;
		background: none;
		border: 0;
		cursor: pointer;
		padding: 4vw 0;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 3.2vw;
				letter-spacing: 0.05em;
	}
	.ps_a01_3b1b_txt2b_arr2 {
		width: 3.5vw;
		height: 3.5vw;
		right: -13%;
	}
	.accordion.open .ps_a01_3b1b_txt2b_arr2 {
		width: 3.5vw;
		height: 3.5vw;
		right: -13%;
		
	}
	.accordion.open .accordion_content {
		max-height: 3000px;
		padding: 3% 4% 4%;
	}
	
}


























