@charset "utf-8";

:root {
	--accent-color: #F5871D;
	--accent-color2: #D81D1D;
	--bg-color: #EDF2F8;
	--bg-color2: #F8F8F8;
	--btn-color: #FFE043;
}

[class|="inner"] {
	max-width: 1278px;
	width: 93.3333%;
}
[class|="list"] li {
	margin-left: 1em;
	text-indent: -1em;
}
.bg {
	background-color: var(--bg-color);
}
.bg2 {
	background-color: var(--bg-color2);
}
[class|="btn"] {
	display: block;
	margin: auto;
	box-sizing: border-box;
	line-height: 1;
	text-align: center;
	font-weight: bold;
}
.btn-order {
	background-color: var(--btn-color);
	color: var(--main-text-color);
}
[class|="flx-sec"] {
	flex-wrap: wrap;
}
.shadow {
	background-color: #fff;
	box-shadow: 0 .1em 1em rgba(0,0,0,0.1);
}
[class|="label"] {
	display: inline-block;
	padding: .2em 1em;
	background: var(--accent-color2);
	color: #fff;
}
[class|="price"] {
	font-weight: bold;
}
[class|="price"] b {
	color: var(--accent-color2);
}
[class|="ttl-min"] {
	text-align: center;
	color: #555;
}
@media screen and (max-width: 767px) {
	[class|="ttl"] {
		font-size: 6.8vw;
	}
	[class|="sec"] {
		padding: 2.5em 0;
	}
	[class|="btn"] {
		padding: 6.2vw .5em;
		font-size: 5.33333vw;
	}
	[class|="frm"] {
		margin-bottom: 1.5em;
	}
	[class|="item-sec"] {
		width: 100%;
		margin-bottom: 2em;
	}
	[class|="price"] {
		font-size: 6.4vw;
	}
	[class|="price"] b {
		font-size: 10.13333vw;
	}
	[class|="ttl-min"] {
		margin-bottom: 3em;
		font-size: 3.73333vw;
	}
}
@media screen and (min-width: 768px), print {
	[class|="ttl"] {
		font-size: 30px;
	}
	[class|="sec"] {
		padding: 3.75em 0;
	}
	[class|="btn"] {
		max-width: 300px;
		padding: 22px .5em;
		font-size: 20px;
	}
	[class|="flx-sec"] {
		align-items: stretch;
		justify-content: space-between;
	}
	[class|="frm"] {
		margin-bottom: 2em;
	}
	[class|="item-sec"] {
		width: 31.3%;
	}
	[class|="price"] {
		font-size: 24px;
	}
	[class|="price"] b {
		font-size: 38px;
	}
	[class|="ttl-min"] {
		margin-bottom: 5em;
		font-size: 18px;
	}
}


/* -----------------------------------------------------------------------
 sec-mv
----------------------------------------------------------------------- */
.sec-mv {
	margin: 0 auto;
	padding-top: 0;
	padding-bottom: 1em;
	background: #053f6f;
	color: #fff;
}
.sec-mv img{
	width: 100%;
	height: auto;
}
	.mv-txt{
		margin: 20px auto;
	}
.btn-mv {
	margin: auto;
	background-color: var(--accent-color);
	color: #fff;
}
.mv-top-txt{
	text-align: center;
}
.mv-top-txt .mv-term1 em{
	padding: .1em .6em;
	margin: 0 .4em;
	background: #3586c0;
	line-height: 1;
	color: #fff;
}
.mv-top-txt .mv-term1 span{
	text-emphasis: filled;
	-webkit-text-emphasis: filled;
}
.mv-top-txt .mv-term2 em{
	padding: .1em .6em;
	margin: 0 .4em;
	background: #fff;
	line-height: 1;
	color: #053f6f;
}
.mv-top-txt .mv-term2 .f-number{
	font-size: 140%;
	margin-left: .3em;
	margin-right: .3em;
}
/* キャンペーン対応　*/
/* 初割 */
.mv-txt.cp-hatsuwari .mv-txt-img{
	position: relative;
}
.mv-txt.cp-hatsuwari .mv-txt-img::before{
	content: '';
	display: block;
	background: url("../img/label-icon/kv_logo.png") no-repeat top right;
	background-size: contain;
	position:absolute;
}
.mv-txt.cp-hatsuwari .mv-txt-img::after{
	content: '';
	display: block;
	background: url("../img/label-icon/label_denshiban2month_red.svg") no-repeat top right;
	background-size: contain;
	position:absolute;
}
/* 春割　*/
.mv-txt.cp-haruwari .mv-txt-img{
	position: relative;
}
.mv-txt.cp-haruwari .mv-txt-img::before{
	content: '';
	display: block;
	background: url("../img/label-icon/kv_logo_haru.png") no-repeat top right;
	background-size: contain;
	position:absolute;
}
.mv-txt.cp-haruwari .mv-txt-img::after{
	content: '';
	display: block;
	background: url("../img/label-icon/label_denshiban2month_red2.svg") no-repeat top right;
	background-size: contain;
	position:absolute;
}
@media screen and (max-width: 767px) {
	.mv-top{
		display: flex;
		flex-direction: column-reverse;
	}
	.mv-top-txt{
		order: 1;
	}
	.mv-top img{
		order: 2;
	}
	.mv-txt{
		width: 90%;
		font-size: 3.2vw;
	}
	.mv-txt .mv-txt-img{
		width: 70%;
		margin: -2em auto 1em auto;
	}
	.mv-txt .list-mv{
		margin-bottom: 1em;
	}
	.mv-txt .list-mv li{}
	.btn-mv {
		margin: auto;
		max-width: 80vw;
		padding: 1.375em .5em;
		font-size: 4.26667vw;
	}
	.mv-top-txt{
		border-top: 1px solid #ccc;
		padding-top: 1em;
	}
	.mv-top-txt h1{
		font-size: 6.8vw;
	}
	.mv-top-txt .mv-term2{
		margin-bottom: .5em;
	}
	/* 初割 */
	.mv-txt.cp-hatsuwari .mv-txt-img::before{
		width: 85px;
		height: 100px;
		top:-1em;
		left:-5em;
	}
	.mv-txt.cp-hatsuwari .mv-txt-img::after{
		width: 80px;
		height: 80px;
		top:1em;
		right:-5em;
	}
	/* 春割 */
	.mv-txt.cp-haruwari .mv-txt-img::before{
		width: 85px;
		height: 100px;
		top:-1em;
		left:-5em;
	}
	.mv-txt.cp-haruwari .mv-txt-img::after{
		width: 80px;
		height: 80px;
		top:1em;
		right:-5em;
	}
}
@media screen and (min-width: 768px), print {
	.sec-mv{
		width: 94%;
		max-width: 1320px;
		margin-bottom: 1em;
		padding-bottom: 1em;
	}
	.mv-top-txt{
		margin-top: 20px;
	}
	.mv-top-txt .mv-term1,
	.mv-top-txt .mv-term2{
		font-size: 26px;
	}
	.mv-top-txt h1{
		font-size: 62px;
	}
	.mv-txt{
		max-width: 480px;
		margin-left: auto;
		margin-right: auto;
	}
	.mv-txt-img{
		margin-top: 20px;
		margin-bottom: 10px;
	}
	.mv-txt-link{
		width: 56%;
		margin-left: auto;
		margin-right: auto;
	}
	.mv-txt-link .list-mv{
		margin-bottom: 1em;
	}
	/* 初割 */
	.mv-txt.cp-hatsuwari .mv-txt-img{
		padding-left: 20px;
	}
	.mv-txt.cp-hatsuwari .mv-txt-img::before{
		width: 115px;
		height: 134.46px;
		top: -10px;
		left: -60px;
	}
	.mv-txt.cp-hatsuwari .mv-txt-img::after{
		width: 100px;
		height: 100px;
		top: 10px;
		right: -80px;
	}
	/* 春割 */
	.mv-txt.cp-haruwari .mv-txt-img{
		padding-left: 20px;
	}
	.mv-txt.cp-haruwari .mv-txt-img::before{
		width: 115px;
		height: 134.46px;
		top: -10px;
		left: -60px;
	}
	.mv-txt.cp-haruwari .mv-txt-img::after{
		width: 100px;
		height: 100px;
		top: 10px;
		right: -80px;
	}
}


/* -----------------------------------------------------------------------
 sec-about
----------------------------------------------------------------------- */
.sec-about.bg{
	padding-bottom: .5em;
}
.blk-sec-about {
	margin: 0 auto 3em;
}
.blk-sec-about img{
	margin-bottom: 2em;
}
.ttl-sec-about {
	color: var(--main-color);
}
.ttl-sec-about span {
	display: block;
	margin-bottom: .5em;
	color: var(--main-text-color);
}
.ttl-sec-about em{
	background:linear-gradient(transparent 70%, #f4aeb7 70%);
}
.item-sec-about p {
	margin: auto;
}
@media screen and (max-width: 767px) {
	.ttl-sec-about {
		font-size: 6.93333vw;
	}
	.ttl-sec-about span {
		font-size: 4.26667vw;
	}sec-about p {
		width: 96%;
	}
}
@media screen and (min-width: 768px), print {
	.blk-sec-about {
		max-width: 1164px;
	text-align: center;
	}
	.ttl-sec-about {
		font-size: 40px;
	}
	.ttl-sec-about span {
		font-size: 24px;
	}
	.blk-sec-about p {
		font-size: 20px;
	}
	.item-sec-about p {
		width: 88%;
		font-size: 20px;
	}
}
@media screen and (min-width: 1387px) {
	.frm-sec-about {
		height: 311px;
	}
}


/* -----------------------------------------------------------------------
 sec-takuhai
----------------------------------------------------------------------- */
.sec-takuhai {
	text-align: center;
}
.blk-top-takuhai,
.list-takuhai {
	color: var(--main-color);
}
.blk-top-takuhai em {
	background: linear-gradient(transparent 70%, #FFFB7D 0%);
}
.blk-top-takuhai b {
	display: block;
	margin-bottom: 1em;
}
.blk-top-takuhai p {
	font-weight: bold;
}
.label-takuhai {
	font-weight: normal;
}
.item-sec-takuhai {
	padding: 1.25em 1em;
}
.ttl-item-sec-takuhai {
	padding: .5em 1em;
}
.ttl-item-sec-takuhai small {
	display: block;
	font-weight: normal;
}
.frm-sec-takuhai {
	margin-bottom: 1.5em;
}
.price-tackuhai {
	margin-bottom: 1.25em;
}
.price-tackuhai2 {
	margin-bottom: 1em;
}
.item-sec-takuhai p {
	margin-bottom: .15em;
}
.item-sec-takuhai p:last-of-type {
	margin-top: 1em;
}
.item-sec-takuhai p.free{
	padding-top: 1.2em;
}
.item-sec-takuhai em{
	color: #AC0000;
	font-weight: bold;
}
.blk-link-takuhai {
	margin-bottom: 1em;
}
.blk-link-takuhai a {
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.blk-top-takuhai {
		margin-bottom: 1.5em;
	}
	.blk-top-takuhai b {
		font-size: 5.33333vw;
	}
	.blk-top-takuhai p {
		text-align: left;
	}
	.ttl-sec-takuhai {
		width: 94%;
		margin: 0 auto 2.2em;
		text-align: left;
		font-size: 6.4vw;
	}
	.label-takuhai {
		padding: .5em 1em;
		margin-bottom: .5em;
		font-size: 3.73333vw;
	}
	.ttl-item-sec-takuhai {
		padding: .5em;
		font-size: 5.33333vw;
	}
	.ttl-item-sec-takuhai small {
		font-size: 4.26667vw;
	}
	.item-sec-takuhai .btn-order {
		max-width: 80vw;
	}
	.blk-link-takuhai a {
		font-size: 5.33333vw;
	}
	.list-takuhai {
		text-align: left;
		font-size: 4.26667vw;
	}
	.list-family {
		text-align: left;
		margin-top: 1em;
	}
	.item-sec-takuhai.add-denshi{
		order: 2;
	}
	.item-sec-takuhai.new-set{
		order: 1;
	}
}
@media screen and (min-width: 768px), print {
	.blk-top-takuhai {
		margin-bottom: 3em;
	}
	.blk-top-takuhai b {
		font-size: 28px;
	}
	.blk-top-takuhai p {
		line-height: 1.9;
		font-size: 20px;
	}
	.ttl-sec-takuhai {
		margin-bottom: 1.5em;
		font-size: 36px;
	}
	.label-takuhai {
		margin-right: 1em;
		font-size: 26px;
	}
	.flx-sec-takuhai {
		margin-bottom: 3em;
		width: 960px;
		margin-left: auto;
		margin-right: auto;
		justify-content: space-between;
	}
	.item-sec-takuhai {/* 20241216対応 */
		padding-top: 24px;
		padding-bottom: 40px;
		width: 48%;
		margin-bottom: 40px;
	}/* normal
	.item-sec-takuhai {
		padding-top: 24px;
		padding-bottom: 40px;
		width: 48%;
		margin-bottom: 40px;
	}*/
	.ttl-item-sec-takuhai {
		min-height: 88px;
		font-size: 22px;
	}
	.ttl-item-sec-takuhai small {
		font-size: 16px;
	}
	.item-sec-takuhai p {
		font-size: 20px;
	}
	.blk-link-takuhai a {
		font-size: 24px;
	}
	.list-takuhai {
		font-size: 20px;
	}
	.list-family {
		font-size: 16px;
		margin-top: 1em;
	}
	.price-tackuhai{
		line-height: 1.2;
	}
	.price-tackuhai2 {
		margin-top: 2.55em;
	}
}
/* -----------------------------------------------------------------------
 sec-information
----------------------------------------------------------------------- */
.sec-information {
	position: relative;
}
.sec-information::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	background: url(../img/index04/txt_information.svg) no-repeat center;
	background-size: contain;
}
.blk-box-information1,
.blk-box-information2 {
	padding: 3em 1em;
	text-align: center;
}
.txt-box-information1 {
	font-weight: bold;
}
.blk-box-information1 b {
	color: #1278AB;
}
.flx-sec-information1 {
	margin-bottom: 3em;
}
.col-sec-information1-img,
.col-sec-information1-txt {
	background-color: #fff;
}
.list-information1 {
	margin-top: 1em;
}
.flx-box-information2 {
	flex-wrap: wrap;
}
.lbl-information2 {
	position: relative;
	display: inline-block;
	padding: .75em 1.25em;
	box-sizing: border-box;
	background-color: var(--accent-color);
	line-height: 1;
	font-weight: bold;
	color: #fff;
}
.lbl-information2::after {
	content: "";
	position: absolute;
	right: -1em;
	top: 0;
	bottom: 0;
	display: block;
	width: 1em;
	clip-path: polygon(0 0,0 100%, 100% 50%);
	background-color: var(--accent-color);
}
.ttl-box-information2-dtl {
	margin-bottom: .25em;
}
.flx-img-information2 {
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
	.sec-information::before {
		width: 78.4vw;
		height: 8vw;
	}
	.txt-box-information1,
	.ttl-box-information2 {
		font-size: 5.86667vw;
	}
	.col-sec-information1-img,
	.col-sec-information1-txt {
		width: 100%;
	}
	.col-sec-information1-img {
		padding: 2em 1.25em;
	}
	.col-sec-information1-img img {
		width: 70.4vw;
	}
	.col-sec-information1-txt {
		padding: 0 1.25em 2em;
	}
	.list-information1 {
		text-align: left;
	}
	.blk-box-information2 p {
		text-align: left;
	}
	.flx-box-information2 {
		padding: 1.5em;
	}
	.lbl-information2 {
		margin-bottom: 1em;
	}
	.item-box-information2-ttl,
	.item-box-information2-dtl {
		width: 100%;
	}
	.item-box-information2-dtl:not(:last-child) {
		margin-bottom: 2em;
	}
	.ttl-box-information2-dtl {
		font-size: 5.33333vw;
	}
	.item-img-information2 {
		width: 100%;
	}
}
@media screen and (min-width: 768px), print {
	.sec-information::before {
		width: 589px;
		height: 60px;
	}
	.txt-box-information1,
	.ttl-box-information2 {
		font-size: 36px;
	}
	.flx-sec-information1 {
		align-items: center;
		justify-content: center;
	}
	.col-sec-information1-img {
		width: 40%;
		padding: 3em;
	}
	.col-sec-information1-img img {
		width: 313px;
	}
	.col-sec-information1-txt {
		width: 58%;
		padding: 3em 5em 3em 0;
	}
	.col-sec-information1-txt p {
		line-height: 2;
	}
	.blk-box-information2 p {
		font-size: 20px;
	}
	.flx-box-information2 {
		align-items: flex-start;
		justify-content: flex-start;
		padding: 3em 4em;
	}
	.item-box-information2-ttl {
		width: 227px;
	}
	.item-box-information2-dtl {
		width: calc(100% - 227px);
	}
	.lbl-information2 {
		padding-right: .5em;
		width: 145px;
	}
	.ttl-box-information2-dtl {
		font-size: 24px;
	}
	.item-box-information2-dtl p {
		line-height: 2;
	}
	.item-box-information2-dtl:not(:last-child) {
		margin-bottom: 3em;
	}
	.item-img-information2 {
		width: 50%;
	}
}
/* 2025.12 Update */
.blk-box-information1{
	position: relative;
}
.blk-box-information1 .tokuten-label{
	background : #053f6f;
	display: inline-block;
	padding: .5em 1.5em;
	color: #fff;
	position: absolute;
	top: -1.25em;
	left: 50%;
	transform: translateX(-50%);
}
.txt-box-information1 em{
	color: var(--accent-color);
	display: block;
}
.blk-box-information3{
	background: #ccc;
}
.blk-box-information1 img{
	margin: 1.5em auto;
}
.blk-box-information1 .blk-faq{
	margin-top: 2em;
	margin-bottom: 0;
}
.blk-box-information1 .blk-a{
	background: #fff;
	text-align: left;
	padding: 1em;
}
.blk-faq.list-information-service .inner{
	padding: 1em;
	margin: 1em 0;
}
.blk-box-information1 .blk-faq li{
	margin: 0;
	padding: 0 1em;
	text-indent: 0;
}
.blk-box-information1 .blk-faq li .blk-a{
	padding: 0 0 1em 0;
}
.blk-box-information1 .blk-faq li .blk-a li{
	padding: 0;
	margin-bottom: 1.5em;
}
.list-other-service{
	margin-bottom: 1em;
}
.list-other-service-ul li .other-service-ul-txt b{
	display: block;
}
@media screen and (max-width: 767px) {	
	.txt-box-information1 em{
		display: block;
	}
	.list-information1{
		font-size: 2.4vw;
		text-align: center;
	}
	.blk-faq.list-information-service{
		font-size: 3.2vw;
	}
	.blk-faq.list-other-service .blk-a{
		font-size: 3.4vw;
	}
	.list-other-service-ul li{
		display: flex;
		justify-content: space-between;
	}
	.list-other-service-ul li .other-service-ul-img{
		width: 12%;
		
	}
	.list-other-service-ul li .other-service-ul-txt{
		width: 85%;
	}
}
@media screen and (min-width: 768px), print {
	.list-information-service{
		width: 680px;
		margin-left: auto;
		margin-right: auto;
	}
	.list-other-service{
		width: 980px;
		margin-left: auto;
		margin-right: auto;
	}
	.list-other-service-ul{
		display: flex;
		flex-wrap: wrap;
		padding-left: 1.5em;
		padding-right: 1.5em;
		justify-content: space-between;
		border-top: 1px solid #ccc;
	}
	.list-other-service-ul li{
		font-size: 16px;
	}
	.list-other-service-ul li b{
		text-align: center;
		margin-bottom: .5em;
	}
	.list-other-service-ul li:nth-child(1),
	.list-other-service-ul li:nth-child(2){
		width: 45%;
	}
	.list-other-service-ul li:nth-child(3),
	.list-other-service-ul li:nth-child(4),
	.list-other-service-ul li:nth-child(5),
	.list-other-service-ul li:nth-child(6),
	.list-other-service-ul li:nth-child(7),
	.list-other-service-ul li:nth-child(8){
		width: 30%;
	}
	.blk-box-information1 .list-information-service-img{
		width: 70%;
		margin: 3em auto 1.5em auto;
	}
}

/* -----------------------------------------------------------------------
 sec-contents
----------------------------------------------------------------------- */
.blk-box-contents {
	margin-bottom: 3em;
	text-align: center;
}
.ttl-sec-contents {
	color: var(--main-color);
}
.itemttl-sec-contents {
	margin-bottom: 1em;
	font-weight: normal;
}
.tag-sec-contents {
	display: inline-block;
	padding: .5em 1em;
	background-color: var(--accent-color);
	line-height: 1;
	color: #fff;
}
.tag-sec-contents:not(:last-of-type) {
	margin-right: .5em;
}
@media screen and (max-width: 767px) {
	.sec-contents {
		padding-bottom: 6em;
	}
	.item-sec-contents {
		margin-bottom: 2.5em;
	}
	.ttl-sec-contents {
		font-size: 5.86667vw;
	}
	.itemttl-sec-contents {
		font-size: 4.8vw;
	}
	.tag-sec-contents {
		font-size: 3.73333vw;
	}
}
@media screen and (min-width: 768px), print {
	.sec-contents {
		padding-bottom: 16em;
	}
	.blk-box-contents {
		margin-bottom: 5em;
	}
	.ttl-sec-contents {
		font-size: 36px;
	}
	.itemttl-sec-contents {
		font-size: 20px;
	}
	.tag-sec-contents {
		margin-bottom: .2em;
		font-size: 14px;
	}
}
@media screen and (min-width: 1387px) {
	.frm-sec-contents {
		height: 250px;
	}
}


/* -----------------------------------------------------------------------
 sec-order
----------------------------------------------------------------------- */
.sec-order {
	text-align: center;
}
.blk-label-order {
	 margin-bottom: 1em;
}
.flx-sec-order {
	flex-wrap: wrap;
}
.btn-change {
	background-color: #115DA8;
	color: #fff;
}
.item-sec-order p {
	margin-bottom: 1em;
	font-weight: bold;
}
.blk-link-sec-order a {
	display: inline-block;
	margin: 0 1em;
}
@media screen and (max-width: 767px) {
	.frm-sec-order {
		/*margin-top: -7.5em;*/
		margin-bottom: 4em;
	}
	.ttl-sec-order {
		margin-bottom: .5em;
		font-size: 6.4vw;
	}
	.label-order {
		padding-left: 2.5em;
		padding-right: 2.5em;
		font-size: 3.73333vw;
	}
	.flx-sec-order {
		margin: 2em auto 0;
	}
	.item-sec-order {
		width: 100%;
		margin-bottom: 1.5em;
	}
	.blk-link-sec-order a:not(:last-of-type) {
		margin-bottom: 1em;
	}
}
@media screen and (min-width: 768px), print {
	.frm-sec-order {
		/*margin-top: -15em;*/
		margin-bottom: 4em;
	}
	.ttl-sec-order {
		font-size: 36px;
	}
	.label-order {
		font-size: 26px;
	}
	.flx-sec-order {
		align-items:flex-start;
		max-width: 938px;
		margin: 2em auto 1em;
	}
	.item-sec-order {
		width: 47%;
	}
	.item-sec-order p {
		font-size: 20px;
	}
	.item-sec-order .btn-order,
	.item-sec-order .btn-change {
		max-width: 440px;
	}
}


/* -----------------------------------------------------------------------
 sec-faq
----------------------------------------------------------------------- */
.sec-faq {
	position: relative;
}
.sec-faq::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	background: url(../img/index04/txt_faq.svg) no-repeat center;
	background-size: contain;
}
.inner-sec-faq {
	max-width: 980px;
}
.blk-faq {
	margin-bottom: 4em;
}
.blk-faq li {
	padding: 0 1.5em 1px;
	margin-bottom: 1em;
	background-color: #fff;
}
.blk-q {
	position: relative;
	padding: 1em 1.75em 1em 0;
}
.blk-q::after {
	content: "＋";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	display: block;
	width: 1em;
	height: 1em;
	margin: auto;
	line-height: 1;
}
.blk-q.is-opened::after {
	content: "－";
}
.blk-a {
	display: none;
	padding: 1em 2em;
	margin-bottom: 1em;
	background-color: var(--bg-color);
}
.list-faq{
	margin-bottom: .5em;
}
.list-faq li:not(:last-of-type) {
	margin-bottom: .5em;
}
.blk-notes-faq p{
	margin-bottom: .5em;
}
.blk-notes-faq p.space-top{
	margin-top: 1.5em;
}
.ttl-list-faq {
	margin-bottom: .5em;
	font-weight: normal;
}
.notes-faq {
	margin-top: 1em;
	font-size: 85%;
}
.list-faq span{
	display: block;
}
@media screen and (max-width: 767px) {
	.sec-faq::before {
		width: 21.6vw;
		height: 8.8vw;
	}
	.ttl-list-faq {
		font-size: 4.26667vw;
	}
	.blk-q::after {
		font-size: 4.8vw;
	}
	.blk-a {
		padding: 1em 1.4em;
	}
}
@media screen and (min-width: 768px), print {
	.sec-faq::before {
		width: 161px;
		height: 65px;
	}
	.ttl-list-faq {
		font-size: 18px;
	}
	.blk-q {
		cursor: pointer;
	}
	.blk-q::after {
		font-size: 18px;
	}
}

/* コード入力欄 */
.form_container {
text-align: center;
}
@media screen and (max-width: 767px) {
	.form_container {
		padding: 0 0px;
}
	}
.form_container .form_box {
  width: 0px;
  margin: 0 auto;
  color: #fff;
}
.form_container .form_box .error_box {
  width: 0px;
  margin: 0 auto 0px;
  padding: 0px 0px;
  font-size: 0px;
 border: solid 0px #f78600;
  text-align: center;
	color: #f78600;
}
.form_container .form_box .left {
  display: table-cell;
}
.form_container .form_box input[type="text"] {
  height: auto;
  font-size: 0px;
  padding: 0px;
  ime-mode: disabled;
  width: 480px;
  border: solid 0px #333333;
	color: #333333;
	text-align: center;
}
@media screen and (max-width: 767px) {
  .form_container .form_box {
    width: auto;
  }
  .form_container .form_box h3 {
    margin-bottom: 0px;
    font-size: 0px;
    line-height: 0;
  }
  .form_container .form_box .error_box {
    width: 0%;
    padding: 0px;
    margin-bottom: 0px;
    font-size: 0px;
    text-align: left;
  }
  .form_container .form_box input[type="text"] {
    width: 0%;
    font-size: 0px;
    padding: 0px;
  }
  .form_container .form_box .left,
  .form_container .form_box .right {
    display: block;
  }
  .form_container .form_box .right {
    margin-top: 0px;
    padding-left: 0;
    font-size: 0px;
  }
}
.common-inner{
margin-bottom: 40px;
}
@media screen and (max-width: 768px){
.common-inner{
margin-bottom: 32px;
}
}
.common-inner_top{
padding-top: 24px;
}

@media screen and (min-width: 768px){
.common-inner_top{
padding-top: 32px;
}
}


/* cp */

.cp-txt {
	padding: .5em 1.2em;
	color: #AC0000;
	font-weight: bold;
	margin-bottom: 1em;
	text-align: left;
	font-size: 4vw;
}

.cp-txt2 {
	color: #AC0000;
	font-weight: bold;
	margin-top: 1em;
	text-align: center;
}
.cp-txt3 {
	color: #AC0000;
	font-weight: bold;
	margin-bottom: 1em;
	text-align: center;
}
.price-tackuhai2.cp-label,
.price-tackuhai.cp-label{
	position: relative;
}
.price-tackuhai2.cp-label::after{
	content: '';
	display: block;
	background: url("../img/label-icon/label_hatsuwari2month_red.svg") no-repeat top right;
	background-size: contain;
	position:absolute;
}
.price-tackuhai.cp-label::after{
	content: '';
	display: block;
	background: url("../img/label-icon/label_hatsuwari2month_red.svg") no-repeat top right;
	background-size: contain;
	position:absolute;
}
@media screen and (max-width: 768px){
	.price-tackuhai2.cp-label::after{
		width: 80px;
		height: 80px;
		top:1.5em;
		right:-1em;
		z-index: 10;
	}
	.price-tackuhai.cp-label::after{
		width: 80px;
		height: 80px;
		top:4.5em;
		right:-1em;
		z-index: 10;
	}
}
@media screen and (min-width: 768px){
	.cp-txt{
		text-align: center;
		margin-bottom: 3em;
		font-size: 18px;
	}
	.price-tackuhai2.cp-label::after{
		width: 90px;
		height: 90px;
		top:40px;
		right:-15px;
		z-index: 10;
	}
	.price-tackuhai.cp-label::after{
		width: 90px;
		height: 90px;
		top:80px;
		right:-15px;
		z-index: 10;
	}
}


/* ******************************************************
.sec-freeterm
****************************************************** */
.blk-notes-faq b{
	padding: 1em 0;
	display: block;
}
.blk-notes-faq table{
	border-right: 1px solid #ccc;
}
.blk-notes-faq th{
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	text-align: center;
	vertical-align: middle;
	padding: 2%;
	width: calc(100% / 4);
}
.blk-notes-faq td{
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	text-align: center;
	vertical-align: middle;
	padding: 2%;
	width: calc(100% / 4);
}
@media screen and (max-width: 768px){
	.blk-notes-faq{
		font-size: 2.864vw;
	}
	.blk-notes-faq th{
		padding: 2%;
	}
	.blk-notes-faq td{
		padding: 2%;
	}
}

@media screen and (min-width: 768px){
	.blk-notes-faq{
		font-size: 15px;
	}
	.blk-notes-faq table{
		width: 100%;
	}
	.blk-notes-faq th{
		padding: 10px 5px;
	}
	.blk-notes-faq td{
		padding: 10px 5px;
	}
}

.sec-freeterm {
	background: #F4F4F4;
}
.ttl-freeterm {
	margin-bottom: .5em;
	font-weight: normal;
	text-align: center;
}
.freeterm-txt {
  font-weight: 500;
}
.freeterm-notes {
  margin: 4em 0;
  text-align: left;
}
.freeterm-notes li{
	text-indent: -1em;
	padding-left: 1em;
}
.freeterm-notes li.space03{
	text-indent: -2.4em;
	padding-left: 2.4em;
}
.freeterm-notes p{
  padding-left: 1em;
}
.freeterm-notes table{
	margin: 1.5em 1em;
	border-collapse:collapse;
}
.freeterm-notes th,
.freeterm-notes td{
	padding: 1em;
}
.freeterm-notes table{
	border-right: 1px solid #ccc;
	background: #fff;
}
.freeterm-notes th{
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	text-align: center;
	vertical-align: middle;
	padding: 2%;
	width: calc(100% / 4);
	background: #f2f2f2;
}
.freeterm-notes td{
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	text-align: left;
	vertical-align: middle;
	padding: 2%;
	width: calc(100% / 4);
}
@media screen and (max-width: 767px) {
  .ttl-freeterm {
    font-size: 4.8vw;
  margin-bottom: .5em;
  }
	.freeterm-notes li,
  .freeterm-notes th,
  .freeterm-notes td,
  .freeterm-notes p,
  .freeterm-notes b,
  .freeterm-notes ul{
		font-size: 3.73333vw;
	}
.freeterm-notes b{
    display:block;
    margin-bottom: 1em;
    margin-top: 2em;
	line-height: 1.8;
}
	.table-scroll {
    overflow-x: auto;
    width: 100%;
		margin-bottom: 1em;
  }
  .scroll-table {
    min-width: 860px;
    border-collapse: collapse;
  }
}
@media screen and (min-width: 768px), print {
  .inner-freeterm {
	max-width: 980px;
  }	
  .ttl-freeterm{
    font-size: 22px;
  }
  .freeterm-notes li,
  .freeterm-notes th,
  .freeterm-notes td,
  .freeterm-notes p,
  .freeterm-notes b{
    font-size: 16px;
  }
.freeterm-notes b{
    display:block;
    margin-bottom: 1em;
    margin-top: 2em;
}
  .freeterm-notes {
    padding: 0
  }
}

/* 20240924 */
/* family-content
-------------------------------------------------------------------------- 
.family-content{
margin-top: 16px;
}
.family-content-list {
display: flex;
max-width:1053px;
margin: auto;
padding: 24px 0;
width: 100%;
flex-wrap: wrap;
justify-content: center;
}
@media screen and (min-width: 768px) {
.family-content-list {
flex-wrap: nowrap;
}
}

.family-content-item {
width: 100%;
margin-top: 35px;
}
.family-content-img{
width: 30%;
max-width: 380px;
}
@media screen and (max-width: 1000px) {
.family-content-img{
width: 50%;
}
}
@media screen and (max-width: 768px) {
.family-content-img{
width: 100%;
}
}
@media screen and (max-width: 414px) {
.family-content-img{
width: 100%;
margin: auto;
}
}
.family-content-text{
width: 70%;
padding-left:40px;
	text-align: left;
}
@media screen and (max-width: 768px) {
.family-content-text{
width: 90%;
padding-left:16px;
	margin: auto;
}
}
@media screen and (max-width: 767px) {
.family-content-text{
width: 90%;
padding-left:0;
	margin: auto;
}
}
.family-content-text-maintext{
font-weight: 600;
font-size: 22px;
color: #003e70;
}
@media screen and (max-width: 1000px) {
.family-content-text-maintext{
font-size: 20px;
	
}
}
@media screen and (max-width: 768px) {
.family-content-text-maintext{
font-size: 18px;
margin-top: 24px;
}
}
.family-content-detail{
padding-top: 16px;
padding-top: 1em;
	font-weight: normal;
}
@media screen and (max-width: 768px) {
.family-content-detail{
}
}*/

/* 2025.12 update */
.family-new-content{
	padding: 1.5em;
	border: 1px solid #053f6f;
	background: #fff;
	width: 94%;
	border-radius: 5px;
	margin: 1em auto;
}
.family-new-voice{
	width: 94%;
	margin: 1em auto;
	padding-top: 2em;
}
.family-new-content h3{
	color: var(--accent-color);
}
.family-new-content h3,
.family-new-voice h3{
	text-align: center;
}
.family-new-content .family-new-content-txt p em{
	color: #053f6f;
	border-bottom: 1px solid #053f6f;
	font-weight: bold;
}
.family-new-voice li{
	background: #fff;
	border-radius: 5px;
	padding: 1em .6em 0 .6em;
	margin: 1em 0;
}
.family-new-voice p em{
	color: #053f6f;
	border-bottom: 1px solid #053f6f;
	font-weight: bold;
}
.table-plan-list{
	border: 0;
	width: 96%;
	margin: 4em auto 1em auto;
}
.table-plan-list th,
.table-plan-list td{
	padding: 1em 0 1em 1.5em;
	border: 0;
}
.table-plan-list .table-ttl-service1{
	background: #053f6f;
	color: #fff;
	width: 36%;
}
.table-plan-list .table-ttl-service2{
	background: #0f6ac1;
	color: #fff;
	width: 36%;
}
.table-plan-list .table-ttl-item{
	background: #02223c;
	color: #fff;
	text-align: left;
}
.table-plan-list .table-item1{
	background: #f9f9f9;
}
.table-plan-list .table-item2{
	background: #fff;
}


@media screen and (max-width: 767px) {
	.family-new-content h3{
		margin-bottom: 1em;
	}
	.family-new-content-txt p{
		font-size: 3.4vw;
	}
	.family-new-voice li{
		display: flex;
		justify-content: space-between;
	}
	.family-new-voice .voice-img{
		width: 20%;
	}
	.family-new-voice .voice-txt{
		font-size: 3.4vw;
		width: 76%;
	}
	.table-plan-list{
		font-size: 2.2vw;
	}
	.table-plan-list img{
		width: 20px;
		height: 20px;
	}
}

@media screen and (min-width: 768px), print {
	.family-new-content{
		display: flex;
		justify-content: space-between;
		max-width: 940px;
		padding-bottom: 0;
	}
	.family-new-content .family-new-content-img{
		width: 40%
	}
	.family-new-content .family-new-content-txt{
		width: 56%;
	}
	.family-new-content .family-new-content-txt h3{
		font-size: 24px;
		margin-bottom: 1em;
	}
	.family-new-content .family-new-content-txt p{
		text-align: left;
	}
	.family-new-voice ul{
		display: flex;
		justify-content: space-between;
	}
	.family-new-voice{
		max-width: 940px;
	}
	.family-new-voice li{
		width: 31%;
		padding: 1.5em;
	}
	.family-new-voice .voice-img{
		width: 50%;
		margin: 0 auto .5em auto;
	}
	.family-new-voice .voice-txt p{
		font-size: 16px;
		text-align: left;
	}
	.family-new-voice .voice-txt .voice-name{
		text-align: center;
		margin-bottom: .5em;
		font-size: 18px;
	}
	.table-plan-list{
		max-width: 960px;
	}
	.table-plan-list td{
		font-size: 15px;
	}
	.table-plan-list img{
		width: 20px;
		height: 20px;
	}
}
/* 20260130 update */
.list-plan {
    margin-top: 10px;
}
.list-plan b {
    margin-top: 10px;
	font-size: 90%;
}
.list-plan .notes{
	font-size: 80%;
}
.modalWindow-open{
	text-decoration: underline;
}

.sec-takuhai .table-notes{
	text-align: left;
	width: 96%;
	margin: .5em auto 1em auto;
}
@media screen and (max-width: 767px) {
	.sec-takuhai .table-notes{
		font-size: 2.2vw;
	}
}
@media screen and (min-width: 768px), print {
	.sec-takuhai .table-notes{
		width: 960px;
		font-size: 70%;
	}
}
