@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
.content_low {
	padding: calc(100 / var(--break) * 100vw) 0 calc(200 / var(--break) * 100vw);
}
.main_page {
	background: url("images/page/bg_ttl_page.jpg")no-repeat center / cover;
	height: calc(500 / var(--break) * 100vw);
}
.page_main section:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}

@media only screen and (min-width: 768px) and (max-width: 1599px) {
}
@media only screen and (min-width: 768px) and (max-width: 1299px) {
}
@media only screen and (max-width: 767px) {
	.content_low {
		padding: 13vw 0 25vw;
	}
	.content_low .inner, .main_page .inner {
		max-width: calc(702 / var(--break) * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: 20vw;
	}
	.main_page {
		background-image: url("images/page/bg_ttl_page_sp.jpg");
	}
	.col_img {
		text-align: center;
	}
}


/* copy_common01
------------------------------------------------------------------*/
.copy_common01{
	padding: calc(12 / var(--break02));
	line-height: 1.5;
	text-align: center;
	color: #fff;
	background: #1b2a55;
	border-radius: calc(35 / var(--break02));
}
.copy_common01.border{
	color: #1d1d1d;
	background: transparent;
	border: 1px solid #1d1d1d;
}
@media(max-width: 767px) {
	.copy_common01{
		padding: 1.8vw;
		letter-spacing: 0;
		border-radius: calc(40 / 750 * 100vw);
	}	
}

/* copy_common02
------------------------------------------------------------------*/
.copy_common02{
	line-height: 1.5;
	text-align: center;
	color: #1b2a55;
	position: relative;
	z-index: 1;
}
.copy_common02::before,
.copy_common02::after
{
	content: "";
	width: calc(350 / var(--break02));
	height: calc(10 / var(--break02));
	margin: auto;
	border: 1px solid #1b2a55;
	border-radius: calc(5 / var(--break02));
	position: absolute;
	inset: 0 auto;
}
.copy_common02::before{left: 0;}
.copy_common02::after{right: 0;}
/* @media(min-width: 768px) and (max-width:1299px) {} */
@media(max-width: 767px) {
	.copy_common02{
		font-size: calc(36 / 750 * 100vw);
	}
	.copy_common02::before,
	.copy_common02::after
	{
		width: calc(200 / 750 * 100vw);
		height: calc(12 / 750 * 100vw);
		border-radius: calc(6 / 750 * 100vw);
	}
}
/* copy_common
------------------------------------------------------------------*/
.copy_common03{
	padding-bottom: calc(10 / var(--break02));
	border-bottom: dashed 1px #6ac5d9;
}
.copy_common03 .deco{
	display: inline-block;
	padding-left: calc(40 / var(--break02));
	position: relative;
	z-index: 1;
}
.copy_common03 .deco::before{
	content: "";
	width: calc(20 / var(--break02));
	height: calc(20 / var(--break02));
	margin: auto;
	background: #6ac5d9;
	border-radius: 100%;
	position: absolute;
	top: .4em;
	left: 0;
}
/* @media(min-width: 768px) and (max-width:1299px) {} */
@media(max-width: 767px) {
	.copy_common03{
		padding-bottom: .5vw;
		letter-spacing: 0;
		font-size: calc(34 / 750 * 100vw);
	}
	.copy_common03 .deco{
		padding-left: calc(48 / 750 * 100vw);
	}
	.copy_common03 .deco::before{
		width: calc(30 / 750 * 100vw);
		height: calc(30 / 750 * 100vw);
		top: .4em;
		left: 0;
	}
}
/* copy_common
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}
/* row_common01
------------------------------------------------------------------*/

@media(min-width: 768px) {
	.row_common01 > .col_img{
		max-width: 350px;
		width: 29%;
	}
	.row_common01 > .col_txt{
		width: 67.5%;
	}
}
@media(max-width: 767px) {
	.row_common01 > .col_img{
		margin-bottom: 4vw;
	}
}

/* copy_common
------------------------------------------------------------------*/
.row_common30 > .col{
	max-width: 394px;
	width: 31.8%;
	background: #fff;
	border-radius: 0 0 calc(20 / var(--break02)) calc(20 / var(--break02));
	position: relative;
	z-index: 1;
}
.row_common30 .areaText{
	padding: calc(20 / var(--break02)) calc(28 / var(--break02)) calc(38 / var(--break02)) ;
}
.row_common30 .copy{
	padding: calc(12 / var(--break02)) 0;
	line-height: 1.5;
	text-align: center;
	color: #fff;
	background: #6ac5d9;
	border-radius: calc(30 / var(--break02)) ;
	position: relative;
	z-index: 1;
}
.row_common30 > .col:nth-of-type(2n) .copy{
	background: #7cc1b7;
}
@media(min-width: 768px) {
	.row_common30 > .col{
		margin-right: 2.29%;
	}
	.row_common30 > .col:nth-of-type(3n){
		margin-right: 0;
	}
	.row_common30 > .col:nth-of-type(n + 4){
		margin-top: calc(40 / var(--break03));
	}
}
@media(max-width: 767px) {
	.row_common30 > .col{
		width: calc(646 / 750 * 100vw);
		margin: 0 auto calc(40 / 750 * 100vw);
	}
	.row_common30 > .col:last-child{
		margin-bottom: 0;
	}
	.row_common30 .areaText{
		padding: 3vw 4vw 4.5vw;
	}
	.row_common30 .copy{
		letter-spacing: 0;
		padding: 2vw 0;
		font-size: calc(34 / 750 * 100vw);
		border-radius: calc(40 / 750 * 100vw);
	}
}
/* box_common01
------------------------------------------------------------------*/
.box_common01{
	background: #f3f3f3;
	border-radius: calc(20 / var(--break02));
}
/* @media(min-width: 768px) and (max-width:1299px) {} */
@media(max-width: 767px) {
	.box_common01{
		padding-left: 4%;
		padding-right: 4%;
	}
}

/* logo_common
------------------------------------------------------------------*/
.logo_common{
	max-width: 562px;
	width: calc(562 / var(--break02));
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}


/* btn_common
------------------------------------------------------------------*/
.btn_common{
	width: calc(500 / var(--break02));
	min-height: calc(60 / var(--break02));
	line-height: 1;
	color: #1d1d1d;
	background: #fff;
	border-radius: calc(10 / var(--break02));
}
.btn_common .s{
	padding-left: calc(70 / var(--break02));
	position: relative;
	z-index: 1;
}
.btn_common .s::before{
	content: "";
	width: calc(30 / var(--break02));
	height: calc(30 / var(--break02));
	margin: auto;
	position: absolute;
	background: url(images/page/arw02.svg)no-repeat center / contain;
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(10 / var(--break02));
	z-index: -1;
}
@media(max-width: 767px) {
	.btn_common{
		width: calc(600 / 750 * 100vw);
		min-height: calc(100 / 750 * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.btn_common.fz20{
		letter-spacing: 0;
		font-size: calc(32 / 750 * 100vw);
	}
	.btn_common .s{
		padding-left: 0;
	}
	.btn_common .s::before{
		width: calc(30 / 750 * 100vw);
		height: calc(30 / 750 * 100vw);
		left: -11vw;
	}
}


/* tbl_common01
------------------------------------------------------------------*/
.tbl_common01 table {
	border-color: #1d1d1d;
	border-right: 0;
	border-left: 0;
}
.tbl_common01 tbody th {
	vertical-align: middle;
	color: #1d1d1d;
	background: #f3f3f3;
}
.tbl_common01 tbody td {
	background: #fff;
}
.tbl_common01 tr:not(:last-child) th{
	border-bottom-color:#1d1d1d
}
.tbl_common01 tr:not(:last-child) td {
	border-bottom-color: #1d1d1d
}
@media(max-width: 767px) {
	.tbl_common01.cell_100sp tbody th {
		border-bottom: 1px solid #1d1d1d;
	}
}


/* bg_contact_common
------------------------------------------------------------------*/
.bg_contact_common{
	padding: calc(50 / var(--break02)) 0;
	background: #1b2a55;
	position: relative;
	z-index: 1;
}
.btn_tel_common{
	max-width: 400px;
	width: 400px;
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.btn_tel_common.border{
	border: 1px solid #1d1d1d;
}
.btn_tel_common .s{
	width: 100%;
	height: 84px;	
	line-height: 1.8;
	letter-spacing: .1em;
	font-size: 18px;
}
.btn_tel_common .s_1{
	display: block;
	width: 100%;
}
.btn_tel_common .s_2_1{
	line-height: 1;
	letter-spacing: .1em;
	font-size: 30px;
}
.btn_tel_common .s2{
	width: 100%;
	height: 36px;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 16px;
	background: #f3f3f3;
	position: relative;
	z-index: 1;
}
.btn_contact_common{
	max-width: 400px;
	width: 400px;
	height: 120px;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 36px;
	color: #fff;
	background: #c9eef6;
	border-radius: 10px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.btn_contact_common::before{
	content: "";
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	margin: auto;
	background: #6ac5d9;
	border-radius: 6px;
	position: absolute;
	inset: 0;
	z-index: -1;
}
.btn_contact_common::after{
	content: "";
	width: 30px;
	height: 30px;
	margin: auto;
	background: url(images/page/arw.png)no-repeat center / contain;
	position: absolute;
	inset: 0 30px 0 auto;
	transition: .5s all;
}
.btn_line_common{
	background: #cdf6f0;
}
.btn_line_common::before{
	background: #7cc1b7;
}
@media(min-width: 768px) {
	.btn_contact_common:hover:after{
		inset: 0 22px 0 auto;
		transition: .5s all;
	}

	.row_contact_common.only{
		width: 400px;
	}
}
@media(min-width: 768px) and (max-width:1380px) {
	.row_contact_common{
		max-width: 100%;
		width: calc(1240 / 1380 * 100vw);
	}
	.btn_tel_common{
		width: calc(400 / 1380 * 100vw);
		border-radius: calc(10 / 1380 * 100vw);
	}
	.btn_tel_common .s{
		height: calc(84 / 1380 * 100vw);
		font-size: calc(18 / 1380 * 100vw);
	}
	.btn_tel_common .s_2_1{
		font-size: calc(30 / 1380 * 100vw);
	}
	.btn_tel_common .s2{
		height: calc(36 / 1380 * 100vw);
		font-size: calc(16 / 1380 * 100vw);
	}
	.btn_contact_common{
		width: calc(400 / 1380 * 100vw);
		height: calc(120 / 1380 * 100vw);
		font-size: calc(36 / 1380 * 100vw);
		border-radius: calc(10 / 1380 * 100vw);
	}
	.btn_contact_common::before{
		width: calc(100% - 20 / 1380 * 100vw);
		height: calc(100% - 20 / 1380 * 100vw);
		border-radius: calc(6 / 1380 * 100vw);
	}
	.btn_contact_common::after{
		width: calc(30 / 1380 * 100vw);
		height: calc(30 / 1380 * 100vw);
		inset: 0 calc(30 / 1380 * 100vw) 0 auto;
	}
	.btn_line_common{
		width: calc(400 / 1380 * 100vw);
		height: calc(120 / 1380 * 100vw);
		border-radius: calc(10 / 1380 * 100vw);
	}

	.row_contact_common.only{
		width: calc(400 / 1380 * 100vw);
	}	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.btn_tel_common{
		width: calc(646 / 750 * 100vw);
		margin: 0 auto calc(30 / 750 * 100vw);
		border-radius: calc(10 / 750 * 100vw);
	}
	.btn_tel_common .s{
		height: calc(100 / 750 * 100vw);
		font-size: calc(24 / 750 * 100vw);
	}
	.btn_tel_common .s_1{
		line-height: 2;
	}
	.btn_tel_common .s_2_1{
		font-size: calc(40 / 750 * 100vw);
	}
	.btn_tel_common .s2{
		height: calc(40 / 750 * 100vw);
		letter-spacing: .1em;
		font-size: calc(20 / 750 * 100vw);
	}
	.btn_contact_common{
		width: calc(646 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		margin: 0 auto calc(30 / 750 * 100vw);
		font-size: calc(40 / 750 * 100vw);
		border-radius: calc(10 / 750 * 100vw);
	}
	.btn_contact_common::before{
		width: calc(100% - 20 / 750 * 100vw);
		height: calc(100% - 20 / 750 * 100vw);
		border-radius: calc(6 / 750 * 100vw);
	}
	.btn_contact_common::after{
		width: calc(30 / 750 * 100vw);
		height: calc(30 / 750 * 100vw);
		inset: 0 15vw 0 auto;
	}
	.btn_line_common{
		margin-bottom: 0;
	}
}

/* cover_parts_contact
------------------------------------------------------------------*/
.btn_tel_common03{
	width: calc(320 / var(--break04));
	background: #fff;
	border-radius: calc(6 / var(--break04)) 0 0 calc(6 / var(--break04));
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.btn_tel_common03 .s{
	width: 100%;
	padding-top: calc(2 / var(--break04));
	height: calc(70 / var(--break04));
	line-height: 1.8;
	letter-spacing: .1em;
	font-size: calc(16 / var(--break04));
}
.btn_tel_common03 .s_1{
	display: block;
	width: 100%;
	font-size: calc(18 / var(--break04));
}
.btn_tel_common03 .s_2_1{
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(26 / var(--break04));
}
.btn_tel_common03 .s2{
	width: 100%;
	height: calc(30 / var(--break04));
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(16 / var(--break04));
	background: #f3f3f3;
	position: relative;
	z-index: 1;
}
.btn_contact_common3{
	width: calc(150 / var(--break04));
	height: calc(100 / var(--break04));
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(24 / var(--break04));
	color: #fff;
	background: #6ac5d9;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.btn_contact_common3::before{
	content: "";
	width: calc(100% - 8 / var(--break04));
	height: calc(100% - 8 / var(--break04));
	margin: auto;
	border: 1px solid #fff;
	position: absolute;
	inset: 0;
	z-index: -1;
}
.btn_contact_common3::after{
	content: "";
	width: calc(20 / var(--break04));
	height: calc(20 / var(--break04));
	margin: auto;
	background: url(images/page/arw.png)no-repeat center / contain;
	position: absolute;
	inset: auto 0 calc(10 / var(--break04));
	transition: .5s all;
}
.btn_line_common03{
	background: #7cc1b7;
}
@media(min-width: 768px) and (max-width:1599px) {
	.btn_tel_common03{
		width: calc(300 / var(--break04));
	}
	.btn_tel_common03 .s{
		letter-spacing: .08em;
	}
	.btn_tel_common03 .s_2_1{
		letter-spacing: .08em;
	}
	.btn_tel_common03 .s2{
		letter-spacing: .08em;
	}
	.btn_contact_common3{
		width: calc(140 / var(--break04));
		letter-spacing: .08em;
	}
}
@media(max-width: 767px) {

}
/* cover_parts_contact
------------------------------------------------------------------*/
.cover_parts_contact{
	padding: calc(70 / var(--break03)) 0  calc(50 / var(--break03));
	position: relative;
	z-index: 1;
}
.cover_parts_contact::before{
	content: "";
	width: calc(1590 / 1920 * 100vw);
	height: calc(181 / 1920 * 100vw);
	margin: auto;
	background: url(images/page/CONTACT.png)no-repeat center / contain;
	position: absolute;
	inset: calc(48 / 1920 * 100vw) 0 auto;
	z-index: -2;
}
.cover_parts_contact .ballon_parts_contact{
	width: calc(321 / var(--break04));
	height: calc(445 / var(--break04));
	margin: auto;
	position: absolute;
	bottom: 0;
	right: calc(100 / var(--break05));
	z-index: -1;
}
.cover_parts_contact .ballon_parts_contact02{
	width: calc(149 /1920 * 100vw);
	height: calc(170 /1920 * 100vw);
	margin: auto;
	position: absolute;
	bottom: -40px;
	left: calc(130 / var(--break05));
	z-index: 1;
}
.box_parts_contact{
	width: 30%;
	padding: calc(18 / var(--break03)) calc(22 / var(--break03));
	text-align: center;
	color: #fff;
	background: #1b2a55;
	border-radius: calc(10 / var(--break03));
}
.box_parts_contact .copy{
	margin-bottom: calc(10 / var(--break03));
	line-height: 1.5;
	font-size: calc(30 / var(--break03));
}
.box_parts_contact .copy02{
	margin-bottom: calc(12.5 / var(--break03));
	padding: calc(5 / var(--break03));
	line-height: 1.5;
	font-size: calc(20 / var(--break03));
	color: #1b2a55;
	background: #fff;
	border-radius: calc(20 / var(--break03));
}
.box_parts_contact .copy03{
	line-height: 1.6;
}
.col_list_parts_contact{
	max-width: 1020px;
	width: 67.5%;
}
.list_parts_contact li{
	max-width: 500px;
	width: 49%;
	line-height: 1.6;
	padding: calc(11.5 / var(--break03));
	padding-left: calc(58 / var(--break03));
	background: #fff;
	border: solid 2px #d7d4d4;
	border-radius: calc(30 / var(--break03));
	position: relative;
	z-index: 1;
}
.list_parts_contact > li::before{
	content: "";
	width: calc(36 / var(--break03));
	height: calc(36 / var(--break03));
	margin: auto;
	background: url(images/page/check.svg)no-repeat center / contain;
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(12 / var(--break03));
}

.bg_contact_common02{
	padding: calc(80 / var(--break02)) 0;
	background: url(images/page/bg_contact_common.jpg)no-repeat center / cover;
}
.row_contact_common02{
	max-width: 100%;
	width: calc(1500 / var(--break03));
	margin-left: auto;
	margin-right: auto;
}
.btn_tel_common02{
	max-width: 480px;
	width: calc(480 / var(--break03));
	background: #fff;
	border-radius: calc(10 / var(--break03));
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.btn_tel_common02 .s{
	width: 100%;
	height: calc(100 / var(--break03));	
	line-height: 1.8;
	letter-spacing: .1em;
	font-size:  calc(24 / var(--break03));
}
.btn_tel_common02 .s_1{
	display: block;
	width: 100%;
	margin-bottom: calc(8 / var(--break03));
	letter-spacing: .1em;
	font-size: calc(18 / var(--break03));
}
.btn_tel_common02 .s_2_1{
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(40 / var(--break03));
}
.btn_tel_common02 .s2{
	width: 100%;
	height: calc(40 / var(--break03));
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(16 / var(--break03));
	background: #f3f3f3;
	position: relative;
	z-index: 1;
}
.btn_contact_common02{
	max-width: 480px;
	width: calc(480 / var(--break03));
	height: calc(140 / var(--break03));
	line-height: 1;
	letter-spacing: .1em;
	font-size: calc(40 / var(--break03));
	color: #fff;
	background: #c9eef6;
	border-radius: calc(10 / var(--break03));
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.btn_contact_common02::before{
	content: "";
	width: calc(100% - 20 / var(--break03));
	height: calc(100% - 20 / var(--break03));
	margin: auto;
	background: #6ac5d9;
	border-radius: calc(6 / var(--break03));
	position: absolute;
	inset: 0;
	z-index: -1;
}
.btn_contact_common02::after{
	content: "";
	width: calc(30 / var(--break03));
	height: calc(30 / var(--break03));
	margin: auto;
	background: url(images/page/arw.png)no-repeat center / contain;
	position: absolute;
	inset: 0 calc(30 / var(--break03)) 0 auto;
	transition: .5s all;
}
.btn_line_common02{
	background: #cdf6f0;
}
.btn_line_common02::before{
	background: #7cc1b7;
}
@media(min-width: 768px) {
	.list_parts_contact > li:nth-of-type(n + 3) {
        margin-top: calc(20 / var(--break03));
    }
}
@media(min-width: 768px) and (max-width:1799px) {
	.cover_parts_contact .ballon_parts_contact02{
		bottom: -90px;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.copy_parts_contact {
		margin-bottom: var(--size80px);
	}
	.list_parts_contact li{
		letter-spacing: .08em;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.copy_parts_contact {
		margin-bottom: var(--size100px);
	}
	.cover_parts_contact .ballon_parts_contact02{
		bottom: -60px;
	}
	.cover_parts_contact .ballon_parts_contact{
		width: calc(321 / 1700 * 100vw);
		height: calc(445 / 1700 * 100vw);
	}
	.list_parts_contact li{
		font-size: calc(20 / var(--break03));
	}
	.btn_tel_common02{
		width: calc(490 / var(--break04));
		border-radius: calc(10 / var(--break04));
	}
	.btn_tel_common02 .s{
		height: calc(100 / var(--break04));	
		font-size:  calc(24 / var(--break04));
	}
	.btn_tel_common02 .s_1{
		margin-bottom: calc(8 / var(--break04));
		font-size: calc(18 / var(--break04));
	}
	.btn_tel_common02 .s_2_1{
		font-size: calc(40 / var(--break04));
	}
	.btn_tel_common02 .s2{
		height: calc(40 / var(--break04));
		font-size: calc(16 / var(--break04));
	}
	.btn_contact_common02{
		width: calc(490 / var(--break04));
		height: calc(140 / var(--break04));
		font-size: calc(40 / var(--break04));
		border-radius: calc(10 / var(--break04));
	}
	.btn_contact_common02::before{
		width: calc(100% - 20 / var(--break04));
		height: calc(100% - 20 / var(--break04));
		border-radius: calc(6 / var(--break04));
	}
	.btn_contact_common02::after{
		width: calc(30 / var(--break04));
		height: calc(30 / var(--break04));
		inset: 0 calc(30 / var(--break04)) 0 auto;
	}
}
@media(max-width: 767px) {
	.cover_parts_contact{
		padding: 10vw 0  calc(60 / 750 * 100vw);
	}
	.cover_parts_contact::before{
		width: calc(672 / 750 * 100vw);
		height: calc(93 / 750 * 100vw);
		background: url(images/page/CONTACT_sp.png)no-repeat center / contain;
		inset: 19vw 0 auto;
	}
	.cover_parts_contact .ballon_parts_contact{
		display: none;		width: calc(192 /750 * 100vw);
		height: calc(266 /750 * 100vw);
		top: calc(600 / 750 * 100vw);
		bottom: auto;
		right:  5vw;
	}
	.cover_parts_contact .ballon_parts_contact02{
		width: calc(120 /750 * 100vw);
		height: calc(136 /750 * 100vw);
		top: calc(260 / 750 * 100vw);
		bottom: auto;
		left: 4vw;
	}
	.copy_parts_contact {
		line-height: 1.7;
		letter-spacing: 0;
		font-size: calc(40 / 750 * 100vw);
	}
	.copy_parts_contact .fz50{
		letter-spacing: 0;
		font-size: calc(50 / 750 * 100vw);
	}
	.box_parts_contact{
		width: calc(646/ 750 * 100vw);
		padding: 4vw;
		margin: 0 auto 10vw ;
	}
	.box_parts_contact .copy{
		margin-bottom: 2vw;
		font-size: calc(40/ 750 * 100vw);
	}
	.box_parts_contact .copy02{
		width: calc(546 / 750 * 100vw);
		margin: 0 auto 2vw;
		padding: 1vw;
		font-size: calc(28/ 750 * 100vw);
		border-radius: calc(25/ 750 * 100vw);
	}
	.box_parts_contact .copy03{
		font-size: calc(28/ 750 * 100vw);
	}
	.col_list_parts_contact{
		width: 100%;
		position: relative;
		z-index: 1;
	}
	.col_list_parts_contact::before{
		content: "";
		width: calc(192 /750 * 100vw);
		height: calc(266 /750 * 100vw);
		margin: auto;
		background: url(images/page/ballon_contact01.png)no-repeat center / contain;
		position: absolute;
		bottom: 95%;
		right:  0;
	}
	.list_parts_contact li{
		width: 100%;
		margin-bottom: calc(30/ 750 * 100vw);
		letter-spacing: 0;
		padding: 1.65vw;
		padding-left: 11vw;
		font-size: calc(32.5/750 * 100vw);
		border-width: 1px;
		border-radius: calc(40 /750 * 100vw);
	}
	.list_parts_contact li:last-child{
		margin-bottom: 0;
	}
	.list_parts_contact > li::before{
		left: calc(22 /750 * 100vw);
	}
	.bg_contact_common02{
		background: url(images/page/bg_contact_common_sp.jpg)no-repeat center / cover;
	}
	.row_contact_common02{
		width: calc(646 /750 * 100vw);
	}
	.btn_tel_common02{
		width: 100%;
		margin-bottom: calc(30/750 * 100vw);
	}
	.btn_tel_common02 .s{
		padding-top: 1vw;
	}
	.btn_tel_common02 .s_1{
		margin-bottom: .5vw;
		font-size: calc(24 /750 * 100vw);
	}
	.btn_tel_common02 .s2{
		font-size: calc(20 /750 * 100vw);
	}
	.btn_contact_common02{
		width: 100%;
		margin-bottom: calc(30/750 * 100vw);
	}
	.btn_contact_common02:last-child{
		margin-bottom: 0;
	}
	.btn_contact_common02::after{
		inset: 0 calc(100 / 750 * 100vw) 0 auto;
	}
}

/* row_banner_common
------------------------------------------------------------------*/
.row_banner_common > .banner {
	display: block;
	max-width: 600px;
	width: 48.5%;
}
/* @media(min-width: 768px) and (max-width:1299px) {} */
@media(max-width: 767px) {
	.row_banner_common > .banner {
		width: calc(600 / 750 * 100vw);
		margin: 0 auto calc(50 / 750 * 100vw);
	}
	.row_banner_common > .banner:last-child {
		margin-bottom: 0;
	}
}

/* box_qa_common01
------------------------------------------------------------------*/
.box_qa_common01 {
    border: 0;
    margin-bottom: calc(65 / var(--break02));
}
.box_qa_common01:last-child {
    margin-bottom: 0;
}
.box_qa_common01 .box_q {
	position: relative;
}
.box_qa_common01 .box_q .box {
	width: calc(80 / var(--break02));
    height: calc(80 / var(--break02));
	font-family: "bc-alphapipe", sans-serif;
	font-weight: 300;
	font-style: normal;
    font-size: calc(40 / var(--break02));
    color: #fff;
	background: #0caacd;
	border: 1px solid #fff;
	border-radius: 100%;
	position: absolute;
	top: calc(-34 / var(--break02));
    left: calc(-16 / var(--break02));
}
.box_qa_common01 .box_q .box span {
    padding-bottom: 0 !important;
}
.box_qa_common01 .box_q .txt {
	width: 100%;
	font-size: 111.1%;
	color: #fff;
	background: #6ac5d9;
	border-radius: calc(20 / var(--break02));
}
.box_qa_common01 .box_a {
	margin-top: calc(10 / var(--break02));
	padding: calc(38 / var(--break02)) 4% ;
	border-radius: calc(20 / var(--break02));
	background: #fff;
	position: relative;
	z-index: 1;
}
.box_qa_common01 .box_q .txt .icn{
    width: calc(20 / var(--break04));
    height: calc(20 / var(--break04));
}
.box_qa_common01 .box_q .txt .icn:before {height: 2px;}
.box_qa_common01 .box_q .txt .icn::after {width: 2px;}
.box_qa_common01 .box_q .txt .icn:before {
    background: #ffffff;
}
.box_qa_common01 .box_q .txt .icn:after {
    background: #ffffff;
}

.box_qa_common01:nth-of-type(2n) .box_q .box {
	background: #41bfad;
}
.box_qa_common01:nth-of-type(2n) .box_q .txt {
	background: #7cc1b7;
}
@media (min-width: 768px) {
    .box_qa_common01 .box_q .txt {
        width: 100%;
        padding: calc(9.5 / var(--break02)) calc(50 / var(--break02)) calc(9.5/ var(--break02)) calc(90 / var(--break02));
    }
}

@media (max-width: 767px) {
    .box_qa_common01 {
        margin-bottom: calc(60/ 750 * 100vw);
    }
    .box_qa_common01 .box_q .box {
        width: calc(80 / 750 * 100vw) !important;
        font-size: calc(50 / 750 * 100vw);
    }
	
	.box_qa_common01 .box_q .txt .icn:before{height: 1px;}
	.box_qa_common01 .box_q .txt .icn::after{width: 1px;}

    .box_qa_common01 .box_q .txt {
        line-height: 1.6;
        letter-spacing: 0;
        padding: 1.5vw 10vw 1.5vw 12vw;
        font-size: calc(36 / 750 * 100vw);
    }
	.box_qa_common01 .box_a{
		margin-top: calc(30 / 750 * 100vw);
	}
	.box_qa_common01 .box_a .box {
		width: var(--size80px);
		height: var(--size80px);
        font-size: calc(50 / 750 * 100vw);
	}
    .box_qa_common01 .box_a .wrap {
        width: 100%;
        margin-right: 0;
    }

	.box_qa_common01 .box_q .txt .icn {
		top: 0;
		bottom: 0;
		right: 3.5vw;
	}
}

/* リスク・副作用
------------------------------------------------------------------*/
.box_risk01 .box {
	overflow: hidden;
	max-height: 160px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	background: #ffffff;
	padding-right: calc(50 / var(--break) * 100vw);
}
.box_invisalign {
	max-width: 1000px;
	border: ;
}
.box_invisalign .box {
	overflow: hidden;
	max-height: 180px;
	height: auto;
	touch-action: auto !important;
	position: relative;
	padding-right: calc(50 / var(--break) * 100vw);
}
/* パーフェクトスクロールバー */
.risk .ps__thumb-y, .box_invisalign .ps__thumb-y {
	background: #7cc1b7 !important;
	right: 0px !important;
	width: 4px !important;
}
.risk .ps--active-x > .ps__rail-x,
.risk .ps--active-y > .ps__rail-y, .box_invisalign .ps--active-x > .ps__rail-x,
.box_invisalign .ps--active-y > .ps__rail-y {
	background: none !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1!important;
}
.risk .ps .ps__rail-x.ps--clicking, .risk .ps .ps__rail-x:focus, .risk .ps .ps__rail-x:hover, .risk .ps .ps__rail-y.ps--clicking, .risk .ps .ps__rail-y:focus, .risk .ps .ps__rail-y:hover, .box_invisalign .ps .ps__rail-x.ps--clicking, .box_invisalign .ps .ps__rail-x:focus, .box_invisalign .ps .ps__rail-x:hover, .box_invisalign .ps .ps__rail-y.ps--clicking, .box_invisalign .ps .ps__rail-y:focus, .box_invisalign .ps .ps__rail-y:hoverr {
	opacity: 1!important;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 751px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.box_risk01 .box {
		padding-right: 4vw;
		max-height: calc(420 / var(--break) * 100vw);
	}
	.box_risk01 .ttl, .box_invisalign .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.box_risk01 .txt {
		letter-spacing: 0;
	}
	.sp.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .sp.risk .ps-container > .ps-scrollbar-y-rail, .box_invisalign .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .box_invisalign .ps-container > .ps-scrollbar-y-rail {
		right: 0!important;
		width: 2px!important;
	}
}


/* 採用情報 recruit
------------------------------------------------------------------*/
.tbl_guideline01:not(:last-child) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.tbl_guideline01 table {
	border-color: ;
}
.tbl_guideline01 th {
	background: ;
}
.tbl_guideline01 tr:not(:last-child) td {
	border-bottom-color: ;
}
.tbl_form01 th {
	color: #333333;
}
.tbl_form01 td input,
.tbl_form01 td textarea {
	background-color: #eee;
}
.tbl_form01 .require span:after {
	color: #fff;
	background-color: #333;
}
.btn_submit input {
	border: none;
	background: #;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.tbl_guideline01 td a {
		text-decoration: underline;
		color: var(--guideline-color);
	}
}

/* お問い合わせ contact
------------------------------------------------------------------*/
.grecaptcha-badge { visibility: hidden; }
@media(min-width: 768px) and (max-width:1599px) {
	
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	
}

/* ブログ blog
------------------------------------------------------------------*/
#sidebar {
	width: 24%;
}
#sidebar h4 {
	background: #959595;
	color: #fff;
	font-weight: 500;
	font-size: 1.25rem;
	line-height: calc(40 / var(--break) * 100vw);
	margin-bottom: calc(4 / var(--break) * 100vw);
	text-align: center;
}
#sidebar caption {
	margin-bottom: calc(5 / var(--break) * 100vw);
}
#wp-calendar {
	width: 100%;
	margin-bottom: calc(10 / var(--break) * 100vw);
}
#wp-calendar thead th {
	background: #eee;
	border: 1px solid #eee;
	border-right-color: #eee;
	font-size: .8125rem;
	font-weight: normal;
}
#wp-calendar tbody td {
	border: 1px solid #eee;
	text-align: center;
	font-size: .875rem;
	line-height: 1.8;
}
#wp-calendar tbody td a {
	color: #959595;
	text-decoration: underline;
}
.wp-calendar-nav{
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin-bottom: calc(60 / var(--break) * 100vw);
	line-height: 1.5;
}
.wp-calendar-nav-prev{padding-left: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav-next{padding-right: calc(10 / var(--break) * 100vw);}
.wp-calendar-nav a{
	padding-bottom: calc(3 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
#sidebar ul li {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
#sidebar ul li a {
	border-bottom: 1px solid #333;
	padding-bottom: calc(4 / var(--break) * 100vw);
	line-height: 2.1;
}
.post_main {
	width: 71%;
}
.navigation {
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.navigation li {
	width: calc(170 / var(--break) * 100vw);
}
.navigation .navitop {
	text-align: center;
}
.navigation .naviright {
	text-align: right;
}
.navigation li a {
	padding-bottom: calc(4 / var(--break) * 100vw);
	border-bottom: 1px solid #333;
}
.post_content img {
	max-width: 100%;
	height: auto;
}
.date_single {
	display: block;
	text-align: right;
	font-size: .8125rem;
	margin-top: calc(-30 / var(--break) * 100vw);
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.post_content {
	line-height: 1.75;
}
.thmb {
	width: calc(120 / var(--break) * 100vw);
}
.thmb img {
	height: calc(120 / var(--break) * 100vw);
	object-fit: cover;
}
.thmb a:hover .img_thmb {
	opacity: .75;
}
.txt_post {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.page_main section.blog_archive {
	padding-bottom: calc(35 / var(--break) * 100vw);
	border-bottom: 1px solid #959595;
}
.post_main section.blog_archive:not(:last-child) {
	margin-bottom: calc(40 / var(--break) * 100vw);
}
.txt_post a {
	color: inherit;
}
.txt_post a:hover {
	text-decoration: underline;
}
.txt_post h4 {
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1.7;
	font-size: 1.25rem;
	letter-spacing: .1em;
}
.blog_archive .txt_post .date {
	color: #959595;
}
.txt_post .txt_excerpt {
	line-height: 1.75;
	margin-top: calc(8 / var(--break) * 100vw);
}
.txt_post .txt_excerpt .more {
	color: #aaa;
	text-decoration: underline;
}
.page_main .wp-pagenavi {
	margin-top: calc(60 / var(--break) * 100vw);
	text-align: center;
	font-size: .875rem;
}
.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #959595;
	color: #959595;
	padding: 0 calc(10 / var(--break) * 100vw);
	margin: calc(2 / var(--break) * 100vw);
	display: inline-block;
}
.page_main .wp-pagenavi span.pages {
	padding: 0 calc(11 / var(--break) * 100vw);
}
.page_main .wp-pagenavi a:hover, .page_main .wp-pagenavi span.current {
	border-color: #959595;
	background: #959595;
	color: #fff;
}
.page_main .wp-pagenavi span.current {
	font-weight: normal;
}
.post_content li {
	list-style: inherit;
	margin-left: 1.5em;
}
.post_content > h4,.post_content > h5{
	line-height: 1.6;
	font-size: 1.25rem;
	letter-spacing: 0.1em;
	margin-bottom: calc(35 / var(--break) * 100vw );
}
#sidebar .category h4{
	margin-bottom: calc(20 / var(--break) * 100vw );
}
#sidebar .category ul{
	gap:calc(10 / var(--break) * 100vw ) 3%;
}
#sidebar .category ul li{
	font-size: 1rem;
	width: auto;
	overflow: visible;
	white-space:normal;
}
#sidebar .category ul li a{
	border: 1px solid #959595;
	background: #959595;
	color: #fff;
	padding: calc(4 / var(--break) * 100vw ) calc(8 / var(--break) * 100vw );
	line-height: 1.6;
}
#sidebar .category ul li a.is-active{
	background: #fff;
	color: #959595;
}

@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.page_main {
		display: block!important;
	}
	#sidebar {
		width: 100%;
	}
	#sidebar h4 {
		line-height: calc(80 / var(--break) * 100vw);
	}
	.post_main {
		width: 100%;
		margin-bottom: 20vw;
	}
	.thmb {
		width: calc(210 / var(--break) * 100vw);
	}
	.thmb img {
		height: calc(210 / var(--break) * 100vw);
	}
	.txt_post {
		width: calc(100% - calc(240 / var(--break) * 100vw));
	}
	.txt_post h4 {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.navigation li {
		width: calc(200 / 750 * 100vw);
	}
	.page_main .wp-pagenavi span.pages,.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
		padding: .5vw 2vw;
		margin: calc(4 / 750 * 100vw);
	}
	.page_main section.blog_archive {
		padding-bottom: 6vw;
	}
	.post_main section.blog_archive:not(:last-child) {
		margin-bottom: 6vw;
	}
	.post_main .wp-pagenavi {
		margin-top: 12vw;
		display:-webkit-box;/*--- Androidブラウザ用 ---*/
		display:-ms-flexbox;/*--- IE10 ---*/
		display: -webkit-flex;/*--- safari（PC）用 ---*/
		display:flex;
		-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
		-ms-flex-pack:justify;/*--- IE10 ---*/
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap; /* Safari */
		flex-wrap: wrap;
	}
	.single_post > h3 {
		letter-spacing: 0;
		font-size: 1.1875rem;
	}
	.post_content > h4,.post_content > h5{
		letter-spacing: 0;
		font-size: 1.125rem;
	}
	#sidebar .category ul li a{
		border-radius: calc(8 / var(--break)* 100vw);
		padding: calc(4 / var(--break)* 100vw) calc(14 / var(--break)* 100vw);
	}
}


/* フォーマット format
------------------------------------------------------------------*/
.format {
	padding-bottom: calc(140 / var(--break) * 100vw);
}
.wrap_format01:not(:last-of-type) {
	margin-bottom: calc(100 / var(--break) * 100vw);
}
.img_format01 {
	max-width: 1000px;
}
.row_format01 .col_img {
	width: 46%;
	max-width: 570px;
}
.row_format01 .col_txt {
	width: 50%;
}
.list_format01 li {
	max-width: 425px;
}
.row_format03 .col_img {
	width: 29%;
	max-width: 350px;
}
.row_format03 .col_txt {
	width: 67%;
}
.row_format03 .copy {
	border-bottom: 1px solid #333;
}
.row_format03 .copy:before {
	content: "";
	position: absolute;
	width: calc(20 / var(--break) * 100vw);
	height: calc(20 / var(--break) * 100vw);
	left: 0;
	top: .4em;
	background: #333;
}
.txt_format01 {
	max-width: 1000px;
}
.tbl_fee {
	max-width: 1000px;
}
.tbl_fee table {
	border-color: #;
}
.tbl_fee th {
	background: #;
}
.tbl_fee thead th {
	background: #;
	text-align: center;
}
.tbl_fee thead tr th:not(:last-of-type) {
	border-right: 1px solid #fff;
}
.tbl_fee tr:not(:last-child) td {
	border-bottom-color: #;
}
.tbl_fee tbody tr td:not(:last-of-type) {
	border-right: 1px solid #;
}
.tbl_fee01 tbody th {
	text-align: center;
}
.wrap_format01 .box_flow:last-of-type:before {
	display: none;
}
.box_format03 .col_img {
	width: 31%;
	max-width: 345px;
}
.box_format03 .col_txt {
	width: 65%;
}
.row_format04 .col {
	width: 31.8%;
	max-width: 394px;
	margin-right: 2.3%;
}
.row_format04 .col:nth-child(3n), .row_format04 .col:last-child {
	margin-right: 0;
}
.row_format04 .col:not(:nth-child(-n+3)) {
	margin-top: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa_common01 {
	border: none;
	margin-bottom: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa_common01 .box_a .box {
	width: calc(60 / var(--break) * 100vw);
	height: calc(60 / var(--break) * 100vw);
	left: 0;
	top: 0;
}
.wrap_format01 .box_qa_common01 .box_a {
	padding-top: calc(30 / var(--break) * 100vw);
	padding-left: calc(100 / var(--break) * 100vw);
}
.box_format04 .ttl {
	font-weight: 300;
	height: calc(50 / var(--break) * 100vw);
}
.list_format02 li:not(:first-child) {
	margin-top: calc(14 / var(--break) * 100vw);
}
.list_format02 .year {
	width: calc(140 / var(--break) * 100vw);
}
.list_format02 .txt {
	width: calc(100% - calc(140 / var(--break) * 100vw));
}
.risk_format {
	border: 1px solid #333;
}
.risk_format .box{
	overflow-y: scroll;
	max-height: 280px;
	scrollbar-color: #333 #fff;
    scrollbar-width: thin;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.format {
		padding-bottom: 17vw;
	}
	.wrap_format01:not(:last-of-type) {
		margin-bottom: 20vw;
	}
	.img_format01 {
		max-width: 100%;
	}
	.box_format01 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.list_format01 li {
		max-width: 100%;
	}
	.row_format03 .copy {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.row_format03 .copy:before {
		top: .55em;
	}
	.txt_format01 {
		max-width: calc(646 / var(--break) * 100vw);
	}
	.tbl_fee {
		max-width: 100%;
	}
	.tbl_fee01 tbody th {
		text-align: left;
	}
	.box_format03 {
		display: block;
	}
	.box_format03 .copy {
		font-size: 1.125rem;
	}
	.row_format04 {
		display: block;
	}
	.row_format04 .col {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin: 0 auto!important;
	}
	.row_format04 .col:not(:first-child) {
		margin-top: calc(60 / var(--break) * 100vw);!important;
	}
	.row_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.wrap_format01 .box_qa_common01 .box_a .box {
		width: calc(80 / var(--break) * 100vw);
		height: calc(80 / var(--break) * 100vw);
		font-size: 1.5625rem;
	}
	.tbl_format01.js-scrollable table {
		width: calc(1200 / var(--break) * 100vw);
		font-size: .875rem;
	}
	.img_format02 {
		max-width: calc(500 / var(--break) * 100vw);
	}
	.name_format .job {
		font-size: .875rem;
		letter-spacing: 0;
	}
	.name_format .ja {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.box_format04 .ttl {
		font-size: 1.125rem;
		letter-spacing: 0;
		height: calc(80 / var(--break) * 100vw);
	}
	.list_format02 li:not(:first-child) {
		margin-top: 2vw;
	}
	.list_format02 .year {
		width: calc(200 / var(--break) * 100vw);
	}
	.list_format02 .txt {
		width: calc(100% - calc(200 / var(--break) * 100vw));
	}
}