/*
Theme Name: MYTREX Official Site
Author: Sotsu Medical
Author URI: https://mytrex.jp/medicag/
Description: MYTREX MEDICAG
Version: 1.0
*/

body{
	font-family: "Noto Sans JP", sans-serif !important;
}
.fs{
	font-family: "Noto Serif JP", serif !important;
}
#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;
}

body{
	color: #2d2d2d;
	font-feature-settings: 'palt';
}
img{
	width: 100%;
}
iframe{
	height: 100%;
	width: 100%;
}
main h1{
	text-align: left;
}
.seo_only{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@keyframes DownAnime {
	from {
		opacity: 0;
		transform: translateY(-14vw);
	}
	
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

main {
	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) {
	.wrapper>main {
		margin-top: 0vw;
	}
}

@media screen and (min-width: 768px) {
	.wrapper>main {
		margin-top: 0vw !important;
	}
}

@media screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.sp {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.container {
		padding-right: 0px;
		padding-left: 0px;
		padding-top: 10vw;
		margin: 0 auto;
	}
	.container:first-child {
		padding-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.container {
		padding-right: 0px;
		padding-left: 0px;
		padding-top: 10vw;
		margin: 0 auto;
	}
	.container:first-child {
		padding-top: 0;
	}
}
/* pagetop -------------------------------------------------------------- */
@media screen and (max-width: 767px) {
	#pageTop2 {
		position: fixed;
		bottom: 7vw;
		left: 2vw;
		z-index: 10000;
	}
}

@media screen and (min-width: 768px) {
	#pageTop2 {
		position: fixed;
		left: 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 -------------------------------------------------------------- */

@media screen and (min-width: 768px) {
	#zp_a,
	#zp_b,
	#zp_c,
	#zp_d1,
	#zp_e,
	#zp_f,
	#zp_h,
	#zp_i,
	#zp_j,
	#zp_k,
	#zp_l,
	#zp_d2,
	#zp_d3 {
		margin: 0 30vw;
	}
}

/*** 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;
		overflow-x: auto;
		white-space: nowrap;
	}
	.menu_sub_item_link::-webkit-scrollbar {
		display: none;
	}
	.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 ***/


#zp_a {
	background: #000;
}
.zp_a_ttl1 {
	background: #06c755;
	color: #fff;
	text-align: center;
	margin: 0.5vw !important;
	border-radius: 2px;
	font-size: 2.5vw;
	letter-spacing: 0.2vw;
	padding: 1.5vw 0vw;
	font-weight: 400;
}
.zp_a_ttl1 span{
	font-size: 3.4vw;
	font-weight: 800;
	padding: 0 0.3vw;
}
.zp_a_tt2 {
}
.zp_a_kv {
	width: 100%;
	aspect-ratio: 1 / 0.93;
	overflow: hidden;
}
.zp_a_ttl3 {
	background: linear-gradient(to right, #124196 50%, #6001be 100%);
	color: #fff;
	text-align: center;
	font-size: 3.3vw;
	letter-spacing: 0.05em;
	line-height: 1;
	padding: 1.5vw 0vw;
	font-weight: 400;
}

#zp_b {
	background: #000;
	padding: 5vw 4vw;
	color: #fff;
}
.zp_b_ttl1 {
	color: #06c755;
	font-size: 2vw;
	text-align: justify;
	text-align-last: justify;
	padding-bottom: 3%;
	border-bottom: 1px solid #06c755;
	margin-bottom: 3%;
}
.zp_b_ttl2 {
	color: #06c755;
	font-size: 2.8vw;
	text-align: justify;
	text-align-last: justify;
	margin-bottom: 5%;
}
.zp_b_ttl2 span{
	font-size: 3.5vw;
}
.zp_b_link {
	width: 100%;
}
.zp_b_link a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 5.5vw;
	background: #fff;
	border-radius: 20vw;
	box-sizing: border-box;
	color: #00c853;
	font-size: 1.5vw;
	font-weight: 500;
	text-decoration: none;
	letter-spacing: 0.15em;
}
.zp_b_icon {
	display: block;
	width: 3.5vw;
	height: 3.5vw;
	margin-right: 6%;
	flex-shrink: 0;
}
.zp_b_icon picture,
.zp_b_icon img {
	display: block;
	width: 100%;
	height: 100%;
}
.zp_b_icon img {
	object-fit: contain;
}
.zp_b_icon2 {
	display: block;
	width: 3.0vw;
	height: 3.0vw;
	margin-right: 5%;
	flex-shrink: 0;
}
.zp_b_icon2 picture,
.zp_b_icon2 img {
	display: block;
	width: 100%;
	height: 100%;
}
.zp_b_icon2 img {
	object-fit: contain;
}
.zp_b_arrow {
	position: absolute;
	right: 12%;
	top: 50%;
	width: 1.1vw;
	height: 1.1vw;
	border-top: 1px solid #00c853;
	border-right: 1px solid #00c853;
	transform: translateY(-50%) rotate(45deg);
}

#zp_c {
}
.zp_c_img {
}
.zp_c_vd {
	width: 100%;
	aspect-ratio: 1 / 0.925;
	overflow: hidden;
}


#zp_d1,
#zp_d2,
#zp_d3 {
	background: #000;
	padding: 4vw 3.0vw;
}
.zp_d_logo {
	width: 50%;
	margin: 0 auto 6%;
}
.zp_d_txt {
	color: #fff;
	text-align: center;
	font-size: 1.5vw;
	letter-spacing: 0.1em;
	padding-bottom: 3%;
}
.zp_d_img {
	padding: 0 8% 5%;
}
.zp_d_txt2 {
	border: 1px solid #06c755;
	border-radius: 4px;
	padding: 5% 8%;
}
.zp_d_txt2_ttl {
	color: #06c755;
	text-align: center;
	font-size: 2.2vw;
	letter-spacing: 0.06em;
	font-weight: 300;
	padding-bottom: 5%;
	line-height: 1;
}
.zp_d_txt2_txt1 {
	color: #fff;
	text-align: center;
	font-size: 1.4vw;
	font-weight: 300;
	letter-spacing: 0.1em;
	padding-bottom: 3%;
}
.zp_d_txt2_txt2 {
	color: #fff;
	text-align: center;
	font-size: 1.2vw;
	font-weight: 300;
	letter-spacing: 0.05em;
	padding-bottom: 4%;
}
.zp_d_txt3 {
	border: 1px solid #06c755;
	border-radius: 4px;
	padding: 0%;
}
.zp_d_txt3_ttl {
	color: #fff;
	text-align: center;
	font-size: 2.2vw;
	letter-spacing: 0.06em;
	font-weight: 300;
	padding-bottom: 4%;
	line-height: 1;
	padding-top: 5%;
}
.zp_d_txt3_txt1 {
	color: #fff;
	text-align: center;
	font-size: 1.4vw;
	font-weight: 300;
	letter-spacing: 0.1em;
	padding-bottom: 3%;
}
.zp_d_txt3_txt2 {
	color: #fff;
	text-align: center;
	font-size: 1.2vw;
	font-weight: 300;
	letter-spacing: 0.05em;
	padding-bottom: 4%;
}
.zp_d_txt3a_ttl{
	background: #06c755;
	padding: 4% 5% 5%;
}
.zp_d_txt3a_ttl1{
	color: #fff;
	font-size: 1.8vw;
	text-align: justify;
	text-align-last: justify;
	font-weight: 300;
	padding-bottom: 3%;
	border-bottom: 1px solid #fff;
	margin-bottom: 2%;
}
.zp_d_txt3a_ttl2{
	color: #fff;
	font-size: 2.6vw;
	text-align: justify;
	text-align-last: justify;
	font-weight: 400;
}
.zp_d_txt3a_ttl2 span{
	font-size: 3.2vw;
	font-weight: 500;
	letter-spacing: 0.05em;
}
.zp_d_txt3_txt3 {
	width: 100%;
	text-align: center;
	margin: 0 auto 4%;
}
.zp_d_txt3_txt3 span {
	position: relative;
	display: inline-block;
	padding: 0 1.0vw;
	color: #e6003d;
	font-size: 1.2vw;
	font-weight: lighter;
	line-height: 1;
	letter-spacing: 0.05em;
}
.zp_d_txt3_txt3 span::before,
.zp_d_txt3_txt3 span::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 0.1vw;
	height: 1.2vw;
	background: #e6003d;
	transform-origin: center;
}
.zp_d_txt3_txt3 span::before {
	left: 0;
	transform: translateY(-50%) rotate(-20deg);
}
.zp_d_txt3_txt3 span::after {
	right: 0;
	transform: translateY(-50%) rotate(20deg);
}
.zp_d_linka {
	width: 100%;
}
.zp_d_linka a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 4vw;
	background: #00c853;
	border-radius: 15vw;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.5vw;
	font-weight: 300;
	line-height: 1;
	text-decoration: none;
	letter-spacing: 0.05em;
}
.zp_d_linka .zp_b_arrow {
	position: absolute;
	right: 8%;
	top: 50%;
	width: 1.0vw;
	height: 1.0vw;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: translateY(-50%) rotate(45deg);
}
.zp_d_txt2a_ttl {
}
.zp_d_txt2a_ttl1 {
}
.zp_d_txt2a_ttl2 {
}
.zp_d_txt2_txt3 {
	width: 100%;
	text-align: center;
	margin: 0 auto 4%;
}
.zp_d_txt2_txt3 span {
	position: relative;
	display: inline-block;
	padding: 0 1.0vw;
	color: #e6003d;
	font-size: 1.2vw;
	font-weight: lighter;
	line-height: 1;
	letter-spacing: 0.05em;
}
.zp_d_txt2_txt3 span::before,
.zp_d_txt2_txt3 span::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 0.1vw;
	height: 1.2vw;
	background: #e6003d;
	transform-origin: center;
}
.zp_d_txt2_txt3 span::before {
	left: 0;
	transform: translateY(-50%) rotate(-20deg);
}
.zp_d_txt2_txt3 span::after {
	right: 0;
	transform: translateY(-50%) rotate(20deg);
}
.zp_d_linkb {
	width: 86%;
	margin: 0 auto 7%;
}
.zp_d_linkb a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 4vw;
	background: #ffffff;
	border-radius: 15vw;
	box-sizing: border-box;
	color: #00c853;
	font-size: 1.35vw;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	letter-spacing: 0.08em;
}
.zp_d_linkb .zp_b_arrow {
	position: absolute;
	right: 8%;
	top: 50%;
	width: 1.0vw;
	height: 1.0vw;
	border-top: 1px solid #00c853;
	border-right: 1px solid #00c853;
	transform: translateY(-50%) rotate(45deg);
}

#zp_e {
	background: #fff;
	padding: 5% 5% 7%;
}
.zp_e_ttl {
	text-align: center;
	font-size: 3.5vw;
	line-height: 1.4;
	letter-spacing: 0.04em;
	font-weight: 300;
	padding-bottom: 6%;
}
.zp_e_txt {
	border: 1px solid #000;
}
.zp_e_txt1 {
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 1.7vw;
	font-weight: 300;
	letter-spacing: 0.05em;
	line-height: 1;
	padding: 0.8vw 0vw;
}
.zp_e_txt2 {
	text-align: center;
	font-size: 2.5vw;
	padding: 1vw 0;
	line-height: 1;
	letter-spacing: 0.03em;
}


#zp_f {
	background: #000;
	color: #fff;
	padding: 4% 0% 0%;
}
.zp_f_ttl {
	text-align: center;
	font-size: 3.1vw;
	line-height: 1.5;
	padding-bottom: 8%;
	letter-spacing: 0.1em;
}
.zp_f1 {
	padding: 0 0% 3%;
}
.zp_f1_ttl1 {
	text-align: center;
	font-size: 1.8vw;
	line-height: 1;
	padding-bottom: 4%;
}
.zp_f1_ttl2 {
	text-align: center;
	font-size: 1.2vw;
	line-height: 1;
	padding-bottom: 7%;
}
.zp_f1_img{
	padding: 0 8% 9%;
}
.zp_f1_txt1 {
	background: #1e1e1e;
	margin-right: 8%;
	padding: 3% 8%;
	font-size: 1.9vw;
	font-weight: 300;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
.zp_f1_txt2 {
	color: #e6e6e6;
	font-size: 1.5vw;
	line-height: 1.6;
	font-weight: lighter;
	padding: 3% 8% 6%;
}
.zp_f1_txt2 span{
	font-weight: 500;
	text-decoration: underline;
}
.zp_f_line {
	border-right: 1px solid #ffffffa6;
	padding: 7% 0;
	margin: 0 auto;
	width: 1px;
	margin-bottom: 7%;
}
.zp_f2 {
	padding: 0 8% 6%;
}
.zp_f0_ttl {
	text-align: center;
	font-weight: lighter;
	font-size: 2.2vw;
	letter-spacing: 0.05em;
	padding-bottom: 13%;
}
.zp_f2_txt {
	text-align: center;
	font-weight: lighter;
	font-size: 1.8vw;
	letter-spacing: 0.05em;
	padding-bottom: 8%;
}
.zp_f2_vd {
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}
.zp_f2_vd2 {
	background: #1a1a1a;
	color: #fff;
	text-align: center;
	font-size: 1.8vw;
	font-weight: 300;
	letter-spacing: 0.08em;
	line-height: 1.5;
	padding: 3% 0%;
	margin-bottom: 6%;
}
.zp_f3 {
}
.zp_f3_ttl {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20vw;
	height: 5vw;
	margin: 0 auto 3%;
	box-sizing: border-box;
	background: #000;
	border-radius: 10vw;
	color: #fff;
	font-size: 2.2vw;
	font-weight: 200;
	line-height: 1;
	letter-spacing: 0.1em;
}
.zp_f3_ttl::before {
	content: "";
	position: absolute;
	inset: 0;
	padding: 0.2vw;
	border-radius: inherit;
	background: linear-gradient(
		90deg,
		#124196 50%,
		#6001be 100%
		);
	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	mask-composite: exclude;
	pointer-events: none;
}
.zp_f3_img {
	padding: 0 7% 9%;
}
.zp_f4 {
	padding-top: 20%;
}

#zp_h {
	padding: 7% 0%;
}

#zp_i {
}
.zp_i_vd {
	width: 100%;
	aspect-ratio: 1 / 1.335;
	overflow: hidden;
}
.zp_i_ttl1 {
	color: #000;
	text-align: center;
	padding: 12% 0% 15%;
	font-size: 3.4vw;
	line-height: 1.5;
	font-weight: 200;
}
.zp_i_ttl2 {
	background: linear-gradient(to right, #124196 50%, #6001be 100%);
	color: #fff;
	text-align: center;
	font-size: 2.9vw;
	letter-spacing: 0.05em;
	line-height: 1;
	padding: 1.5vw 0vw;
	font-weight: 400;
}

#zp_j {
	background: #000;
	color: #fff;
}
.zp_j_vd1 {
	width: 100%;
	aspect-ratio: 1 / 0.835;
	overflow: hidden;
}
.zp_j_ttl1 {
	text-align: center;
	font-size: 6vw;
	padding: 15% 0 7%;
	line-height: 0.35;
}
.zp_j_ttl1 span{
	font-size: 1.4vw;
	line-height: 1;
}
.zp_j_ttl2 {
	text-align: center;
	font-size: 2.9vw;
	letter-spacing: 0.2em;
	line-height: 1.4;
	padding-bottom: 7%;
}
.zp_j_vd2 {
	width: 100%;
	aspect-ratio: 1 / 1.09;
	overflow: hidden;
	margin-bottom: 18%;
}
.zp_j1 {
	margin-bottom: 19%;
}
.zp_j2 {
	margin-bottom: 12%;
}
.zp_j0_ttl {
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
	margin: 0 21% 6%;
	text-align: center;
	font-size: 2vw;
	font-weight: 300;
	letter-spacing: 0.05em;
	line-height: 1;
	padding: 0.3vw;
}
.zp_j1a{
	margin: 0 8%;
	background: #fff;
	color: #000;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_j1a2{
	margin: 0 8%;
	background: #fff;
	color: #000;
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_j1_vd {
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.zp_j1_vd2{
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.zp_j1_ttl {
	text-align: center;
	padding: 10% 0%;
	font-size: 2.6vw;
	font-weight: 300;
	letter-spacing: 0.03em;
	line-height: 1.4;
}
.zp_j1_ttlb {
	text-align: center;
	padding: 7% 0%;
	font-size: 2.6vw;
	font-weight: 300;
	letter-spacing: 0.03em;
	line-height: 1.8;
}
.zp_j1_img1 {
	padding: 0 7% 6%;
}
.zp_j1_txt {
	padding: 0 7% 6%;
	font-size: 1.45vw;
	letter-spacing: 0.02em;
	line-height: 1.7;
	color: #323232;
}
.zp_j1_txt2 {
	padding: 0 7% 16%;
	font-size: 1.45vw;
	letter-spacing: 0.02em;
	line-height: 1.7;
	color: #323232;
}
.zp_j1_box {
	background: #e9ebf7;
	padding: 13% 0% 5%;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_j1_box2{
	background: #e9ebf7;
	padding: 8% 0% 10%;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_j1_box_ttl {
	text-align: center;
	font-size: 2vw;
	line-height: 1.6;
	padding-bottom: 7%;
}
.zp_j2_box_ttl {
	color: #4256b8;
	text-align: center;
	font-size: 1.9vw;
	line-height: 1;
	font-weight: 400;
	letter-spacing: 0.02em;
	padding-bottom: 4%;
}
.zp_j2_box_txt {
	color: #4256b8;
	text-align: left;
	font-size: 1.35vw;
	line-height: 1.7;
	font-weight: lighter;
	letter-spacing: 0.02em;
	padding: 0 11%;
}
.zp_j3_box {
	display: grid;
	grid-template-columns: 4fr 6fr;
	gap: 5%;
	padding: 0 6% 6%;
}
.zp_j3_box_txt {
	padding-top: 2%;
}
.zp_j3_box_txt1 {
	font-size: 1.5vw;
	line-height: 1.3;
	padding-bottom: 3%;
	font-weight: 400;
	letter-spacing: 0.04em;
}
.zp_j3_box_txt2 {
	font-size: 1.1vw;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: 0.00em;
}
.zp_j4_box {
	background: #4256b8;
	padding: 8% 0% 8%;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_j4_box_img {
	width: 40%;
	margin: 0 auto 5%;
}
.zp_j4_box_ttl {
	color: #fff;
	text-align: center;
	font-size: 2.2vw;
	font-weight: 300;
	line-height: 1.4;
	margin-bottom: 4%;
}
.zp_j4_box_txt {
	color: #fff;
	font-size: 0.85vw;
	font-weight: lighter;
	letter-spacing: 0.04em;
	padding: 0 6%;
	line-height: 1.4;
}
.zp_j5 {
	padding-bottom: 15%;
}
.zp_j5_ttl {
	color: #fff;
	text-align: center;
	font-size: 2.2vw;
	line-height: 1.5;
	letter-spacing: 0.02em;
	padding-bottom: 5%;
}
.zp_j5_box_img{
	margin: 0 8%;
}
.zp_j5_box_img img{
	border-radius: 17px;
}
.zp_j5_txt {
	font-size: 1.4vw;
	line-height: 1.7;
	letter-spacing: 0.03em;
	padding: 6% 11% 0%;
/*	text-align: justify;
	text-align-last: justify; */
}

#zp_k {
}
.zp_k_img {
	position: relative;
}
.zp_k_img_a {
	position: absolute;
	color: #fff;
	top: -1%;
	margin: 0 auto;
	text-align: center;
	width: 100%;
}
.zp_k_ttl {
	text-align: center;
	font-size: 2.2vw;
	line-height: 1.5;
	letter-spacing: 0.08em;
	padding: 6% 0;
}
.zp_k_vd {
	width: 100%;
	aspect-ratio: 1 / 0.84;
	overflow: hidden;
}
.zp_k_box {
	background: linear-gradient(to bottom, #304d7b 85%, #000 100%);
}
.zp_k_box1 {
	padding: 14% 7% 0%;
}
.zp_k_box1_ttl {
	color: #fff;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
	margin: 0 17% 6%;
	text-align: center;
	font-size: 2.0vw;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1;
	padding: 0.2vw 0;
}
.zp_k_box1a {
	background: #fff;
	border-radius: 12px;
	padding: 11% 0% 0%;
}
.zp_k_box1a_ttl {
	text-align: center;
	font-size: 2.5vw;
	letter-spacing: 0.04em;
	line-height: 1.5;
	padding-bottom: 2%;
}
.zp_k_box1a_img {
	padding: 0% 5%;
}
.zp_k_box1a_img3 {
	padding: 0% 5% 12%;
}
.zp_k_box1a_img2 {
	padding: 0% 0%;
}
.zp_k_box1a_img4 {
	padding: 7% 5% 5%;
}
.zp_k_box1a_img5 {
	padding: 0%;
}
.zp_k_box1a_img6 {
	padding: 0%;
}
.zp_k_box1a_img6 img{
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_k_box1a_txt {
	font-size: 1.5vw;
	letter-spacing: 0.07em;
	padding: 6% 6%;
	line-height: 1.6;
	font-weight: 300;
}
.zp_k_box1a1 {
}
.zp_k_box1a_ttl2 {
	background: #e9ebf7;
	font-size: 2vw;
	text-align: center;
	letter-spacing: 0.03em;
	padding: 8% 0%;
	line-height: 1.6;
}
.zp_k_box1a2 {
	background: #e9ebf7;
	padding: 5% 0% 4%;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.zp_k_box1a2a {
	margin: 0 5% 3%;
	position: relative;
}
.zp_k_box1a2b {
	position: absolute;
	background: #fffffff0;
	right: -2%;
	bottom: 5%;
	width: 8vw;
	height: 8vw;
	border-radius: 50vw;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #4256b8;
	font-size: 1.5vw;
	font-weight: 400;
}
.zp_k_box2 {
}
.zp_k_box2_ttl {
	text-align: center;
	color: #fff;
	font-size: 2.4vw;
	letter-spacing: 0.1em;
	line-height: 1.6;
	padding-top: 10%;
}
.zp_k_box2_img1 {
}
.zp_k_box2_img2 {
	padding: 15% 5% 13%;
}
.zp_k_box2_img3 {
	padding: 0% 5% 13%;
}


#zp_l {
}
.zp_l_img_a{
	color:#000;
}
.zp_l_img {
}
.zp_l_img2 {
	padding: 8% 5% 11%;
}
.zp_l_img3 {
	padding: 0% 5% 13%;
}


#zp_d3 {
	
}
.fixed-btn {
	width: 8vw;
	position: fixed;
	bottom: 2vw;
	right: 0;
}
.zp_l_img3_info{
	font-size: 0.85vw;
  line-height: 1;
  font-weight: lighter;
  letter-spacing: 0.04em;
  text-align: right;
  padding-top: 4%;
}

@media screen and (max-width: 767px) {
	#zp_a {
	}
	.zp_a_ttl1 {
		margin: 1.3vw !important;
		font-size: 7.275vw;
		padding: 2.9vw 0vw;
		border-radius: 5px;
		letter-spacing: 0.1vw;
	}
	.zp_a_ttl1 span {
		font-size: 9.534vw;
		padding: 0 0.78vw;
		letter-spacing: 0em;
	}
	.zp_a_tt2 {
	}
	.zp_a_kv {
	}
	.zp_a_ttl3 {
		font-size: 8.283vw;
		padding: 3.9vw 0vw;
	}
	
	
	#zp_b {
		padding: 13vw 10.4vw;
	}
	.zp_b_ttl1 {
		font-size: 5.02vw;
		padding-bottom: 3%;
		margin-bottom: 3%;
	}
	.zp_b_ttl2 {
		font-size: 7.028vw;
		margin-bottom: 5%;
	}
	.zp_b_ttl2 span {
		font-size: 8.785vw;
	}
	.zp_b_link {
	}
	.zp_b_link a {
		height: 13.5vw;
		font-size: 4.0vw;
	}
	.zp_b_icon {
		width: 8.5vw;
		height: 8.5vw;
		margin-right: 6%;
	}
	.zp_b_icon2 {
		margin-right: 5%;
		width: 8.5vw;
		height: 8.5vw;
	}
	.zp_b_arrow {
	}
	
	
	#zp_c {
	}
	.zp_c_img {
	}
	.zp_c_vd {
	}
	
	
	#zp_d1,
	#zp_d2,
	#zp_d3 {
		padding: 10.4vw 7.8vw;
	}
	.zp_d_logo {
		margin: 0 auto 6%;
	}
	.zp_d_txt {
		font-size: 3.765vw;
		padding-bottom: 3%;
	}
	.zp_d_img {
		padding: 0 8% 5%;
	}
	.zp_d_txt2 {
		padding: 5% 8%;
	}
	.zp_d_txt2_txt3 span::before, 
	.zp_d_txt2_txt3 span::after {
		height: 3.2vw;
	}
	.zp_d_txt2_ttl {
		font-size: 5.522vw;
		padding-bottom: 5%;
	}
	.zp_d_txt2_txt1 {
		font-size: 3.514vw;
		padding-bottom: 3%;
	}
	.zp_d_txt2_txt2 {
		font-size: 3.012vw;
		padding-bottom: 4%;
	}
	.zp_d_txt3 {
		padding: 0%;
	}
	.zp_d_txt3_ttl {
		font-size: 5.522vw;
		padding-bottom: 4%;
		padding-top: 5%;
	}
	.zp_d_txt3_txt1 {
		font-size: 3.514vw;
		padding-bottom: 3%;
	}
	.zp_d_txt3_txt2 {
		font-size: 3.012vw;
		padding-bottom: 4%;
	}
	.zp_d_txt3a_ttl {
		padding: 4% 5% 5%;
	}
	.zp_d_txt3a_ttl1 {
		font-size: 4.518vw;
		padding-bottom: 3%;
		margin-bottom: 2%;
	}
	.zp_d_txt3a_ttl2 {
		font-size: 6.526vw;
	}
	.zp_d_txt3a_ttl2 span {
		font-size: 8.032vw;
	}
	.zp_d_txt3_txt3 {
		margin: 0 auto 4%;
	}
	.zp_d_txt3_txt3 span {
		padding: 0 2.6vw;
		font-size: 3.012vw;
	}
	.zp_d_linka {
	}
	.zp_d_linka a {
		font-size: 3.765vw;
		height: 9vw;
	}
	.zp_d_linka .zp_b_arrow {
		width: 2.5vw;
		height: 2.5vw;
	}
	.zp_d_txt2a_ttl {
	}
	.zp_d_txt2a_ttl1 {
	}
	.zp_d_txt2a_ttl2 {
	}
	.zp_d_txt2_txt3 {
		margin: 0 auto 4%;
	}
	.zp_d_txt2_txt3 span {
		padding: 0 2.6vw;
		font-size: 3.012vw;
	}
	.zp_d_linkb {
		margin: 0 auto 7%;
	}
	.zp_d_linkb a {
		font-size: 3.5vw;
		height: 12vw;
	}
	.zp_d_linkb .zp_b_arrow {
		width: 2.5vw;
		height: 2.5vw;
	}
	.zp_d_txt3_txt3 span::before, 
	.zp_d_txt3_txt3 span::after{
		height: 3.2vw;
	}
	
	#zp_e {
		padding: 10% 14% 20%;
	}
	.zp_e_ttl {
		font-size: 8.2vw;
		padding-bottom: 6%;
	}
	.zp_e_txt {
	}
	.zp_e_txt1 {
		font-size: 4.3vw;
		padding: 2.5vw 0vw;
	}
	.zp_e_txt2 {
		font-size: 6.275vw;
		padding: 2.8vw 0;
	}
	
	
	#zp_f {
		padding: 9% 0% 0%;
	}
	.zp_f_ttl {
		font-size: 7.781vw;
		padding-bottom: 8%;
	}
	.zp_f1 {
		padding: 0 0% 3%;
	}
	.zp_f1_ttl1 {
		font-size: 4.8vw;
		padding-bottom: 4%;
		letter-spacing: 0.07em;
	}
	.zp_f1_ttl2 {
		font-size: 3.2vw;
		padding-bottom: 7%;
		etter-spacing: 0.05em;
	}
	.zp_f1_img {
		padding: 0 8% 9%;
	}
	.zp_f1_txt1 {
		margin-right: 8%;
		padding: 3% 0% 3% 8%;
		font-size: 4.769vw;
	}
	.zp_f1_txt2 {
		font-size: 3.765vw;
		padding: 3% 8% 6%;
	}
	.zp_f_line {
		padding: 7% 0;
		margin: 0 auto;
		margin-bottom: 7%;
	}
	.zp_f2 {
		padding: 0 8% 6%;
	}
	.zp_f0_ttl {
		font-size: 5.522vw;
		padding-bottom: 7%;
	}
	.zp_f2_txt {
		font-size: 4.518vw;
		padding-bottom: 8%;
	}
	.zp_f2_vd {
	}
	.zp_f2_vd2 {
		font-size: 4.518vw;
		padding: 3% 0%;
		margin-bottom: 6%;
	}
	.zp_f3 {
	}
	.zp_f3_ttl {
		margin: 0 auto 3%;
		font-size: 5.522vw;
		width: 45vw;
		height: 14vw;
	}
	.zp_f3_ttl::before {
		padding: 0.52vw;
	}
	.zp_f3_img {
		padding: 0 7% 9%;
	}
	.zp_f4 {
		padding-top: 20%;
	}
	
	
	#zp_h {
		padding: 17% 0%;
	}
	
	
	#zp_i {
	}
	.zp_i_vd {
	}
	.zp_i_ttl1 {
		padding: 12% 0% 15%;
		font-size: 8.534vw;
	}
	.zp_i_ttl2 {
		font-size: 7.279vw;
		padding: 3.9vw 0vw;
	}
	
	
	#zp_j {
	}
	.zp_j_vd1 {
	}
	.zp_j_ttl1 {
		font-size: 15.06vw;
		padding: 15% 0 7%;
	}
	.zp_j_ttl1 span {
		font-size: 3.514vw;
	}
	.zp_j_ttl2 {
		font-size: 7.279vw;
		padding-bottom: 7%;
	}
	.zp_j_vd2 {
		margin-bottom: 18%;
	}
	.zp_j1 {
		margin-bottom: 19%;
	}
	.zp_j2 {
		margin-bottom: 12%;
	}
	.zp_j0_ttl {
		margin: 0 21% 6%;
		font-size: 5.02vw;
		padding: 0.78vw;
	}
	.zp_j1a {
		margin: 0 8%;
	}
	.zp_j1a2 {
		margin: 0 8%;
	}
	.zp_j1_vd {
	}
	.zp_j1_vd2 {
	}
	.zp_j1_ttl {
		padding: 10% 0%;
		font-size: 6.526vw;
		line-height: 1.4;
	}
	.zp_j1_ttlb {
		padding: 7% 0%;
		font-size: 6.526vw;
	}
	.zp_j1_img1 {
		padding: 0 7% 6%;
	}
	.zp_j1_txt {
		padding: 0 7% 6%;
		font-size: 3.6395vw;
	}
	.zp_j1_txt2 {
		padding: 0 7% 16%;
		font-size: 3.6395vw;
	}
	.zp_j1_box {
		padding: 13% 0% 5%;
	}
	.zp_j1_box2 {
		padding: 8% 0% 10%;
	}
	.zp_j1_box_ttl {
		font-size: 5.02vw;
		padding-bottom: 7%;
	}
	.zp_j2_box_ttl {
		font-size: 4.769vw;
		padding-bottom: 4%;
	}
	.zp_j2_box_txt {
		font-size: 3.3885vw;
		padding: 0 11%;
	}
	.zp_j3_box {
		padding: 0 6% 6%;
	}
	.zp_j3_box_txt {
		padding-top: 2%;
	}
	.zp_j3_box_txt1 {
		font-size: 3.765vw;
		padding-bottom: 3%;
	}
	.zp_j3_box_txt2 {
		font-size: 2.761vw;
	}
	.zp_j4_box {
		padding: 8% 0% 8%;
	}
	.zp_j4_box_img {
		margin: 0 auto 5%;
	}
	.zp_j4_box_ttl {
		font-size: 5.522vw;
		margin-bottom: 4%;
	}
	.zp_j4_box_txt {
		font-size: 1.9vw;
		padding: 0 6%;
		line-height: 1.7;
	}
	.zp_j5 {
		padding-bottom: 15%;
	}
	.zp_j5_ttl {
		font-size: 5.522vw;
		padding-bottom: 5%;
	}
	.zp_j5_box_img {
		margin: 0 8%;
	}
	.zp_j5_txt {
		font-size: 3.514vw;
		padding: 6% 12% 0%;
	}
	
	
	#zp_k {
	}
	.zp_k_img {
	}
	.zp_k_img_a {
		margin: 0 auto;
		top: 1%;
	}
	.zp_k_ttl {
		font-size: 5.522vw;
		padding: 6% 0;
	}
	.zp_k_vd {
	}
	.zp_k_box {
	}
	.zp_k_box1 {
		padding: 14% 7% 0%;
	}
	.zp_k_box1_ttl {
		margin: 0 17% 6%;
		font-size: 5.02vw;
		padding: 0.52vw 0;
		letter-spacing: 0.08em;
	}
	.zp_k_box1a {
		padding: 11% 0% 0%;
	}
	.zp_k_box1a_ttl {
		font-size: 6.275vw;
		padding-bottom: 2%;
	}
	.zp_k_box1a_img {
		padding: 0% 5%;
	}
	.zp_k_box1a_img3 {
		padding: 0% 5% 12%;
	}
	.zp_k_box1a_img2 {
		padding: 0% 0%;
	}
	.zp_k_box1a_img4 {
		padding: 7% 5% 5%;
	}
	.zp_k_box1a_img5 {
		padding: 0%;
	}
	.zp_k_box1a_img6 {
		padding: 0%;
	}
	.zp_k_box1a_txt {
		font-size: 3.765vw;
		padding: 6% 6%;
	}
	.zp_k_box1a1 {
	}
	.zp_k_box1a_ttl2 {
		font-size: 5.3vw;
		padding: 8% 0%;
		letter-spacing: 0.08em;
	}
	.zp_k_box1a2 {
		padding: 5% 0% 4%;
	}
	.zp_k_box1a2a {
		margin: 0 5% 2%;
	}
	.zp_k_box1a2b {
		font-size: 3.765vw;
		width: 20vw;
		height: 20vw;
		letter-spacing: 0.05em;
	}
	.zp_k_box2 {
	}
	.zp_k_box2_ttl {
		font-size: 6.2vw;
		padding-top: 10%;
	}
	.zp_k_box2_img1 {
	}
	.zp_k_box2_img2 {
		padding: 15% 5% 11%;
	}
	.zp_k_box2_img3 {
		padding: 0% 5% 13%;
	}
	
	
	#zp_l {
	}
	.zp_l_img_a {
	}
	.zp_l_img {
	}
	.zp_l_img2 {
		padding: 8% 4% 4%;
	}
	.zp_l_img3{
		padding: 0% 5% 13%;
	}
	
	#zp_d3 {
	}
	.fixed-btn {
		width: 15vw;
		position: fixed;
		bottom: 7vw;
		right: 0;
		z-index: 10000;
	}
	.zp_l_img3_info{
		font-size: 2.3vw;
	}
}

