@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
body {
	font-family: "Noto Sans JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 1vw;
	color: #3b3b3b;
}
html {
	scroll-behavior: smooth;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	object-fit: cover;
}
a {
	text-decoration: unset;
}
h1 {
	width: 50%;
	display: flex;
	align-items: center;
	gap: 1.5vw;
	font-size: 1.7em;
}
h1 img {
	width: 5vw;
}
h2 {
	text-align: center;
	font-size: 2.2em;
	font-weight: 400;
}
h3 {
	font-weight: 400;
}

/*============================
#header
============================*/
#header {
}
.header_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1vw 5%;
}
.header_ctas {
	width: 35%;
}
.header_cta_ol {
	display: flex;
	list-style: none;
	gap: 1vw;
}
h1 a {
	color:#3B3B3B;
}

/*============================
#fv
============================*/
#fv {
}
.ctas {
	background-color: #fff6e5;
	padding: 5vw 15vw 7vw;
	text-align: center;
}
.ctas_title {
	color: #ff1314;
	display: inline-block;
	margin-bottom: 2.5vw;
	padding: 0 2.5vw;
	position: relative;
}
.ctas_title::before,
.ctas_title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 100%;
	border-left: solid 0.15vw;
	transform: rotate(-40deg);
}
.ctas_title::after {
	left: unset;
	right: 0;
	transform: rotate(40deg);
}
.cta_list {
	display: flex;
	gap: 2vw;
}
.campaign_content {
	padding: 6vw 15vw;
}
.pc-only {
	display: block
}
.sp-only {
	display: none
}
@media screen and (max-width:768px) {
	.pc-only {
		display: none
	}
	.sp-only {
		display: block;
	}
}
.ctas {
	background-color: #fff6e5;
	padding: 1vw 15vw 1vw;
	text-align: center;
	position: fixed;
	bottom: 0;
	z-index: 100;
}
.ctas.back_gray {
	background-color: #fff6e5;
}
.ctas_title {
	color: #ff1314;
	display: inline-block;
	margin-bottom: 1vw;
	padding: 0 2.5vw;
	position: relative;
}
h2.ctas_title {
	font-size: 2vw;
}
.header_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.5vw 5%;
}
@media screen and (max-width: 768px) {	
	.ctas {
		padding: 2vw 5%;
		position: fixed;
		z-index: 100;
	}
	h2.ctas_title {
		font-size: 5vw;
	}
	.cta_list {
		display: flex;
		width: 100%;
		flex-wrap:nowrap;
	}
	.cta {
		width: 170px;
	}
}

/*============================
#contact
============================*/
#contact {
	background-color: #eaedf5;
	padding-bottom: 2vw;
}
.contact_title {
	text-align: center;
	background-color: #ffbd58;
	color: #fff;
	padding: 1vw 0;
	margin-bottom: 3vw;
	position: relative;
}
.contact_title::after {
	content: "";
	position: absolute;
	bottom: -1.2vw;
	left: 50%;
	transform: translateX(-50%);
	background: #ffbd58;
	height: calc(tan(60deg) * 1.5vw / 2);
	width: 4vw;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.contact_title_top {
	display: inline-block;
	padding: 0.3vw 4vw 0.5vw;
	background-color: #01bf62;
	border-radius: 2vw;
	margin-bottom: 0.5vw;
	line-height: 1;
	letter-spacing: 0.1vw;
	font-weight: 400;
}
.contact_title_top_span {
	color: #eff23a;
	font-weight: 600;
}
.form_title_top_span2 {
	font-size: 2em;
}
.form {
	width: 70%;
	margin: auto;
}
.form_table {
	width: 80%;
	margin: auto;
}
.form_table tr td:first-child {
	width: 5%;
	text-align: center;
	padding: 0.2vw;
	color: #fff;
	border-bottom: solid 1vw #eaedf5;
	vertical-align: sub;
}
.form_table tr td:nth-child(2) {
	width: 20%;
	border-bottom: solid 1vw #eaedf5;
	padding-left: 2%;
}
.form_table tr td:nth-child(3) {
	min-width: 70%;
	border-bottom: solid 1vw #eaedf5;
}
.required {
	background-color: #ff1314;
	display: block;
}
.form_input {
	width: 100%;
	line-height: 2em;
	border-radius: 0.5vw;
}
.any {
	background-color: #bdbdbd;
	display: block;
}
.form_checkbox_frame {
	display: flex;
	align-items: center;
}
.form_checkbox_frame label {
	margin-right: 1.5vw;
	margin-left: 0.4vw;
}
input[type="image"] {
	width: 25%;
	margin-top: 1.5vw;
}

/*============================
#user_voice
============================*/
#user_voice {
	text-align: center;
	/* 	padding: 3vw 15%; */
	padding: 3vw 0%;
}
.user_voice_sbu_title {
	display: inline-block;
	padding: 0 2.5vw;
	position: relative;
	font-size: 1.7vw;
	margin-bottom: 0.9vw;
	color: #ff3838;
	font-weight: 400;
}
.user_voice_sbu_title::before,
.user_voice_sbu_title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 100%;
	border-left: solid 0.15vw;
	transform: rotate(-40deg);
}
.user_voice_sbu_title::after {
	left: unset;
	right: 0;
	transform: rotate(40deg);
}
.user_voice_list {
	width: 20%;
	margin: auto;
}
.user_voice_content {
	border: solid 0.2vw #ffbd58;
	border-radius: 2vw;
	padding: 2vw 10%;
	margin: 2vw 0;
	font-weight: 400;
}
.user_voice_content_top {
	display: flex;
	align-items: center;
	gap: 1vw;
	justify-content: space-between;
	margin-bottom: 0.5vw;
}
.user_voice_content_top img {
	width: 20%;
}
.user_voice_content_title {
	text-align: left;
	font-size: 1.15vw;
	width: 80%;
}
.user_voice_content_star {
	color: #ffbd58;
	font-size: 1.3em;
	margin-left: 1vw;
}
.user_voice_content_text {
	text-align: left;
}
.user_voice_content_top.content_reverse {
	flex-direction: row-reverse;
}

/*============================
#worries
============================*/
#worries {
	background-image: url(../img/back.webp);
	background-size: cover;
	/* 	padding: 6vw 15%; */
	padding: 6vw 2%;
}
.worries_title {
	font-size: 2.9em;
	line-height: 1.7;
}
.worries_title_span {
	background-color: #4d4d4d;
	color: #fff;
}
.worries_content {
	position: relative;
	height: 35vw;
}
.worries_content img {
	position: absolute;
}
.worries_content img:nth-child(1) {
	width: 20%;
	transform: translate(-50%, -50%);
	left: 50%;
	top: 40%;
}
.worries_content img:nth-child(2) {
	width: 35%;
	top: 6vw;
}
.worries_content img:nth-child(3) {
	width: 32%;
	right: 1vw;
	top: 3vw;
}
.worries_content img:nth-child(4) {
	width: 34%;
	top: 18vw;
	left: 3vw;
}
.worries_content img:nth-child(5) {
	width: 35%;
	right: 0vw;
	top: 15vw;
}
.worries_content img:nth-child(6) {
	width: 35%;
	left: 50%;
	bottom: 1vw;
	transform: translateX(-50%);
}

/*============================
#scream
============================*/
#scream {
	background-image: url(../img/back2.webp);
	background-size: cover;
	/* 	padding: 5vw 15%; */
	padding: 5vw 2%;
}
.scream_title {
	line-height: 1.7;
	margin-bottom: 1vw;
}
.scream_title_span {
	display: inline-block;
	background-image: url(../img/title_under_line.webp);
	background-size: 100%;
	background-position: bottom;
	padding-bottom: 0.4vw;
	margin-bottom: 1vw;
}
.scream_title_span2 {
	display: block;
	width: 37%;
	margin: auto;
	background-color: #3b3b3b;
	color: #fff;
}
.scream_content {
	display: flex;
	align-items: center;
}
.scream_content img {
	width: 25%;
}
.scream_ul {
	list-style: none;
	background-color: #fff;
	padding: 1vw 2vw;
	width: 75%;
	margin: 0 auto;
}
.scream_li {
	margin: 1.3vw 0;
	position: relative;
	padding-left: 2.6vw;
	font-size: 1.35em;
}
.scream_li::before {
	content: "";
	background-image: url(../img/checkbox.webp);
	background-size: cover;
	position: absolute;
	left: 0;
	width: 2vw;
	height: 2vw;
	top: 50%;
	transform: translateY(-50%);
}
.scream_content_bottom {
	width: 56%;
	margin: 1.7vw auto;
}

/*============================
#promise
============================*/
#promise {
	/* 	padding: 4vw 15%; */
	padding: 4vw 2%;
}
.promise_titles {
	margin-bottom: 4vw;
}
.promise_title_h2 {
	position: relative;
	padding-top: 4vw;
	font-weight: 600;
	font-size: 1.5em;
}
.promise_title_fukidashi {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #ffbd58;
	border-radius: 50%;
	color: #fff;
	font-size: 1em;
	padding: 0.8vw 1vw;
}
.promise_title_fukidashi::after {
	content: "";
	position: absolute;
	bottom: -0.7vw;
	left: 50%;
	transform: translateX(-50%);
	background: #ffbd58;
	height: calc(tan(60deg) * 1vw / 2);
	width: 1vw;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.promise_title_red {
	color: #ff1314;
	font-weight: 600;
	font-size: 1.4em;
	margin: 0 0.5vw;
}
.promise_title_underLine {
	background: linear-gradient(transparent 60%, #ffbd58 40%);
}
.promise_title_big {
	font-size: 1.4em;
}
.promise_content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.promise_img {
	width: 44%;
}
.promise_texts {
	width: 54%;
}
.promise_text_title {
	display: flex;
	align-items: center;
	color: #ffbd58;
	font-size: 1.8em;
}
.promise_text_title_number {
	font-weight: bold;
	font-size: 1.8em;
	margin-right: 1vw;
}
.promise_content.promise_content_reverse {
	flex-direction: row-reverse;
}
.ctas.back_gray {
	background-color: #f7f7f7;
}

/*============================
#flow
============================*/
#flow {
	background-color: #ffd5a5;
	/* 	padding: 4vw 15%; */
	padding: 4vw 0%;
}
.flow_title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1vw;
	margin-bottom: 4vw;
	font-weight: 600;
}
.flow_title img {
	width: 2.7vw;
}
.flow_list {
	display: flex;
	justify-content: space-around;
}
.flow_content {
	position: relative;
	background-color: #fff;
	padding: 2.5vw 2% 1vw;
	width: 30%;
}
.flow_step_number {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%, -50%);
	background-color: #01bf62;
	color: #fff;
	width: 50%;
	text-align: center;
	font-size: 1.7em;
	line-height: 2;
}
.flow_content_title {
	text-align: center;
	font-weight: 600;
	font-size: 1.7em;
	margin-bottom: 1vw;
}
.flow_content img {
	height: 14vw;
	width: 100%;
}
.flow_text {
	margin-top: 1vw;
}

/*============================
#purchase
============================*/
#purchase {
	padding: 4vw 0;
	background-color: #eaedf5;
}
.purchase_title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1vw;
	margin-bottom: 4vw;
	font-weight: 600;
}
.purchase_title img {
	width: 2.7vw;
}
.purchase_list {
	display: flex;
	justify-content: space-between;
}
.purchase_content {
	width: 32%;
	background-color: #fff;
	padding: 1vw;
	margin: 0.7vw;
}
.purchase_price {
	text-align: center;
	font-size: 1.5em;
	line-height: 2;
}
.purchase_price_span {
	color: #ffbd58;
	font-size: 1.7em;
	margin: 0 0.6vw;
	font-weight: 900;
}
.purchase_table {
	width: 100%;
}
.purchase_th {
	background-color: #ffbd58;
	width: 20%;
}
.purchase_td {
	padding: 0 1%;
	width: calc(100% / 4);
	font-size: 0.80em;
	font-weight: 700;
}

/*============================
#qa
============================*/
#qa {
	/* 	padding: 3vw 15%;*/
	padding: 3vw 2%;
}
.qa_list {
	margin: 2vw 0;
}
.qa {
	border-bottom: solid 0.1vw;
}
.q {
	padding: 1vw 1vw 1vw 2.5vw;
	position: relative;
}
.q::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.7vw;
	width: 1.7vw;
	height: 1.8vw;
	background-image: url(../img/q.webp);
	background-size: 100% 100%;
}
.q::after {
	content: "\2B";
	position: absolute;
	right: 1vw;
	top: 0.8vw;
	font-weight: 800;
	font-size: 1.4em;
	color: #ffbd58;
}
.q.open::after {
	content: "\2212";
	color: #3066b6;
}
.a {
	padding: 1vw 1vw 1vw 2.5vw;
	position: relative;
	display: none;
}
.a::before {
	content: "";
	position: absolute;
	background-image: url(../img/a.webp);
	background-size: 100% 100%;
	left: 0;
	top: 0.7vw;
	width: 1.8vw;
	height: 1.8vw;
}

/*============================
#blog
============================*/
#blog {
	/* 	padding: 3vw 15%; */
	padding: 3vw 2%;
	background-color: #eaedf5;
}
.blog_title {
	margin-bottom: 16px;
}
#blog ul {
	list-style: none;
}
#blog li {
	padding: 10px 0px 16px;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
#blog .post-title {
	font-size: 30px;
	font-weight: 700;
	color: #3B3B3B;
}
#blog p {
	font-size: 16px;
	margin-top: 10px;
}

@media screen and (max-width: 768px) {
	#blog {
		padding: 5%;
	}
	#blog .post-title {
		font-size: 18px;
	}
	#blog p {
		font-size: 12px;
	}
}

/*============================
#map
============================*/
#map {
	/* 	padding: 3vw 15%; */
	padding: 3vw 0%;
}

#map iframe {
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	#map {
		padding: 5%;
	}
	#map iframe {
		width: 100%;
		height: 300px;
	}
}

.pc-none{
	display: none;
}
.sp-none{
	display: block;
}
@media screen and (max-width: 768px) {
	body {
		font-size: 3vw;
	}
	h1 {
		width: 100%;
		font-size: 1.4em;
	}
	h1 img {
		width: 10vw;
	}
	h2 {
		font-size: 1.8em;
	}

	/*============================
	#header
	============================*/
	#header {
	}
	.header_inner {
		flex-wrap: wrap;
		padding: 2vw 2.5%;
	}
	.header_ctas {
		width: 100%;
		margin-top: 187vw;
		display: none;
	}

	/*============================
	#fv
	============================*/
	#fv {
		overflow-x: hidden;
	}

	/*============================
	#contact
	============================*/
	#contact {
	}
	.contact_title {
		padding: 3vw 0;
		margin-bottom: 8vw;
	}
	.contact_title::after {
		width: 11vw;
		height: calc(tan(60deg) * 5.3vw / 2);
		bottom: -4.2vw;
	}
	.contact_title_top {
		padding: 2vw 2vw 2.4vw;
		border-radius: 3vw;
	}
	.form {
		width: 100%;
	}
	.form_table {
		font-size: 1.3em;
	}
	.form_table tr {
		display: flex;
		flex-wrap: wrap;
	}
	.form_table tr td:first-child {
		min-width: 14vw;
	}
	.form_table tr td:nth-child(2) {
		width: 42vw;
	}
	.form_table tr td:nth-child(3) {
		width: 100%;
		padding-bottom: 3vw;
		flex-wrap: wrap;
	}
	.form_table tr td[colspan] {
		width: 100%;
	}
	.form_checkbox_frame label {
		min-width: 42%;
		margin: 0 1.4vw;
	}
	input[type="image"] {
		width: 60%;
	}

	/*============================
	#user_voice
	============================*/
	#user_voice {
		padding: 5vw;
	}
	.user_voice_sbu_title {
		font-size: 1.6em;
	}
	.user_voice_title {
		font-size: 1.6em;
	}
	.user_voice_list {
		width: 50%;
	}
	.user_voice_content {
		padding: 3vw;
	}
	.user_voice_content_title {
		font-size: 1em;
	}
	/*============================
	#worries
	============================*/
	#worries {
		padding: 0;
	}
	.worries_title {
		font-size: 1.8em;
	}
	.worries_content {
		height: 46vw;
	}
	.worries_content img:nth-child(2) {
		width: 39vw;
		left: -2vw;
		top: 3vw;
	}
	.worries_content img:nth-child(3) {
		width: 39vw;
		right: -3vw;
	}
	.worries_content img:nth-child(4) {
		width: 39vw;
		left: -1vw;
	}
	.worries_content img:nth-child(5) {
		width: 39vw;
		right: -4vw;
		top: 20vw;
	}
	.worries_content img:nth-child(6) {
		width: 39vw;
		bottom: 1vw;
	}

	/*============================
	#scream
	============================*/
	#scream {
		padding: 5vw;
	}
	.scream_title_span2 {
		width: 70%;
	}
	.scream_content {
		position: relative;
	}
	.scream_content img {
		position: absolute;
		right: -5vw;
		bottom: -21vw;
		/* 		width: 26vw; */
		width: 22vw;
		transform: scale(-1, 1);
	}
	.scream_ul {
		width: 100%;
	}
	.scream_li {
		padding-left: 8vw;
	}
	.scream_li::before {
		width: 5.9vw;
		height: 6vw;
		top: 4vw;
	}
	.scream_content_bottom {
		width: 100%;
		margin-top: 14vw;
	}

	/*============================
	#promise
	============================*/
	#promise {
		padding: 5vw;
	}
	.promise_title_h2 {
		font-size: 1.3em;
		padding-top: 8vw;
	}
	.promise_title_fukidashi {
		top: 0;
		padding: 1vw 4.2vw;
	}
	.promise_title_fukidashi::after {
		width: 4vw;
		height: calc(tan(60deg) * 2.4vw / 2);
		bottom: -1.9vw;
	}
	.promise_title_red {
		font-size: 1.2em;
	}
	.promise_content {
		flex-wrap: wrap;
		margin-bottom: 7vw;
		flex-direction: column-reverse;
	}
	.promise_img {
		width: 100%;
	}
	.promise_texts {
		width: 100%;
		margin-bottom: 3vw;
	}
	.promise_content.promise_content_reverse {
		flex-direction: column-reverse;
	}
	/*============================
	#flow
	============================*/
	#flow {
		padding: 5vw;
	}
	.flow_title img {
		width: 8vw;
	}
	.flow_list {
		flex-wrap: wrap;
	}
	.flow_content {
		width: 100%;
		margin: 5vw 0;
		padding: 7vw;
	}
	.flow_content img {
		height: 57vw;
	}
	.flow_text {
		font-size: 1.2em;
	}

	/*============================
	#purchase
	============================*/
	#purchase {
		padding: 6vw 0;
	}
	.purchase_title img {
		width: 8vw;
	}
	.purchase_price_span {
		font-size: 1.5em;
	}
	.purchase_table tr {
		display: flex;
		flex-wrap: wrap;
	}
	.purchase_th {
		width: 100%;
	}
	.purchase_td {
		width: 100%;
		padding: 1vw;
	}

	/*============================
	#qa
	============================*/
	#qa {
		padding: 5%;
	}
	.qa_list {
		margin: 5vw 0;
	}
	.qa {
		font-size: 1.2em;
	}
	.q {
		padding: 2vw 8vw;
	}
	.q::before {
		width: 5.5vw;
		height: 5.5vw;
		top: 2vw;
	}
	.a {
		padding: 1vw 8vw;
	}
	.a::before {
		width: 5.5vw;
		height: 5.5vw;
		top: 1vw;
	}
	/*============================
	#campaign2
	============================*/
	.pc-none{
		display: block;
	}
	.sp-none{
		display: none;
	}
}
input[type="text"] {
	padding: 2%;
	margin: 3% 0 1% 2%;
	border-radius: 5px;
}
p.hissu {
	background: red;
	color: #fff;
	padding: 0% 0.5% 0.3% 0.5%;
	margin-left: 0%;
	width: 4%;
}
p.nini {
	background: #a6a6a6;
	color: #fff;
	padding: 0% 0.5% 0.3% 0.5%;
	margin-left: 0;
	width: 4%;
}
.box {
	display: flex;
	justify-content: center;
	gap: 3%;
	align-items: center;
}
p.item {
	width: 10%;
}
p.item2 {
	width: 70%;
}
button[type="submit"] {
	background: #03bf61;
	padding: 1.5%;
	text-align: center;
	margin: 3% auto;
	display: block;
	width: 20%;
	border-radius: 100px;
	color: #fff;
	font-size: 1.3vw;
}
section.footer {
	background: #0066b7;
	height: 12vw;
	padding: 4% 0;
}
p.access {
	color: #fff;
	font-size: 1.2vw;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1rem;
}
@media screen and (max-width: 798px) {
	p.item2 {
		width: 65%;
	}
	p.item {
		font-size: 10px;
		width: 30%;
	}
	input[type="text"] {
		padding: 3% 2%;
		margin: 2% 0 2% 2%;
		border-radius: 5px;
		font-size: 3vw;
		width: 100%;
	}
	p.hissu {
		background: red;
		color: #fff;
		padding: 0% 0.5% 0.3% 0.5%;
		margin-left: 0%;
		width: 15%;
		font-size: 10px;
		text-align: center;
	}
	p.nini {
		background: #a6a6a6;
		color: #fff;
		padding: 0% 0.5% 0.3% 0.5%;
		margin-left: 0;
		width: 15%;
		font-size: 10px;
		text-align: center;
	}
	.box {
		display: flex;
		justify-content: unset;
		gap: 1%;
		align-items: center;
		margin: 0 3%;
	}
	button[type="submit"] {
		background: #03bf61;
		padding: 3%;
		text-align: center;
		margin: 5% auto;
		display: block;
		width: 50%;
		border-radius: 100px;
		color: #fff;
		font-size: 4.5vw;
	}
	section.footer {
		background: #0066b7;
		height: 65vw;
		padding: 8% 0;
	}
	p.access {
		color: #fff;
		font-size: 2.5vw;
		text-align: center;
		font-weight: bold;
		letter-spacing: 0.1rem;
	}
}

/*2025.9.14追加*/
#post {
	padding: 3vw 0%;
	width: 1280px;
	margin: 0 auto;
}
#post .article-title {
	font-size: 30px;
	font-weight: 700;
	margin-top: 30px;
	width: 100%;
}
.meta, .post-link {
	list-style: none;
}
.meta {
	display: flex;
}
.meta li {
	margin: 10px 16px 10px 0px;
	font-size: 20px;
}
.post-link {
	width: 300px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
#post p {
	font-size: 18px;
}
/*-------------------------------------------
SP
-------------------------------------------*/
@media screen and (max-width: 768px) {
	#post {
		padding: 5%;
		width: 100%;
	}

	#post .article-title {
		font-size: 18px;
		margin-top: 20px;
	}
	.meta li {
		margin: 10px 16px 10px 0px;
		font-size: 12px;
	}
	.post-link {
		width: 100%;
	}
	#post p {
		font-size: 12px;
	}
}

.back {
	text-align: center;
}
.back a {
	padding: 1% 2%;
	background-color: #03bf61;
	color: #fff;
	border: none;
	display: inline-block;
	border-radius: 100px;
	margin: 30px auto;
	font-weight: normal;
	font-size: 1.3vw;
}

@media screen and (max-width: 768px){
	.back a {
		text-align: center;
		padding: 3% 3%;
		background-color: #45bee9;
		color: #fff;
		border: none;
		display: block;
		width: 45%;
		border-radius: 100px;
		margin: 30px auto;
		font-weight: bold;
		font-size: 4vw;
	}
}

/*------------------------- 2025.11.30追加 -------------------------*/
.header-menu {
	max-width: 700px;
	margin: 10px auto 30px;
}
.header-menu ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
}
.header-menu ul li a {
	color: #3B3B3B;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.header-menu {
		display: none;
	}
}

.c-wrap {
	max-width: 900px;
	width: 100%;
	margin: auto;
}

.reason {
	padding-top: 60px;
	background-color: #eaedf5;
}
.reason .reason-ttl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 70px
}
.reason .reason-ttl-icon {
	max-width: 16px;
}
.reason .reason-ttl-txt {
	font-size: 24px;
	padding: 0 8px;
	font-weight: bold;
	color: #0065B3;
}
.reason .reason-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.reason .reason-flex-item {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 48%;
	flex: 0 0 48%;
	margin-bottom: 24px;
}
.reason .reason-flex-item img {
	border-radius: 10%;
	max-width: 80%;
	margin: 0 auto;
}
.reason .reason-flex-item-ttl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: center;
}
.reason .reason-flex-item-ttl-num {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	font-size: 23px;
	font-weight: 900;
	color: #fb4f34;
}
.reason .reason-flex-item-ttl-txt {
	font-size: 17px;
	font-weight: bold;
	line-height: 1.5;
}
.reason .reason-flex-item-ttl-txt span {
	color: #fb4f34;
}
.reason .reason-flex-item-ttl-num-slash {
	display: inline-block;
	width: 1px;
	height: 16px;
	background: #000000;
	-webkit-transform: rotate(15deg);
	transform: rotate(15deg);
	margin: 0 10px;
}
.spv {
	display: none;
}
@media screen and (max-width: 768px) {
	.reason {
		padding-top:20px;
		padding-bottom: 20px;
	}
	.reason .reason-ttl {
		text-align: center;
		font-size: 24px;
		margin-bottom: 40px;
		line-height: 1.2;
	}
	.reason .reason-ttl-icon {
		max-width: 24px;
	}
	.reason .reason-flex {
		display: block;
	}
	.reason .reason-flex-item {
		margin-bottom: 30px;
	}
	.reason .reason-flex-item:last-child {
		margin-bottom: 0;
	}
	.reason .reason-flex-item-ttl-txt {
		font-size: 20px;
	}
	.reason .reason-flex-item-txt {
		font-size: 17px;
	}
	.reason .reason-flex-item-ttl {
		padding: 8px 0;
	}
	.spv {
		display: block;
	}
}


.table {
	margin-top: 60px;
	margin-bottom: 60px;
}
.table .table-flex-tr {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	border-bottom: 1px solid #fff;
}
.table .table-flex-tr-first .table-flex-item01 {
	border-radius: 10px 0 0 0;
}
.table .table-flex-tr-first .table-flex-item02 {
	background: #e54f34;
}
.table .table-flex-tr-first .table-flex-item03 {
	border-radius: 0 10px 0 0;
	background: #c9cbcb;
}
.table .table-flex-item {
	width: 100%;
	text-align: center;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 17px;
	font-weight: bold;
	padding: 20px 0;
}
.table .table-flex-item01 {
	background: #0065b3;
	color: #ffffff;
	font-size: 17px;
	font-weight: bold;
	max-width: 222px;
	width: 100%;
	border-right: 1px solid #fff;
}
.table .table-flex-item02 {
	background: #fb4f34;
	border-right: 1px solid #fff;
	color: #fff100;
}
.table .table-flex-tr-first-img {
	max-width: 60px;
	width: 100%;
	margin: auto;
}
.table .table-flex-item03 {
	background: #dcdddd;
}
.table .table-flex-tr-first-txt {
	font-size: 17px;
	color: #313131;
	font-weight: bold;
}
.table .table-flex-item01-txt {
	line-height: 1;
}
.table .table-flex-item02-txt {
	line-height: 1;
}
.table .table-flex-item02-txt-num {
	display: inline-block;
	font-size: 40px;
	font-weight: bold;
	padding: 0 3px;
}
.table .table-flex-item03-txt {
	line-height: 1;
}
.table .table-flex-item03-txt-num {
	display: inline-block;
	font-size: 40px;
	line-height: 1;
	padding: 0 5px;
}
.table .table-flex-item03-txt-note {
	font-size: 12px;
}
.table .table-flex-tr-last {
	border-top: 2px solid #fff;
}
.table .table-flex-tr-last .table-flex-item01 {
	border-radius: 0 0 0 10px;
}
.table .table-flex-tr-last .table-flex-item03 {
	border-radius: 0 0 10px 0;
}
@media screen and (max-width: 768px) {
	.table {
		margin-top:30px;
	}
	.table .table-flex-item01 {
		max-width: 90px;
	}
	.table .table-flex-tr-first-img {
		max-width: 70px;
	}
	.table .table-flex-item02-txt-num {
		font-size: 40px;
	}
	.table .table-flex-item02-txt {
		font-size: 14px;
	}
	.table .table-flex-item01 {
		font-size: 16px;
	}
	.table .table-flex-item01-txt {
		line-height: 1.4;
	}
	.table .table-flex-tr-first-txt {
		line-height: 1.3;
		font-size: 14px;
	}
	.table .table-flex-item03-txt-num {
		font-size: 30px;
	}
}

.review-btn {
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 22px;
	text-align: center;
}
.review-btn a {
	color: #3B3B3B;
}
@media screen and (max-width: 768px) {
	.review-btn {
		font-size: 18px;
	}
}
/*============================
#contact-box
============================*/
.contact-box {
	background-color: #eaedf5;
	padding-bottom: 1vw;
	position: fixed;
	z-index: 999;
	width: 280px;
	margin: -70px 20px;
	border-radius: 20px;
	border: 2px solid #0066b7;
}
.contact-box .contact_title {
	text-align: center;
	background-color: #ffbd58;
	color: #fff;
	padding: 0.4vw 0;
	margin-bottom: 1vw;
	position: relative;
	border-radius: 20px 20px 0 0;
}
.contact-box .contact_title::after {
	content: "";
	position: absolute;
	bottom: -1.2vw;
	left: 50%;
	transform: translateX(-50%);
	background: #ffbd58;
	height: calc(tan(60deg) * 1.5vw / 2);
	width: 4vw;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.contact-box .contact_title_top {
	display: inline-block;
	padding: 0.3vw 2vw 0.5vw;
	background-color: #01bf62;
	border-radius: 2vw;
	margin-bottom: 0;
	line-height: 1;
	letter-spacing: 0.1vw;
	font-weight: 400;
	width: 80%;
}
.contact-box .contact_title_top_span {
	color: #eff23a;
	font-weight: 600;
}
.contact-box .form_title_top_span2 {
	font-size: 1.6em;
}
.contact-box .contact_title_h2 {
	font-size: 1.4em;
}
.contact-box .form {
	width: 90%;
	margin: auto;
}
.contact-box .form_table {
	width: 60%;
	margin: auto;
}
.contact-box .form_table tr td:first-child {
	width: 5%;
	text-align: center;
	padding: 0.2vw;
	color: #fff;
	border-bottom: solid 1vw #eaedf5;
	vertical-align: sub;
}
.contact-box .form_table tr td:nth-child(2) {
	width: 20%;
	border-bottom: solid 1vw #eaedf5;
	padding-left: 2%;
}
.contact-box .form_table tr td:nth-child(3) {
	min-width: 70%;
	border-bottom: solid 1vw #eaedf5;
}
.contact-box .required {
	background-color: #ff1314;
	display: block;
}
.contact-box .form_input_frame {
}
.contact-box .form_input {
	width: 100%;
	line-height: 2em;
	border-radius: 0.5vw;
}
.contact-box .any {
	background-color: #bdbdbd;
	display: block;
}
.contact-box .form_checkbox_frame {
	display: flex;
	align-items: center;
}
.contact-box .form_checkbox_frame label {
	margin-right: 1.5vw;
	margin-left: 0.4vw;
}
.contact-box input[type="image"] {
	width: 20%;
	margin-top: 1.5vw;
}
.contact-box input[type="text"] {
	width: 100%;
	margin: 2% 0 1%;
}
.contact-box .box {
	display: inline-block;
	margin-bottom: 1%;
}
.contact-box p.item {
	width: 100%;
	display: inline;
}
.contact-box p.hissu {
	width: inherit;
	display: inline-block;
	padding: 0 2px;
}
.contact-box p.nini {
	width: inherit;
	display: inline-block;
	padding: 0 2px;
}
.contact-box button[type="submit"] {
	width: 80%;
	background-color: #ffbd58;
	box-shadow: 5px 5px 5px 0 rgba(0,0,0,0.3);
	transition: .3s;
}
.contact-box button[type="submit"]:hover {
	opacity: .6;
}

.contact-box-cta {
	border-top: 1px solid #0066b7;
	margin-top: 14px;
	padding-top: 14px;
}
.contact-box-cta ul {
	list-style: none;
	text-align: center;
}
.contact-box-cta li {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 20px;
	box-shadow: 5px 5px 5px 0 rgba(0,0,0,0.3);
	transition: .3s;
}
.contact-box-cta li:first-child {
	margin-right: 6px;
}
.contact-box-cta-tel {
	background-color: #3266B6;
}
.contact-box-cta-line {
	background-color: #00C061;
}
.contact-box-cta ul li a {
	color: #fff;
	font-size: 15px;
}
.contact-box-cta ul li:hover {
	opacity: .6;
}

@media screen and (max-width: 768px) {
	.contact-box {
		display: none!important;
	}
}

.pl-300 {
	padding-left: 320px!important;
}
@media screen and (max-width: 768px) {
	.pl-300 {
		padding-left: 5vw!important;
		padding-right: 5vw!important;
	}
}
.pl-320 {
	padding-left: 320px!important;
}
@media screen and (max-width: 768px) {
	.pl-320 {
		padding-left: 0!important;
		padding-right: 0!important;
	}
}

.blog-title {
	margin: 30px 0;
}
.blog-btn {
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
}
.blog-btn a {
	font-size: 22px;
	font-weight: 400;
	color: #3B3B3B;
}
@media screen and (max-width: 768px) {
	.blog-btn a {
		font-size: 18px;
	}
}

/* パンくずリストの見栄えを調整するCSS */
.bread-list {
	list-style: none;
	margin-bottom: 20px;
}
.bread-list li{
	display: inline;
}
.bread-list li a{
	color: inherit;
	text-decoration: none;
}
.bread-list li + li:before{
	content: ">";
	margin:.5em;
}

/*---------------------------------------------------------------
// ここからお知らせページ専用のCSS
// ---------------------------------------------------------------*/
.contents-header__title {
	color: #0065B3;
	margin: 40px 0;
	display: none;
}
@media screen and (max-width: 768px) {
	.contents-header__title {
		margin: 20px 0;
	}
}
/* お知らせ一覧全体の囲い*/
.post-archive_wrapper {
	margin:0 auto 20px;
	display:-webkit-box; 
	display:-webkit-flex; 
	display:-ms-flexbox; 
	display:flex;
	-webkit-flex-wrap: wrap; 
	-ms-flex-wrap: wrap; 
	flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
	.post-archive_wrapper {
		margin:0 auto 30px;
	}
}

/*  お知らせの行全体の囲い */
.post_wrapper {
	list-style: none;
	width:calc(100% * 550 / 1150); 
	border:1px solid #ddd; 
	margin:0 calc(100% * 23 / 1150) 30px 0; 
	background:#fff;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box; 
	-ms-box-sizing:border-box; 
	box-sizing:border-box;
}
.post-img-wrapper img {
	width: 100%;
}
@media screen and (max-width: 768px) {
	.post_wrapper {
		width: 100%;
		margin: 10px 0;
	}
/* 	.post_wrapper:nth-child(odd) {
		margin-right: 4%; 
	} */
	.post-img-wrapper img {
		width: 100%;
	}
}

/*  サムネイル下余白 */
.post-img-wrapper {
	margin-bottom: 20px;
}
/*  カテゴリ・日付横並び */
.post-classification_wrapper {
	display: flex;
}
/*  カテゴリボタン調整 */
.information,
.achievement {
	border-radius: 25px;
	color: #fff;
	margin: 0 10px;
}
.information a,
.achievement a {
	color: #fff;
	font-size: 14px;	
	padding: 4px 8px;
	display: inline-block;
}
@media screen and (max-width: 768px) {
	.information a,
	.achievement a {
		font-size: 12px;	
		padding: 4px 10px;
	}
}
.information {
	background-color: #0065B3;
}
.achievement {
	background-color: #FFBD58;
}
/*  日付の調整 */
.post-date {
	font-size: 14px;
	color: #888;
	padding: 4px 8px;
}
@media screen and (max-width: 768px) {
	.post-date {
		font-size: 12px;
		padding: 4px 10px;
		display: none;
	}
}
/*  タイトル調整 */
.post-title {
	font-size: 20px;
	font-weight: 600;
	color: #3B3B3B;
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 0 6px;
}
@media screen and (max-width: 768px) {
	.post-title {
		font-size: 18px;
		margin-top: 10px;
		margin-bottom: 10px;
		padding: 0 8px;
	}
}

/*ハンバーガーメニュー*/
.hamburger-overlay {
	position: fixed;
	top: 5px;
	right: -6px;
	z-index: 1000;
	width: 48px;
	height: 48px;
	border: none;
	background: transparent;
	cursor: pointer;
}

.hamburger-overlay__line {
	position: absolute;
	left: 11px;
	width: 26px;
	height: 2px;
	background-color: #333;
	transition: all .6s;
}

.hamburger-overlay__line:nth-of-type(1) { top: 14px; }
.hamburger-overlay__line:nth-of-type(2) { top: 23px; }
.hamburger-overlay__line:nth-of-type(3) { top: 32px; }

.hamburger-overlay.active .hamburger-overlay__line {
	background-color: #3B3B3B;
}

.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(1) {
	transform: translateY(9px) rotate(-45deg);
}
.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(2) {
	opacity: 0;
}
.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(3) {
	transform: translateY(-9px) rotate(45deg);
}

.nav-overlay, .drawer {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #eaedf5;
	visibility: hidden;
	opacity: 0;
	transition: all .6s;
	z-index: 900;
}

.nav-overlay.active, .drawer.active {
	visibility: visible;
	opacity: 1;
}

.nav-overlay__content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
}

.nav-overlay__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav-overlay__item {
	opacity: 0;
	transform: translateY(20px);
	transition: all .6s;
}

.nav-overlay.active .nav-overlay__item {
	opacity: 1;
	transform: translateY(0);
}

.nav-overlay.active .nav-overlay__item:nth-child(1) { transition-delay: 0.1s; }
.nav-overlay.active .nav-overlay__item:nth-child(2) { transition-delay: 0.2s; }
.nav-overlay.active .nav-overlay__item:nth-child(3) { transition-delay: 0.3s; }
.nav-overlay.active .nav-overlay__item:nth-child(4) { transition-delay: 0.4s; }
.nav-overlay.active .nav-overlay__item:nth-child(5) { transition-delay: 0.5s; }


.nav-overlay__link {
	display: inline-block;
	padding: 20px;
	color: #3B3B3B;
	font-size: 24px;
	text-decoration: none;
	transition: color .3s;
}
.nav-overlay__link:hover {
	color: #4a90e2;
}

.post-link {
	margin-top: 10px;
}
.post-link a {
	color: #3B3B3B;
}

.title-bgc {
	/* 	background:linear-gradient(transparent 70%, #FFD800 70%); */
	background:linear-gradient(transparent 70%, #FFD800 70%);
}

.blog-container h1 {
	width: 100%;
}

/*ページネーション*/
.wp-pagenavi {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.wp-pagenavi .pages, .previouspostslink, .nextpostslink {
	/*display: none;*/
	border: none !important;
	display: flex;
	align-items: center;
}
.nextpostslink {
	font-size: 20px;
}

.wp-pagenavi .page, .wp-pagenavi .current {
	width: 40px;
	height: 40px;
	background: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 10px;
	color: #222;
	font-weight: 700;
	font-size: 16px;
	border: 1px solid #222;
	border-radius: 50%;
}
.wp-pagenavi .page:hover {
	background: #ffbd58;
	color: #fff;
	transition: 0.6s;
}
.wp-pagenavi .current {
	background: #0066b7;
	color: #fff;
}
@media only screen and ( max-width : 767px ) {
	.wp-pagenavi {
		margin-top: 0px;
	}
	.wp-pagenavi .page, .wp-pagenavi .current {
		width: 28px;
		height: 28px;
		margin: 0 5px;
		font-size: 14px;
	}
}

@media print, screen and ( min-width : 768px ) {
	.wp-pagenavi {
		margin-top: 40px;
	}
}