@charset "UTF-8";

@font-face {
font-family: 'Yu Gothic';
src: url('fonts/yu-gothic-light.ttf') format('truetype');
font-weight: 300;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: 'Yu Gothic';
src: url('fonts/yu-gothic-regular.ttf') format('truetype');
font-weight: 400;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: 'Yu Gothic';
src: url('fonts/yu-gothic-medium.otf') format('opentype');
font-weight: 500;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: 'Yu Gothic';
src: url('fonts/yu-gothic-bold.ttf') format('truetype');
font-weight: 700;
font-style: normal;
font-display: swap;
}

:root {
--gap_s: 4%;
--gap_m: 10%;
--gap_l: 16%;
--gap_xl: 20%;
--10px: 59%;
}

html,
body {
margin: 0;
padding: 0;
}

body * {
box-sizing: border-box;
}

img {
max-width: 100%;
vertical-align: bottom;
display: block;
height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
margin: 0;
}

body {
font-size: 16px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
font-weight: 400;
font-style: normal;
line-height: 1.375;
color: #3a4044;
max-width: 100VW;
overflow-x: hidden;
}

a {
transition: opacity 0.3s ease;
}

a:hover {
opacity: 0.7;
}

body .mb0 {
margin-bottom: 0px;
}

body .mb10 {
margin-bottom: 10px;
}

body .mb20 {
margin-bottom: 20px;
}

body .mb30 {
margin-bottom: 30px;
}

body .mb40 {
margin-bottom: 40px;
}

.font-mont {
font-family: "Montserrat", sans-serif;
font-optical-sizing: auto;
font-style: normal;
}

.fs32 {
font-size: 32px;
}

.wrap {
background: url(image/bg-body.webp) no-repeat center bottom;
background-size: cover;
background-attachment: fixed;
}

.wrap article {
position: relative;
z-index: 2;
width: 100%;
max-width: 680px;
margin: 0 auto;
background: white;
}

.section_content {
	position:relative;
	container-type: inline-size;
}
.mv{
	position:relative;

	h1{
		display:flex;
		align-items:flex-start;
		position:absolute;
		top:45px;
		right:10px;
		font-weight:400;
		
		.yoko{
			margin-right:-15px;
			font-size:40px;
		}
		.tate{
			font-size:120px;
			-webkit-writing-mode: vertical-rl;
			-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
			letter-spacing:5px;

			.sm{
				font-size:80px;
			}
		}
	}
	h2{
		position:absolute;
		bottom:210px;
		left:0;
		width:100%;
		font-size:26px;
		font-weight:400;
		text-align:center;
		color:#555e63;
	}
	p{
		position:absolute;
		bottom:20px;
		right:30px;
		font-size:12px;
		font-weight:400;
		color:#555e63;
	}
}

.section.section_hero {
position: relative;
}

.section.section_cta {
	position: relative;
	padding:70px 40px;
	background-image:url('image/cta_content_back.png');
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.cta_content{
	padding:8px;
	background:rgba(255,255,255,0.5);
	border:5px solid #f9f9f9;
	box-shadow:0 0 10px #dddddd,
		0 0 10px #dddddd,
		0 0 10px #dddddd,
		0 0 10px #dddddd;

	.item_area{
		margin-bottom:100px;

		.headline{
			margin-bottom:50px;
			background-image:url('image/item_area_head.png');
			background-position:center;
			background-repeat:no-repeat;
			background-size:cover;

			h2{
				padding:30px 0;
				font-size:30px;
				text-align:center;
				color:#ffffff;
			}
		}
		.container{
			.item_box{
				display:grid;
				grid-template-columns:150px 1fr;
				gap:50px;

				.img{
					max-height:270px;
					padding-left:50px;

					img{
						width:100%;
						height:100%;
						object-fit:contain;
					}
				}
				.text{
					h3{
						margin-bottom:30px;
						font-size:34px;
						font-weight:400;

						.back{
							display:inline-block;
							margin-bottom:5px;
							padding:2px 8px;
							background: linear-gradient(#f5f7fa, #c3cfe2);
						}
						.sm{
							font-size:16px;
							vertical-align:super;
						}
					}
					p{
						margin-bottom:30px;
						font-size:28px;
						font-weight:700;
					}
					.note{
						font-size:14px;
						text-align:right;
					}
				}
			}
			.slash{
				margin:60px 0;
				padding:0 20px;
			}
		}
	}
	.select_area{
		background-image:url('image/select_area_back.png');
		background-position:center;
		background-repeat:no-repeat;
		background-size:cover;
		border:3px solid #f3a7a3;
		border-top-left-radius:10px;
		border-top-right-radius:10px;
		overflow:hidden;
		
		.headline{
			margin-bottom:50px;
			background-image:url('image/select_area_head.png');
			background-position:center;
			background-repeat:no-repeat;
			background-size:cover;

			h2{
				padding:30px 0;
				font-size:40px;
				text-align:center;
				color:#ffffff;
				letter-spacing:5px;

				.lg{
					font-size:50px;
				}
			}
		}
		.container{
			.box{
				position:relative;
				padding-bottom:20px;

				.price{
					display:flex;
					align-items:center;
					gap:5px;
					padding-left:50px;

					p{
						display:flex;
						align-items:baseline;
						font-size:70px;
						font-weight:700;

						.sm{
							font-size:50px;
						}
						.tate{
							transform:translateY(14px);
							font-size:16px;
							-webkit-writing-mode: vertical-rl;
							-ms-writing-mode: tb-rl;
							writing-mode: vertical-rl;
						}
					}
					.free{
						width:68px;
					}
				}
				.item{
					position:absolute;
					bottom:-10px;
					right:20px;
					width:120px;
				}
			}
			.link{
				display:grid;
				grid-template-columns:repeat(2, 1fr);
				gap:10px;
				padding:0 20px 30px;

				a{
					img{
						width:100%;
					}
					&.is-disabled{
						pointer-events: none;
						filter: grayscale(100%);
						opacity: 0.5;
					}
				}
				.lg{
					grid-column:1/3;
				}
			}
		}
	}
}

.section.section_cta .btn_area {
position: absolute;
left: 50%;
bottom: 8%;
transform: translateX(-50%);
width: 80%;
}

.section.section_cta .btn_area .btn_mini {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
margin: 0;
padding: 0;
margin-top: 2%;
gap: 1%;
}

.section.section_cta .btn_area .btn_mini a.is-disabled {
pointer-events: none;
filter: grayscale(100%);
opacity: 0.5;
}

.section.section_cta .btn_area .btn_mini li {
display: block;
width: 49%;
padding: 0 1%;
}

.fix_cta {
/* min-height: 194px;
container-type: inline-size; */
}

.fix_cta a {
position: fixed;
width: 100%;
max-width: 680px;
bottom: -200px;
transition: 0.2s all;
z-index: 100;
display: block;
font-size: clamp(24px, 6.6cqw, 45px);
color: white;
font-weight: 700;
text-align: center;
padding: 60px 100px;
background: url(image/btn-fixed-bg.webp) no-repeat center;
background-size: contain;
min-height: 194px;
text-decoration: none;
opacity: 1;
}

.fix_cta.fixed a {
position: fixed;
bottom: 0;
}


.section_staff {
background: url(image/staff-section-bg.png) no-repeat center;
background-size: cover;
padding: 45px 0 55px;
}

.section_staff h3 {
font-size: 19px;
color: #d8c5b4;
margin-bottom: 12px;
text-align: center;
font-weight: 300;
}

.section_staff h4 {
font-size: 36px;
color: #43484c;
text-align: center;
margin-bottom: 35px;
font-weight: 700;
}

.section_staff .voice-1 {
font-size: clamp(12px, 3.38cqw, 23px);
color: #555e63;
padding: 40px 60px 40px 220px;
background: url(image/voice-1-bg.png) no-repeat left;
background-size: 100%;
margin: 0 0 20px;
min-height: 190px;
}

.section_staff .voice-2 {
font-size: clamp(12px, 3.38cqw, 23px);
color: #555e63;
padding: 25px 175px 25px 60px;
background: url(image/voice-2-bg.png) no-repeat right 10px center;
background-size: contain;
margin: 0 0 10px;
min-height: 200px;
letter-spacing: -2px;
}

.voice-1 u,
.voice-2 u {
color: #ed8792;
font-weight: 700;
}

.section .note {
font-size: 13px;
text-align: right;
padding: 0 10px;
}

.section_product .product-color {
display: flex;
flex-wrap: nowrap;
}

.product-color .color-item {
flex: 1;
position: relative;
}

.product-color .color-item h3 {
font-size: 23px;
text-align: center;
margin: 0;
position: absolute;
bottom: 75px;
left: 0;
right: 0;
}

.product-color .color-item.blue h3 {
color: #3d7b92;
}

.product-color .color-item.pink h3 {
color: #b75d77;
}

.product-color .color-item.white h3 {
color: #484848;
}

.section_point {
background: url(image/point-bg.webp) no-repeat center;
background-size: cover;
padding: 70px 10px 50px;
}

.section_point .note {
font-size: 16px;
}

.point-title-4 {
max-width: 66%;
margin: 0 auto;
}

.point-btn-wrap {
display: flex;
flex-wrap: wrap;
}

.point-btn-wrap .point-btn {
	position:relative;
	width: 50%;

	p{
		position:absolute;
		bottom:45px;
		left:0;
		width:100%;
		font-size:30px;
		font-weight:700;
		text-align:center;
		color:#61666d;
		z-index:1;

		.sm{
			display:inline-block;
			font-size:24px;
			font-weight:400;
		}
		.kome{
			display:inline-block;
			font-size:20px;
			font-weight:400;
			transform:translateY(-5px);
		}
	}
}

.point-btn img {
max-width: calc(100% + 20px);
transform: translateX(-5px);
}

.point-btn:nth-child(even) img {
transform: translateX(-10px);
}

.section_point01,
.section_point02,
.section_point03,
.section_point04 {
background: url(image/point-bg-2.png);
background-size: cover;
padding: 0 25px 75px;
}

.section_point01 {
padding: 25px 25px 75px;
}

.section_point01 .section_content,
.section_point02 .section_content,
.section_point03 .section_content,
.section_point04 .section_content {
background: white;
padding-bottom: 80px;
}

.point-title {
background: url(image/point-title-bg.png) right top no-repeat;
background-size: 100% 100%;
padding: 8px 15px;
display: flex;
align-items: center;
gap: 30px;
color: white;
position: relative;
margin-bottom: 30px;
}

.point-title img {
max-width: 20%;
}

.point-title h2 {
	font-size: 38px;

	.sm{
		display:inline-block;
		font-size:16px;
		font-weight:400;
		transform:translateY(-18px);
	}
}

.point-title p {
font-size: 15px;
position: absolute;
bottom: 8px;
right: 70px
}

.title-red {
font-size: 30px;
text-align: center;
color: #484848;
font-weight: 400;
margin-bottom: 20px;

}

.title-red b {
font-weight: 700;
}

.title-red span {
font-size: 41px;
font-weight: 700;
color: white;
background: linear-gradient(-53deg, #f17a88, #f19a9c);
display: inline-block;
line-height: 1.2;
padding: 0 8px;
}

.title-red span.red {
color: #f47282;
background: none;
padding: 0;
}

.point-image {
max-width: calc(100% - 60px);
margin: 0 auto 84px;
}

.tips-box {
background: url(image/point-tip-bg-content.png) no-repeat top;
background-size: 100% 100%;
padding: 40px 30px 5px;
min-height: 555px;
max-width: calc(100% - 60px);
margin: 0 auto 10px;
position: relative;
}

.tips-box h4 {
background: url(image/point-tip-bg.png) no-repeat right;
background-size: contain;
color: white;
font-size: 19px;
font-weight: 400;
position: absolute;
left: -30px;
top: -18px;
min-width: 136px;
height: 41px;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
}

.tips-box h3 {
font-size: 34px;
font-weight: 400;
text-align: center;
margin-bottom: 15px;
}

.tips-box h3 b {
font-weight: 700;
color: #94b9c8;
}

.tips-box h3 span {
font-size: 29px;
}

.tips-box .tips-text {
width: 380px;
margin: 0 auto;
}

.tips-box .text{
	font-size:30px;
	text-align:center;

	.back{
		display:inline-block;
		margin-bottom:5px;
		border-bottom:2px dotted #94b9c8;
	}
	.blue{
		color:#94b9c8;
	}
	.sm{
		display:inline-block;
		font-size:20px;
		transform:translateY(-10px);
	}
	.maru{
		letter-spacing:-20px;
	}
}

.tips-box2{
	position:relative;

	.text{
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		position:absolute;
		top:75px;
		left:60px;

		h4{
			margin-bottom: 20px;
			font-size: 34px;
			font-weight: 400;
		}
		p{
			font-size:18px;

			span{
				display:block;
				margin-bottom:5px;
				border-bottom:2px dotted #94b9c8;
			}
		}
	}
}

.section_point01 .note {
font-size: 14px;
padding: 0 40px;
}

.tips-img2 {
padding-right: 18px;
}

.p4img2 {
width: 430px;
margin: 0 auto;
}

.section_use {
padding-top: 45px;
padding-bottom: 100px;
}

.use-title {
	margin-bottom: 80px;
}

.video_area{
	position:relative;
	padding:0 5px;
	background-image:url('image/video_back.png');
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.video_frame{
	width: 80%;
	margin:80px auto 0;
    aspect-ratio: 9 / 16;
    overflow: hidden;

	iframe{
		aspect-ratio: 9 / 16 !important;
		width: auto !important;
		height: auto !important;
		max-inline-size: 100%;
		max-block-size: 100%;
	}
}

.section_price {
background: url(image/lp10-bg.webp) no-repeat center;
background-size: cover;
padding: 40px 35px 50px;
}

.osusume_area{
	.title{
		position:relative;
		max-width:450px;
		margin:0 auto;
		text-align:center;
		background-image:url('image/osusume_kakko.png');
		background-position:center;
		background-repeat:no-repeat;
		background-size:cover;

		p{
			display:inline-block;
			padding-bottom:2px;
			margin-bottom:8px;
			font-size:20px;
			color:#535353;
			border-bottom:2px dotted #e9b8c2;
		}
		h2{
			font-size:30px;
		}
	}
	.box{
		position:relative;

		> img{
			width:100%;
		}
		.text{
			position:absolute;
			top:25%;
			left:40%;
			color:#484848;

			h3{
				margin-bottom:40px;
				font-size:30px;

				&:before{
					content:'『';
					color:#ca698d;
					margin-left: -35px;
                    letter-spacing: -5px;
				}
				&:after{
					content:'』';
					color:#ca698d;
				}
				.sm{
					display:inline-block;
					font-size:20px;
					transform:translateY(-10px);
				}
			}
			> p{
				margin-bottom:20px;
				font-size:24px;
			}
			.price{
				position:relative;

				p{
					font-size:24px;
				}
				.kakaku{
					font-size:30px;
					font-weight:700;

					.sm{
						font-size:20px;
					}
				}
				.note{
					position:absolute;
					bottom:8px;
					right:0;
					font-size:16px;
				}
			}
		}
	}
}

.lp10-title {
width: 454px;
margin: 0 auto;
}

.lp10-title2 {
width: 480px;
margin: 0 auto 16px;
}

.lp10-btn-wrap {
padding: 0 18px;
}

.lp10-btn-wrap a {
display: block;
margin-bottom: 16px;
}

.section.faq {
background: #f2f3f5;
padding: 80px 24px 0;
}

.faq-item {
border-bottom: 1px solid #616a6e;
background: #fcfdfd;
border-radius: 5px 5px 0 0;
overflow: hidden;
transition: all 0.3s ease;
max-height: 104px;
}

.faq-item.active {
max-height: min-content;
}

.faq-toggle {
width: 100%;
border: none;
background: url(image/Q&A_title.png) no-repeat left top / 32%, white;
padding: 24px 14px;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
}

.faq-title {
font-size: 29px;
}

.faq-icon {
width: 56px;
height: 56px;
background: url("image/plus.png") no-repeat center / contain;
}

.faq-item.active .faq-icon {
background: url("image/minus.png") no-repeat center / contain;
}

.faq-content {
overflow: hidden;
background: #fff;
box-sizing: border-box;
padding: 5px 14px 60px;
}

.qa {
margin-bottom: 20px;
}

.qa-q,
.qa-a {
display: flex;
gap: 16px;
align-items: flex-start;
padding: 10px 20px;
}

.qa-q,
.info-text h4 {
background: linear-gradient(to bottom, #fafafa, #e5ecf2);
border-radius: 40px 0 0 40px;
font-size: 25px;
font-weight: 700;
color: #3a4044;
align-items: center;
min-height: 70px;
}

.info-text h4 {
padding: 10px 35px;
display: flex;
align-items: center;
}

.qa-a {
font-size: 23px;
}

.icon-q {
width: 28px;
height: 28px;
background: url("image/Q.png") no-repeat center / contain;
flex-shrink: 0;
}

.icon-a {
width: 28px;
height: 28px;
background: url("image/A.png") no-repeat center / contain;
flex-shrink: 0;
}


.spec .faq-toggle {
background: url(image/SPEC.png) no-repeat left top / 32%, white;
}

.warning .faq-toggle {
background: url(image/WARNINGS.png) no-repeat left top / 67%, white;
}

.info-content {
padding: 20px 40px 0;
}

.info-content.spec-list {
padding: 14px;
margin-bottom: 50px;
}

.spec-list dl {
margin: 0;
}

.spec-item {
display: flex;
border-bottom: 1px solid #eaeff4;
font-weight: 700;
}

.spec-item dt {
width: 27%;
padding: 12px;
}

.spec-item dd {
width: 73%;
padding: 12px;
margin: 0;
}

.spec-item small {
display: block;
font-size: 17px;
font-weight: 400;
}

.section.warning {
padding-bottom: 120px;
}

.warning .info-text h4 {
font-size: 24px;
}

.warning .faq-content .info-text:not(:last-child) {
margin-bottom: 40px;
}

.warning .faq-content .info-text p:not(:last-child) {
margin-bottom: 20px;
}

.wrapper {
max-width: 660px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
margin: 0 auto;
}

#guide,
#footer {
font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
}

.guide-link {
text-align: center;
}

a.guide-link__page {
color: #96070b;
font-size: 1.5rem;
text-decoration: underline;
text-underline-offset: 6px;
}

#guide.container {
padding: var(--gap_m) 30px 30px;
background: #FFF;
color: #333;
}

#guide h2 {
font-size: min(7.7vw, 212%);
text-align: center;
line-height: 0.8;
margin-bottom: 30px;
font-weight: 500;
}

#guide h2 span {
font-size: 16px;
letter-spacing: 2px;
}

#guide h3 {
font-size: min(3.6vw, 118%);
border: 1px solid #333;
border-radius: 5px;
margin-top: 20px;
padding: 5px;
min-height: 70px;
line-height: 1.5;
text-align: center;
font-weight: 500;
box-sizing: border-box;
position: relative;
}

#guide h3.one-line {
display: flex;
align-items: center;
justify-content: center;
}

#guide h3.link::after {
content: "";
display: inline-block;
position: absolute;
top: 50%;
transform: translateY(-48%);
width: 25px;
height: 25px;
right: 15px;
background: url(image/external_link-icon.png);
background-size: cover;
}

#guide h3 a {
color: #333;
}

#guide p {
font-size: 100%;
padding: 5px 0;
}

#guide .link_underline {
text-decoration: underline;
}

#footer {
font-size: min(3.2vw, 94%);
background: #fff;
padding: 0 15px;
}

#footer .footer_menu {
padding: 15px 0;
border-top: 2px solid #ccc;
border-bottom: 2px solid #ccc;
text-align: center;
}

#footer .footer_menu a {
display: inline-block;
padding: 3px 0;
vertical-align: middle;
color: #333;
text-decoration: none;
}

#footer .footer_menu a:after {
content: "";
display: inline-block;
margin: 0 5px 0 10px;
width: 1px;
height: 15px;
background: #333;
transform: translateY(2px);
}

#footer .footer_menu a:last-child:after {
display: none;
}

#footer .copyright {
font-size: 90%;
color: #333;
}

.copyright .wrapper {
padding: 5% 0;
}

.fix_contents {
display: flex;
justify-content: space-between;
position: fixed;
align-items: flex-end;
z-index: 1;
bottom: 5%;
left: 50%;
transform: translateX(-50%);
width: 100%;
max-width: 1440px;
}

.section_fixleft {
width: 420px;
padding-right: 6.9%;
font-size: min(3vw, 21px);
color: #3e4448;
container-type: inline-size;
}

.section_fixleft .media_item {
text-align: center;
margin-bottom: 50px;
color: #555e63;
}

.section_fixleft .media_item h3 {
font-size: clamp(13px, 6cqw, 20px);
margin-bottom: 14px;
}

.section_fixleft .media_item h3 small {
font-size: 9px;
letter-spacing: -1.8px;
position: relative;
bottom: 10px;
font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
}

.section_fixleft .media_item h2 {
font-size: clamp(15px, 7cqw, 23px);
margin-bottom: 16px;
letter-spacing: -1px;
}

.section_fixleft .media_item p {
font-size: 10px;
color: black;
}

.media_item img {
display: inline-block;
}

.section_fixleft h2 {
color: #555e63;
font-size: min(3vw, 20px);
}

.section_subheadline {
font-weight: 500;
}

.section_fixleft .fix_menulists {
list-style: none;
padding: 0;
margin: 16px 0 0;
}

.section_fixleft .fix_menulists li {
margin-top: 5px;
}

.section_fixleft .fix_menulists li a {
padding: 0.425em;
border: 3px solid #fff;
background-color: rgba(255, 244, 246, .5);
display: block;
font-weight: 700;
color: #555e63;
text-decoration: none;
}

.section_fixright {
width: 420px;
padding-left: 6.9%;
container-type: inline-size;
}

.section_fixright img {
height: auto;
}

.section_fixright>img,
.section_fixright a img {
margin-top: var(--gap_s);
}

.section_fixright .media_qr {
/* width: -moz-max-content;
width: max-content;
border: 1px solid #3e4448; */
margin-top: var(--gap_s);

img{
	max-width:216px;
}
}

.right-btn-1 {
margin-bottom: 15px;
display: block;
}

.mobile-title {
display: flex;
align-items: center;
gap: 12px
}

.mobile-title h3 {
font-size: clamp(20px, 9.7cqw, 31px);
font-weight: 400;
font-family: "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "メイリオ", Meiryo, sans-serif;
letter-spacing: -3px;
color: #555e63;
}


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

.section_fixleft,
.section_fixright {
	width: calc((100vw - 600px) * 0.5);
}



}

@media screen and (max-width: 980px) {
.fix_contents {
	display: none;
}
}

@media screen and (max-width: 680px) {
body {
	font-size: 14px;
}

#footer .footer_menu {
	padding: 10px 0;
}

.f-logo {
	width: 18%;
}

#guide.container {
	padding: var(--gap_m) 3% 30px;
}

#guide h3.link::after {
	width: 20px;
	height: 20px;
	right: 10px;
}

.section_use {
	padding-bottom: 100px;
}

.fix_cta {
	/* min-height: 123px; */
}

.fix_cta a {
	min-height: unset;
	padding: 42px 100px;
}

.section_staff h3 {
	font-size: 16px;
}

.section_staff h4 {
	font-size: 28px;
}

.section_staff .voice-1 {
	padding: 30px 3% 30px 30%;
	min-height: unset;
}

.section_staff .voice-2 {
	padding: 16px 28% 16px 3%;
	min-height: unset;
	background-size: 100%;
}

.section .note {
	font-size: 10px;
}

.product-color .color-item h3 {
	font-size: 12px;
	bottom: 45px;
}

.point-btn:nth-child(even) img {
	transform: translateX(-8px);
}

.point-btn img {
	transform: translateX(-7px);
}

.point-title {
	padding: 8px 10px;
	gap: 12px;
	margin-bottom: 20px;
}

.point-title h2 {
	font-size: 22px;
}

.point-title p {
	font-size: 12px;
	bottom: 8px;
	right: 20px;
}

.title-red {
	font-size: 20px;
	margin-bottom: 10px;
}

.title-red span {
	font-size: 24px;
	padding: 0 4px;
}

.fs32 {
	font-size: 20px;
}

.section_point01,
.section_point02,
.section_point03,
.section_point04 {
	padding: 0 10px 50px;
}

.section_point01 {
	padding: 15px 10px 50px;
}

.point-image {
	max-width: 96%;
	margin: 0 auto 40px;
}

.tips-box {
	padding: 30px 15px 20px;
	min-height: unset;
	max-width: 96%;
}

.tips-box h3 {
	font-size: 24px;
}

.tips-box h3 span {
	font-size: 18px;
}

.tips-box h4 {
	font-size: 13px;
	left: -2%;
	top: -11px;
	min-width: 24%;
	height: 28px;
}

.section_point01 .section_content,
.section_point02 .section_content,
.section_point03 .section_content,
.section_point04 .section_content {
	padding-bottom: 40px;
}

.section_use .section_content {
	position: relative;
}
.use-title {
	margin-bottom: 40px;
}

.media_wrap {
	position: absolute;
	left: 50%;
	bottom: 8%;
	transform: translateX(-50%);
	width: 80%;
	aspect-ratio: 9 / 16;
	overflow: hidden;
}

.section_price {
	padding: 30px 3%;
}

.section.faq {
	padding: 40px 3% 0;
}

.faq-toggle {
	padding: 16px 10px;
}

.faq-title {
	font-size: 20px;
}

.faq-icon {
	width: 40px;
	height: 40px;
}

.faq-item {
	max-height: 72px;
}

.faq-content {
	padding: 5px 3% 30px;
}

.icon-q,
.icon-a {
	width: 20px;
	height: 20px;
}

.qa-q,
.info-text h4,
.warning .info-text h4 {
	font-size: 18px;
	min-height: 55px;
}

.qa-a {
	font-size: 18px;
}

.info-text h4 {
	padding: 8px 24px;
}

.spec-item dt {
	padding: 6px 0;
}

.spec-item dd {
	padding: 6px;
}

.info-content {
	padding: 20px 20px 0;
}

.section.warning {
	padding-bottom: 60px;
}

#guide h3 {
	border-radius: 5px;
	margin-top: 15px;
	padding: 5px;
	min-height: 50px;
}

#guide p {
	padding: 5px 0;
}

.fix_cta.fixed a {
	bottom: -10px;
}
}