@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
.content_low .inner, .main_page .inner {
	max-width: 1000px;
}
.content_low {
	padding: calc(100 / 1920 * 100vw) 0 calc(200 / 1920 * 100vw);
}
.main_page {
	background: url("images/page/bg_ttl_page.jpg")no-repeat center / cover;
	height: calc(500 / 1920 * 100vw);
}
.page_main section:not(:last-child) {
	margin-bottom: calc(100 / 1920 * 100vw);
}
.hdg2 .ja {
	font-size: 277.78%;
	letter-spacing: .1em;
	display: block;
	line-height: 1.5;
}
.hdg2 .en {
	font-size: 188.89%;
	letter-spacing: .1em;
	display: block;
	line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 1599px) {
	.content_low {
		padding: calc(100 / 1599 * 100vw) 0 calc(200 / 1599 * 100vw);
	}
	.main_page {
		height: calc(500 / 1599 * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: calc(100 / 1599 * 100vw);
	}
}
@media only screen and (min-width: 768px) and (max-width: 1299px) {
	.content_low {
		padding: calc(100 / 1299 * 100vw) 0 calc(200 / 1299 * 100vw);
	}
	.main_page {
		height: calc(500 / 1299 * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: calc(100 / 1299 * 100vw);
	}
}
@media only screen and (max-width: 767px) {
	.content_low {
		padding: 13vw 0 25vw;
	}
	.content_low .inner, .main_page .inner {
		max-width: calc(702 / 750 * 100vw);
	}
	.page_main section:not(:last-child) {
		margin-bottom: 20vw;
	}
	.main_page {
		background-image: url("images/page/bg_ttl_page_sp.jpg");
		height: calc(500 / 750 * 100vw);
		padding: 0;
	}
	.hdg2 .ja {
		font-size: 156.25%;
	}
	.hdg2 .en {
		font-size: 106.25%;
	}
	.col_img {
		text-align: center;
	}
}


/* copy_common01
------------------------------------------------------------------*/
.copy_common01{
	padding: min(calc(21.5 / 1300 * 100vw), 21.5px);;
	line-height: 1.6;
	letter-spacing: .1em;
	font-size: min(calc(36 / 1300 * 100vw), 36px);
	text-align: center;
	color: #fff;
	background: #254062;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.copy_common01{
		padding: 2.15vw;
		letter-spacing: 0;
		font-size: calc(40 / 750 * 100vw);
	}
}
/* tbl_common01
------------------------------------------------------------------*/
.tbl_common01 table{
	border: 1px solid #254062;
}
.tbl_common01 th{background: #254062;}
.tbl_default tr:not(:last-child) td{border-bottom-color: #254062;}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {

}


/* btn_tel_common01
------------------------------------------------------------------*/
.btn_tel_common01{
	max-width: 380px;
	max-height: 100px;
	width: calc(380 / 1150 * 100vw);
	height: calc(100 / 1100 * 100vw);
	padding: 2% 3.5% 0;
	background: #fff;
}
.btn_tel_common01 .s01{
	display: block;
	margin-bottom: min(calc(10 / 1000 * 100vw), 10px);
	line-height: 1;
	font-size: min(calc(14 / 1000 * 100vw), 14px);
}
.btn_tel_common01 .s02{
	line-height: 1;
	letter-spacing: 0;
	padding-left: min(calc(35 / 1111 * 100vw), 35px);
	font-size: min(calc(30 / 1111 * 100vw), 30px);
	color: #254062;
}
.btn_tel_common01 .s02::before{
	content: "";
	max-width: 24px;
	max-height: 24px;
	width: calc(24 / 1100 * 100vw);
	height: calc(24 / 1100 * 100vw);
	background: url(images/page/icn_tel01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 0; bottom: 0;
	left: 0;
}
.btn_tel_common01 .col_box{
	max-width: 110px;
	letter-spacing: 0;
	line-height: 1.5;
	width: calc(110 / 1100 * 100vw);;
	font-size: min(calc(14 / 1000 * 100vw), 14px);
	background: #f0f0f0;
}




.btn_tel_common02{
	max-width: 360px;
	max-height: 80px;
	width: calc(360 / 1150 * 100vw);
	height: calc(80 / 1100 * 100vw);
	padding: 2% 3.5% 0;
	color: #254062;
	background: #fff;
}
.btn_tel_common02 .deco{
	line-height: 1;
	letter-spacing: 0;
	padding-left: min(calc(35 / 1111 * 100vw), 35px);
	font-size: min(calc(35 / 1111 * 100vw), 35px);
}
.btn_tel_common02 .deco::before{
	content: "";
	max-width: 33px;
	max-height: 33px;
	width: calc(33 / 1100 * 100vw);
	height: calc(33 / 1100 * 100vw);
	background: url(images/page/icn_tel01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 0; bottom: 0;
	left: -12.5px;
}

@media(min-width: 768px){
	.btn_tel_common01.v2{
		max-width: 530px;
		max-height: 140px;
		width: calc(530 / 1300 * 100vw);
		height: calc(140 / 1280 * 100vw);
		padding: .25% 2% 0  2.25%;
	}
	.btn_tel_common01.v2 .s01{
		margin-bottom: min(calc(10 / 1000 * 100vw), 10px);
		font-size: min(calc(19.5 / 1000 * 100vw), 19.5px);
	}
	.btn_tel_common01.v2 .s02{
		padding-left: min(calc(45 / 1300 * 100vw), 45px);
		font-size: min(calc(42 / 1300  * 100vw), 42px);
	}
	.btn_tel_common01.v2 .s02::before{
		max-width: 30px;
		max-height: 30px;
		width: calc(30 / 1100 * 100vw);
		height: calc(30 / 1100 * 100vw);
	}
	.btn_tel_common01.v2 .col_box{
		max-width: 155px;
		letter-spacing: 0;
		line-height: 1.5;
		width: calc(155 / 1300 * 100vw);
		font-size: min(calc(18 / 1200 * 100vw), 18px);
		background: #f0f0f0;
	}
}
@media(min-width: 768px) and (max-width:1200px) {
	.btn_tel_common01{padding: 1% 2% 0;}
}
@media(max-width: 767px) {
	.btn_tel_common01{
		width: calc(650 / 750 * 100vw);
		height: calc(172 / 750 * 100vw);
		padding: 2% 5% 0;
	}
	.row_conversion01 .btn_tel_common01 {
		max-width: 650px;
		max-height: 150px;
	}
	.btn_tel_common01 .s01{
		margin-bottom: 2vw;
		font-size:calc(24 / 750 * 100vw);
	}
	.btn_tel_common01 .s02{
		line-height: 1;
		letter-spacing: 0;
		padding-left: 7.5vw;
		font-size: calc(51 / 750 * 100vw);
	}
	.btn_tel_common01 .s02::before{
		width: calc(38 / 750 * 100vw);
		height: calc(38 / 750 * 100vw);
		max-width: 38px;
    	max-height: 38px;
		top: 0; bottom: 0;
		left: 0;
	}
	.btn_tel_common01 .col_box{
		letter-spacing: 0;
		line-height: 1.5;
		width: calc(190 / 750 * 100vw);;
		font-size: calc(22.5 / 750 * 100vw);
	}
	.row_conversion01 .btn_tel_common01 .col_box {
		max-width: 190px;
		padding: calc(15 / 750 * 100vw) 0;
		position: absolute;
		right: calc(50 / 750* 100vw);
	}

	.btn_tel_common02{
		max-width: 600px;
    	max-height: 100px;
		width: calc(600 / 750 * 100vw);
		height: calc(100 / 750 * 100vw);
		padding: 1% 3.5% 0;
	}
	.btn_tel_common02 .deco{
		padding-left:  calc(70 / 750 * 100vw);
		font-size:  calc(54 / 750 * 100vw);
	}
	.btn_tel_common02 .deco::before{
		max-width: 51px;
    	max-height: 51px;
		width: calc(51 / 750 * 100vw);
		height: calc(51 / 750 * 100vw);
		left: -1vw;
	}
}
/* btn_web_common
------------------------------------------------------------------*/
.btn_web_common01{
	max-width: 100px;
	max-height: 100px;
	width: calc(100 / 1100 * 100vw);
	height: calc(100 / 1100 * 100vw);
	font-size: min(calc(16 / 1000 * 100vw), 16px);
	color: #fff;
	background: #254062;
}
.btn_web_common01 .deco{
	display: inline-block;
	padding-top: min(calc(37.5 / 1100 * 100vw), 37.5px);
}
.btn_web_common01 .deco::before{
	content: "";
	max-width: 30.5px;
	max-height: 30px;
	height: calc(30.5 / 1024 * 100vw);
	width: calc(30 / 1024 * 100vw);
	background: url(images/page/icn_web01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 12.5%;
	left: 0; right: 0;
	z-index: 1;
}

.btn_web_common02{
	max-width: 320px;
	max-height: 140px;
	width: calc(320 / 1480 * 100vw);
	height: calc(140 / 1280 * 100vw);
	font-size: min(calc(28 / 1000 * 100vw), 28px);
	color: #fff;
	background: #254062;
}
.btn_web_common02::after {
	border-width: min(calc(8 / 1100 * 100vw), 8px);
	right: 1px;
	bottom: 1px;
}
.btn_web_common02 .deco{
	display: inline-block;
	padding-left: min(calc(50 / 1000 * 100vw), 50px);
}
.btn_web_common02 .deco::before{
	content: "";
	max-width: 30.5px;
	max-height: 30px;
	height: calc(30.5 / 1024 * 100vw);
	width: calc(30 / 1024 * 100vw);
	background: url(images/page/icn_web01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 0; bottom: 0;
	left: 0;
	z-index: 1;
}
@media(min-width: 768px) and (max-width:1024px) {
	.btn_web_common01 .deco::before{top: 7.5%;}
}
@media(max-width: 767px) {


	.btn_web_common02{
		max-width: inherit;
		max-height: inherit;
		width: calc(650 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		font-size: calc(40 / 750 * 100vw);
	}
	.btn_web_common02::after {border-width: calc(10 / 750 * 100vw);}
	.btn_web_common02 .deco{padding-left: 11vw;}
	.btn_web_common02 .deco::before{
		width: calc(45/ 750 * 100vw);
		height: calc(45 / 750 * 100vw);
	}
}

/* btn_line_common01
------------------------------------------------------------------*/
.btn_line_common01{
	max-width: 100px;
	max-height: 100px;
	height: calc(100 / 1100 * 100vw);
	width: calc(100 / 1100 * 100vw);
	font-size: min(calc(16 / 900 * 100vw), 16px);
	color: #fff;
	background: #06c755;
}
.btn_line_common01 .deco{
	display: inline-block;
	padding-top: min(calc(37.5 / 1100 * 100vw), 37.5px);
}
.btn_line_common01 .deco::before{
	content: "";
	max-width: 30px;
	max-height: 30px;
	height: calc(30 / 1024 * 100vw);
	width: calc(30 / 1024 * 100vw);
	background: url(images/page/icn_line01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 12.5%;
	left: 0; right: 0;
	z-index: 1;
}

.btn_line_common02{
	max-width: 320px;
	max-height: 140px;
	width: calc(320 / 1480 * 100vw);
	height: calc(140 / 1280 * 100vw);
	font-size: min(calc(28 / 1000 * 100vw), 28px);
	color: #fff;
	background: #06c755;
}
.btn_line_common02::after {
	border-width: min(calc(8 / 1100 * 100vw), 8px);
	right: 1px;
	bottom: 1px;
}
.btn_line_common02 .deco{
	display: inline-block;
	padding-left: min(calc(50 / 1000 * 100vw), 50px);
}
.btn_line_common02 .deco::before{
	content: "";
	max-width: 30px;
	max-height: 30px;
	height: calc(30 / 1024 * 100vw);
	width: calc(30 / 1024 * 100vw);
	background: url(images/page/icn_line01.svg)no-repeat center / contain;
	margin: auto;
	position: absolute;
	top: 0; bottom: 0;
	left: 0;
	z-index: 1;
}
@media(min-width: 768px) and (max-width:1024px) {
	.btn_line_common01 .deco::before{top: 7.5%;}
}
@media(max-width: 767px) {

	.btn_line_common02{
		max-width: inherit;
		max-height: inherit;
		width: calc(650 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		font-size: calc(40 / 750 * 100vw);
	}
	.btn_line_common02::after {border-width: calc(10 / 750 * 100vw);}
	.btn_line_common02 .deco{padding-left: 11vw;}
	.btn_line_common02 .deco::before{
		width: calc(46/ 750 * 100vw);
		height: calc(46 / 750 * 100vw);
	}
}

/* area_ttl_common01
------------------------------------------------------------------*/
.ttl_jp_common01{
	letter-spacing: .1em;
	line-height: 1.6;
	font-size: min(calc(60 / 1200 * 100vw), 60px);
	color: #254062;
	text-align: center;
	position: relative;
	z-index: 1;
}
.ttl_jp_common01::before{
	white-space: pre;
	line-height: .75;
	letter-spacing: .1em;
	font-family: toppan-bunkyu-mincho-pr6n, serif;
	font-weight: 400;
	font-style: normal;
	font-size: min(calc(130 / 1200 * 100vw), 130px);
	color: #f0f0f0;
	position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
	left: 0; right: 0;
	z-index: -1;
}

.invisalign .ttl_jp_common01::before{content: "INVISALIGN"}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.ttl_jp_common01{
		letter-spacing: 0;
		font-size: calc(60 / 750 * 100vw);
	}
	.ttl_jp_common01::before{
		letter-spacing: 0;
		font-size: calc(130 / 750 * 100vw);
	}
	.invisalign .ttl_jp_common01::before{font-size: calc(102 / 750 * 100vw);}
}

/* deco
------------------------------------------------------------------*/
.deco_common_left::after{
	content: "";
	max-width: 305px;
	max-height: 391px;
	width: calc(305 / 1500 * 100vw);
	height: calc(391 / 1500 * 100vw);
	margin: auto;
	background: url(images/page/deco_left.png)no-repeat center / contain;
	position: absolute;
	z-index: -1;
}
.deco_common_right::after{
	content: "";
	max-width: 305px;
	max-height: 391px;
	width: calc(305 / 1500 * 100vw);
	height: calc(391 / 1500 * 100vw);
	margin: auto;
	background: url(images/page/deco_right.png)no-repeat center / contain;
	position: absolute;
	z-index: -1;
}
.deco_common_left_be::before{
	content: "";
	max-width: 305px;
	max-height: 391px;
	width: calc(305 / 1500 * 100vw);
	height: calc(391 / 1500 * 100vw);
	margin: auto;
	background: url(images/page/deco_left.png)no-repeat center / contain;
	position: absolute;
	z-index: -1;
}
.deco_common_right_be::before{
	content: "";
	max-width: 305px;
	max-height: 391px;
	width: calc(305 / 1500 * 100vw);
	height: calc(391 / 1500 * 100vw);
	margin: auto;
	background: url(images/page/deco_right.png)no-repeat center / contain;
	position: absolute;
	z-index: -1;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.deco_common_left::after{
		width: calc(305 / 750 * 100vw);
		height: calc(391 / 750 * 100vw);
	}
	.deco_common_right::after{
		width: calc(305 / 750 * 100vw);
		height: calc(391 / 750 * 100vw);
	}
	.deco_common_left_be::before{
		width: calc(305 / 750 * 100vw);
		height: calc(391 / 750 * 100vw);
	}
	.deco_common_right_be::before{
		width: calc(305 / 750 * 100vw);
		height: calc(391 / 750 * 100vw);
	}
}
/* 症例紹介 case
------------------------------------------------------------------*/
.wrap_case01 {
	position: relative;
}
.wrap_case01 .deco01 {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.wrap_case01 .deco02 {
	position: absolute;
	right: calc(6 / 1920 * 100vw);
	bottom: calc(-8 / 1920 * 100vw);
	z-index: -1;
}
.wrap_case01 .ttl{
	font-size: 177.77%;
	letter-spacing: .1em;
}
.box_case01 {
	position: relative;
	padding: calc(30 / 1920 * 100vw) calc(50 / 1920 * 100vw) calc(60 / 1920 * 100vw);
}
.unit_case .en {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	transform: translateY(-50%);
}
.unit_case .en span {
	font-size: 277.77%;
	letter-spacing: .1em;
}
.wrap_case02 {
	max-width: 580px;
}
.wrap_case02 .ja {
	font-size: 166.6%;
	letter-spacing: .1em;
}
.unit_case .area_case_search dt {
	width: calc(160 / 1920 * 100vw);
	height: calc(38 / 1920 * 100vw);
	color: #fff;
	background: #555;
	position: relative;
	z-index: 1;
}
.unit_case .area_case_search dt::before {
	content: "";
	width: 0;
	height: 0;
	border-left: calc(13 / 1920 * 100vw) solid #555;
	border-top: calc(19 / 1920 * 100vw) solid transparent;
	border-bottom: calc(19 / 1920 * 100vw) solid transparent;
	position: absolute;
	top: 0;
	bottom: 0;
	right: calc(-13 / 1920 * 100vw);
}
.unit_case .area_case_search dd {
	width: calc(100% - calc(180 / 1920 * 100vw));
	margin-bottom: calc(10 / 1920 * 100vw);
}
.unit_case .area_case_search select {
	width: 100%;
	padding: calc(4 / 1920 * 100vw) 4%;
	background: #fff;
	border: solid 1px #ccc;
	line-height: 1.5;
	letter-spacing: .1em;
}
.btn_case {
	max-width: 350px;
}
.btn_case:before, .btn_case:after {
	content: "";
	position: absolute;
	width: calc(30 / 1920 * 100vw);
	height: 0;
	border-top: 1px solid #fff;
	border-bottom: none;
	border-right: none;
	transform: rotate(0);
	right: calc(20 / 1920 * 100vw);
	top: 0;
	bottom: 0;
	margin: auto;
}
.btn_case:after {
	width: calc(9 / 1920 * 100vw);
	transform: rotate(45deg);
	top: calc(-7 / 1920 * 100vw);
}
.btn_case input {
	padding: calc(30 / 1920 * 100vw) calc(5 / 1920 * 100vw);
	font-size: 111.11%;
	background: #555;
}
select {
	-webkit-appearance: none;
	appearance: none; /* デフォルトの矢印を非表示 */
}
select::-ms-expand {
	display: none; /* デフォルトの矢印を非表示(IE用) */
}
.wrap_case02 dd {
	position: relative;
}
.wrap_case02 dd:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: calc(10 / 1920 * 100vw) calc(5 / 1920 * 100vw) 0 calc(5 / 1920 * 100vw);
	border-color: #707070 transparent transparent transparent;
	top: 0;
	bottom: 0;
	right: calc(15 / 1920 * 100vw);
	margin: auto;
}
.wrap_case03:last-child {
	margin-bottom: 0!important;
}
.unit_case .tbl_case01 .label01{margin-bottom: calc(8 / 1920 * 100vw);}
.unit_case label, .unit_case input[type='checkbox'] {cursor: pointer;}
@media(min-width: 768px) and (max-width:1599px) {
	.wrap_case01 .deco02 {
		right: calc(6 / 1599 * 100vw);
		bottom: calc(-8 / 1599 * 100vw);
	}
	.box_case01 {
		padding: calc(30 / 1599 * 100vw) calc(50 / 1599 * 100vw) calc(60 / 1599 * 100vw);
	}
	.unit_case .area_case_search dt {
		width: calc(160 / 1599 * 100vw);
		height: calc(38 / 1599 * 100vw);
	}
	.unit_case .area_case_search dt::before {
		border-left: calc(13 / 1599 * 100vw) solid #555;
		border-top: calc(19 / 1599 * 100vw) solid transparent;
		border-bottom: calc(19 / 1599 * 100vw) solid transparent;
		right: calc(-13 / 1599 * 100vw);
	}
	.unit_case .area_case_search dd {
		width: calc(100% - calc(180 / 1599 * 100vw));
		margin-bottom: calc(10 / 1599 * 100vw);
	}
	.unit_case .area_case_search select {
		padding: calc(4 / 1599 * 100vw) 4%;
	}
	.btn_case:before, .btn_case:after {
		width: calc(30 / 1599 * 100vw);
		right: calc(20 / 1599 * 100vw);
	}
	.btn_case:after {
		width: calc(9 / 1599 * 100vw);
		top: calc(-7 / 1599 * 100vw);
	}
	.btn_case input {
		padding: calc(30 / 1599 * 100vw) calc(5 / 1599 * 100vw);
	}
	.wrap_case02 dd:before {
		border-width: calc(10 / 1599 * 100vw) calc(5 / 1599 * 100vw) 0 calc(5 / 1599 * 100vw);
		right: calc(15 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.wrap_case01 .deco02 {
		right: calc(6 / 1299 * 100vw);
		bottom: calc(-8 / 1299 * 100vw);
	}
	.box_case01 {
		padding: calc(30 / 1299 * 100vw) calc(50 / 1299 * 100vw) calc(60 / 1299 * 100vw);
	}
	.unit_case .area_case_search dt {
		width: calc(160 / 1299 * 100vw);
		height: calc(38 / 1299 * 100vw);
	}
	.unit_case .area_case_search dt::before {
		border-left: calc(13 / 1299 * 100vw) solid #555;
		border-top: calc(19 / 1299 * 100vw) solid transparent;
		border-bottom: calc(19 / 1299 * 100vw) solid transparent;
		right: calc(-13 / 1299 * 100vw);
	}
	.unit_case .area_case_search dd {
		width: calc(100% - calc(180 / 1299 * 100vw));
		margin-bottom: calc(10 / 1299 * 100vw);
	}
	.unit_case .area_case_search select {
		padding: calc(4 / 1299 * 100vw) 4%;
	}
	.btn_case:before, .btn_case:after {
		width: calc(30 / 1299 * 100vw);
		right: calc(20 / 1299 * 100vw);
	}
	.btn_case:after {
		width: calc(9 / 1299 * 100vw);
		top: calc(-7 / 1299 * 100vw);
	}
	.btn_case input {
		padding: calc(30 / 1299 * 100vw) calc(5 / 1299 * 100vw);
	}
	.wrap_case02 dd:before {
		border-width: calc(10 / 1299 * 100vw) calc(5 / 1299 * 100vw) 0 calc(5 / 1299 * 100vw);
		right: calc(15 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.wrap_case01 .ttl {
		font-size: 125%;
	}
	.wrap_case02 dd:before {
		border-width: calc(20 / 750*100vw) calc(10 / 750*100vw) 0 calc(10 / 750*100vw);
		right: 2vw;
	}
	.wrap_case01 .txt {
		text-align: left;
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.wrap_case01 {
		padding-top: 8vw;
	}
	.wrap_case01 .deco01 {
		width: calc(190 / 750*100vw);
		left: -3vw;
	}
	.wrap_case01 .deco02 {
		width: calc(109 / 750*100vw);
		right: -4vw;
		bottom: -4vw;
	}
	.wrap_case02 {
		max-width: 100%;
	}
	.wrap_case02 .ja {
		font-size: calc(40 / 750 * 100vw);
	}
	.unit_case .en span {
		font-size: calc(75 / 750 * 100vw);
	}
	.unit_case .area_case_search dt {
		width: 100%;
		height: calc(76 / 750*100vw);
	}
	.unit_case .area_case_search dt::before {
		content: none;
	}
	.unit_case .area_case_search dd {
		width: 100%;
		height: calc(76 / 750*100vw);
	}
	.unit_case .en {
		top: 1vw;
	}
	.box_case01 {
		padding: 6vw 5% 7vw;
	}
	.btn_case input {
		padding: 5vw 5%;
		font-size: calc(32 / 750 * 100vw);
	}
	.btn_case {
		width: calc(550 / 750 * 100vw);
		max-width: 100%;
	}
}


/* リスク・副作用
------------------------------------------------------------------*/
.risk.inner1000 {
	max-width: 1000px!important;
	width: 90%!important;
}
.box_risk01 {
	padding: calc(38 / 1920 * 100vw) calc(50 / 1920 * 100vw) calc(40 / 1920 * 100vw)!important;
	font-size: calc(18 / 1920 * 100vw)!important;
	min-height: calc(260 / 1920 * 100vw)!important;
	border: 1px solid #333;
	background: #fff;
}
.box_risk01 .box {
	overflow: hidden;
	position: relative;
	padding: 0 calc(20 / 1920 * 100vw) 0 0!important;
	max-height: calc(180 / 1920 * 100vw)!important;
	height: auto;
	touch-action: auto !important;
}
.box_risk01 .ttl {
	margin-bottom: calc(7 / 1920 * 100vw)!important;
	font-size: 111.11%!important;
	letter-spacing: .1em!important;
}
.box_risk01 .txt {
	font-size: 88.89%!important;
	letter-spacing: .1em!important;
}
/* パーフェクトスクロールバー */
.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background: #333 !important;
	right: 0px !important;
	width: 4px !important;
}
.risk .ps-container > .ps-scrollbar-y-rail {
	background: transparent !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1;
}
@media(min-width: 768px) and (max-width:1599px) {
	.box_risk01 {
		min-height: calc(260 / 1599 * 100vw)!important;
		padding: calc(38 / 1599 * 100vw) calc(50 / 1599 * 100vw) calc(40 / 1599 * 100vw)!important;
		font-size: calc(18 / 1599 * 100vw)!important;
	}
	.box_risk01 .box {
		padding: 0 calc(20 / 1599 * 100vw) 0 0!important;
		max-height: calc(180 / 1599 * 100vw)!important;
	}
	.box_risk01 .ttl {
		margin-bottom: calc(7 / 1599 * 100vw)!important;
	}
}
@media(min-width: 751px) and (max-width:1299px) {
	.box_risk01 {
		min-height: calc(260 / 1299 * 100vw)!important;
		padding: calc(38 / 1299 * 100vw) calc(50 / 1299 * 100vw) calc(40 / 1299 * 100vw)!important;
		font-size: calc(18 / 1299 * 100vw)!important;
	}
	.box_risk01 .box {
		padding: 0 calc(20 / 1299 * 100vw) 0 0!important;
		max-height: calc(180 / 1299 * 100vw)!important;
	}
	.box_risk01 .ttl {
		margin-bottom: calc(7 / 1299 * 100vw)!important;
	}
}
@media(max-width: 767px) {
	.sp.risk.inner1000 {
		max-width: calc(702 / 750 * 100vw)!important;
		width: 100%!important;
	}
	.sp.risk iframe {
		height: calc(500 / 750 * 100vw)!important;
	}
	.sp.box_risk01 {
		font-size: 4.27vw!important;
		min-height: calc(500 / 750 * 100vw)!important;
		padding: 5vw 5% 5vw!important;
	}
	.sp.box_risk01 .box {
		max-height: calc(420 / 750 * 100vw)!important;
		padding: 0 3vw 0 0!important;
	}
	.sp.box_risk01 .ttl {
		margin-bottom: 2vw!important;
		font-size: 112.5%!important;
		letter-spacing: 0!important;
	}
	.sp.box_risk01 .txt {
		font-size: 100%!important;
		letter-spacing: 0!important;
	}
	.sp.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y, .sp.risk .ps-container > .ps-scrollbar-y-rail {
		right: 0!important;
		width: 2px!important;
	}
}




/* 採用情報 recruit
------------------------------------------------------------------*/
.tbl_guideline01:not(:last-child) {
	margin-bottom: calc(100 / 1920 * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.tbl_guideline01:not(:last-child) {
		margin-bottom: calc(100 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.tbl_guideline01:not(:last-child) {
		margin-bottom: calc(100 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.tbl_guideline01 td a {
		text-decoration: underline;
		color: var(--guideline-color);
	}
	.tbl_guideline01:not(:last-child) {
		margin-bottom: calc(100 / 750 * 100vw);
	}
}

/* お問い合わせ contact
------------------------------------------------------------------*/
.inv-recaptcha-holder {
	display: none!important;
}
@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: 111.11%;
	line-height: calc(40 / 1920 * 100vw);
	margin-bottom: calc(4 / 1920 * 100vw);
	text-align: center;
}
#sidebar caption {
	margin-bottom: calc(5 / 1920 * 100vw);
}
#wp-calendar {
	width: 100%;
	margin-bottom: calc(10 / 1920 * 100vw);
}
#wp-calendar thead th {
	background: #eee;
	border: 1px solid #eee;
	border-right-color: #eee;
	font-size: 72.22%;
	font-weight: normal;
}
#wp-calendar tbody td {
	border: 1px solid #eee;
	text-align: center;
	font-size: 77.78%;
	line-height: 1.8;
}
#wp-calendar tbody td a {
	color: #959595;
	text-decoration: underline;
}
#wp-calendar tfoot td {
	font-size: 81.25%;
}
#wp-calendar tfoot td#prev {
	padding-top: calc(8 / 1920 * 100vw);
	padding-left: calc(10 / 1920 * 100vw);
}
#wp-calendar tfoot td#next {
	padding-top: calc(8 / 1920 * 100vw);
	padding-right: calc(10 / 1920 * 100vw);
	text-align: right;
}
#wp-calendar tfoot td a {
	padding-bottom: calc(3 / 1920 * 100vw);
	border-bottom: 1px solid #333;
}
.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 / 1920 * 100vw);
	line-height: 1.5;
}
.wp-calendar-nav-prev{padding-left: calc(10 / 1920 * 100vw);}
.wp-calendar-nav-next{padding-right: calc(10 / 1920 * 100vw);}
.wp-calendar-nav a{
	padding-bottom: calc(3 / 1920 * 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 / 1920 * 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 / 1920 * 100vw);
}
.navigation li {
	width: calc(170 / 1920 * 100vw);
}
.navigation .navitop {
	text-align: center;
}
.navigation .naviright {
	text-align: right;
}
.navigation li a {
	padding-bottom: calc(4 / 1920 * 100vw);
	border-bottom: 1px solid #333;
}
.post_content img {
	max-width: 100%;
	height: auto;
}
.date_single {
	display: block;
	text-align: right;
	font-size: 72.22;
	margin-top: calc(-30 / 1920 * 100vw);
	margin-bottom: calc(40 / 1920 * 100vw);
}
.post_content {
	line-height: 1.75;
}
.img_thmb {
	width: calc(120 / 1920 * 100vw);
	height: calc(120 / 1920 * 100vw);
	display: block;
}
.thmb {
	width: calc(120 / 1920 * 100vw);
}
.thmb a:hover .img_thmb {
	opacity: .75;
}
.txt_post {
	width: calc(100% - calc(140 / 1920 * 100vw));
}
.page_main section.blog_archive {
	padding-bottom: calc(35 / 1920 * 100vw);
	border-bottom: 1px solid #959595;
}
.post_main section.blog_archive:not(:last-child) {
	margin-bottom: calc(40 / 1920 * 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;
}
.txt_post .date {
	font-size: 75%;
	color: #959595;
}
.txt_post .txt_excerpt {
	line-height: 1.75;
	margin-top: calc(8 / 1920 * 100vw);
}
.txt_post .txt_excerpt a {
	color: #aaa;
	text-decoration: underline;
}
.page_main .wp-pagenavi {
	margin-top: calc(60 / 1920 * 100vw);
	text-align: center;
	font-size: 77.78%;
}
.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #959595;
	color: #959595;
	padding: 0 calc(10 / 1920 * 100vw);
	margin: calc(2 / 1920 * 100vw);
	display: inline-block;
}
.page_main .wp-pagenavi span.pages {
	padding: 0 calc(11 / 1920 * 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;
}
.single_post h3 {
	font-size: 166.67%;
	line-height: 1.6;
}
@media(min-width: 768px) and (max-width:1599px) {
	#sidebar h4 {
		line-height: calc(40 / 1599 * 100vw);
		margin-bottom: calc(4 / 1599 * 100vw);
	}
	#sidebar caption {
		margin-bottom: calc(5 / 1599 * 100vw);
	}
	#wp-calendar {
		margin-bottom: calc(10 / 1599 * 100vw);
	}
	#wp-calendar tfoot td#prev {
		padding-top: calc(8 / 1599 * 100vw);
		padding-left: calc(10 / 1599 * 100vw);
	}
	#wp-calendar tfoot td#next {
		padding-top: calc(8 / 1599 * 100vw);
		padding-right: calc(10 / 1599 * 100vw);
	}
	#wp-calendar tfoot td a {
		padding-bottom: calc(3 / 1599 * 100vw);
	}
	.wp-calendar-nav{
		margin-bottom: calc(60 / 1599 * 100vw);
	}
	.wp-calendar-nav-prev{padding-left: calc(10 / 1599 * 100vw);}
	.wp-calendar-nav-next{padding-right: calc(10 / 1599 * 100vw);}
	.wp-calendar-nav a{
		padding-bottom: calc(3 / 1599 * 100vw);
	}
	#sidebar ul li a {
		padding-bottom: calc(4 / 1599 * 100vw);
	}
	.navigation {
		margin-bottom: calc(60 / 1599 * 100vw);
	}
	.navigation li {
		width: calc(170 / 1599 * 100vw);
	}
	.navigation li a {
		padding-bottom: calc(4 / 1599 * 100vw);
	}
	.date_single {
		margin-top: calc(-30 / 1599 * 100vw);
		margin-bottom: calc(40 / 1599 * 100vw);
	}
	.img_thmb {
		width: calc(120 / 1599 * 100vw);
		height: calc(120 / 1599 * 100vw);
	}
	.thmb {
		width: calc(120 / 1599 * 100vw);
	}
	.txt_post {
		width: calc(100% - calc(140 / 1599 * 100vw));
	}
	.page_main section.blog_archive {
		padding-bottom: calc(35 / 1599 * 100vw);
	}
	.post_main section.blog_archive:not(:last-child) {
		margin-bottom: calc(40 / 1599 * 100vw);
	}
	.txt_post .txt_excerpt {
		margin-top: calc(8 / 1599 * 100vw);
	}
	.page_main .wp-pagenavi {
		margin-top: calc(60 / 1599 * 100vw);
	}
	.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
		padding: 0 calc(10 / 1599 * 100vw);
		margin: calc(2 / 1599 * 100vw);
	}
	.page_main .wp-pagenavi span.pages {
		padding: 0 calc(11 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	#sidebar h4 {
		line-height: calc(40 / 1299 * 100vw);
		margin-bottom: calc(4 / 1299 * 100vw);
	}
	#sidebar caption {
		margin-bottom: calc(5 / 1299 * 100vw);
	}
	#wp-calendar {
		margin-bottom: calc(10 / 1299 * 100vw);
	}
	#wp-calendar tfoot td#prev {
		padding-top: calc(8 / 1299 * 100vw);
		padding-left: calc(10 / 1299 * 100vw);
	}
	#wp-calendar tfoot td#next {
		padding-top: calc(8 / 1299 * 100vw);
		padding-right: calc(10 / 1299 * 100vw);
	}
	#wp-calendar tfoot td a {
		padding-bottom: calc(3 / 1299 * 100vw);
	}
	.wp-calendar-nav{
		margin-bottom: calc(60 / 1299 * 100vw);
	}
	.wp-calendar-nav-prev{padding-left: calc(10 / 1299 * 100vw);}
	.wp-calendar-nav-next{padding-right: calc(10 / 1299 * 100vw);}
	.wp-calendar-nav a{
		padding-bottom: calc(3 / 1299 * 100vw);
	}
	#sidebar ul li a {
		padding-bottom: calc(4 / 1299 * 100vw);
	}
	.navigation {
		margin-bottom: calc(60 / 1299 * 100vw);
	}
	.navigation li {
		width: calc(170 / 1299 * 100vw);
	}
	.navigation li a {
		padding-bottom: calc(4 / 1299 * 100vw);
	}
	.date_single {
		margin-top: calc(-30 / 1299 * 100vw);
		margin-bottom: calc(40 / 1299 * 100vw);
	}
	.img_thmb {
		width: calc(120 / 1299 * 100vw);
		height: calc(120 / 1299 * 100vw);
	}
	.thmb {
		width: calc(120 / 1299 * 100vw);
	}
	.txt_post {
		width: calc(100% - calc(140 / 1299 * 100vw));
	}
	.page_main section.blog_archive {
		padding-bottom: calc(35 / 1299 * 100vw);
	}
	.post_main section.blog_archive:not(:last-child) {
		margin-bottom: calc(40 / 1299 * 100vw);
	}
	.txt_post .txt_excerpt {
		margin-top: calc(8 / 1299 * 100vw);
	}
	.page_main .wp-pagenavi {
		margin-top: calc(60 / 1299 * 100vw);
	}
	.page_main .wp-pagenavi a, .page_main .wp-pagenavi span {
		padding: 0 calc(10 / 1299 * 100vw);
		margin: calc(2 / 1299 * 100vw);
	}
	.page_main .wp-pagenavi span.pages {
		padding: 0 calc(11 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.page_main {
		display: block!important;
	}
	#sidebar {
		width: 100%;
	}
	#sidebar h4 {
		line-height: calc(80 / 750 * 100vw);
		margin: calc(4 / 750 * 100vw);
	}
	#sidebar caption {
		margin-bottom: calc(5 / 750 * 100vw);
	}
	#wp-calendar {
		margin-bottom: calc(10 / 750 * 100vw);
	}
	#wp-calendar tfoot td#prev {
		padding-top: calc(8 / 750 * 100vw);
		padding-left: calc(10 / 750 * 100vw);
	}
	#wp-calendar tfoot td#next {
		padding-top: calc(8 / 750 * 100vw);
		padding-right: calc(10 / 750 * 100vw);
	}
	#wp-calendar tfoot td a {
		padding-bottom: calc(3 / 750 * 100vw);
	}
	.wp-calendar-nav{
		margin-bottom: calc(60 / 750 * 100vw);
	}
	.wp-calendar-nav-prev{padding-left: calc(10 / 750 * 100vw);}
	.wp-calendar-nav-next{padding-right: calc(10 / 750 * 100vw);}
	.wp-calendar-nav a{
		padding-bottom: calc(3 / 750 * 100vw);
	}
	#sidebar ul li a {
		padding-bottom: calc(4 / 750 * 100vw);
	}
	.navigation li a {
		padding-bottom: calc(4 / 750 * 100vw);
	}
	.post_main {
		width: 100%;
		margin-bottom: 20vw;
	}
	.date_single {
		margin-top: calc(-30 / 750 * 100vw);
		margin-bottom: calc(40 / 750 * 100vw);
	}
	.thmb {
		width: 30%;
	}
	.img_thmb {
		display: block;
		width: 100%;
		height: auto;
		padding-top: 100%;
	}
	.txt_post {
		width: 66%;
	}
	.txt_post .txt_excerpt {
		margin-top: calc(8 / 750 * 100vw);
	}
	.navigation {
		margin-bottom: calc(60 / 750 * 100vw);
	}
	.navigation li {
		width: calc(200 / 750 * 100vw);
	}
	.page_main .wp-pagenavi {
		margin-top: calc(60 / 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: 118.75%;
	}
}
