@charset "UTF-8";
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
figure {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset,
img {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

ol,
ul {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

q:before,
q:after {
	content: '';
}

abbr,
acronym {
	border: 0;
}

* {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
}

img {
	vertical-align: bottom;
}

body {
	font-size: 12px;
	font-family: 'Zen Kaku Gothic New', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic',
		sans-serif;
	line-height: 1.6;
	color: #000000;
}
body a {
	color: #000000;
	text-decoration: none;
}
body a:hover {
	text-decoration: none;
}

.sp_only {
	display: none;
}

.bold {
	font-weight: bold;
}

.inner {
	box-sizing: content-box;
	max-width: 820px;
	padding: 0 2%;
	position: relative;
	margin: 0 auto;
}

img {
	max-width: 100%;
}

@media screen and (max-width: 767px) {
	body {
		font-size: 14px;
	}
	.pc_only {
		display: none;
	}
	.sp_only {
		display: block;
	}
	.inner {
		padding: 0 5%;
	}
}
/*----------------------------------------------------- */
/*  kv           */
/*----------------------------------------------------- */
.kv {
	background: url(../img/pic_kv.png) center center no-repeat #00b1bb;
	background-size: 1302px;
	height: 530px;
	position: relative;
}
.kv h1 {
	display: none;
}
.kv .kv_logo {
	position: absolute;
	top: 10%;
	left: 10%;
	width: 80px;
}
.kv .kv_logo a {
	transition: 0.3s ease-in-out;
}
.kv .kv_logo a:hover {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {
	.kv {
		background: url(../img/pic_kv_sp.png) center center no-repeat #00b1bb;
		background-size: cover;
		height: 128vw;
	}
	.kv .kv_logo {
		top: 3%;
		left: 3%;
		width: 45px;
	}
}
/*----------------------------------------------------- */
/*  contents           */
/*----------------------------------------------------- */
.contents_ttl {
	line-height: 1;
	margin: 15px 0 40px 0;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.contents_ttl {
		margin: 20px 0 35px 0;
	}
}
/*----------------------------------------------------- */
/*  sale           */
/*----------------------------------------------------- */
.sale01 {
	background: #bcecef;
	border-radius: 5px;
}

.sale02 {
	margin-top: 38px;
	background: #ffefc4;
	border-radius: 5px;
}

.ttl_wrap {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin-bottom: 17px;
	border-radius: 5px;
	padding-block: 24px;
}

.sale01 .ttl_wrap {
	background: #02b1bb;
}
.sale02 .ttl_wrap {
	background: #ff9446;
}

.ttl_wrap .sale_ttl {
	display: flex;
	align-items: end;
	justify-content: center;
	color: #fff200;
	font-weight: 700;
	font-size: 40px;
	column-gap: 15px;
}

.ttl_wrap .sale_ttl span {
	line-height: 1.1;
}
.ttl_wrap .sale_ttl span small {
	font-size: 22px;
}

.notice {
	text-align: center;
	font-size: 13px;
	padding-inline: 15px;
}

.contents_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
	padding-inline: min(5vw, 60px);
	padding-bottom: 20px;
}
.contents_list li {
	width: 33%;
	max-width: 214px;
	margin-bottom: 30px;
}
.contents_list li a {
	display: block;
	position: relative;
	transition: 0.3s ease-in-out;
}
.contents_list li a:hover {
	opacity: 0.7;
}

.prescription {
	margin-top: 45px;
	background: #ffe5e7;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: min(5vw, 37px);
	padding: 33px 15px 36px 15px;
}

.prescription h4 {
	font-size: clamp(22px, calc(15.75px + 1.5625vw), 32px);
	font-weight: 700;
	color: #e95b66;
	text-align: center;
	line-height: 1.4;
}

.btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 350px;
	line-height: 1.4;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	border: 1px solid;
	border-radius: 50em;
	margin: 0 auto;
	transition: 0.3s ease-in-out;
	padding: 15px 20px 15px 44px;
}

.btn .circle {
	position: relative;
	border-radius: 100%;
	width: 43px;
	height: 43px;
}

.btn .circle svg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.prescription .btn {
	color: #e95b66;
	margin: 0;
	background: #fff;
	border-color: #fff;
}

.prescription .btn .circle {
	background: #e95b66;
	transition: 0.3s ease-in-out;
}

.prescription .btn .circle svg {
	fill: #fff;
	transition: 0.3s ease-in-out;
}

.prescription .btn:hover {
	background: #e95b66;
	border-color: #e95b66;
	color: #fff;
}

.prescription .btn:hover .circle {
	background: #fff;
}

.prescription .btn:hover .circle svg {
	fill: #e95b66;
}

.btn_area {
	margin-block: 40px 60px;
}

.btn_note {
	text-align: center;
	margin-bottom: 20px;
	font-size: 13px;
}

.btn_area .btn {
	font-size: 16px;
	color: #fff;
	background: #02b1bb;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	border-color: #02b1bb;
	font-weight: 500;
	max-width: 290px;
	padding: 12px 10px 12px 30px;
}

.btn_area .btn .circle {
	background: #fff;
	transition: 0.3s ease-in-out;
}

.btn_area .btn .circle svg {
	fill: #02b1bb;
	transition: 0.3s ease-in-out;
}

.btn_area .btn:hover {
	background: #fff;
	color: #02b1bb;
}

.btn_area .btn:hover .circle {
	background: #02b1bb;
}

.btn_area .btn:hover .circle svg {
	fill: #fff;
}

.bnr_area {
	padding-block: 60px 40px;
	background: #dceff0;
}

.bnr_note {
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	margin-bottom: 20px;
}
.bnr_note span {
	position: relative;
}
.bnr_note span::before {
	content: '';
	position: absolute;
	left: -20px;
	top: 0;
	height: 31px;
	width: 2px;
	background: #000;
	transform: rotate(-30deg);
}
.bnr_note span::after {
	content: '';
	position: absolute;
	right: -20px;
	top: 0;
	height: 31px;
	width: 2px;
	background: #000;
	transform: rotate(30deg);
}

.bnr {
	display: block;
	margin-inline: auto;
	transition: 0.3s ease-in-out;
	max-width: 386px;
}
.bnr:hover {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {
	.ttl_wrap {
		margin-bottom: 15px;
	}
	.ttl_wrap h3 {
		flex-wrap: wrap;
		row-gap: 15px;
	}
	.ttl_wrap div {
		flex: 1;
		padding: 0 0 10px 0;
	}
	.ttl_wrap p {
		white-space: nowrap;
	}
	.contents_list li {
		width: 48%;
		margin-bottom: 20px;
		max-width: unset;
	}

	.prescription {
		flex-direction: column;
	}

	.prescription .btn {
		font-size: 18px;
		padding-inline: 40px 15px;
	}

	.bnr_note {
		font-size: 20px;
		margin-bottom: 10px;
		line-height: 1.2;
	}
	.bnr_note span {
		display: block;
		position: relative;
	}
	.bnr_note span::before {
		content: '';
		position: absolute;
		left: 10px;
		top: 0;
		height: 70px;
		width: 1px;
		background: #000;
		transform: rotate(-20deg);
	}
	.bnr_note span::after {
		content: '';
		position: absolute;
		right: 10px;
		top: 0;
		height: 70px;
		width: 1px;
		background: #000;
		transform: rotate(20deg);
	}
}
/*----------------------------------------------------- */
/*  footer           */
/*----------------------------------------------------- */
.footer {
	background: #003f16;
	padding: 25px 0;
}

.footer_logo {
	width: 80px;
	margin: 0 auto;
}
.footer_logo a {
	transition: 0.3s ease-in-out;
}
.footer_logo a:hover {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {
	.footer {
		padding: 10px 0;
	}
	.footer_logo {
		width: 60px;
	}
} /*# sourceMappingURL=style.css.map */
