@charset "UTF-8";
/*
 * {
	outline: 1px solid magenta;
} 
*/
*, *::before, *::after {
  box-sizing: border-box;
}
html,
body,
div,
p,
a {
    margin: 0;
    padding: 0;
    border: 0;
}
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
body {
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    background-color: #fff;
    color: #000;
	overflow-wrap: break-word;
	word-wrap: break-word;	
}
a {
    text-decoration: none;
    color: #000;
}
a:hover {
    color: #f00;
}
img {
	border: none;
	vertical-align: bottom;
 }
a img {
    transition: opacity 0.3s ease; 
}
a img:hover {
    opacity: 0.8;
}
.sp_br {
	display: none;
}
@media screen and (max-width: 767px) {
	.sp_br {
		display: block;
	}	
}

/*header*/
.webp .header {
    background: url("img/header_bg.webp");
	background-repeat: no-repeat;
	background-size: cover;	
    color: #fff;
	width: 100%;
	height: auto;
    overflow: hidden; /* はみ出た部分を切り取る */
    position: relative; /* .head_woman の基準位置を .header に設定 */	
}
.no-webp .header {
    background: url("img/header_bg.png");
	background-repeat: no-repeat;
	background-size: cover;	
    color: #fff;
	width: 100%;
	height: auto;
    overflow: hidden; /* はみ出た部分を切り取る */
    position: relative; /* .head_woman の基準位置を .header に設定 */	
}
.head_inner {
	width: 1300px;
	height: 700px;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
}
.head_logo {
	position: absolute;
	top: 60px;
	left: 4vw;
	z-index: 3;	
}
.head_tx {
	position: absolute;
	top: 230px;
	left: 0;
	z-index: 3;		
}
.head_point {
	position: absolute;
	bottom: 30px;
	left: 0;
	display: flex;
	flex-wrap: wrap;	
	z-index: 2;
}
.head_point_sp {
	display: none;
}
.head_woman {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
@media screen and (max-width: 1024px) {
	.head_inner {
		width: 100%;
	}	
	.head_logo {
		position: absolute;
		top: 60px;
		left: 4vw;
		z-index: 3;	
	}	
	.head_logo img {
		width: 50vw;
	}	
	.head_tx {
		position: absolute;
		top: 230px;
		left: 5vw;
		z-index: 3;		
	}
	.head_tx img {
		width: 60vw;
	}		
	.head_point {
		position: absolute;
		bottom: 30px;
		left: 4vw;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		z-index: 2;
	}
	.head_woman {
		position: absolute;
		bottom: 0;
		right: -140px;
		z-index: 1;
	}	
	.head_woman img {
		width: 80vw;
	}	
}
@media screen and (max-width: 767px) {
	.head_inner {
		height: 74vh;
	}
	.head_logo {
		position: absolute;
		top: 20px;
		left: 4vw;
		z-index: 3;	
	}	
	.head_logo img {
		width: 55vw;
	}	
	.head_tx {
		position: absolute;
		top: 140px;
		left: 4vw;
		z-index: 3;		
	}	
	.head_tx img {
		width: 80vw;
	}		
	.head_point {
		display: none;
	}	
	.head_point_sp {
		position: absolute;
		bottom: 10px;
		left: 6vw;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		z-index: 2;
	}
	.head_point_sp img {
		width: 55vw;
	}
	.head_woman {
		right: -100px;
	}	
}
@media screen and (max-width: 580px) {
	.head_inner {
		height: 70vh;
	}
	.head_logo {
		position: absolute;
		top: 4vh;
	}	
	.head_tx {
		position: absolute;
		top: 18vh;
	}	
	.head_logo img {
		width: 70vw;
	}	

	.head_point_sp img {
		width: 60vw;
	}	
	.head_point_sp {
		bottom: 20px;
	}	
}	
	
@media screen and (max-width: 500px) {
	.head_inner {
		height: 60vh;
	}
	.head_logo {
		position: absolute;
		top: 2vh;
	}	
	.head_logo img {
		width: 60vw;
	}
	.head_tx {
		position: absolute;
		top: 12vh;

	}	
	.head_tx img {
		width: 80vw;
	}		
	.head_point_sp {
		left: 3vw;
	}	
	.head_woman {
		right: -80px;
	}		
}
@media screen and (max-width: 430px) {
	.head_inner {
		height: 50vh;
	}
	.head_logo img {
		width: 56vw;
	}
	.head_tx {
		position: absolute;
		top: 10vh;
	}	
	.head_tx img {
		width: 74vw;
	}	
}
@media screen and (max-width: 360px) {
	.head_inner {
		height: 45vh;
	}
}


/*reservation*/
.webp .reservation {
	width: 100%;
	height: 250px;
	background: url("img/back.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.no-webp .reservation {
	width: 100%;
	height: 250px;
	background: url("img/back.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.reservation_tx {
	font-size: 35px;
	color: #fff;
	margin-bottom: 10px;
}
.reservation_btn {
	animation: reservation_btn 3s infinite; 
}
@keyframes reservation_btn {
    0% { transform: scale(1); }
    50% { transform: scale(0.95); }
    100% { transform: scale(1); }
}

@media screen and (max-width: 1024px) {
	.webp .reservation {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}
	.no-webp .reservation {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}
	.reservation_tx {
		font-size: 18px;
		color: #fff;
		margin-bottom: 10px;
	}	
	.reservation_btn img {
		width: 80vw;
	}
}

/*worries*/
.webp .worries {
	width: 100%;
	height: 900px;
	background: url("img/worries_bg.webp");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
.no-webp .worries {
	width: 100%;
	height: 900px;
	background: url("img/worries_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
.worries_title {
	font-size: 51px;
	text-align: center;
	padding-top: 70px;	
}
.worries_box {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}
.worries_box_inner {
	position: relative;
	width: 550px;
	height: 640px;	
	margin: 0 auto;	
}
.worries_woman {
	position: absolute;
	bottom: 0;
	z-index: 1;
}
.worries_01 {
	position: absolute;
	top: -80px;
	left: -60px;
	z-index: 2;
}
.worries_02 {
	position: absolute;
	top: 0;
	right: -60px;
	z-index: 2;
}
.worries_03 {
	position: absolute;
	bottom: 100px;
	left: -150px;
	z-index: 2;
}
.worries_04 {
	position: absolute;
	bottom: 70px;
	right: -150px;
	z-index: 2;
}

@media screen and (max-width: 1024px) {
	.webp .worries {
		width: 100%;
		height: 450px;
		background: url("img/worries_bg.webp");
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.no-webp .worries {
		width: 100%;
		height: 450px;
		background: url("img/worries_bg.webp");
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.worries_title {
		font-size: 20px;
		text-align: center;
		padding-top: 40px;
	}	
	.worries_box_inner {
		position: relative;
		width: 275px;
		height: 320px;	
		margin: 0 auto;	
	}	
	.worries_01 {
		position: absolute;
		top: -40px;
		left: 0;
		z-index: 2;
	}
	.worries_02 {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 2;
	}
	.worries_03 {
		position: absolute;
		bottom: 50px;
		left: -20px;
		z-index: 2;
	}
	.worries_04 {
		position: absolute;
		bottom: 20px;
		right: -20px;
		z-index: 2;
	}
	.worries_01 img,
	.worries_02 img,
	.worries_03 img,
	.worries_04 img
	{
		width: 120px;
	}	
	.worries_woman img
	{
		width: 275px;
		height: 320px;
	}	
}

/*triangle*/
.triangle_container {
	position: relative;
	width: 620px; /* 三角形の幅 */
	height: 165px; /* 三角形の高さ */
	margin: -30px auto 0;
	z-index: 4;
}
.triangle_down {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-left: 310px solid transparent;
	border-right: 310px solid transparent;
	border-top: 165px solid #9f7962; /* 上辺の色やサイズを調整 */
}
.triangle_tx {
	position: absolute;
	bottom: 40%; /* テキストの位置を調整 */
	left: 50%;
	transform: translateX(-50%); /* テキストを水平方向に中央揃え */
	font-size: 35px; /* テキストのフォントサイズを調整 */
	color: #fff; /* テキストの色を調整 */
	text-align: center;
	line-height: 120%;
}
.triangle_tx span {
	font-size: 52px;
	display: block;
}

@media screen and (max-width: 1024px) {
	.triangle_container {
		position: relative;
		width: 300px; /* 三角形の幅 */
		height: 80px; /* 三角形の高さ */
		margin: -10px auto 0;
		z-index: 4;
	}
	.triangle_down {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 0;
		height: 0;
		border-left: 150px solid transparent;
		border-right: 150px solid transparent;
		border-top: 80px solid #9f7962; /* 上辺の色やサイズを調整 */
	}
	.triangle_tx {
		position: absolute;
		bottom: 40%; /* テキストの位置を調整 */
		left: 50%;
		transform: translateX(-50%); /* テキストを水平方向に中央揃え */
		font-size: 18px; /* テキストのフォントサイズを調整 */
		color: #fff; /* テキストの色を調整 */
		text-align: center;
		line-height: 120%;
	}
	.triangle_tx span {
		font-size: 28px;
		display: block;
	}
}

/*consultation*/
.consultation {
	text-align: center;
	font-size: 44px;
	margin: 15px auto 50px;
}
.consultation span {
	font-size: 62px;
}

@media screen and (max-width: 1024px) {
	.consultation {
		text-align: center;
		font-size: 20px;
		margin: 15px auto 50px;
	}
	.consultation span {
		font-size: 30px;
	}
}

/*features*/
.webp .features_title {
	width: 100%;
	height: 150px;
	background: url("img/back.webp");
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 45px;
	display: flex;
	justify-content: center;
	align-items: center; 
	color: #fff;
}
.no-webp .features_title {
	width: 100%;
	height: 150px;
	background: url("img/back.png");
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 45px;
	display: flex;
	justify-content: center;
	align-items: center; 
	color: #fff;
}
.features_title span {
	font-size: 100px;
	 line-height: 1; 
}
.features_01,
.features_02,
.features_03,
.features_04,
.features_05,
.features_06
{
	width: 100%;
	max-width: 1150px;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 50px;
	margin: 80px auto;
}
.features_reverse {
	flex-direction: row-reverse;
}

.features_box_sub {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 14px;
}
.features_pt {
	width: 120px;
	height: 120px;
	background: #9f7962;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	color: #fff;
	font-size: 18px;
	line-height: 200%;
}
.features_pt span {
	font-size: 50px;
	display: block;
}
.features_box_title {
	font-size: 32px;
	font-weight: bold;
	line-height: 160%;
}
.features_box_title span {
	font-size: 46px;
	display: block;
}
span.features_small {
	font-size: 32px;
	display: inline;
}
.features_box_tx {
	font-size: 20px;
	margin-top: 20px;
	line-height: 190%;
}

@media screen and (max-width: 1024px) {
	.webp .features_title {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-size: cover;
		font-size: 20px;
		display: flex;
		justify-content: center;
		align-items: center; 
		color: #fff;
	}
	.no-webp .features_title {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-size: cover;
		font-size: 20px;
		display: flex;
		justify-content: center;
		align-items: center; 
		color: #fff;
	}
	.features_title span {
		font-size: 50px;
		 line-height: 1; 
	}
	.features_01,
	.features_02,
	.features_03,
	.features_04,
	.features_05,
	.features_06
	{
		width: 80%;
		max-width: 1150px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 50px 0;
		margin: 50px auto;
		text-align: center;
	}
	.features_02 features_reverse,
	.features_04 features_reverse,
	.features_06 features_reverse
	{
		flex-direction: initial;
	}	
	.features_01_img,
	.features_02_img,
	.features_03_img,
	.features_04_img,
	.features_05_img,
	.features_06_img
	{
	margin-bottom: -30px;
	}	
	.features_01_img img,
	.features_02_img img,
	.features_03_img img,
	.features_04_img img,
	.features_05_img img,
	.features_06_img img
	{
    width: 300px;
    height: 200px;
    object-fit: cover; /* 画像が要素にぴったり収まるようにリサイズされる */
	}
	.features_box_sub {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: column;
		gap: 10px 0;
		text-align: center;
	}	
	.features_pt {
		width: auto;
		height: auto;
		padding: 15px 20px;
		background: #9f7962;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: row;
		color: #fff;
		font-size: 16px;
		line-height: 180%;
	}
	.features_pt span {
		font-size: 30px;
		display: inline;
		margin-left: 5px;
	}
	.features_box_title {
		font-size: 22px;
		font-weight: bold;
		line-height: 160%;
	}
	.features_box_title span {
		font-size: 26px;
		display: block;
	}
	span.features_small {
		font-size: 22px;
		display: inline;
	}
	.features_box_tx {
		font-size: 18px;
		margin-top: 10px;
		line-height: 190%;
		text-align: left;
	}	
}

/*why*/
.webp .why {
	width: 100%;
	height: auto;
	background: url("img/why_bg.webp");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	padding-bottom: 80px;
}
.no-webp .why {
	width: 100%;
	height: auto;
	background: url("img/why_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	padding-bottom: 80px;
}
.why_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.why_title span {
	font-size: 30px;
	display: block;
}
.why_graph {
	position: relative;	
	margin: 80px auto;
	text-align: center;
	z-index: 2;	
}
.why_woman {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
.why_tx {
	position: relative;
	font-size: 20px;
	margin-left: 12vw;
	z-index: 2;		
}
.why_tx_sub {
	font-size: 38px;
	font-weight: bold;
	line-height: 130%;
}
.why_tx span {
	font-size: 26px;
	font-weight: bold;
}

@media screen and (min-width: 1600px) {
	.why_woman {
		position: absolute;
		bottom: 0;
		right: 8vw;
		z-index: 1;
	}	
}	

@media screen and (max-width: 1024px) {
	.why {
		padding-bottom: 50px;
	}	
	.why_title {
		font-size: 30px;
		text-align: center;
		margin: 0 auto;
		padding-top: 50px;
	}
	.why_title span {
		font-size: 16px;
		display: block;
	}	
	.why_graph {
		margin: 50px auto;
	}
	.why_graph img {
		width: 90%;
	}	
	.why_tx {
		position: relative;
		font-size: 18px;
		margin: 10px auto;
		z-index: 2;	
		width: 80%;
	}
	.why_tx_sub {
		font-size: 25px;
		font-weight: bold;
		line-height: 130%;
	}
	.why_tx span {
		font-size: 20px;
		font-weight: bold;
	}
	.why_woman {
		display: none;
	}		
}


/*effect*/
.webp .effect {
	width: 100%;
	height: auto;
	background: url("img/effect_bg.webp");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	padding-bottom: 30px;
}
.no-webp .effect {
	width: 100%;
	height: auto;
	background: url("img/effect_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	padding-bottom: 30px;
}
.effect_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.effect_title span {
	font-size: 30px;
	display: block;
}
.effect ul {
	margin: 50px auto;
	text-align: center;
}
.effect ul li {
	background: #fff;
	width: 480px;
	height: 570px;
	border-radius: 15px;
	display: inline-block;
	margin: 30px;
	vertical-align: top;
}
.effect_box {
    position: relative;
    width: 480px;
    height: 208px;
}
.effect_img {
    position: absolute;
    top: 0;
    left: 0;
}
.effect_sub {
    position: absolute;
    top: 60px;
    left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
    font-size: 45px;
    text-shadow: 
        -1px -1px 0 #fff,  
         1px -1px 0 #fff,
        -1px  1px 0 #fff,
         1px  1px 0 #fff;
}
.effect_sub span {
	font-size: 20px;
	line-height: 100%;
	display: block;
}
.effect_tx {
	font-size: 20px;
	padding: 35px;
	text-align: left;
	line-height: 180%;
}

@media screen and (max-width: 1024px) {
	.effect_title {
		font-size: 30px;
		padding-top: 50px;
	}
	.effect_title span {
		font-size: 16px;
	}
	.effect ul {
		margin: 30px auto;
		text-align: center;
	}
	.effect ul li {
		background: #fff;
		width: 80%;
		height: auto;
		border-radius: 15px;
		display: inline-block;
		margin: 20px;
		vertical-align: top;
	}
	.effect_box {
		position: relative;
		width: 100%;
		height: 150px;
	}
	.effect_img {
		width: 100%;
		height: 100%;
	}
	.effect_img img {
		width: 100%; 
		height: 100%;
		object-fit: cover;
		border-top-left-radius: 15px;
		border-top-right-radius: 15px;
	}
	.effect_sub {
		position: absolute;
		top: 45px;
		left: 0;
		right: 0;
		margin: 0 auto;
		text-align: center;
		font-size: 25px;
		text-shadow: 
			-1px -1px 0 #fff,  
			 1px -1px 0 #fff,
			-1px  1px 0 #fff,
			 1px  1px 0 #fff;
	}
	.effect_sub span {
		font-size: 16px;
		line-height: 100%;
		display: block;
	}
	.effect_tx {
		font-size: 18px;
		padding: 20px;
		text-align: left;
		line-height: 180%;
	}
}

/*choose*/
.webp .choose {
	width: 100%;
	height: 580px;
	background: url("img/choose_bg.webp");
	background-repeat: no-repeat;
	background-position: right;
}
.no-webp .choose {
	width: 100%;
	height: 580px;
	background: url("img/choose_bg.png");
	background-repeat: no-repeat;
	background-position: right;
}
.choose_tx {
	font-size: 20px;
	margin-left: 12vw;
	line-height: 200%;
    text-shadow: 
        -1px -1px 0 #fff,  
         1px -1px 0 #fff,
        -1px  1px 0 #fff,
         1px  1px 0 #fff;	
}
.choose_tx_sub {
	font-size: 42px;
	font-weight: bold;
	line-height: 130%;
	padding-top: 80px;
}

@media screen and (max-width: 1024px) {
	.webp .choose {
		height: auto;
		background: url("img/choose_bg_sp.webp");
		background-size: cover;
		padding-bottom: 50px;
	}
	.no-webp .choose {
		height: auto;
		background: url("img/choose_bg_sp.png");
		background-size: cover;
		padding-bottom: 50px;
	}
	.choose_tx {
		font-size: 18px;
		margin: 0 auto;
		line-height: 200%;
		width: 80%;
	}
	.choose_tx_sub {
		font-size: 25px;
		font-weight: bold;
		line-height: 130%;
		padding-top: 50px;
	}	
}

/*flow*/
.flow {
	background: #f2f1eb;
}
.flow_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.flow_title span {
	font-size: 30px;
	display: block;
}
.flow_inner {
	width: 1000px;
	background: #fff;
	margin: 80px auto 0;
	border-radius: 15px;
	padding: 50px 0;
}
.flow_box {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 30px;
	width: 800px;
	margin: 50px auto;
}
.flow_img {
	background: #f2f1eb;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.flow_tx {
	width: calc(100% - 200px);
}
.flow_step {
	font-size: 30px;
	color: #988e52;
}
.flow_sub {
	font-size: 30px;
}
.flow_detail {
	font-size: 18px;
}

@media screen and (max-width: 1024px) {
	.flow_title {
		font-size: 30px;
		padding-top: 50px;
	}
	.flow_title span {
		font-size: 16px;
	}
	.flow_inner {
		width: 80%;
		background: #fff;
		margin: 50px auto 0;
		border-radius: 15px;
		padding: 20px 0;
	}
	.flow_box {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 10px 0;
		width: 90%;
		margin: 20px auto;
	}
	.flow_img {
		background: #ece8d1;
		width: 150px;
		height: 150px;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.flow_img img {
		width: 120px;
	}
	.flow_tx {
		width: 80%;
	}
	.flow_step {
		font-size: 20px;
		color: #988e52;
		text-align: center;
	}
	.flow_sub {
		font-size: 20px;
		text-align: center;
	}
	.flow_detail {
		font-size: 16px;
		margin-top: 10px;
	}
}
	
/*faq*/
.faq {
	background: #f2f1eb;
}
.faq_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.faq_title span {
	font-size: 30px;
	display: block;
}
.faq_inner {
	margin-top: 80px;
	padding-bottom: 100px;
}
.faq_box {
	width: 1000px;
	background: #fff;
	margin: 50px auto;
	padding: 20px 50px;
}
.faq_q {
	font-size: 26px;
	border-bottom: 1px solid #d6d6d6;
}
.faq_q::before {
    content: "Q";
    font-weight: bold;
	font-size: 50px;
	color: #988e52;
	margin-right: 10px;
	margin-left: 20px;	
}
.faq_a {
	font-size: 20px;
	padding: 20px;
	line-height: 180%;
}
.risk {
	border: 1px solid #000;
	width: 1000px;
	padding: 30px 80px;
	margin: 80px auto 0;
}
.risk_title {
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}
.risk_title::before {
    content: url("img/risk_icon.png"); 
    display: inline-block; 
    margin-right: 10px;
	vertical-align: -2px;
}
.risk_title::after {
    content: url("img/risk_icon.png");
    display: inline-block; 
    margin-left: 10px;
	vertical-align: -2px;
}
.risk_tx {
	font-size: 18px;
}

@media screen and (max-width: 1024px) {
	.faq_title {
		font-size: 30px;
		padding-top: 50px;
	}
	.faq_title span {
		font-size: 16px;
	}
	.faq_inner {
		margin-top: 50px;
		padding-bottom: 50px;
	}
	.faq_box {
		width: 80%;
		background: #fff;
		margin: 30px auto;
		padding: 20px 30px;
	}
	.faq_q {
		font-size: 18px;
		border-bottom: 1px solid #d6d6d6;
		line-height: 160%;
		padding-left: 25px;
		padding-bottom: 10px;
	}
	.faq_q::before {
		content: "Q";
		font-weight: bold;
		font-size: 25px;
		color: #988e52;
		margin-right: 10px;
		margin-left: -30px;	
	}
	.faq_a {
		font-size: 16px;
		padding: 20px;
		line-height: 180%;
	}
	.risk {
		border: 1px solid #000;
		width: 80%;
		padding: 20px;
		margin: 50px auto 0;
	}
	.risk_title {
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
	}
	.risk_title::before {
		content: url("img/risk_icon_sp.png"); 
		display: inline-block; 
		margin-right: 10px;
		vertical-align: -2px;
	}
	.risk_title::after {
		content: url("img/risk_icon_sp.png");
		display: inline-block; 
		margin-left: 10px;
		vertical-align: -2px;
		font-size: 16px;
	}
	.risk_tx {
		font-size: 16px;
	}
}

/*price*/
.price {
	background: #fff;
	padding-bottom: 50px;
}
.price_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.price_title span {
	font-size: 30px;
	display: block;
}
.price_box {
	padding-bottom: 50px;
}
.price_top {
	width: 1000px;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 30px;
	margin: 50px auto;
}
.price_sub {
	font-size: 38px;
	color: #988e52;
	line-height: 120%;
}
.price_detail {
	font-size: 20px;
	line-height: 180%;
	margin-top: 10px;
}
.price_tb {
    width: 850px;
    border-collapse: collapse;
	font-size: 20px;
	margin: 25px auto 0;
}
.price_tb th {
	width: 35%;
    background-color: #f4f1dc; 
    font-weight: bold;
    border: 1px solid #ddd;
    padding: 15px;
    text-align: center;
}
.price_tb td {
    border: 1px solid #ddd;
    padding: 15px; 
    text-align: right;
}
.price_tb span {
    color: #db0674;
	font-size: 16px;
	margin-right: 10px;
}
.price_discount {
	color: #db0674;
	font-size: 20px;
	text-align: center;
	padding-top: 25px;
}
.price_tb_injector th {
	width: 65%;
}
.price_injector {
	width: 850px;
	border: 1px solid #000;
	padding: 20px 50px;
	margin: 25px auto;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 25px;
}
.price_injector_sub {
	font-size: 34px;
	font-weight: bold;
	margin-bottom: 10px;
}
.price_injector_details {
	font-size: 18px;
}

@media screen and (max-width: 1024px) {
	.price_title {
		font-size: 30px;
		padding-top: 50px;
	}
	.price_title span {
		font-size: 16px;
	}
	.price_box {
		padding-bottom: 10px;
	}
	.price_top {
		width: 80%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 20px 0;
		margin: 50px auto;
	}
		.price_img {
			text-align: center;
		}
		.price_img img {
			width: 80%;
		}	
	.price_sub {
		font-size: 25px;
		color: #988e52;
		line-height: 120%;
	}
	.price_detail {
		font-size: 18px;
		line-height: 180%;
		margin-top: 10px;
	}
	.price_tb {
		width: 80%;
		border-collapse: collapse;
		font-size: 16px;
		margin: 25px auto 0;
	}
	.price_tb th,
	.price_tb td
	{
		display: block;
	}
	.price_tb tr
	{
		display: block;
		margin-bottom: 10px;
	}	
	.price_tb th
	{
		width: 100%;
		background-color: #f4f1dc; 
		font-weight: bold;
		border: 1px solid #ddd;
		padding: 15px;
		text-align: center;
	}
	.price_tb td {
		width: 100%;		
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-top: none;
		border-bottom: 1px solid #ddd;
		padding: 15px; 
		text-align: center;
	}
	.price_tb td:first-child {
		border-bottom: 1px solid #ddd;
	}
	.price_tb span {
		color: #db0674;
		font-size: 16px;
		margin-right: 10px;
	}
	.price_discount {
		color: #db0674;
		font-size: 18px;
		text-align: center;
		padding-top: 25px;
	}
	.price_tb_injector th {
		width: 100%;
	}
	.price_injector {
		width: 80%;
		border: 1px solid #000;
		padding: 20px;
		margin: 25px auto;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 10px 0;
	}
	.price_injector_img img {
		width: 120px;
	}
	.price_injector_sub {
		font-size: 20px;
		font-weight: bold;
		margin-bottom: 10px;
		text-align: center;
	}
	.price_injector_details {
		font-size: 16px;
	}
}

/*information*/
.information {
	background: #f2f1eb;
	padding-bottom: 50px;
}
.information_title {
	font-size: 50px;
	text-align: center;
	margin: 0 auto;
	padding-top: 80px;
}
.information_title span {
	font-size: 30px;
	display: block;
}
.information_box {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 80px auto 0;
	gap: 0 50px;
}
.information_name {
	font-size: 30px;
}
.information_name span {
	font-size: 18px;
	margin-left: 10px;
}
.information_detail {
	font-size: 18px;
	line-height: 180%;
}
.information_map {
	margin: 60px auto;
	text-align: center;
	width: 100%;
	max-width: 1000px; 	
}
.information_map iframe {
	width: 100%; 
	height: 390px;
}

@media screen and (max-width: 1024px) {
	.information {
		background: #f2f1eb;
		padding-bottom: 30px;
	}
	.information_title {
		font-size: 30px;
		padding-top: 50px;
	}
	.information_title span {
		font-size: 16px;
	}
	.information_box {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		margin: 50px auto 0;
		gap: 20px 0;
	}
	.information_img img {
		width: 80vw;
		max-width: 317px;
	}
	.information_tx {
		width: 80%;
		margin: 0 auto;
	}	
	.information_name {
		font-size: 18px;
	}
	.information_name span {
		font-size: 16px;
		margin-left: 10px;
	}
	.information_detail {
		font-size: 16px;
		line-height: 180%;
	}
	.information_map {
		margin: 30px auto;
		text-align: center;
		width: 100%; 
	}
	.information_map iframe {
		width: 80%;
		height: 390px;
	}
}

/*footer*/
footer {
	font-size: 18px;
	text-align: center;
	padding: 70px;
}
.tokushoho{
	margin-top: 20px;
}

@media screen and (max-width: 1024px) {
	footer {
		font-size: 16px;
		text-align: center;
		padding: 30px;
	}
	.copy {
		font-size: 14px;
	}
	.tokushoho{
		margin-top: 10px;
	}
}

/*tokushoho*/
.tokushoho_title {
	font-size: 25px;
	text-align: center;
	margin: 0 auto;
	padding-top: 30px;
}
.tokushoho_title span {
	font-size: 14px;
	display: block;
}
.tokushoho_tb {
	padding-top: 30px;
}
.tokushoho_tb table {
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
	border-collapse: collapse;
	color: #000;
	font-size: 14px;
}
.tokushoho_tb table td,
.tokushoho_tb table th {
	padding: 16px;
	border: 1px solid #000;
}
.tokushoho_tb table th {
	width: 30%;
	font-weight: normal;
}
.tokushoho_tb table td {
	font-weight: normal;
	text-align: left;
}

/*content*/
.webp .content_title {
	width: 100%;
	height: 150px;
	background: url("img/back.webp");
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 45px;
	display: flex;
	justify-content: center;
	align-items: center; 
	color: #fff;
}
.no-webp .content_title {
	width: 100%;
	height: 150px;
	background: url("img/back.png");
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 45px;
	display: flex;
	justify-content: center;
	align-items: center; 
	color: #fff;
}
.content_title span {
	font-size: 80px;
	 line-height: 1; 
}
.content_reverse {
	flex-direction: row-reverse;
}
.content_01,
.content_02
{
	width: 100%;
	max-width: 1150px;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 50px;
	margin: 80px auto;
}
.content_box_sub {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 14px;
}
.content_box_title {
	font-size: 32px;
	font-weight: bold;
	line-height: 160%;
}
.content_box_title span {
	font-size: 46px;
	display: block;
}
.content_box_tx {
	font-size: 20px;
	margin-top: 20px;
	line-height: 190%;
}

@media screen and (max-width: 1024px) {
	.webp .content_title {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-size: cover;
		font-size: 20px;
		display: flex;
		justify-content: center;
		align-items: center; 
		color: #fff;
	}
	.no-webp .content_title {
		width: 100%;
		height: auto;
		padding: 20px;
		background: url("img/back.webp");
		background-repeat: no-repeat;
		background-size: cover;
		font-size: 20px;
		display: flex;
		justify-content: center;
		align-items: center; 
		color: #fff;
	}
	.content_title span {
		font-size: 50px;
		 line-height: 1; 
	}	
	.content_01,
	.content_02
	{
		width: 80%;
		max-width: 1150px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap: 50px 0;
		margin: 50px auto;
		text-align: center;
	}	
	.content_01 content_reverse
	{
		flex-direction: initial;
	}	
	.content_img
	{
	margin-bottom: -30px;
	}	
	.content_img img
	{
    width: 250px;
    height: 250px;
    object-fit: cover; /* 画像が要素にぴったり収まるようにリサイズされる */
	}	
	.content_box_sub {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: column;
		gap: 10px 0;
		text-align: center;
	}	
	.content_box_title {
		font-size: 20px;
		font-weight: bold;
		line-height: 160%;
	}
	.content_box_title span {
		font-size: 28px;
		display: block;
	}
	.content_box_tx {
		font-size: 18px;
		margin-top: 10px;
		line-height: 190%;
		text-align: left;
	}		
}

