@charset "utf-8";
/* Theme Name: res */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap');
html, body {
	font-size: 20px;
	line-height: 1.9;
	color: #333;
	letter-spacing: .1em;
	font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#wrap {
	overflow-x: hidden;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
img {
	max-width: 100%;
	height: auto;
}
li {
	list-style: none;
}
a {
	color: inherit;
}
.txt_link {
	color: #2877a5;
}
:root {
	--guideline-color: #2877a5;
}
a:hover {
	opacity: .85;
	transition: .3s;
}
.inner, .inner900, .inner1000, .inner1240, .inner1340, .inner1500 {
	max-width: calc(1200px + 10%);
	width: 100%;
	margin: 0 auto;
	padding: 0 5%;
}
.inner900 {
	max-width: calc(900px + 10%);
}
.inner1000 {
	max-width: calc(1000px + 10%);
}
.inner1240 {
	max-width: calc(1240px + 10%);
}
.inner1340 {
	max-width: calc(1340px + 10%);
}
.inner1500 {
	max-width: calc(1500px + 10%);
}
table {
	table-layout: fixed;
}
td input {
	max-width: 100%;
}
.map {
	position: relative;
	width: 100%;
	padding: 500px 0 0 0;
	overflow: hidden;
}
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	margin-top: -150px;
	height: calc(100% + 150px);
}
a[href^="tel:"] {
	cursor: default;
}
a[href^="tel:"]:hover {
	opacity: 1;
}
.slick-slide {
	outline: none;
}
.tb_only {
	display: none;
}
.sp_only {
	display: none;
}
.tb_pc {
	display: inherit;
}
.sp_tb {
	display: none;
}
.flex {
	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;
}
.flex.start {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
.flex.end {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.flex.center {
	-webkit-justify-content: center;
	justify-content: center;
}
.flex.around {
	-webkit-justify-content: space-around;
	justify-content: space-around;
}
.flex.between {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.flex.stretch {
	-webkit-align-items: stretch;
	align-items: stretch;
}
.flex.ai_center {
	-webkit-align-items: center;
	align-items: center;
}
.flex.ai_start {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.flex.ai_end {
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
.flex.nowrap {
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.flex.column {
	-ms-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.flex.row {
	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;
}
.flex.c_reverse {
	-ms-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.flex.r_reverse {
	-ms-flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.noshrink {
	flex: 0 0 auto;
}
.grow {
	flex: 1 1 auto;
}
.txt_center {
	text-align: center;
}
.txt_right {
	text-align: right;
}
.txt_left {
	text-align: left;
}
.mgn_a {
	margin-left: auto;
	margin-right: auto;
}
.mgn_l {
	margin-left: auto;
}
.mgn_r {
	margin-right: auto;
}
.no_mgn {
	margin-bottom: 0 !important;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb25 {
	margin-bottom: 25px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb35 {
	margin-bottom: 35px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb45 {
	margin-bottom: 45px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb55 {
	margin-bottom: 55px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb65 {
	margin-bottom: 65px;
}
.mb70 {
	margin-bottom: 70px;
}
.mb75 {
	margin-bottom: 75px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb85 {
	margin-bottom: 85px;
}
.mb90 {
	margin-bottom: 90px;
}
.mb95 {
	margin-bottom: 95px;
}
.mb100 {
	margin-bottom: 100px;
}
.mb105 {
	margin-bottom: 105px;
}
.mb110 {
	margin-bottom: 110px;
}
.mb115 {
	margin-bottom: 115px;
}
.mb120 {
	margin-bottom: 120px;
}
.mb125 {
	margin-bottom: 125px;
}
.mb130 {
	margin-bottom: 130px;
}
.mb135 {
	margin-bottom: 135px;
}
.mb140 {
	margin-bottom: 140px;
}
.mb145 {
	margin-bottom: 145px;
}
.mb150 {
	margin-bottom: 150px;
}
.mb05em {
	margin-bottom: 0.5em;
}
.mb10em {
	margin-bottom: 1.0em;
}
.mb15em {
	margin-bottom: 1.5em;
}
.mb20em {
	margin-bottom: 2.0em;
}
.mb25em {
	margin-bottom: 2.5em;
}
.mb30em {
	margin-bottom: 3.0em;
}
.mt60 {
	margin-top: 60px !important;
}
.mt100 {
	margin-top: 100px;
}
@media(min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
	.slick-slide img, #sb_instagram .sbi_photo_wrap {
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}
}
.shuei_m {
	font-family: dnp-shuei-ymincho-std, sans-serif;
	font-weight: 500;
	font-style: normal;
}
.shuei_b {
	font-family: dnp-shuei-ymincho-std, sans-serif;
	font-weight: 600;
	font-style: normal;
}
.kozuka {
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.freight {
	font-family: freight-big-pro, serif;
	font-weight: 400;
	font-style: normal;
}
.arno {
	font-family: arno-pro, serif;
	font-weight: 400;
	font-style: normal;
}
.century {
	font-family: century-old-style-std, serif;
	font-weight: 400;
	font-style: normal;
}
.txt_white {
	color: #fff !important;
}
.txt_black {
	color: #333 !important;
}
.txt_col01 {
	color: #153a76 !important;
}
.txt_col02 {
	color: #db358b !important;
}
.txt_col03 {
	color: #ffff75 !important;
}
.txt_col04 {
	color: #d2dbea !important;
}
.txt_col05 {
	color: #2877a5 !important;
}
.txt_col06 {
	color: #f8f8f8 !important;
}
.txt_col07 {
	color: #e7ecf4 !important;
}
.txt_col08 {
	color: #ececec !important;
}
.txt_col09 {
	color: #429d9a !important;
}
.txt_col10 {
	color: #c1912a !important;
}
.txt_col11 {
	color: #f8f2e4 !important;
}
.txt_col12 {
	color: #e1eaf8 !important;
}
.txt_col13 {
	color: #dfedf0 !important;
}
.txt_col14 {
	color: #5b7298 !important;
}
.txt_col15 {
	color: #8ab3cd !important;
}
.txt_col16 {
	color: #fefe74 !important;
}
.txt_col17 {
	color: #b88d2e !important;
}
.bg_white {
	background-color: #fff !important;
}
.bg_black {
	background-color: #333 !important;
}
.bg_col01 {
	background-color: #153a76 !important;
}
.bg_col02 {
	background-color: #db358b !important;
}
.bg_col03 {
	background-color: #ffff75 !important;
}
.bg_col04 {
	background-color: #d2dbea !important;
}
.bg_col05 {
	background-color: #2877a5 !important;
}
.bg_col06 {
	background-color: #f8f8f8 !important;
}
.bg_col07 {
	background-color: #e7ecf4 !important;
}
.bg_col08 {
	background-color: #ececec !important;
}
.bg_col09 {
	background-color: #429d9a !important;
}
.bg_col10 {
	background-color: #c1912a !important;
}
.bg_col11 {
	background-color: #f8f2e4 !important;
}
.bg_col12 {
	background-color: #e1eaf8 !important;
}
.bg_col13 {
	background-color: #dfedf0 !important;
}
.bg_col14 {
	background-color: #5b7298 !important;
}
.bg_col15 {
	background-color: #8ab3cd !important;
}
.bg_col16 {
	background-color: #fefe74 !important;
}
.bg_col17 {
	background-color: #b88d2e !important;
}
.bg_ptn01 {
	background-image: url(./images/page/bg_pattern01.png);
	background-repeat: repeat;
	background-position: left top;
}
.bg_ptn02 {
	background-image: url(./images/page/bg_pattern02.png);
	background-repeat: repeat;
	background-position: left top;
}
.shadow_w {
	text-shadow: 0px 0px 5px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 15px #fff, 0px 0px 15px #fff;
}
em {
	font-style: normal;
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.shuei_m {
		font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.pc_only {
		display: none;
	}
	.tb_only {
		display: inherit;
	}
	.sp_only {
		display: none;
	}
	.tb_pc {
		display: inherit;
	}
	.sp_tb {
		display: inherit;
	}
}
@media(max-width: 767px) {
	html, body {
		line-height: 2;
		font-size: 4.27vw;
		letter-spacing: 0;
	}
	.inner, .inner900, .inner1000, .inner1240, .inner1340, .inner1500 {
		padding: 0 3.2vw;
	}
	.pc_only {
		display: none;
	}
	.tb_only {
		display: none;
	}
	.sp_only {
		display: inherit;
	}
	.tb_pc {
		display: none;
	}
	.sp_tb {
		display: inherit;
	}
	.map {
		padding-top: calc(500 / 750 * 100vw);
	}
	.mb5 {
		margin-bottom: calc(5 / 750 * 100vw);
	}
	.mb10 {
		margin-bottom: calc(10 / 750 * 100vw);
	}
	.mb15 {
		margin-bottom: calc(15 / 750 * 100vw);
	}
	.mb20 {
		margin-bottom: calc(20 / 750 * 100vw);
	}
	.mb25 {
		margin-bottom: calc(25 / 750 * 100vw);
	}
	.mb30 {
		margin-bottom: calc(30 / 750 * 100vw);
	}
	.mb35 {
		margin-bottom: calc(35 / 750 * 100vw);
	}
	.mb40 {
		margin-bottom: calc(40 / 750 * 100vw);
	}
	.mb45 {
		margin-bottom: calc(45 / 750 * 100vw);
	}
	.mb50 {
		margin-bottom: calc(50 / 750 * 100vw);
	}
	.mb55 {
		margin-bottom: calc(55 / 750 * 100vw);
	}
	.mb60 {
		margin-bottom: calc(60 / 750 * 100vw);
	}
	.mb65 {
		margin-bottom: calc(65 / 750 * 100vw);
	}
	.mb70 {
		margin-bottom: calc(70 / 750 * 100vw);
	}
	.mb75 {
		margin-bottom: calc(75 / 750 * 100vw);
	}
	.mb80 {
		margin-bottom: calc(80 / 750 * 100vw);
	}
	.mb85 {
		margin-bottom: calc(85 / 750 * 100vw);
	}
	.mb90 {
		margin-bottom: calc(90 / 750 * 100vw);
	}
	.mb95 {
		margin-bottom: calc(95 / 750 * 100vw);
	}
	.mb100 {
		margin-bottom: calc(100 / 750 * 100vw);
	}
	.mb105 {
		margin-bottom: calc(105 / 750 * 100vw);
	}
	.mb110 {
		margin-bottom: calc(110 / 750 * 100vw);
	}
	.mb115 {
		margin-bottom: calc(115 / 750 * 100vw);
	}
	.mb120 {
		margin-bottom: calc(120 / 750 * 100vw);
	}
	.mb125 {
		margin-bottom: calc(125 / 750 * 100vw);
	}
	.mb130 {
		margin-bottom: calc(130 / 750 * 100vw);
	}
	.mb135 {
		margin-bottom: calc(135 / 750 * 100vw);
	}
	.mb140 {
		margin-bottom: calc(140 / 750 * 100vw);
	}
	.mb145 {
		margin-bottom: calc(145 / 750 * 100vw);
	}
	.mb150 {
		margin-bottom: calc(150 / 750 * 100vw);
	}
	.mt60 {
		margin-top: calc(60 / 750 * 100vw) !important;
	}
	.mt100 {
		margin-top: calc(100 / 750 * 100vw);
	}
	.txt_width {
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
}
/* ヘッダー header
------------------------------------------------------------------*/
header {
	position: relative;
	z-index: 10;
	background: #153a76;
    height: calc(180 / 1920*100vw);
}
h1 {
	position: absolute;
	top: 20px;
	left: 30px;
	max-width: 560px;
}
.row_head {
	position: absolute;
	top: 0;
	right: 130px;
	width: 1100px;
}
.tel_head {
	width: 22%;
	height: 130px;
	max-width: 255px;
}
.tel_head a {
	position: relative;
	width: 100%;
	height: 100%;
}
.tel_head a::after {
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #fff transparent;
	border-width: 0px 0px calc(30 / 1920 * 100vw) calc(30 / 1920 * 100vw);
	bottom: 0;
    right: 0;
}
.tel_head .icn {
	position: absolute;
	top: 4.6%;
	left: 4.4%;
	border-radius: 50%;
	width: 52px;
	height: 52px;
	line-height: 50px;
	font-size: 100%;
	letter-spacing: .1em;
}
.tel_head03 .icn {
	font-size: 77.78%;
	letter-spacing: 0;
}
.tel_head .txt {
	margin-top: .8em;
	line-height: 1;
	font-size: 90%;
	letter-spacing: .1em;
}
.tel_head .txt.name03 {
	letter-spacing: 0;
	padding-left: 18%;
}
.tel_head .txt.name03 em {
	font-size: 133.33%;
}
.row_index_clinic .logo em {
	font-size: 133.33%;
}
.txt.name04 em {
	font-size: 133.33%;
}
.tel_head .tel {
	display: inline-block;
	position: relative;
	margin: 0.6em 0 .05em;
	padding-left: 1.1em;
	line-height: 1;
	font-size: 120%;
	letter-spacing: .05em;
}
/* .tel_head .tel:before {
	content: '';
	background-image: url(./images/page/icn_tel01.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	width: 32px;
	height: 100%;
} */
.tel_head .time {
	line-height: 1;
	font-size: 90%;
	letter-spacing: 0;
}
.tel_head01 a {
	background-color: rgba(66, 157, 154, .95);
}
.tel_head02 a {
	background-color: rgba(193, 145, 42, .95);
}
.tel_head03 a {
	background-color: rgba(140, 179, 203, .95);
}
.web_head {
	width: 16%;
    max-width: 140px;
}
.web_head a {
	position: relative;
	width: 100%;
	height: 100%;
}
.web_head a::before {
	content: '';
	position: absolute;
	left: 50%;
    top: 15px;
    transform: translate(-50%, 0);
	background: url(./images/index/icn_head01.svg) no-repeat center/ contain;
	width: 30px;
	height: 20px;
}
/* .web_head a:after {
	content: '';
	background-image: url(./images/page/arw01.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	bottom: 14px;
	width: 100%;
	height: 11px;
} */
.web_head .txt {
	margin-top: 20px;
	line-height: 1;
	font-size: 170%;
	letter-spacing: 0;
}
.free_head {
	display: none;
	width: 18%;
    max-width: 200px;
}
.free_head a {
	position: relative;
	width: 100%;
	height: 100%;
	background: #f8f2e4;
}
.free_head a::before {
	content: '';
	position: absolute;
	bottom: 15px;
	left: 50%;
	transform: translate(-50%, 0);
	background: url(./images/index/arw_head01.svg) no-repeat center/ contain;
	width: 20px;
	height: 20px;
}
.free_head .txt {
	line-height: 1.3;
    font-size: 110%;
    margin-bottom: 20px;
    letter-spacing: 0;
    color: #b88d2e;
}
.row_head {
	width: 60%;
}
@media(min-width: 1541px) and (max-width:1850px) {
	header {
		height: calc(180 / 1850*100vw);
	}
	h1 {
		max-width: 430px;
	}
	.web_head .txt {
		font-size: 150%;
	}
	/* .tel_head {
		width: 25%;
	}
	.web_head {
		width: 25%;
	} */
	/* .tel_head .tel {
		font-size: 160%;
	} */
	.tel_head .icn {
		width: 38px;
		height: 38px;
		line-height: 38px;
		font-size: 70%;
	}
	.tel_head .tel {
		padding-left: 0.5em;
		font-size: 110%;
	}
	.tel_head03 .icn {
		font-size: 60%;
	}
	.tel_head02 .txt {
		letter-spacing: 0;
		padding-left: 18%;
		margin-top: 0;
		font-size: 77%;
	}
}
@media(min-width: 1441px) and (max-width:1540px) {
	header {
		height: calc(180 / 1540*100vw);
	}
	h1 {
		width: 400px;
	}
	/* .tel_head {
		width: 25%;
	} */
	.web_head .txt {
		font-size: 130%;
	}
	/* .web_head {
		width: 25%;
	} */
	/* .tel_head .tel {
		font-size: 150%;
	} */
	.tel_head .icn {
		width: 38px;
		height: 38px;
		line-height: 38px;
		font-size: 70%;
	}
	.tel_head .tel {
		padding-left: 0em;
		font-size: 100%;
	}
	.tel_head03 .icn {
		font-size: 60%;
	}
	.tel_head02 .txt {
		letter-spacing: 0;
		padding-left: 18%;
		margin-top: 0;
		font-size: 70%;
	}
}
@media(min-width: 1201px) and (max-width:1440px) {
	header {
		height: calc(180 / 1440*100vw);
	}
	h1 {
		max-width: 360px;
	}
	.row_head {
		right: 100px;
		width: 57%;
	}
	.tel_head {
		height: 100px;
		/* width: 25%; */
	}
	.tel_head .txt.name03 {
		padding-left: 25%;
		margin-top: 10px !important;
	}
	.tel_head .icn {
		width: 33px;
		height: 33px;
		line-height: 33px;
		font-size: 67%;
	}
	.tel_head .txt {
		margin-top: 15px;
		font-size: 70%;
	}
	.tel_head .tel {
		font-size: 100%;
		margin: 0.4em 0 .05em;
		font-size: 86%;
		padding-left: 0em;
	}
	/* .tel_head .tel:before {
		width: 25px;
	} */
	.tel_head .time {
		font-size: 70%;
	}
	.web_head .txt {
		font-size: 100%;
	}
	.tel_head03 .icn {
		font-size: 53%;
	}
	.tel_head02 .txt {
		font-size: 62%;
	}
	.free_head .txt {
		line-height: 1.1;
		font-size: 100%;
	}
}
@media(min-width: 1025px) and (max-width:1200px) {}
@media(min-width: 768px) and (max-width:1200px) {}
@media(min-width: 768px) and (max-width:1200px) {
	.tel_head {
		height:calc(80 / 1200*100vw);
	}
	.tel_head .icn {
		width: calc(32 / 1200*100vw);
		height:calc(32 / 1200*100vw);
		line-height: calc(32 / 1200*100vw);
		font-size:calc(11/ 1200*100vw);
	}
	.tel_head .txt {
		margin-top: .4em;
		font-size: calc(11/ 1200*100vw);
	}
	.tel_head .tel {
		font-size: calc(15 / 1200 * 100vw);
        padding-left: 0;
	}
	/* .tel_head .tel:before {
		width: calc(20 / 1200*100vw);
	} */
	.tel_head .time {
		font-size:calc(11/ 1200*100vw);
	}
	/* .web_head a:after {
		bottom: calc(11 / 1200*100vw);
		width: calc(8 / 1200*100vw);
	} */
	.web_head .txt {
		font-size: calc(18/ 1200*100vw);
		margin-top: calc(25 / 1200 * 100vw);
	}
	.row_head {
		/* right: 0; */
		right: calc(80 / 1200 * 100vw);
		width: calc(650 / 1200 * 100vw);
	}
	.tel_head {
		/* width: calc(100% - calc(80 / 1200*100vw)); */
		/* width: 25%; */
	}
	.tel_head01 {
		/* margin-right: calc(80 / 1200*100vw); */
	}
	.web_head {
		top: calc(80 / 1200*100vw);
		/* position: absolute; */
		height: calc(80 / 1200*100vw);
		/* width: calc(80 / 1200*100vw); */
		/* width: 25%; */
	}
	.web_head a::before {
		width: calc(30 / 1299 * 100vw);
    	height: calc(30 / 1299 * 100vw);
		top: calc(5 / 1200 * 100vw);
	}
	.tel_head03, .tel_head02 {
		/* margin-right: calc(80 / 1200*100vw); */
	}
	.tel_head03 .icn {
		font-size:calc(8/ 1200*100vw);
	}
	.free_head {
		height: calc(80 / 1200 * 100vw);
	}
	.free_head .txt {
		font-size: calc(14 / 1200 * 100vw);
	}
	.free_head a::before {
		bottom: calc(15 / 1200 * 100vw);
		width: calc(10 / 1200 * 100vw);
    	height: calc(15 / 1200 * 100vw);
	}
	header {
		height: calc(180 / 1200*100vw);
	}
	h1 {
		width:calc(420 / 1299 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:910px) {

}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	header {
		height: auto;
		background: none;
	}
	h1 {
		top: 4vw;
		left: 4vw;
		max-width: calc(540 / 750 * 100vw);
	}
}
/* メインイメージ main_img
------------------------------------------------------------------*/
.main_img {
	position: relative;
	z-index: 0;
	overflow-x:hidden;
}
.main_img .slide_main {
	opacity: 0;
}
.main_img .slide_main li {
/* 	min-height: calc(970 / 1920 * 100vw);
	height: 100vh; */
	height: calc(790 / 1920 * 100vw);
}
.main_img.tab .slide_main li {
	height: auto;
}
.main01 {
	/*background:url(images/index/icn_main04.png)no-repeat right 0px bottom -195px / auto 100%,url(images/index/img_main01.jpg)no-repeat center / cover;*/
	background:url(images/index/icn_main04.png)no-repeat right 0px bottom 0px / auto 85%,url(images/index/img_main01.jpg)no-repeat center / cover;
}
.main02 {
	background:url("images/index/main03-3.jpg")no-repeat center top / cover;
}

.main02:after{
	content: "";
	position: absolute;
	background: url("images/index/img_main03.png")no-repeat right bottom/contain;
	bottom: 0;
	right: 0;
	margin: auto;
    width: calc(636 / 1920 * 100vw);
    height: calc(773 / 1920 * 100vw);
}
.main_img .slick-slide .sp_only {
	display: none !important;
}
.catch_main {
	position: absolute;
	/* bottom: 6.6%; */
	bottom: 17.6%;
	left: 1.5%;
	/* max-width: 936px; */
	z-index: 5;
	width: calc(876 / 1920 * 100vw);
}
.icn_main {
	position: absolute;
	bottom: 6%;
	right: 27%;
	width: 100%;
}
.icn_main ul {
	max-width: 500px;
	width: 100%;
	margin-left: auto;
	/* margin-right: -100px; */
}
.icn_main .icn01 {
	background: url(./images/index/icn_main01.svg) no-repeat center / contain;
	position: relative;
	width: 240px;
	height: 240px;
	margin-right: 2%;
	margin-bottom: 1%;
}
.icn_main .icn01 .ttl {
	position: absolute;
	top: 7%;
	left: 14%;
	font-size: 130%;
	letter-spacing: .1em;
}
.icn_main .icn01 .txt {
	position: absolute;
	bottom: 14%;
	left: 0;
	width: 100%;
	line-height: 1.29;
	font-size: 70%;
	letter-spacing: .1em;
}
.icn_main .icn02 {
	background: url(./images/index/icn_main02.svg) no-repeat center / contain;
	position: relative;
	width: 240px;
	height: 240px;
	margin-right: 2%;
	margin-bottom: 1%;
}
.icn_main .icn02 .ttl {
	position: absolute;
	top: 7%;
	left: 14%;
	font-size: 130%;
	letter-spacing: .1em;
}
.icn_main .icn02 .txt {
	position: absolute;
	bottom: 15%;
	left: 0;
	width: 100%;
	line-height: 1.29;
	font-size: 70%;
	letter-spacing: .1em;
}
.icn_main .icn03 {
	background: url(./images/index/icn_main03.svg) no-repeat center / contain;
	position: relative;
	max-width: 346px;
	width: 38%;
	height: 346px;
}
.icn_main .icn03 .ttl {
	position: absolute;
	top: 14%;
	left: 0;
	width: 100%;
	font-size: 170%;
	letter-spacing: .1em;
}
.icn_main .icn03 .txt {
	position: absolute;
	top: 34%;
	left: 0;
	width: 100%;
	font-size: 110%;
	letter-spacing: 0;
}
.main_img .main_box01 {
	max-width: 840px;
	width: 38%;
	/* padding: 40px 1% 55px; */
	padding: 30px 1% 35px;
	margin-left: auto;
	/* position: absolute; */
	position: relative;
	background: rgba(219, 53, 139, .9);
	right: -41px;
	top: -16%;
	z-index: 0;
}
.main_img .main_box01::after {
	content: "";
	width: calc(100% - 40px);
	height: calc(100% - 40px);
	margin: auto;
	position: absolute;
	border: 2px solid rgba(255, 255, 255, .9);
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -3;
}

.main_img .main_box01 .ttl {
	margin-bottom: -5px;
    line-height: 1.5;
    letter-spacing: .1em;
    font-size: 300%;
    width: 60%;
    margin-left: auto;
    margin-right: 103px;
}
.main_img .main_box01 .ttl span {
	position: relative;
}
.main_img .main_box01 .ttl span::before {
	content: "";
	width: 100%;
	height: 21px;
	margin: auto;
	background: url(images/index/main_chat_border01.png)no-repeat center bottom / cover;
	position: absolute;
	bottom: -20px;
	left: 0;
	right: 0;
}
.main_img .main_box01 .txt {
	width: 90%;
	margin-left: 4vw;
	line-height: 1.1;
	letter-spacing: 0;
	position: relative;
}
.main_img .main_box01 .txt02 {
	font-size: 188%;
}
.main_img .main_box01 .txt_br {
	width: 20%;
	max-width: 100px;
	display: block;
	position: absolute;
	left: -61px;
	bottom: 28px;
	font-size: 236%!important;
}
.main_img .main_box01 .txt .f40 {
	font-size: 200%;
}
.main_img .main_box01 .txt .f60 {
	font-size: 270%;
}
.main_img .main_box01 .txt .f130 {
	font-size: 878%;
	vertical-align: sub;
	line-height: 1;
}
.main_img .main_box01 .circle01 {
	/*width: 180px;
	height: 180px;*/
	width: 255px;
    height: 255px;
	margin: auto;
	line-height: 1.5;
	letter-spacing: 0;
	/*font-size: 127.7%;*/
	font-size: 190%;
	text-align: center;
	color: #184696;
	background: #ffff75;
	border-radius: 100%;
	transform: rotate(14deg);
	position: absolute;
	/*top: -7px;
	right: 1%;*/
	/* top: -22px; */
	top:0;
    right: -62%;
}
.main_img .main_box01 .circle01::before {
	content: "";
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	margin: auto;
	position: absolute;
	border: 1px solid #184696;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: 100%;
}

.catch_main02 {
	position: absolute;
	flex-direction: column;
	align-items: center;
	top: calc(230 / 1920 * 100vw);
    left: 14%;
	flex-wrap: nowrap;
    white-space: nowrap;
}
.row_main01 {
	position: relative;
    left: calc(40 / 1920 * 100vw);
	align-items: center;
    flex-wrap: nowrap;
}
.row_main01 .col01 {
	background: url(images/index/deco_main01.png)no-repeat center / contain;
	width: calc(849 / 1920 * 100vw);
	display: flex;
    justify-content: center;
}
.row_main01 .col01 p,
.row_main01 .col03 p {
	font-size: calc(46 / 1920 * 100vw);
	color: #153a76;
}
.row_main01 .col01 p span {
	font-size: calc(56 / 1920 * 100vw);
	color: #4dc9e7;
}
.row_main01 .col02 {
	position: relative;
    left: calc(10 / 1920 * 100vw);
}
.row_main01 .col02 p {
	font-size: calc(40 / 1920 * 100vw);
	color: #fff;
}
.row_main01 .col03 {
	background: url(images/index/deco_main02.png)no-repeat center / contain;
	width: calc(489 / 1920 * 100vw);;
    height: calc(101 / 1920 * 100vw);
	margin-left:  calc(10/ 1920 * 100vw);
    padding: calc(5 / 1920 * 100vw) 0;
	display: flex;
    justify-content: center;
}
.row_main02 {
    margin-left: 19%;
	align-items: center;
	gap: 0 calc(50 / 1920 * 100vw);
    position: relative;
    left: calc(-20 / 1920 * 100vw);
}
.row_main02 .col02 > .txt01 {
	font-size: calc(120 / 1920 * 100vw);
	color: #fff;
	line-height: 1;
	letter-spacing: 0;
}
.row_main03 {
	align-items: center;
	flex-wrap: nowrap;
    margin-top: calc(-25 / 1920 * 100vw);
}
.row_main03 .txt01 {
	font-size: calc(98 / 1920 * 100vw);
	margin-right: calc(20 / 1920 * 100vw);
	color: #ffff75;
	line-height: 1.1;
	letter-spacing: 0;
}
.row_main03 .txt02 {
	color: #ffff75;
	font-size: calc(270 / 1920 * 100vw);
	line-height: 1.1;
	letter-spacing: 0;
}
.row_main03 .txt03{
	font-size: calc(100 / 1920 * 100vw);
	color: #ffff75;
	letter-spacing: 0;
    margin-left:  calc(-5 / 1920 * 100vw);
}
.catch_main03 {
	position: absolute;
	bottom: calc(30 / 1920 * 100vw);
	left: calc(365 / 1920 * 100vw);
}
.row_main04 {
	gap: 0 calc(10 / 1920 * 100vw);
	align-items: center;
	flex-wrap: nowrap;
}
.row_main04 .col01 {
	width: calc(239 / 1920 * 100vw);
}
.row_main04 .col02 .txt01 {
	color: #ffff75;
	font-size: calc(160 / 1920 * 100vw);
	line-height: 0.8;
	text-shadow: 0px 0px 20px #153a76;
	text-align: center;
    letter-spacing: 0;
	margin-left: calc(-60 / 1920 * 100vw);
	position: relative;
}
.row_main04 .col02 .txt01:before{
	content: "※";
	position: absolute;
	top: calc(-5 / 1920 * 100vw);
	left: calc(-20 / 1920 * 100vw);
	width: auto;
	height: auto;
	font-size:calc(28 / 1920 * 100vw);
	color: #fff;
}
.row_main04 .col02 .txt01 span {
	font-size: calc(100 / 1920 * 100vw);
}
.row_main04 .col02 .txt02 {
	color: #fff;
	font-size: calc(25 / 1920 * 100vw);
    letter-spacing: 0;
	text-shadow: 0px 0px 20px #153a76;
}
.row_main04 .row {
	flex-wrap: nowrap;
    white-space: nowrap;
	gap: 0 calc(30 / 1920 * 100vw);
}
.row_main04 .txt03 {
	font-size: calc(72 / 1920 * 100vw);
    line-height: 1.2;
    color: #ffff;
	text-shadow: 0px 0px 20px #153a76;
}
.catch_main04 {
	position: absolute;
    bottom: calc(100 / 1920 * 100vw);
    left: calc(80 / 1920 * 100vw);
	width: calc(272/1920 * 100vw);
}
.catch_main05{
	position: absolute;
	top: calc(38 / 1920 * 100vw);
	left: calc(42 / 1920 * 100vw);
}
.row_main05{
	grid-column-gap: 1.7%;
	margin-bottom: calc(21 / 1920 * 100vw);
}
.row_main05 .col{
	width: calc(439 / 1920 * 100vw);
	height: calc(97 / 1920 * 100vw);
	font-size: calc(43.5 / 1920 * 100vw);
	letter-spacing: 0;
	border: 1px solid #b88d2e;
	border-radius: calc(50 / 1920 * 100vw);
}
.row_main05 .col.col03{
	width: calc(360 / 1920 * 100vw);
}
.main_copy01{
	font-size: calc(101.5 / 1920 * 100vw);
	line-height: 1.2;
	text-shadow: 0px 0px 5px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 15px #fff, 0px 0px 15px #fff;
	margin-left: calc(5 / 1920 * 100vw);
	margin-bottom: calc(25 / 1920 * 100vw);
}
.main_copy01 .txt{
	font-size: calc(118.5 / 1920 * 100vw);
    letter-spacing: 0.05em;
}
.main_copy01 .txt02{
	font-size: calc(118.5 / 1920 * 100vw);
    margin-right: calc(-4 / 1920 * 100vw);
    margin-left:calc(3 / 1920 * 100vw);
    letter-spacing: 0;
}
.main_copy01 .txt03{
	font-size: calc(118.5 / 1920 * 100vw);
    margin-left: calc(-4 / 1920 * 100vw);
    letter-spacing: 0;
}
.main_copy01 .txt04{
	letter-spacing: -3px;
}
.main_copy02{
	font-size: calc(68 / 1920 * 100vw);
	line-height: 1;
	letter-spacing: 0.015em;
	text-shadow: 0px 0px 5px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 15px #fff, 0px 0px 15px #fff;
    margin-left: calc(12 / 1920 * 100vw);
	margin-bottom: calc(30 / 1920 * 100vw);
}
.row_main06{
	grid-column-gap: 2.8%;
	margin-right: calc(84 / 1920 * 100vw);
}
.row_main06 .col{
	width: calc(219 / 1920 * 100vw);
	height: calc(219 / 1920 * 100vw);
    filter: drop-shadow(-1px 1px 5px #fff);
}
.row_main06 .col.col01{
	background: url(./images/index/bg_main02.png)no-repeat center / contain;
}
.row_main06 .col.col02{
	background: url(./images/index/bg_main03.png)no-repeat center / contain;
}
.row_main06 .col.col03{
	background: url(./images/index/bg_main04.png)no-repeat center / contain;
}
.row_main06 .col.col04{
	background: url(./images/index/bg_main03.png)no-repeat center / contain;
}
.row_main06 .col .txt > em{
	font-size: calc(48 / 1920 * 100vw);
	line-height: 1.1;
	letter-spacing: 0.1em;
	display: block;
}
.row_main06 .col.col01 .txt, .row_main06 .col.col02 .txt{
	margin-top: calc(37 / 1920 * 100vw);
}
.row_main06 .col.col03 .txt, .row_main06 .col.col04 .txt{
	margin-top: calc(16 / 1920 * 100vw);
}
.row_main06 .col.col01 .txt > em{
	padding-left: calc(8 / 1920 * 100vw); 
	margin-bottom: calc(29 / 1920 * 100vw); 
}
.row_main06 .col.col02 .txt > em{
	letter-spacing: -3px;
	margin-bottom: calc(29 / 1920 * 100vw); 
}
.row_main06 .col.col03 .txt > em{
    letter-spacing: -9px;
    margin-bottom: calc(4 / 1920 * 100vw);
    padding-right: calc(4 / 1920 * 100vw);
}
.row_main06 .col.col04 .txt > em{
    letter-spacing: 0;
    margin-bottom: calc(4 / 1920 * 100vw);
}
.row_main06 .col.col04 .txt > em > span{
	font-size: calc(34 / 1920 * 100vw);
}
.row_main06 .col .txt > em.small02{
	font-size: calc(44 / 1920 * 100vw);
}
.row_main06 .col .txt > .small{
    font-size: calc(22 / 1920 * 100vw);
    letter-spacing: 0.01em;
    line-height: 1.3;
    display: inline-block;
}
.catch_main06{
	width: calc(400 / 1920 * 100vw);
    background: #84adc9;
    padding: calc(20 / 1920 * 100vw) calc(20 / 1920 * 100vw) calc(15 / 1920 * 100vw);
    position: absolute;
    bottom: calc(40 / 1920 * 100vw);
    right: calc(40 / 1920 * 100vw);
    z-index: 1;
}
.catch_main06 .name{ 
    font-size: calc(24 / 1920 * 100vw);
    padding-bottom: calc(4 / 1920 * 100vw);
    margin-bottom: calc(7 / 1920 * 100vw);
    border-bottom: 1px solid #fff;
}
.catch_main06 .name > span{
	margin-left: calc(54 / 1920 * 100vw);
}
.catch_main06 .name > span > em{
	font-size: calc(44 / 1920 * 100vw);
    line-height: 1;
    margin-right: calc(9 / 1920 * 100vw);
	display: inline-block;
}
.catch_main06 .list{
	padding-left: calc(21 / 1920 * 100vw);
}
.catch_main06 .list li:not(:first-child){
	margin-top: calc(2 / 1920 * 100vw); 
}
.catch_main06 .list li .txt{
	font-size: calc(24 / 1920 * 100vw);
	 line-height: 1;
    letter-spacing: 0;
}
.catch_main06 .list li .txt .num{
	font-size: calc(34 / 1920 * 100vw);
}
.catch_main06 .list li .txt .ja{
	font-size: calc(24 / 1920 * 100vw);
}
.catch_main06 .list li .icn{
	margin-right: calc(8 / 1920 * 100vw); 
	margin-bottom: calc(5 / 1920 * 100vw); 
}
.catch_main06 .list li .icn02{
    margin-left: calc(6 / 1920 * 100vw);
    margin-right: calc(13 / 1920 * 100vw);
}
@media(min-width: 768px) and (max-width:1799px){
	.row_main05 .col{
		width: calc(349 / 1699 * 100vw);
	}
	.row_main05 .col.col03{
		width: calc(320 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.catch_main02 {
		top: calc(200 / 1599 * 100vw);
	}
	.row_main01 {
		left: calc(40 / 1599 * 100vw);
	}
	.row_main01 .col01 {
		width: calc(849 / 1599 * 100vw);
	}
	.row_main01 .col01 p,
	.row_main01 .col03 p {
		font-size: calc(46 / 1599 * 100vw);
	}
	.row_main01 .col01 p span {
		font-size: calc(56 / 1599 * 100vw);
	}
	.row_main01 .col02 {
		left: calc(10 / 1599 * 100vw);
	}
	.row_main01 .col02 p {
		font-size: calc(40 / 1599 * 100vw);
	}
	.row_main01 .col03 {
		width: calc(489 / 1599 * 100vw);;
		height: calc(101 / 1599 * 100vw);
		margin-left:  calc(10/ 1599 * 100vw);
		padding: calc(5 / 1599 * 100vw) 0;
	}
	.row_main02 {
		gap: 0 calc(50 / 1599 * 100vw);
        margin-top: calc(35 / 1599 * 100vw);
	}
	.row_main02 .col02 > .txt01 {
		font-size: calc(100 / 1599 * 100vw);
	}
	.row_main03 {
		align-items: center;
		flex-wrap: nowrap;
		margin-top: calc(-25 / 1599 * 100vw);
	}
	.row_main03 .txt01 {
		font-size: calc(80 / 1599 * 100vw);
		margin-right: calc(20 / 1599 * 100vw);
	}
	.row_main03 .txt02 {
		font-size: calc(230 / 1599 * 100vw);
	}
	.row_main03 .txt03{
		font-size: calc(90 / 1599 * 100vw);
		margin-left:  calc(-5 / 1599 * 100vw);
	}
	.catch_main03 {
		bottom: calc(34 / 1599 * 100vw);
		left: calc(330 / 1599 * 100vw);
	}
	.row_main04 {
		gap: 0 calc(10 / 1599 * 100vw);
	}
	.row_main04 .row {
		gap: 0 calc(30 / 1599 * 100vw);
	}
	.row_main04 .col01 {
		width: calc(210 / 1599 * 100vw);
	}
	.row_main04 .col02 .txt01 {
		font-size: calc( 150/ 1599 * 100vw);
		margin-left: calc(-15 / 1599 * 100vw);
	}
	.row_main04 .col02 .txt01:before{
		top: calc(-5 / 1599 * 100vw);
		left: calc(-20 / 1599 * 100vw);
		font-size: calc(25 / 1599 * 100vw);
	}
	.row_main04 .col02 .txt01 span {
		font-size: calc(90 / 1599 * 100vw);
	}
	.row_main04 .col02 .txt02 {
		font-size: calc(21 / 1599 * 100vw);
	}
	.row_main04 .txt03 {
		font-size: calc(60 / 1599 * 100vw);
	}
	.main02:after{
		width: calc(636 / 1599 * 100vw);
        height: calc(727 / 1599 * 100vw);
    	right: -6%;
	}
	.main_img .slide_main li {
		height: calc(790 / 1599 * 100vw);
	}
	.catch_main04 {
		bottom: calc(100 / 1599 * 100vw);
		left: calc(20 / 1599 * 100vw);
        width: calc(226 / 1599 * 100vw);
	}
	.catch_main05{
		top: calc(38 / 1599 * 100vw);
		left: calc(42 / 1599 * 100vw);
	}
	.row_main05{
		margin-bottom: calc(21 / 1599 * 100vw);
	}
	.row_main05 .col{
		width: calc(349 / 1599 * 100vw);
		height: calc(77 / 1599 * 100vw);
		font-size: calc(33.5 / 1599 * 100vw);;
		border-radius: calc(50 / 1599 * 100vw);
	}
	.row_main05 .col.col03{
		width: calc(320 / 1599 * 100vw);
	}
	.main_copy01{
		font-size: calc(101.5 / 1599 * 100vw);
		margin-left: calc(5 / 1599 * 100vw);
		margin-bottom: calc(25 / 1599 * 100vw);
	}
	.main_copy01 .txt{
		font-size: calc(118.5 / 1599 * 100vw);
		letter-spacing: 0.05em;
	}
	.main_copy01 .txt02{
		font-size: calc(118.5 / 1599 * 100vw);
		margin-right: calc(-4 / 1599 * 100vw);
		margin-left:calc(3 / 1599 * 100vw);
	}
	.main_copy01 .txt03{
		font-size: calc(118.5 / 1599 * 100vw);
		margin-left: calc(-4 / 1599 * 100vw);
	}
	.main_copy02{
		font-size: calc(68 / 1599 * 100vw);
		margin-left: calc(12 / 1599 * 100vw);
		margin-bottom: calc(30 / 1599 * 100vw);
	}
	.row_main06{
		margin-right: calc(84 / 1599 * 100vw);
	}
	.row_main06 .col{
		width: calc(219 / 1599 * 100vw);
		height: calc(219 / 1599 * 100vw);
	}
	.row_main06 .col .txt > em{
		font-size: calc(48 / 1599 * 100vw);
	}
	.row_main06 .col.col01 .txt, .row_main06 .col.col02 .txt{
		margin-top: calc(37 / 1599 * 100vw);
	}
	.row_main06 .col.col03 .txt, .row_main06 .col.col04 .txt{
		margin-top: calc(16 / 1599 * 100vw);
	}
	.row_main06 .col.col01 .txt > em{
		padding-left: calc(8 / 1599 * 100vw); 
		margin-bottom: calc(29 / 1599 * 100vw); 
	}
	.row_main06 .col.col02 .txt > em{
		margin-bottom: calc(29 / 1599 * 100vw); 
	}
	.row_main06 .col.col03 .txt > em{
		margin-bottom: calc(4 / 1599 * 100vw);
		padding-right: calc(4 / 1599 * 100vw);
	}
	.row_main06 .col.col04 .txt > em{;
		margin-bottom: calc(4 / 1599 * 100vw);
	}
	.row_main06 .col.col04 .txt > em > span{
		font-size: calc(34 / 1599 * 100vw);
	}
	.row_main06 .col .txt > em.small02{
		font-size: calc(44 / 1599 * 100vw);
	}
	.row_main06 .col .txt > .small{
		font-size: calc(22 / 1599 * 100vw);
	}
	.catch_main06{
		width: calc(400 / 1599 * 100vw);
		padding: calc(20 / 1599 * 100vw) calc(20 / 1599 * 100vw) calc(15 / 1599 * 100vw);
		bottom: calc(40 / 1599 * 100vw);
		right: calc(40 / 1599 * 100vw);
	}
	.catch_main06 .name{ 
		font-size: calc(24 / 1599 * 100vw);
		padding-bottom: calc(4 / 1599 * 100vw);
		margin-bottom: calc(7 / 1599 * 100vw);
	}
	.catch_main06 .name > span{
		margin-left: calc(54 / 1599 * 100vw);
	}
	.catch_main06 .name > span > em{
		font-size: calc(44 / 1599 * 100vw);
		margin-right: calc(9 / 1599 * 100vw);
	}
	.catch_main06 .list{
		padding-left: calc(21 / 1599 * 100vw);
	}
	.catch_main06 .list li:not(:first-child){
		margin-top: calc(2 / 1599 * 100vw); 
	}
	.catch_main06 .list li .txt{
		font-size: calc(24 / 1599 * 100vw);
	}
	.catch_main06 .list li .txt .num{
		font-size: calc(34 / 1599 * 100vw);
	}
	.catch_main06 .list li .txt .ja{
		font-size: calc(24 / 1599 * 100vw);
	}
	.catch_main06 .list li .icn{
		margin-right: calc(8 / 1599 * 100vw); 
		margin-bottom: calc(5 / 1599 * 100vw); 
	}
	.catch_main06 .list li .icn02{
		margin-left: calc(6 / 1599 * 100vw);
		margin-right: calc(13 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.catch_main02 {
		top: calc(170 / 1299 * 100vw);
	}
	.row_main01 {
		left: calc(40 / 1299 * 100vw);
	}
	.row_main01 .col01 {
		width: calc(720 / 1299 * 100vw);
	}
	.row_main01 .col01 p,
	.row_main01 .col03 p {
		font-size: calc(37 / 1299 * 100vw);
	}
	.row_main01 .col01 p span {
		font-size: calc(56 / 1299 * 100vw);
	}
	.row_main01 .col02 {
		left: calc(8 / 1299 * 100vw);
	}
	.row_main01 .col02 p {
		font-size: calc(37 / 1299 * 100vw);
	}
	.row_main01 .col03 {
		width: calc(375 / 1299 * 100vw);
		height: calc(101 / 1299 * 100vw);
		margin-left: calc(10 / 1299 * 100vw);
		padding: calc(15 / 1299 * 100vw) 0;
	}
	.row_main02 {
		gap: 0 calc(50 / 1299 * 100vw);
		left: calc(-80 / 1299 * 100vw);
        margin-top: calc(50 / 1299 * 100vw);
	}
	.row_main02 .col02 > .txt01 {
		font-size: calc(80 / 1299 * 100vw);
	}
	.row_main03 {
		margin-top: calc(-25 / 1299 * 100vw);
	}
	.row_main03 .txt01 {
		font-size: calc(70 / 1299 * 100vw);
		margin-right: calc(20 / 1299 * 100vw);
	}
	.row_main03 .txt02 {
		font-size: calc(200 / 1299 * 100vw);
	}
	.row_main03 .txt03{
		font-size: calc(80 / 1299 * 100vw);
		margin-left:  calc(-5 / 1299 * 100vw);
	}
	.catch_main03 {
		left: calc(220 / 1299 * 100vw);
        bottom: calc(45 / 1299 * 100vw);
	}
	.row_main04 {
		gap: 0 calc(10 / 1299 * 100vw);
	}
	.row_main04 .row {
		gap: 0 calc(20 / 1299 * 100vw);
	}
	.row_main04 .col01 {
		width:calc(180 / 1299 * 100vw);
	}
	.row_main04 .col02 .txt01 {
		font-size: calc(130 / 1299 * 100vw);
		margin-left: calc(-16 / 1299 * 100vw);
	}
	.row_main04 .col02 .txt01:before{
		top: calc(-5 / 1299 * 100vw);
		left: calc(-10 / 1299 * 100vw);
		font-size: calc(20 / 1299 * 100vw);
	}
	.row_main04 .col02 .txt01 span {
		font-size: calc(80 / 1299 * 100vw);
	}
	.row_main04 .col02 .txt02 {
		font-size: calc(16 / 1299 * 100vw);
	}
	.row_main04 .txt03 {
		font-size: calc(42 / 1299 * 100vw);
	}
	.main02:after{
		width: calc(636 / 1299 * 100vw);
		height: calc(567 / 1299 * 100vw);
	}
	.main_img .slide_main li {
		height: calc(850 / 1299 * 100vw);
	}
	.catch_main04 {
		bottom: calc(100 / 1299 * 100vw);
		left: calc(10 / 1299 * 100vw);
        width: calc(183 / 1299 * 100vw);
	}
}
@media(min-width: 768px)and (max-width:1200px)  {
	.catch_main02{
		top: calc(190 / 1299 * 100vw);
	}
	.row_main01 {
		left: calc(140 / 1299 * 100vw);
		margin-bottom:calc(30 / 1299 * 100vw);
	}
	.row_main01 .col01 {
		width: calc(518 / 1299 * 100vw);
	}
	.row_main01 .col01 p,
	.row_main01 .col03 p {
		font-size: calc(28 / 1299 * 100vw);
	}
	.row_main01 .col01 p span {
		font-size: calc(40 / 1299 * 100vw);
	}
	.row_main01 .col02 {
		left: calc(8 / 1299 * 100vw);
	}
	.row_main01 .col02 p {
		font-size: calc(26 / 1299 * 100vw);
	}
	.row_main01 .col03 {
        width: calc(300 / 1299 * 100vw);
        height: auto;
        margin-left: calc(10 / 1299 * 100vw);
        padding: calc(25 / 1299 * 100vw) calc(0 / 1299 * 100vw);
	}
    .row_main02 {
		left: calc(-50 / 1299 * 100vw);
	}
	.main_img .slide_main li {
		min-height: calc(850 / 1200 * 100vw);
	}
	.row_main04 .col02 .txt01 {
		font-size: calc(110 / 1299 * 100vw);
	}
	.row_main04 .col02 .txt01 span {
        font-size: calc(66 / 1299 * 100vw);
    }
	.row_main04 .txt03 {
        font-size: calc(38 / 1299 * 100vw);
    }
	.catch_main05{
		top: calc(38 / 1299 * 100vw);
		left: calc(42 / 1299 * 100vw);
	}
	.row_main05{
		margin-bottom: calc(21 / 1299 * 100vw);
	}
	.row_main05 .col{
		width: calc(349 / 1299 * 100vw);
		height: calc(77 / 1299 * 100vw);
		font-size: calc(33.5 / 1299 * 100vw);
		border-radius: calc(50 / 1299 * 100vw);
	}
	.row_main05 .col.col03{
		width: calc(320 / 1299 * 100vw);
	}
	.main_copy01{
		font-size: calc(91.5 / 1299 * 100vw);
		margin-left: calc(5 / 1299 * 100vw);
		margin-bottom: calc(25 / 1299 * 100vw);
	}
	.main_copy01 .txt{
		font-size: calc(108.5 / 1299 * 100vw);
		letter-spacing: 0.05em;
	}
	.main_copy01 .txt02{
		font-size: calc(108.5 / 1299 * 100vw);
		margin-right: calc(-4 / 1299 * 100vw);
		margin-left:calc(3 / 1299 * 100vw);
	}
	.main_copy01 .txt03{
		font-size: calc(108.5 / 1299 * 100vw);
		margin-left: calc(-4 / 1299 * 100vw);
	}
	.main_copy01 .txt04 {
		letter-spacing: 0;
	}
	.main_copy02{
		font-size: calc(54 / 1299 * 100vw);
		margin-left: calc(12 / 1299 * 100vw);
		margin-bottom: calc(30 / 1299 * 100vw);
	}
	.row_main06{
		justify-content: flex-start !important;
		margin-right: 0;
	}
	.row_main06 .col{
		width: calc(219 / 1299 * 100vw);
		height: calc(219 / 1299 * 100vw);
	}
	.row_main06 .col .txt > em{
		font-size: calc(48 / 1299 * 100vw);
	}
	.row_main06 .col.col01 .txt, .row_main06 .col.col02 .txt{
		margin-top: calc(37 / 1299 * 100vw);
	}
	.row_main06 .col.col03 .txt, .row_main06 .col.col04 .txt{
		margin-top: calc(16 / 1299 * 100vw);
	}
	.row_main06 .col.col01 .txt > em{
		padding-left: calc(8 / 1299 * 100vw); 
		margin-bottom: calc(29 / 1299 * 100vw); 
	}
	.row_main06 .col.col02 .txt > em{
		margin-bottom: calc(29 / 1299 * 100vw); 
	}
	.row_main06 .col.col03 .txt > em{
		margin-bottom: calc(4 / 1299 * 100vw);
		padding-right: calc(4 / 1299 * 100vw);
	}
	.row_main06 .col.col04 .txt > em{;
		margin-bottom: calc(4 / 1299 * 100vw);
	}
	.row_main06 .col.col04 .txt > em > span{
		font-size: calc(34 / 1299 * 100vw);
	}
	.row_main06 .col .txt > em.small02{
		font-size: calc(44 / 1299 * 100vw);
	}
	.row_main06 .col .txt > .small{
		font-size: calc(22 / 1299 * 100vw);
	}
	.catch_main06{
		width: calc(400 / 1299 * 100vw);
		padding: calc(20 / 1299 * 100vw) calc(20 / 1299 * 100vw) calc(15 / 1299 * 100vw);
		bottom: calc(10 / 1299 * 100vw);
		right: calc(40 / 1299 * 100vw);
	}
	.catch_main06 .name{ 
        font-size: calc(20 / 1299 * 100vw);
        padding-bottom: calc(4 / 1299 * 100vw);
        margin-bottom: 0;
	}
	.catch_main06 .name > span{
		margin-left: calc(54 / 1299 * 100vw);
	}
	.catch_main06 .name > span > em{
        font-size: calc(34 / 1299 * 100vw);
        margin-right: calc(9 / 1299 * 100vw);
	}
	.catch_main06 .list{
		padding-left: calc(21 / 1299 * 100vw);
	}
	.catch_main06 .list li:not(:first-child){
        margin-top: calc(-18 / 1299 * 100vw);
	}
	.catch_main06 .list li .txt{
		font-size: calc(24 / 1299 * 100vw);
	}
	.catch_main06 .list li .txt .num{
		font-size: calc(34 / 1299 * 100vw);
	}
	.catch_main06 .list li .txt .ja{
		font-size: calc(24 / 1299 * 100vw);
	}
	.catch_main06 .list li .icn{
        width: calc(38 / 1299 * 100vw);
        margin-right: calc(8 / 1299 * 100vw);
	}
	.catch_main06 .list li .icn02{
		width: calc(25 / 1299 * 100vw);
		margin-left: calc(6 / 1299 * 100vw);
		margin-right: calc(13 / 1299 * 100vw);
	}
}
@media only screen and (max-width: 767px) {
	.main_img .slide_main li {
		min-height: auto;
		height: calc( 874/ 750 * 100vw );
		background: url(images/index/main03-3_sp.jpg) no-repeat center / cover;
	}
	.catch_main02 {
		top: 60vw;
		left: 0;
        display: block;
	}
	.row_main01 {
		left: 1vw;
		margin-bottom: 31.5vw;
	}
	.row_main01 .col01 {
		width: calc(406 / 750 * 100vw);
		height: calc(104/ 750 * 100vw);
		background-image: url(images/index/deco_main01_sp.png);
	}
	.row_main01 .col01 p,
	.row_main01 .col03 p {
        font-size: calc(29 / 750 * 100vw);
        line-height: 1.2;
	    text-align: center;
        padding-top: 2vw;
	}
	.row_main01 .col01 p span {
		font-size: calc(35 / 750 * 100vw);
	}
	.row_main01 .col02 {
		left:-1vw;
		writing-mode: vertical-rl;
	}
	.row_main01 .col02 p {
		font-size: calc(25.5 / 750 * 100vw);
	}
	.row_main01 .col03 {
        width: calc(289 / 750 * 100vw);
        height: calc(65 / 750 * 100vw);
        margin-left: -2vw;
        padding: 0;
		background-image: url(images/index/deco_main02_sp.png);
	}
	.row_main02 {
		gap: 0 calc(50 / 750 * 100vw);
		left: 0;
		margin-left:3vw;
	}
	.row_main02 .col02 > .txt01 {
		font-size: calc(58 / 750 * 100vw);
		/* font-size: calc(66 / 750 * 100vw); */
		text-align: left;
	}
	.row_main03 {
		margin-top:2vw;
		flex-wrap: wrap;
		-webkit-justify-content: start;
		justify-content: start;
	}
	.row_main03 .txt01 {
		font-size: calc(46 / 750 * 100vw);
		margin: 0 0 -1vw;
		width: 100%;
        line-height: 1;
	}
	.row_main03 .txt02 {
		font-size: calc(180 / 750 * 100vw);
	}
	.row_main03 .txt03{
		font-size: calc(52.5 / 750 * 100vw);
		margin-left:0;
		margin-bottom: 1vw;
		line-height: 1.3;
	}
	.catch_main03 {
		left:3vw;
        bottom: calc(40 / 750 * 100vw);
	}
	.row_main04 {
		gap: 0 calc(10 / 750 * 100vw);
	}
	.row_main04 .col01 {
	    margin-top: -5vw;
		width:calc(180 / 750 * 100vw);
	}
	.row_main04 .col02 .txt01 {
		font-size: calc(120 / 750 * 100vw);
		margin-left: calc(-16 / 750 * 100vw);
		margin-bottom: 2vw;
		text-shadow: 0px 0px calc(30 / 750 * 100vw) #153a76;
	}
	.row_main04 .col02 .txt01:before{
        top: -0.5vw;
        left: -2vw;
        font-size: calc(16 / 750 * 100vw);
	}
	.row_main04 .col02 .txt01 span {
		font-size: calc(70 / 750 * 100vw);
	}
	.row_main04 .col02 .txt02 {
		font-size: calc(16 / 750 * 100vw);
	    letter-spacing: .09em;
		text-shadow: 0px 0px calc(20 / 750 * 100vw) #153a76;
	}
	.row_main04 .row {
		gap: 0 calc(20 / 750 * 100vw);
		position: relative;
    	top: calc(-10 / 750 * 100vw);
	}
	.catch_main04 {
		width: calc(514/750 * 100vw);
		left: 0;
        bottom: unset;
        top: calc(200 / 750 * 100vw);
	}
	.row_main04 .txt03 {
		font-size: calc(54 / 750 * 100vw);
    	line-height: 1.2;
		margin-top: calc(25 / 750 * 100vw);
	}
	.main02:after{
    	background: url(images/index/img_main03_sp.png) no-repeat right bottom / contain;
		width: calc(276 / 750 * 100vw);
        height: calc(623 / 750 * 100vw);
	}
	.catch_main05{
		top: calc(191 / 750 * 100vw);
        left: calc(23 / 750 * 100vw);
        width: 94%;
	}
	.row_main05{
		margin-bottom: calc(25 / 750 * 100vw);
	}
	.row_main05 .col{
        width: calc(240 / 750 * 100vw);
        height: calc(53 / 750 * 100vw);
        font-size: calc(24 / 750 * 100vw);
        border-radius: calc(50 / 750 * 100vw);
	}
	.row_main05 .col.col03{
		width: calc(200 / 750 * 100vw);
	}
	.main_copy01{
        font-size: calc(64 / 750 * 100vw);
	    line-height: 1.22;
        margin-left: 0;
        margin-bottom: calc(20 / 750 * 100vw);
	}
	.main_copy01 .txt{
        font-size: calc(74.5 / 750 * 100vw);
		letter-spacing: 0.05em;
	}
	.main_copy01 .txt02{
        font-size: calc(74.5 / 750 * 100vw);
        margin-left: calc(-1 / 750 * 100vw);
		margin-left:calc(3 / 750 * 100vw);
	}
	.main_copy01 .txt03{
        font-size: calc(74.5 / 750 * 100vw);
		margin-left: 0;
	}
	.main_copy01 .txt04{
		letter-spacing: 0;
	}
	.main_copy02{
        font-size: calc(46 / 750 * 100vw);
        line-height: 1.4;
        letter-spacing: 0;
		margin-left: calc(-1 / 750 * 100vw);
        margin-bottom: calc(24 / 750 * 100vw);
	}
	.row_main06{
		margin-right:0;
	    grid-column-gap: calc(25 / 750 * 100vw);
	}
	.row_main06 .col{
		width: calc(157 / 750 * 100vw);
        height: calc(157 / 750 * 100vw);
	}
	.row_main06 .col .txt > em{
		font-size: calc(34.5 / 750 * 100vw);
	}
	.row_main06 .col.col01 .txt, .row_main06 .col.col02 .txt{
		margin-top: calc(37 / 750 * 100vw);
	}
	.row_main06 .col.col03 .txt, .row_main06 .col.col04 .txt{
		margin-top: calc(22 / 750 * 100vw);
	}
	.row_main06 .col.col01 .txt > em{
        padding-left: calc(8 / 750 * 100vw);
        margin-bottom: calc(12 / 750 * 100vw);
	}
	.row_main06 .col.col02 .txt > em{
		margin-bottom: calc(12 / 750 * 100vw); 
	    letter-spacing: 0;
	}
	.row_main06 .col.col03 .txt > em{
        margin-bottom: calc(-5 / 750 * 100vw);
		padding-right: calc(4 / 750 * 100vw);
	}
	.row_main06 .col.col04 .txt > em{;
		margin-bottom: calc(4 / 750 * 100vw);
	}
	.row_main06 .col.col04 .txt > em > span{
		font-size: calc(26 / 750 * 100vw);
	}
	.row_main06 .col .txt > em.small02{
        font-size: calc(31.5 / 750 * 100vw);
	    letter-spacing: -0.2em;
	}
	.row_main06 .col.col04 .txt > em.small02{
		letter-spacing: -0.01em;
		margin-bottom: calc(-2 / 750 * 100vw);
	}
	.row_main06 .col .txt > .small{
		font-size: calc(16 / 750 * 100vw);
	}
	.catch_main06{
        width: calc(231 / 750 * 100vw);
        padding: calc(10 / 750 * 100vw) calc(20 / 750 * 100vw) calc(5 / 750 * 100vw);
        bottom: calc(210 / 750 * 100vw);
        right: calc(23 / 750 * 100vw);
	}
	.catch_main06 .name{ 
		font-size: calc(14.5 / 750 * 100vw);
        padding-bottom: 0;
        margin-bottom: 0;
	}
	.catch_main06 .name > span{
        margin-left: calc(28 / 750 * 100vw);
	}
	.catch_main06 .name > span > em{
		font-size: calc(25 / 750 * 100vw);
        margin-right: calc(9 / 750 * 100vw);
	}
	.catch_main06 .list{
		padding-left: 0;
	}
	.catch_main06 .list li{
		line-height: 1;
	}
	.catch_main06 .list li:not(:first-child){
		margin-top: calc(-15 / 750 * 100vw);
	}
	.catch_main06 .list li .txt{
		font-size: calc(13.5 / 750 * 100vw);
		line-height: 1;
	}
	.catch_main06 .list li .txt .num{
		font-size: calc(19.5 / 750 * 100vw);
	  	margin-left: calc(3 / 750 * 100vw);
	}
	.catch_main06 .list li .txt .ja{
		font-size: calc(13.5 / 750 * 100vw);
	}
	.catch_main06 .list li .icn{
		margin-right: calc(6 / 750 * 100vw);
		padding-bottom: calc(4 / 750 * 100vw);
		width: calc(20 / 750 * 100vw);
	}
	.catch_main06 .list li .icn02{
        margin-left: calc(5 / 750 * 100vw);
        margin-right: calc(8 / 750 * 100vw);
        margin-bottom: calc(4 / 750 * 100vw);
        width: calc(12 / 750 * 100vw);
	}
}
/* グローバルナビゲーション gnav
------------------------------------------------------------------*/
/* .gnav {
	transition: .3s;
	width: 100%;
}
.gnav.is_fixed {
	position: fixed;
	left: 0;
	z-index: 10;
	transition: .3s;
} */
/*.fix_nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	transition: .5s;
	width: 100%;
	transform: translateY(-100%);
	opacity: 0;
	background: rgba(255,255,255,.9);
}
.fix_nav.is_fixed  {
	transition: .5s;
	transform: translateY(0);
	opacity: 1;
	z-index: 10;
}*/
.btn_gnav {
	position: fixed;
	top: 0;
	right: 0;
	height: 130px;
	width: 130px;
	background: #153a76;
	z-index: 10000;
	outline: none;
	cursor: pointer;
    border: 1px solid #fff;
}
.btn_gnav:hover {
	opacity: .85;
	transition: .3s;
}
.btn_gnav .txt_gnav {
	position: absolute;
	width: 60px;
	right: 0;
	left: 0;
	bottom: 31px;
	margin: auto;
}
.btn_gnav .txt_gnav img {
	display: block;
}
.btn_gnav .icn_gnav {
	width: 30px;
	height: 2px;
	position: absolute;
	top: 51px;
	left: 0;
	right: 0;
	margin: auto;
	background: #fff;
	transition: transform .3s ease-in-out;
}
.btn_gnav .icn_gnav:before, .btn_gnav .icn_gnav:after {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	background: #fff;
	transition: transform .3s ease-in-out;
}
.btn_gnav .icn_gnav:before {
	top: -10px;
}
.btn_gnav .icn_gnav:after {
	bottom: -10px;
}
.open .btn_gnav .icn_gnav {
	background: none;
}
.open .btn_gnav .icn_gnav:before, .open .btn_gnav .icn_gnav:after {
	background: #fff;
	transition: transform .3s ease-in-out;
}
.open .btn_gnav .icn_gnav:before {
	transform: rotate(45deg);
	top: 0;
}
.open .btn_gnav .icn_gnav:after {
	transform: rotate(-45deg);
	bottom: 0;
}
.gnav > ul > li {
	position: relative;
}
.gnav .nav_sub {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
}
.bg_gnav {
	visibility: hidden;
	transition: .3s;
	opacity: 0;
}
.open .bg_gnav {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 9998;
	background: rgba(0, 0, 0, 0);
	visibility: visible;
	opacity: 1;
	transition: .3s;
	left: 0;
	top: 0;
}
.gnav_pc {
	padding: 160px 0 0;
	overflow-y: auto;
	overflow-x: hidden;
	background: rgba(255, 255, 255, .95);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
	height: 100%;
	visibility: hidden;
	opacity: 0;
	max-width: 710px;
	width: 100%;
	transition: opacity .6s ease, visibility .6s ease;
	line-height: 1.45;
}
.gnav {
	padding-bottom: 120px;
}
.gnav > ul {
	padding: 0 70px;
	display: block;
}
.gnav > ul > li {
	opacity: 0;
	transform: translateX(50%);
	transition: transform .6s ease, opacity .2s ease;
}
.gnav > ul > li:first-child {
	border-top: 1px solid #d2dbea;
}
.gnav > ul > li.nav_drawer {
	padding-bottom: 19px;
	border-bottom: 1px solid #d2dbea;
}
.gnav > ul > li > a {
	padding: 19px 0 19px 20px;
	border-bottom: 1px solid #d2dbea;
	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;
	-ms-align-items: center;
	align-items: center;
	position: relative;
	letter-spacing: 0;
}
.gnav > ul > li.nav_drawer > a {
	border-bottom: none;
}
.gnav > ul > li > a:after {
	content: "";
	background-image: url(./images/page/arw_gnav.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	right: 13px;
	top: 0;
	bottom: 0;
	width: 19px;
	height: 11px;
	margin: auto;
}
.gnav > ul > li.nav_drawer > a:after {
	transform: rotate(90deg);
}
.gnav > ul > li.nav_drawer > a.open:after {
	transform: rotate(-90deg);
}
.gnav > ul > li > a .ja {
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 110%;
	letter-spacing: .1em;
	color: #153a76;
}
.gnav > ul > li > a .en {}
.gnav .nav_sub {
	/*display: none;*/ /* クリックで開閉させる場合はコメント解除 */
}
.gnav .nav_sub li {
	opacity: 0;
	transform: translateX(50%);
	transition: transform .6s ease, opacity .2s ease;
}
.gnav .nav_sub li:not(:last-child) {}
.gnav .nav_sub a {
	display: block;
	position: relative;
	color: #fff;
}
.gnav .nav_sub a:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0;
	height: 0;
	margin: auto;
}
.open .gnav_pc {
	visibility: visible;
	opacity: 1;
}
.open .gnav > ul > li, .open .gnav_pc .nav_sub li {
	opacity: 1;
	transform: translateX(0);
	transition: transform 1s ease, opacity .9s ease;
}
@media(min-width: 1201px) and (max-width:1440px) {
	.btn_gnav {
		height: 100px;
		width: 100px;
	}
	.btn_gnav .txt_gnav {
		bottom: 24px;
	}
	.btn_gnav .icn_gnav {
		top: 40px;
	}
}
@media(min-width: 768px) and (max-width:1200px) {
	.btn_gnav {
		height: calc(80/ 1200*100vw);
		width: calc(80/ 1200*100vw);
	}
	.btn_gnav .txt_gnav {
		bottom: calc(19/ 1200*100vw);
		width: calc(48/ 1200*100vw);
	}
	.btn_gnav .icn_gnav {
		top: calc(32/ 1200*100vw);
	}
	.btn_gnav .icn_gnav:before {
		top: calc(-8/ 1200*100vw);
	}
	.btn_gnav .icn_gnav:after {
		bottom: calc(-8/ 1200*100vw);
	}
}
@media(min-width: 768px) and (max-width:960px) {}
@media only screen and (max-width: 767px) {
	.gnav {
		display: none;
	}
	.btn_gnav_sp {
		position: fixed;
		top: 2.67vw;
		right: 3.2vw;
		height: calc(100 / 750 * 100vw);
		width: calc(100 / 750 * 100vw);
		background: #153a76;
		z-index: 10000;
		outline: none;
	}
	.btn_gnav_sp .txt_gnav {
		position: absolute;
		width: calc(60 / 750 * 100vw);
		right: 0;
		left: 0;
		bottom: 0;
		margin: auto;
	}
	.btn_gnav_sp .icn_gnav {
		width: calc(40 / 750 * 100vw);
		height: 2px;
		position: absolute;
		top: -2.2vw;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		background: #fff;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before, .btn_gnav_sp .icn_gnav:after {
		content: "";
		width: 100%;
		height: 2px;
		position: absolute;
		left: 0;
		background: #fff;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before {
		top: -1.7vw;
	}
	.btn_gnav_sp .icn_gnav:after {
		bottom: -1.7vw;
	}
	.open .btn_gnav_sp .icn_gnav {
		background: none;
	}
	.open .btn_gnav_sp .icn_gnav:before, .open .btn_gnav_sp .icn_gnav:after {
		background: #fff;
		transition: transform .3s ease-in-out;
	}
	.open .btn_gnav_sp .icn_gnav:before {
		transform: rotate(45deg);
		top: 0;
	}
	.open .btn_gnav_sp .icn_gnav:after {
		transform: rotate(-45deg);
		bottom: 0;
	}
	.bg_gnav_sp {
		visibility: hidden;
		transition: .3s;
		opacity: 0;
	}
	.open .bg_gnav_sp {
		width: 100%;
		height: 100%;
		position: fixed;
		z-index: 9998;
		background: rgba(0, 0, 0, 0);
		visibility: visible;
		opacity: 1;
		transition: .3s;
		left: 0;
		top: 0;
	}
	.gnav_sp {
		padding: 19vw 0 0;
		overflow-y: auto;
		overflow-x: hidden;
		background: rgba(255, 255, 255, .9);
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9999;
		height: 100%;
		visibility: hidden;
		opacity: 0;
		width: 80%;
		transition: opacity .6s ease, visibility .6s ease;
		line-height: 1.45;
	}
	.gnav_sp .nav_main {
		padding-bottom: 20vw;
	}
	.gnav_sp .nav_main > ul {
		padding: 0 3vw;
		display: block;
	}
	.gnav_sp .nav_main > ul > li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_main > ul > li:first-child {
		border-top: 1px solid #d2dbea;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer {
		padding-bottom: 2.5vw;
		border-bottom: 1px solid #d2dbea;
	}
	.gnav_sp .nav_main > ul > li > a {
		padding: 3.3vw 7vw 3.3vw 1.3vw;
		border-bottom: 1px solid #d2dbea;
		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;
		-ms-align-items: center;
		align-items: center;
		position: relative;
		letter-spacing: 0;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a {
		border-bottom: none;
	}
	.gnav_sp .nav_main > ul > li > a:after {
		content: "";
		background-image: url(./images/page/arw_gnav.svg);
		background-repeat: no-repeat;
		background-position: center;
		-webkit-background-size: contain;
		background-size: contain;
		position: absolute;
		right: calc(13 / 750 * 100vw);
		top: 0;
		bottom: 0;
		width: calc(34 / 750 * 100vw);
		height: calc(17 / 750 * 100vw);
		margin: auto;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a:after {
		transform: rotate(90deg);
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a.open:after {
		transform: rotate(-90deg);
	}
	.gnav_sp .nav_main > ul > li > a .ja {
		line-height: 1.67;
		font-family: kozuka-gothic-pr6n, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: 93.75%;
		letter-spacing: 0;
		color: #153a76;
	}
	.gnav_sp .nav_main > ul > li > a .en {}
	.gnav_sp .nav_sub {
		background: rgba(51, 51, 51, .9);
		padding: 5.5vw 8vw 7.5vw;
		/*display: none;*/ /* クリックで開閉させる場合はコメント解除 */
	}
	.gnav_sp .nav_sub li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_sub li:not(:last-child) {
		margin-bottom: 2.5vw;
	}
	.gnav_sp .nav_sub a {
		padding: 1vw 6vw 1vw;
		display: block;
		position: relative;
		color: #fff;
	}
	.gnav_sp .nav_sub a:after {
		content: "";
		position: absolute;
		left: 0;
		top: 1vw;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(16 / 750 * 100vw) solid #fff;
		border-top: calc(12 / 750 * 100vw) solid transparent;
		border-bottom: calc(12 / 750 * 100vw) solid transparent;
		margin: auto;
	}
	.open .gnav_sp {
		visibility: visible;
		opacity: 1;
	}
	.open .gnav_sp .nav_main > ul > li, .open .gnav_sp .nav_sub li {
		opacity: 1;
		transform: translateX(0);
		transition: transform 1s ease, opacity .9s ease;
	}
}
/* index common
------------------------------------------------------------------*/
.bg_ttl_index {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 100%;
	height: 240px;
}
.bg_ttl_index03 {
	height: 260px;
}
.bg_ttl_index > * {
	position: relative;
	z-index: 1;
}
.bg_ttl_index:before, .bg_ttl_index:after {
	content: '';
	display: block;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	z-index: 0;
	width: 50%;
	height: 100%;
}
.bg_ttl_index:before {
	background-position: right center;
	left: 0;
}
.bg_ttl_index:after {
	background-position: left center;
	right: 0;
}
.bg_ttl_index01:before {
	background-image: url(./images/index/deco_ttl01_l.png);
	max-width: 617px;
}
.bg_ttl_index01:after {
	background-image: url(./images/index/deco_ttl01_r.png);
	max-width: 617px;
}
.bg_ttl_index02:before {
	background-image: url(./images/index/deco_ttl02_l.png);
	max-width: 617px;
}
.bg_ttl_index02:after {
	background-image: url(./images/index/deco_ttl02_r.png);
	max-width: 617px;
}
.bg_ttl_index03:before {
	background-image: url(./images/index/deco_ttl03_l.png);
	max-width: 880px;
}
.bg_ttl_index03:after {
	background-image: url(./images/index/deco_ttl03_r.png);
	max-width: 880px;
}
.ttl_index {
	text-align: center;
}
.ttl_index .ja {
	display: block;
	font-family: dnp-shuei-ymincho-std, sans-serif;
	font-weight: 500;
	font-style: normal;
}
.ttl_index .en {
	display: block;
	font-family: freight-big-pro, serif;
	font-weight: 400;
	font-style: normal;
}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	.bg_ttl_index {
		height: calc(240 / 750 * 100vw);
	}
	.bg_ttl_index03 {
		height: calc(260 / 750 * 100vw);
	}
	.bg_ttl_index:before, .bg_ttl_index:after {
		-webkit-background-size: contain;
		background-size: contain;
	}
	.bg_ttl_index01:before {
		background-image: url(./images/index/deco_ttl01_l_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
	.bg_ttl_index01:after {
		background-image: url(./images/index/deco_ttl01_r_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
	.bg_ttl_index02:before {
		background-image: url(./images/index/deco_ttl02_l_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
	.bg_ttl_index02:after {
		background-image: url(./images/index/deco_ttl02_r_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
	.bg_ttl_index03:before {
		background-image: url(./images/index/deco_ttl03_l_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
	.bg_ttl_index03:after {
		background-image: url(./images/index/deco_ttl03_r_sp.png);
		max-width: calc(120 / 750 * 100vw);
	}
}
/* 新着情報 index_news
------------------------------------------------------------------*/
/* ※パーフェクトスクロールバー用基本css ここからデザインに合わせて適宜変更してください */
.index_news ul {
	overflow: hidden;
	position: relative;
	padding-right: 20px;
	max-height: 170px;
	height: auto;
	touch-action: auto !important;
	line-height: 1.75;
}
.index_news li:not(:last-of-type) {}
.index_news li dt {}
.index_news li dd {}
.index_news li dd a {
	color: #aaa; /* コーダーさんへに記載されている★標準テキスト：リンク色に変更*/
}
/* パーフェクトスクロールバー */
.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background: #333333 !important;
	right: 0px !important;
	width: 4px !important;
}
.ps-container > .ps-scrollbar-y-rail {
	background: #f7f7f8 !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1;
}
.ps-container:hover > .ps-scrollbar-y-rail {
	opacity: 1;
}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	.index_news ul {
		max-height: calc(500 / 750 * 100vw);
	}
	.index_news li:not(:last-of-type) {}
	.index_news li dl {
		display: block;
	}
	.index_news li dt {
		width: 100%;
	}
	.index_news li dd {
		width: 100%;
		line-height: 1.5625;
	}
}

/* index_operation
---------------------------------------------------------- */
.index_operation {
	background: url(./images/index/bg_operation01.jpg) no-repeat center left / cover;
	padding: 60px 80px;
	position: relative;
    z-index: 1;
}
.index_operation .copy01 {
	font-size: calc(60/ 1920 * 100vw);
}
.index_operation .copy01 em {
	font-size: calc(80/ 1920 * 100vw);
	position: relative;
}
.index_operation .copy01 em::after {
	content: '';
	position: absolute;
	width: 100%;
	height: calc(20/ 1920 * 100vw);
	background: #ffff75;
	bottom: calc(5/1920 * 100vw);
	left: 0;
	z-index: -1;
}
.row_operation01 {
	gap: calc(40/ 1920 * 100vw) 0;
	max-width: 1285px;
	margin-left: auto;
}
.row_operation01 .col:nth-of-type(1) {
	width: 100%;
}
.row_operation01 .col:nth-of-type(2) {
	width: 92%;
}
.row_operation01 .col:nth-of-type(3) {
	width: 84%;
}
.row_operation01 .col {
	border-left: calc(20/ 1920 * 100vw) solid #c1912a;
	border-bottom: 2px solid #153a76;
	height: calc(100/1920 * 100vw);
	font-size: calc(40/1920 * 100vw);
}
.row_operation02 {
	height: 100%;
	width: 100%;
}
.row_operation02 .ttl {
	width: calc(180/1920 * 100vw);
	height: 100%;
}
.row_operation02 .col_txt {
	padding: 0 calc(40/1920 * 100vw);
	height: 100%;
	width: calc(100% - calc(180 / 1920 * 100vw));
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_operation {
		padding: calc(60 / 1599 * 100vw) calc(80 / 1599 * 100vw);
	}
	.index_operation .copy01 {
		font-size: calc(60/ 1599 * 100vw);
	}
	.index_operation .copy01 em {
		font-size: calc(80/ 1599 * 100vw);
	}
	.index_operation .copy01 em::after {
		height: calc(20/ 1599 * 100vw);
		bottom: calc(5/1599 * 100vw);
	}
	.row_operation01 {
		gap: calc(40/ 1599 * 100vw) 0;
		max-width: 1285px;
	}
	.row_operation01 .col {
		border-left: calc(20/ 1599 * 100vw) solid #c1912a;
		height: calc(100/1599 * 100vw);
		font-size: calc(40/1599 * 100vw);
	}
	.row_operation02 .ttl {
		width: calc(180/1599 * 100vw);
	}
	.row_operation02 .col_txt {
		padding: 0 calc(40/1599 * 100vw);
		width: calc(100% - calc(180 / 1599 * 100vw));
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_operation {
		padding: calc(60 / 1299 * 100vw) calc(80 / 1299 * 100vw);
	}
	.index_operation .copy01 {
		font-size: calc(50/ 1299 * 100vw);
	}
	.index_operation .copy01 em {
		font-size: calc(70/ 1299 * 100vw);
	}
	.index_operation .copy01 em::after {
		height: calc(20/ 1299 * 100vw);
		bottom: calc(0/1299 * 100vw);
	}
	.row_operation01 {
		gap: calc(40/ 1299 * 100vw) 0;
		max-width: 1285px;
	}
	.row_operation01 .col {
		border-left: calc(20/ 1299 * 100vw) solid #c1912a;
		height: calc(100/1299 * 100vw);
		font-size: calc(32 / 1299 * 100vw);
        letter-spacing: 0;
	}
	.row_operation02 .ttl {
		width: calc(180/1299 * 100vw);
	}
	.row_operation02 .col_txt {
		padding: 0 calc(40/1299 * 100vw);
		width: calc(100% - calc(180 / 1299 * 100vw));
	}
}
@media(max-width: 767px) {
	.index_operation {
		background: url(./images/index/bg_operation01_sp.jpg) no-repeat top left / cover;
		padding: calc(60/750 * 100vw) 0 calc(80/750 * 100vw);
		overflow: hidden;
	}
	.index_operation .copy01 {
		font-size: calc(52 / 750 * 100vw);
        line-height: 1.4;
        position: relative;
        left: 10vw;
	}
	.index_operation .copy01 em {
		font-size: calc(70/ 750 * 100vw);
	}
	.index_operation .copy01 em::after {
		height: calc(20/ 750 * 100vw);
		bottom: calc(5/750 * 100vw);
	}
	.row_operation01 {
		gap: calc(30 / 750 * 100vw) 0;
        max-width: 100%;
	}
	.row_operation01 .col {
		border-left: calc(10 / 750 * 100vw) solid #c1912a;
        height: calc(90 / 750 * 100vw);
        font-size: calc(34 / 750 * 100vw);
	}
	.row_operation02 .ttl {
		width: calc(160/750 * 100vw);
	}
	.row_operation02 .col_txt {
		padding: 0 calc(30/750 * 100vw);
		width: calc(100% - calc(160 / 750 * 100vw));
		line-height: 1.4;
	}
	.row_operation01 .col:nth-of-type(2) {
		height: calc(150 / 750 * 100vw);
	}
}

/* index_about
-------------------------------------------- */
.index_about {
	background: url(./images/index/bg_about03.jpg) no-repeat center / cover;
	padding: calc(80/ 1920 * 100vw) 0;
	position: relative;
}
.index_about .txt01 {
	font-size: calc(20/1920 * 100vw);
	font-weight: bold;
	margin-bottom: calc(100/1920 * 100vw);
}
.row_about01 {
	position: relative;
    z-index: 1;
	gap: calc(30/1920 * 100vw) calc(650/1920 * 100vw);
}
.row_about01 .col {
	width: calc(300/1920 * 100vw);
	height: calc(300/1920 * 100vw);
	border-radius: 100%;
	background: #2877a5;
	position: relative;
}
.row_about01 .col::after {
	position: absolute;
	content: '';
}
.row_about01 .col:nth-of-type(1) {
	right: calc(80 / 1920 * 100vw);
}
.row_about01 .col:nth-of-type(2) {
	right: calc(80 / 1920 * 100vw);
}
.row_about01 .col:nth-of-type(3) {
	left: calc(80 / 1920 * 100vw);
}
.row_about01 .col:nth-of-type(4) {
	left: calc(80 / 1920 * 100vw);
}
.row_about01 .col:nth-of-type(1)::after {
	background: url(./images/index/deco_about01.png) no-repeat center / contain;
	width: calc(206/1920 * 100vw);
	height: calc(233/1920 * 100vw);
	bottom: calc(35/1920 * 100vw);
	right: calc(-150/1920 * 100vw);
}
.row_about01 .col:nth-of-type(2)::after {
	background: url(./images/index/deco_about02.png) no-repeat center / contain;
	width: calc(256/1920 * 100vw);
	height: calc(274/1920 * 100vw);
	bottom: calc(5/1920 * 100vw);
	right: calc(-155/1920 * 100vw);
}
.row_about01 .col:nth-of-type(3)::after {
	background: url(./images/index/deco_about03.png) no-repeat center / contain;
	width: calc(407/1920 * 100vw);
	height: calc(319/1920 * 100vw);
	bottom: calc(20/1920 * 100vw);
	left: calc(-290/1920 * 100vw);
}
.row_about01 .col:nth-of-type(4)::after {
	background: url(./images/index/deco_about04.png) no-repeat center / contain;
	width: calc(213/1920 * 100vw);
	height: calc(247/1920 * 100vw);
	bottom: calc(10/1920 * 100vw);
	left: calc(-160/1920 * 100vw);
}
.row_about01 .col p {
	font-size: calc(32/1920 * 100vw);
	line-height: 1.4;
}
.box_about01 {
	position: absolute;
	width: calc(750/1920 * 100vw);
	height: calc(290/1920 * 100vw);
	font-size: calc(60/1920 * 100vw);
	bottom: calc(280/1920 * 100vw);
	left: 50%;
	transform: translate(-50%, 0);
	line-height: 1.6;
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_about {
		padding: calc(80/ 1599 * 100vw) 0;
	}
	.index_about .txt01 {
		font-size: calc(20/1599 * 100vw);
		margin-bottom: calc(100/1599 * 100vw);
	}
	.row_about01 {
		gap: calc(30/1599 * 100vw) calc(650/1599 * 100vw);
	}
	.row_about01 .col {
		width: calc(300/1599 * 100vw);
		height: calc(300/1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(1) {
		right: calc(80 / 1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(2) {
		right: calc(80 / 1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(3) {
		left: calc(80 / 1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(4) {
		left: calc(80 / 1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(1)::after {
		width: calc(171/1599 * 100vw);
		height: calc(194/1599 * 100vw);
		bottom: calc(35/1599 * 100vw);
		right: calc(-120/1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(2)::after {
		width: calc(213/1599 * 100vw);
		height: calc(228/1599 * 100vw);
		bottom: calc(5/1599 * 100vw);
		right: calc(-130/1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(3)::after {
		width: calc(339/1599 * 100vw);
		height: calc(265/1599 * 100vw);
		bottom: calc(20/1599 * 100vw);
		left: calc(-240/1599 * 100vw);
	}
	.row_about01 .col:nth-of-type(4)::after {
		width: calc(177/1599 * 100vw);
		height: calc(205/1599 * 100vw);
		bottom: calc(10/1599 * 100vw);
		left: calc(-130/1599 * 100vw);
	}
	.row_about01 .col p {
		font-size: calc(32/1599 * 100vw);
	}
	.box_about01 {
		width: calc(750/1599 * 100vw);
		height: calc(290/1599 * 100vw);
		font-size: calc(60/1599 * 100vw);
		bottom: calc(280/1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_about {
		padding: calc(80/ 1299 * 100vw) 0;
	}
	.index_about .txt01 {
		font-size: calc(20/1299 * 100vw);
		margin-bottom: calc(100/1299 * 100vw);
	}
	.row_about01 {
		gap: calc(30/1299 * 100vw) calc(650/1299 * 100vw);
	}
	.row_about01 .col {
		width: calc(250 / 1299 * 100vw);
        height: calc(250 / 1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(1) {
		right: calc(20 / 1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(2) {
		right: calc(60 / 1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(3) {
		left: calc(100 / 1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(4) {
		left: calc(-20 / 1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(1)::after {
		width: calc(139/1299 * 100vw);
		height: calc(157/1299 * 100vw);
		bottom: calc(35/1299 * 100vw);
		right: calc(-100/1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(2)::after {
		width: calc(173/1299 * 100vw);
		height: calc(185/1299 * 100vw);
		bottom: calc(5/1299 * 100vw);
		right: calc(-110/1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(3)::after {
		width: calc(275/1299 * 100vw);
		height: calc(215/1299 * 100vw);
		bottom: calc(20/1299 * 100vw);
		left: calc(-190/1299 * 100vw);
	}
	.row_about01 .col:nth-of-type(4)::after {
		width: calc(143/1299 * 100vw);
		height: calc(166/1299 * 100vw);
		bottom: calc(10/1299 * 100vw);
		left: calc(-100/1299 * 100vw);
	}
	.row_about01 .col p {
		font-size: calc(26/1299 * 100vw);
	}
	.box_about01 {
		width: calc(750/1299 * 100vw);
		height: calc(290/1299 * 100vw);
		font-size: calc(60/1299 * 100vw);
		bottom: calc(280/1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.index_about {
		background: url(./images/index/bg_about03_sp.jpg) no-repeat center / cover;
		padding: calc(80/ 750 * 100vw) 0;
	}
	.index_about .ttl_index_case {
        margin-bottom: calc(40 / 750 * 100vw);
    }
	.index_about .ttl_index_case .ja{
		letter-spacing: 0;
    	line-height: 1.5;
	}
	.index_about .txt01 {
		font-size: calc(32/750 * 100vw);
		text-align: left;
		margin-bottom: calc(60/750 * 100vw);
	}
	.row_about01 {
        gap: calc(190 / 750 * 100vw) calc(20 / 750 * 100vw);
    }
	.row_about01 .col {
		width: calc(240 / 750 * 100vw);
        height: calc(240 / 750 * 100vw);
	}
	.row_about01 .col:nth-of-type(1) {
		right: unset;
	}
	.row_about01 .col:nth-of-type(2) {
		right: unset;
	}
	.row_about01 .col:nth-of-type(3) {
		left: unset;
	}
	.row_about01 .col:nth-of-type(4) {
		left: unset;
	}
	.row_about01 .col:nth-of-type(1)::after {
		background: url(./images/index/deco_about01_sp.png) no-repeat center / contain;
		width: calc(132/750 * 100vw);
		height: calc(149/750 * 100vw);
		bottom: calc(35/750 * 100vw);
		right: unset;
        left: calc(-110 / 750 * 100vw);
	}
	.row_about01 .col:nth-of-type(2)::after {
		background: url(./images/index/deco_about02_sp.png) no-repeat center / contain;
		width: calc(164/750 * 100vw);
		height: calc(175/750 * 100vw);
		bottom: calc(20 / 750 * 100vw);
        right: calc(-100 / 750 * 100vw);
	}
	.row_about01 .col:nth-of-type(3)::after {
		background: url(./images/index/deco_about03_sp.png) no-repeat center / contain;
		width: calc(208/750 * 100vw);
		height: calc(187/750 * 100vw);
		bottom: calc(30 / 750 * 100vw);
        left: calc(-120 / 750 * 100vw);
	}
	.row_about01 .col:nth-of-type(4)::after {
		background: url(./images/index/deco_about04_sp.png) no-repeat center / contain;
		width: calc(130/750 * 100vw);
		height: calc(151/750 * 100vw);
		bottom: calc(40 / 750 * 100vw);
        left: unset;
        right: calc(-90 / 750 * 100vw);
	}
	.row_about01 .col p {
		font-size: calc(24/750 * 100vw);
	}
	.box_about01 {
		width: calc(750/750 * 100vw);
		height: calc(290/750 * 100vw);
		font-size: calc(60/750 * 100vw);
		bottom: calc(270/750 * 100vw);
	}
}

/* index_number
---------------------------------------------- */
.index_number {
	background: #4dc9e7;
	padding: calc(60/1920 * 100vw) 0 calc(55/1920 * 100vw);
}
.row_number01 {
	height: calc(290 / 1920 * 100vw);
}
.row_number01 .col{
	background: #153a76;
	padding: 0 calc(75/1920 * 100vw);
	width: calc((100% - calc(220 / 1920 * 100vw)) / 2);
	height: 100%;
	display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.row_number01 .col .txt01 {
	font-size: calc(44 / 1920 * 100vw);
}
.row_number01 .col .txt02 {
	font-size: calc(60 / 1920 * 100vw);
	line-height: 1;
}
.row_number01 .col .txt03 {
	font-size: calc(60 / 1920 * 100vw);
    line-height: 1;
    text-align: center;
}
.row_number01 .col .txt02 em {
	font-size: calc(140 / 1920 * 100vw);
}
.row_number01 .col_m {
	width: calc(220/1920 * 100vw);
	height: 100%;
}
.row_number01 .col_m p {
	writing-mode: vertical-rl;
	font-size: calc(44 / 1920 * 100vw);
    line-height: 1.6;
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_number {
		padding: calc(60/1599 * 100vw) 0 calc(55/1599 * 100vw);
	}
	.row_number01 {
		height: calc(290 / 1599 * 100vw);
	}
	.row_number01 .col{
		padding: 0 calc(75/1599 * 100vw);
		width: calc((100% - calc(220 / 1599 * 100vw)) / 2);
	}
	.row_number01 .col .txt01 {
		font-size: calc(40 / 1599 * 100vw);
	}
	.row_number01 .col .txt02 {
		font-size: calc(48 /1599 * 100vw);
	}
	.row_number01 .col .txt03 {
		font-size: calc(48 / 1599 * 100vw);
	}
	.row_number01 .col .txt02 em {
		font-size: calc(120 / 1599 * 100vw);
	}
	.row_number01 .col_m {
		width: calc(220/1599 * 100vw);
	}
	.row_number01 .col_m p {
		font-size: calc(44 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_number {
		padding: calc(60/1299 * 100vw) 0 calc(55/1299 * 100vw);
	}
	.row_number01 {
		height: calc(290 / 1299 * 100vw);
	}
	.row_number01 .col{
		padding: 0 calc(35/1299 * 100vw);
		width: calc((100% - calc(220 / 1299 * 100vw)) / 2);
	}
	.row_number01 .col .txt01 {
		font-size: calc(36 / 1299 * 100vw);
	}
	.row_number01 .col .txt02 {
		font-size: calc(42 / 1299 * 100vw);
	}
	.row_number01 .col .txt03 {
		font-size: calc(42 / 1299 * 100vw);
	}
	.row_number01 .col .txt02 em {
		font-size: calc(100 / 1299 * 100vw);
	}
	.row_number01 .col_m {
		width: calc(220/1299 * 100vw);
	}
	.row_number01 .col_m p {
		font-size: calc(44 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.index_number {
		padding: calc(60/750 * 100vw) 0 calc(55/750 * 100vw);
		position: relative;
	}
	.row_number01 {
		height: auto;
        gap: calc(40 / 750 * 100vw) 0;
	}
	.row_number01 .col{
		order: 1;
		padding: 0 2vw;
		width: calc(725 / 750 * 100vw);
		height: calc(290 / 750 * 100vw);
	}
	.row_number01 .col_last {
		position: relative;
        left: calc(26 / 750 * 100vw);
	}
	.row_number01 .col .txt01 {
		font-size: calc(44 / 750 * 100vw);
	}
	.row_number01 .col .txt02 {
		font-size: calc(60 / 750 * 100vw);
	}
	.row_number01 .col .txt03 {
		font-size: calc(60 / 750 * 100vw);
	}
	.row_number01 .col .txt02 em {
		font-size: calc(140 / 750 * 100vw);
	}
	.row_number01 .col_m {
		width: 100%;
        height: auto;
		order: 0;
	}
	.row_number01 .col_m p {
		font-size: calc(44 / 750 * 100vw);
		writing-mode: unset;
	}
}

/* index_doctor 
--------------------------------------------------------- */
.index_doctor {
	background: url(./images/index/bg_doctor01.jpg) no-repeat top center / cover;
	padding: calc(80/1920 * 100vw) 0 calc(100/1920 * 100vw);
}
.index_doctor .ttl_index_case {
    margin-bottom: calc(80/1920 * 100vw);
}
.row_doctor01 {
	max-width: calc(1600px + 10%);
	width: 100%;
	margin: 0 auto;
	padding: 0 5%;
}
.row_doctor01 .col_txt {
	width: 57%;
	max-width: 940px;
}
.row_doctor01 .col_img {
	width: 38%;
	max-width: 600px;
}
.box_doctor01 {
	padding: calc(50/1920 * 100vw);
	border-top: calc(10/1920 * 100vw) solid #153a76;
	margin-bottom: calc(40/1920 * 100vw);
}
.box_doctor01 h5 {
	background: #b88d2e;
	font-size: calc(24/1920 * 100vw);
	height: calc(50/1920 * 100vw);
	margin-bottom: calc(25/1920 * 100vw);
}
.list_doctor01 {
	gap: calc(5/1920 * 100vw) 4%;
}
.list_doctor01 li {
	position: relative;
	padding-left: calc(25/1920 * 100vw);
	font-size: calc(16/1920 * 100vw);
	width: 48%;
}
.list_doctor01 li::before {
	position: absolute;
	content: '';
	width: calc(5/1920 * 100vw);
	height: calc(5/1920 * 100vw);
	border-radius: 100%;
	background: #c1912a;
	top: calc(14/1920 * 100vw);
	left: 0;
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_doctor {
		padding: calc(80/1599 * 100vw) 0 calc(100/1599 * 100vw);
	}
	.index_doctor .ttl_index_case {
		margin-bottom: calc(80/1599 * 100vw);
	}
	.row_doctor01 .col_txt {
		width: 57%;
		max-width: 940px;
	}
	.row_doctor01 .col_img {
		width: 38%;
		max-width: 600px;
	}
	.box_doctor01 {
		padding: calc(50/1599 * 100vw);
		border-top: calc(10/1599 * 100vw) solid #153a76;
		margin-bottom: calc(40/1599 * 100vw);
	}
	.box_doctor01 h5 {
		font-size: calc(24/1599 * 100vw);
		height: calc(50/1599 * 100vw);
		margin-bottom: calc(25/1599 * 100vw);
	}
	.list_doctor01 {
		gap: calc(5/1599 * 100vw) 4%;
	}
	.list_doctor01 li {
		padding-left: calc(25/1599 * 100vw);
		font-size: calc(16/1599 * 100vw);
		width: 48%;
	}
	.list_doctor01 li::before {
		width: calc(5/1599 * 100vw);
		height: calc(5/1599 * 100vw);
		top: calc(14/1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_doctor {
		padding: calc(80/1299 * 100vw) 0 calc(100/1299 * 100vw);
	}
	.index_doctor .ttl_index_case {
		margin-bottom: calc(80/1299 * 100vw);
	}
	.row_doctor01 .col_txt {
		width: 57%;
		max-width: 940px;
	}
	.row_doctor01 .col_img {
		width: 38%;
		max-width: 600px;
	}
	.box_doctor01 {
		padding: calc(50/1299 * 100vw);
		border-top: calc(10/1299 * 100vw) solid #153a76;
		margin-bottom: calc(40/1299 * 100vw);
	}
	.box_doctor01 h5 {
		font-size: calc(24/1299 * 100vw);
		height: calc(50/1299 * 100vw);
		margin-bottom: calc(25/1299 * 100vw);
	}
	.list_doctor01 {
		gap: calc(5/1299 * 100vw) 4%;
	}
	.list_doctor01 li {
		padding-left: calc(25/1299 * 100vw);
		font-size: calc(16/1299 * 100vw);
		width: 48%;
	}
	.list_doctor01 li::before {
		width: calc(5/1299 * 100vw);
		height: calc(5/1299 * 100vw);
		top: calc(14/1299 * 100vw);
	}
	.index_doctor .name_index_greeting em {
		padding: 0;
	}
}
@media(max-width: 767px) {
	.index_doctor {
		padding: calc(80/750 * 100vw) 0 calc(100/750 * 100vw);
		background: url(./images/index/bg_doctor01_sp.jpg) no-repeat top center / cover;
	}
	.index_doctor .ttl_index_case {
		margin-bottom: calc(80/750 * 100vw);
	}
	.index_doctor .ttl_index_case .ja {
		font-size: calc(40 / 750 * 100vw);
    	line-height: 1.5;
	}
	.row_doctor01 {
		flex-direction: column-reverse;
    	align-items: center;
	}
	.row_doctor01 .col_txt {
		width: 100%;
		max-width: 100%;
	}
	.row_doctor01 .col_img {
		width: 100%;
		max-width: calc(600/ 750 * 100vw);
	}
	.box_doctor01 {
		padding: calc(60 / 750 * 100vw) calc(25 / 750 * 100vw);
		border-top: calc(10/750 * 100vw) solid #153a76;
		margin-bottom: calc(40/750 * 100vw);
	}
	.box_doctor01 h5 {
		font-size: calc(34/750 * 100vw);
		height: calc(80/750 * 100vw);
		margin-bottom: calc(30/750 * 100vw);
	}
	.list_doctor01 {
		gap: calc(10/750 * 100vw) 0;
	}
	.list_doctor01 li {
		padding-left: calc(40/750 * 100vw);
		font-size: calc(32/750 * 100vw);
		width: 100%;
	}
	.list_doctor01 li::before {
		width: calc(15/750 * 100vw);
		height: calc(15/750 * 100vw);
		top: calc(27/750 * 100vw);
	}
}

/* index_reason0
------------------------------------------------------------- */
.index_reason0 {
	position: relative;
}
.index_reason0::before {
	position: absolute;
	content: '';
	background: url(./images/index/bg_reason03.png) no-repeat center / contain;
	width: calc(589 / 1920 * 100vw);
	height: calc(190 / 1920 * 100vw);
	left: 0;
	bottom: calc(2100 / 1920 * 100vw);
}
.index_reason0::after {
	position: absolute;
	content: '';
	background: url(./images/index/bg_reason04.png) no-repeat center / contain;
	width: calc(590 / 1920 * 100vw);
	height: calc(190 / 1920 * 100vw);
	right: 0;
	bottom: calc(2100 / 1920 * 100vw);
}
.bg_reason01 {
	background: #ececec;
	padding: calc(100 / 1920 * 100vw) 0 calc(80 / 1920 * 100vw);
}
.index_reason0 .copy01 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: calc(40 / 1920 * 100vw);
	background: #153a76;
	height: calc(100 / 1920 * 100vw);
}
.index_reason0 .copy01::before {
	content: '';
	position: absolute;
	height: 100%;
	width: calc(20 / 1920 * 100vw);
	background: #c1912a;
	bottom: 0;
	left: 0;
}
.index_reason0 .copy02 {
	font-size: calc(50 / 1920 * 100vw);
	line-height: 1.4;
}
.bg_reason02 {
	padding: calc(70 / 1920 * 100vw) 0 calc(80 / 1920 * 100vw);
	background: url(./images/index/bg_reason02.jpg) no-repeat top right / cover;
}
.index_reason0 .copy03 {
	position: relative;
	font-size: calc(40 / 1920 * 100vw);
	line-height: 1.5;
}
.index_reason0 .copy03 span {
	color: #2877a5;
}
.index_reason0 .copy03::after {
	content: '';
	position: absolute;
	background: url(./images/index/deco_reason07.svg) no-repeat center / contain;
	width: calc(317 / 1920 * 100vw);
	height: calc(10 / 1920 * 100vw);
	top: calc(150 / 1920 * 100vw);
	left: 50%;
	transform: translate(-50%, 0);
}
.row_reason01 .col{
	width: 32%;
	max-width: 379px;
}
.row_reason01 .ttl {
	width: 100%;
	height: calc(137 / 1920 * 100vw);
	background: url(./images/index/ttl_reason01.png) no-repeat center / contain;
}
.row_reason01 .ttl p {
	font-size: calc(50 / 1920 * 100vw);
}
.row_reason01 .col .box {
	outline: 1px solid #c1912a;
	background: #fff;
	height: calc(190 / 1920 * 100vw);
	padding: calc(30 / 1920 * 100vw);
}
.row_reason01 .col .box p {
	font-size: calc(20 / 1920 * 100vw);
}
.box_reason01 {
	position: relative;
	outline: solid 2px #153a76;
	padding: calc(80 / 1920 * 100vw) calc(60 / 1920 * 100vw) calc(60 / 1920 * 100vw);
}
.row_reason02 {
	background: #fff;
	padding: 0 calc(25 / 1920 * 100vw);
	gap: 0 calc(20 / 1920 * 100vw);
	position: absolute;
    flex-wrap: nowrap;
    white-space: nowrap;
    top: calc(-100 / 1920 * 100vw);
    left: 50%;
    transform: translate(-50%, 0);
}
.row_reason02 .ccl {
	width: calc(140 / 1920 * 100vw);
	height: calc(140 / 1920 * 100vw);
	border-radius: 100%;
	background: #153a76;
}
.row_reason02 .ccl p {
	line-height: 1.3;
	font-size: calc(32 / 1920 * 100vw);
}
.row_reason02 > p {
	font-size: calc(40 / 1920 * 100vw);
}
.row_reason02 .txt01 {
	font-size: calc(30 / 1920 * 100vw);
}
.row_reason02 .txt02 {
	color: #2877a5;
}
.bg_reason03 {
	background: url(./images/index/bg_reason05.jpg) no-repeat top left / cover;
	padding: calc(70 / 1920 * 100vw) 0 calc(60 / 1920 * 100vw);
}
.row_reason03 .col {
	background: url(./images/index/bg_reason06.jpg) no-repeat center / cover;
	width: 49%;
	max-width: 600px;
	padding: calc(50 / 1920 * 100vw);
}
.row_reason03 .col .ttl {
	font-size: calc(30 / 1920 * 100vw);
	padding-bottom: calc(15 / 1920 * 100vw);
	border-bottom: 1px solid #fff;
	margin-bottom: calc(30 / 1920 * 100vw);
}
.row_reason03 .col .txt {
	font-size: calc(18 / 1920 * 100vw);
}
.arw_reason01 {
	width: 100%;
	height: calc(160 / 1920 * 100vw);
	background: url(./images/index/bg_reason07.png) no-repeat center / contain;
}
.arw_reason01 p {
	font-size: calc(40 / 1920 * 100vw);
	position: relative;
    top: calc(-10 / 1920 * 100vw);
}
.wrap_reason01 {
	position: relative;
	border-bottom: solid 4px #4dc9e7;
	padding: calc(60 / 1920 * 100vw);
}
/* .wrap_reason01::before {
	position: absolute;
	font-family: freight-big-pro, serif;
	font-weight: 400;
	font-style: normal;
	font-size: calc(320 / 1920 * 100vw);
	color: rgba(40, 119, 165, 0.2);
	bottom: 0;
} */
.wrap_reason01.col01::before {
	content: '01';
	left: 0;
	position: absolute;
	font-family: freight-big-pro, serif;
	font-weight: 400;
	font-style: normal;
	font-size: calc(300 / 1920 * 100vw);
	color: rgba(40, 119, 165, 0.2);
	bottom: calc(-50 / 1920 * 100vw);
    line-height: 1;
}
.wrap_reason01.col02::before {
	position: absolute;
	font-family: freight-big-pro, serif;
	font-weight: 400;
	font-style: normal;
	font-size: calc(300 / 1920 * 100vw);
	color: rgba(40, 119, 165, 0.2);
	bottom: calc(-50 / 1920 * 100vw);
    line-height: 1;
	content: '02';
	right: 0;
}
.row_reason04 .col_txt {
	width: 50%;
}
.row_reason04 .col_img {
	width: 43%;
	max-width: 560px;
}
.row_reason04 .copy04 {
	font-size: calc(34 / 1920 * 100vw);
	line-height: 1.4;
}
.row_reason04 .copy04 span {
	font-size: calc(50 / 1920 * 100vw);
	color: #2877a5;
}
.row_reason04 .txt span {
	color: #2877a5;
}
.row_reason04 .copy05 {
	line-height: 1.4;
	font-size: calc(34 / 1920 * 100vw);
}
.row_reason04 .copy05 span {
	font-size: calc(50 / 1920 * 100vw);
	color: #2877a5;
}
.row_reason04 .img {
	margin-top: calc(35 / 1920 * 100vw);
}

@media(min-width: 768px) and (max-width:1599px) {
	.index_reason0::before {
		width: calc(589 / 1599 * 100vw);
		height: calc(190 / 1599 * 100vw);
		bottom: calc(2100 / 1599 * 100vw);
	}
	.index_reason0::after {
		width: calc(590 / 1599 * 100vw);
		height: calc(190 / 1599 * 100vw);
		bottom: calc(2100 / 1599 * 100vw);
	}
	.bg_reason01 {
		padding: calc(100 / 1599 * 100vw) 0 calc(80 / 1599 * 100vw);
	}
	.index_reason0 .copy01 {
		font-size: calc(40 / 1599 * 100vw);
		height: calc(100 / 1599 * 100vw);
	}
	.index_reason0 .copy01::before {
		width: calc(20 / 1599 * 100vw);
	}
	.index_reason0 .copy02 {
		font-size: calc(50 / 1599 * 100vw);
	}
	.bg_reason02 {
		padding: calc(70 / 1599 * 100vw) 0 calc(80 / 1599 * 100vw);
	}
	.index_reason0 .copy03 {
		font-size: calc(40 / 1599 * 100vw);
	}
	.index_reason0 .copy03::after {
		width: calc(317 / 1599 * 100vw);
		height: calc(10 / 1599 * 100vw);
		top: calc(150 / 1599 * 100vw);
	}
	.row_reason01 .col{
		width: 32%;
		max-width: 379px;
	}
	.row_reason01 .ttl {
		height: calc(137 / 1599 * 100vw);
	}
	.row_reason01 .ttl p {
		font-size: calc(50 / 1599 * 100vw);
	}
	.row_reason01 .col .box {
		height: calc(190 / 1599 * 100vw);
		padding: calc(30 / 1599 * 100vw);
	}
	.row_reason01 .col .box p {
		font-size: calc(20 / 1599 * 100vw);
	}
	.box_reason01 {
		padding: calc(80 / 1599 * 100vw) calc(60 / 1599 * 100vw) calc(60 / 1599 * 100vw);
	}
	.row_reason02 {
		padding: 0 calc(25 / 1599 * 100vw);
		gap: 0 calc(20 / 1599 * 100vw);
		top: calc(-100 / 1599 * 100vw);
	}
	.row_reason02 .ccl {
		width: calc(140 / 1599 * 100vw);
		height: calc(140 / 1599 * 100vw);
	}
	.row_reason02 .ccl p {
		font-size: calc(32 / 1599 * 100vw);
	}
	.row_reason02 > p {
		font-size: calc(40 / 1599 * 100vw);
	}
	.row_reason02 .txt01 {
		font-size: calc(30 / 1599 * 100vw);
	}
	.bg_reason03 {
		padding: calc(70 / 1599 * 100vw) 0 calc(60 / 1599 * 100vw);
	}
	.row_reason03 .col {
		width: 49%;
		max-width: 600px;
		padding: calc(50 / 1599 * 100vw);
	}
	.row_reason03 .col .ttl {
		font-size: calc(30 / 1599 * 100vw);
		padding-bottom: calc(15 / 1599 * 100vw);
		margin-bottom: calc(30 / 1599 * 100vw);
	}
	.row_reason03 .col .txt {
		font-size: calc(18 / 1599 * 100vw);
	}
	.arw_reason01 {
		height: calc(130 / 1599 * 100vw);
	}
	.arw_reason01 p {
		font-size: calc(40 / 1599 * 100vw);
	}
	.wrap_reason01 {
		padding: calc(60 / 1599 * 100vw);
	}
	.wrap_reason01.col01::before {
		font-size: calc(300 / 1599 * 100vw);
		bottom: calc(-50 / 1599 * 100vw);
	}
	.wrap_reason01.col02::before {
		font-size: calc(300 / 1599 * 100vw);
		bottom: calc(-50 / 1599 * 100vw);
	}
	.row_reason04 .col_txt {
		width: 50%;
	}
	.row_reason04 .col_img {
		width: 43%;
		max-width: 560px;
	}
	.row_reason04 .copy04 {
		font-size: calc(34 / 1599 * 100vw);
	}
	.row_reason04 .copy04 span {
		font-size: calc(50 / 1599 * 100vw);
	}
	.row_reason04 .copy05 {
		font-size: calc(34 / 1599 * 100vw);
	}
	.row_reason04 .copy05 span {
		font-size: calc(50 / 1599 * 100vw);
	}
	.row_reason04 .img {
		margin-top: calc(35 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_reason0::before {
		width: calc(589 / 1299 * 100vw);
		height: calc(190 / 1299 * 100vw);
		bottom: calc(2100 / 1299 * 100vw);
	}
	.index_reason0::after {
		width: calc(590 / 1299 * 100vw);
		height: calc(190 / 1299 * 100vw);
		bottom: calc(2100 / 1299 * 100vw);
	}
	.bg_reason01 {
		padding: calc(100 / 1299 * 100vw) 0 calc(80 / 1299 * 100vw);
	}
	.index_reason0 .copy01 {
		font-size: calc(34 / 1299 * 100vw);
		height: calc(140 / 1299 * 100vw);
        line-height: 1.3;
	}
	.index_reason0 .copy01::before {
		width: calc(20 / 1299 * 100vw);
	}
	.index_reason0 .copy02 {
		font-size: calc(50 / 1299 * 100vw);
	}
	.bg_reason02 {
		padding: calc(70 / 1299 * 100vw) 0 calc(80 / 1299 * 100vw);
	}
	.index_reason0 .copy03 {
		font-size: calc(40 / 1299 * 100vw);
	}
	.index_reason0 .copy03::after {
		width: calc(317 / 1299 * 100vw);
		height: calc(10 / 1299 * 100vw);
		top: calc(150 / 1299 * 100vw);
	}
	.row_reason01 .col{
		width: 32%;
		max-width: 379px;
	}
	.row_reason01 .ttl {
		height: calc(137 / 1299 * 100vw);
	}
	.row_reason01 .ttl p {
		font-size: calc(50 / 1299 * 100vw);
	}
	.row_reason01 .col .box {
		height: calc(190 / 1299 * 100vw);
		padding: calc(30 / 1299 * 100vw);
	}
	.row_reason01 .col .box p {
		font-size: calc(20 / 1299 * 100vw);
	}
	.box_reason01 {
		padding: calc(80 / 1299 * 100vw) calc(60 / 1299 * 100vw) calc(60 / 1299 * 100vw);
	}
	.row_reason02 {
		padding: 0 calc(25 / 1299 * 100vw);
		gap: 0 calc(20 / 1299 * 100vw);
		top: calc(-100 / 1299 * 100vw);
	}
	.row_reason02 .ccl {
		width: calc(140 / 1299 * 100vw);
		height: calc(140 / 1299 * 100vw);
	}
	.row_reason02 .ccl p {
		font-size: calc(32 / 1299 * 100vw);
	}
	.row_reason02 > p {
		font-size: calc(40 / 1299 * 100vw);
	}
	.row_reason02 .txt01 {
		font-size: calc(30 / 1299 * 100vw);
	}
	.bg_reason03 {
		padding: calc(70 / 1299 * 100vw) 0 calc(60 / 1299 * 100vw);
	}
	.row_reason03 .col {
		width: 49%;
		max-width: 600px;
		padding: calc(50 / 1299 * 100vw);
	}
	.row_reason03 .col .ttl {
		font-size: calc(30 / 1299 * 100vw);
		padding-bottom: calc(15 / 1299 * 100vw);
		margin-bottom: calc(30 / 1299 * 100vw);
	}
	.row_reason03 .col .txt {
		font-size: calc(18 / 1299 * 100vw);
	}
	.arw_reason01 {
		height: calc(110 / 1299 * 100vw);
	}
	.arw_reason01 p {
		font-size: calc(30 / 1299 * 100vw);
	}
	.wrap_reason01 {
		padding: calc(60 / 1299 * 100vw);
	}
	.wrap_reason01.col01::before {
		font-size: calc(300 / 1299 * 100vw);
		bottom: calc(-50 / 1299 * 100vw);
	}
	.wrap_reason01.col02::before {
		font-size: calc(300 / 1299 * 100vw);
		bottom: calc(-50 / 1299 * 100vw);
	}
	.row_reason04 .col_txt {
		width: 50%;
	}
	.row_reason04 .col_img {
		width: 43%;
		max-width: 560px;
	}
	.row_reason04 .copy04 {
		font-size: calc(30 / 1299 * 100vw);
	}
	.row_reason04 .copy04 span {
		font-size: calc(38 / 1299 * 100vw);
	}
	.row_reason04 .copy05 {
		font-size: calc(34 / 1299 * 100vw);
	}
	.row_reason04 .copy05 span {
		font-size: calc(50 / 1299 * 100vw);
	}
	.row_reason04 .img {
		margin-top: calc(35 / 1299 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.row_reason04 {
		align-items: start;
	}
	.arw_reason01 {
		height: calc(80 / 960 * 100vw);
	}
	.row_reason04 .col_img  {
		width: 45%;
	}
	.row_reason04 .copy04 {
        font-size: calc(30 / 1299 * 100vw);
    }
	.row_reason04 .copy04 span {
        font-size: calc(40 / 1299 * 100vw);
    }
}
@media(max-width: 767px) {
	.index_reason0::before {
		width: calc(589 / 750 * 100vw);
		height: calc(190 / 750 * 100vw);
		bottom: calc(2100 / 750 * 100vw);
	}
	.index_reason0::after {
		width: calc(590 / 750 * 100vw);
		height: calc(190 / 750 * 100vw);
		bottom: calc(2100 / 750 * 100vw);
	}
	.bg_reason01 {
		padding: calc(100 / 750 * 100vw) 0 calc(80 / 750 * 100vw);
	}
	.index_reason0 .copy01 {
		font-size: calc(40 / 750 * 100vw);
		height: calc(220 / 750 * 100vw);
		line-height: 1.5;
	}
	.index_reason0 .copy01::before {
		width: calc(20 / 750 * 100vw);
	}
	.index_reason0 .copy02 {
		font-size: calc(50 / 750 * 100vw);
	}
	.bg_reason02 {
		background: url(./images/index/bg_reason02_sp.jpg) no-repeat top center / cover;
		padding: calc(70 / 750 * 100vw) 0 calc(80 / 750 * 100vw);
	}
	.index_reason0 .copy03 {
		font-size: calc(40 / 750 * 100vw);
	}
	.index_reason0 .copy03::after {
		width: calc(317 / 750 * 100vw);
		height: calc(10 / 750 * 100vw);
		top: calc(150 / 750 * 100vw);
	}
	.row_reason01 {
		gap: calc(40 / 750 * 100vw);
    	justify-content: center;
	}
	.row_reason01 .col{
		width: 47%;
        max-width: 330px;
	}
	.row_reason01 .ttl {
		height: calc(120 / 750 * 100vw);
	}
	.row_reason01 .ttl p {
		font-size: calc(50 / 750 * 100vw);
	}
	.row_reason01 .col .box {
		height: calc(315 / 750 * 100vw);
        padding: calc(25 / 750 * 100vw);
	}
	.row_reason01 .col:nth-of-type(3) .box {
		height: calc(270 / 750 * 100vw);
	}
	.row_reason01 .col .box p {
		font-size: calc(30 / 750 * 100vw);
		line-height: 1.5;
	}
	.box_reason01 {
		padding: calc(230 / 750 * 100vw) calc(25 / 750 * 100vw) calc(45 / 750 * 100vw);
	}
	.row_reason02 {
		padding: 0;
        background: unset;
        flex-direction: column;
        gap: calc(30 / 750 * 100vw) 0;
        top: calc(-100 / 750 * 100vw);
	}
	.row_reason02 .ccl {
		width: calc(160 / 750 * 100vw);
		height: calc(160 / 750 * 100vw);
	}
	.row_reason02 .ccl p {
		font-size: calc(40 / 750 * 100vw);
        line-height: 1.1;
	}
	.row_reason02 > p {
		font-size: calc(50 / 750 * 100vw);
		text-align: center;
        line-height: 1.4;
	}
	.row_reason02 .txt01 {
		font-size: calc(40 / 750 * 100vw);
	}
	.bg_reason03 {
		padding: calc(70 / 750 * 100vw) 0 calc(60 / 750 * 100vw);
		background: url(./images/index/bg_reason05_sp.jpg) no-repeat top center / cover;
	}
	.index_reason0 .bg_reason03 .copy03::after {
		top: calc(210 / 750 * 100vw);
	}
	.row_reason03 {
		align-items: stretch;
	}
	.row_reason03 .col {
		max-width: 340px;
        padding: calc(45 / 750 * 100vw) calc(20 / 750 * 100vw);
        background: url(./images/index/bg_reason06_sp.jpg) no-repeat center / cover;
	}
	.row_reason03 .col .ttl {
		font-size: calc(30 / 750 * 100vw);
		padding-bottom: calc(15 / 750 * 100vw);
		margin-bottom: calc(30 / 750 * 100vw);
	}
	.row_reason03 .col .txt {
		font-size: calc(30 / 750 * 100vw);
		line-height: 1.4;
	}
	.arw_reason01 {
		background: url(./images/index/arw_reason01.png) no-repeat center / contain;
		height: calc(160 / 750 * 100vw);
	}
	.arw_reason01 p {
		position: relative;
        bottom: 2vw;
		font-size: calc(40 / 750 * 100vw);
	}
	.wrap_reason01 {
		padding: calc(60 / 750 * 100vw) calc(25 / 750 * 100vw);
	}
	.wrap_reason01.col01::before {
		font-size: calc(300 / 750 * 100vw);
		bottom: calc(770 / 750 * 100vw);
	}
	.wrap_reason01.col02::before {
		font-size: calc(300 / 750 * 100vw);
		bottom: calc(1750 / 750 * 100vw);
        left: 0;
        right: unset;
	}
	.row_reason04 {
		flex-direction: column;
    	gap: calc(40 / 750 * 100vw) 0;
	}
	.wrap_reason01.col02 .row_reason04 {
		flex-direction: column-reverse;
	}
	.row_reason04 .col_txt {
		width: 100%;
	}
	.row_reason04 .col_img {
		width: 100%;
        max-width: 100%;
	}
	.row_reason04 .copy04 {
		font-size: calc(34 / 750 * 100vw);
	}
	.row_reason04 .copy04 span {
		font-size: calc(50 / 750 * 100vw);
	}
	.row_reason04 .copy05 {
		font-size: calc(34 / 750 * 100vw);
	}
	.row_reason04 .copy05 span {
		font-size: calc(50 / 750 * 100vw);
	}
	.row_reason04 .img {
		margin-top: calc(35 / 750 * 100vw);
		max-width: 560px;
	}
}


/* index_recommend
------------------------------------------------------------------*/
.ttl_index_recommend {
	margin-bottom: 40px;
	text-align: center;
}
.ttl_index_recommend .en {
	line-height: .58;
	font-size: 600%;
	letter-spacing: .1em;
}
.copy_index_recommend {
	margin-bottom: 28px;
	line-height: 1.4;
	font-size: 250%;
	letter-spacing: .1em;
}
.bg_index_recommend01 {
	background-color: rgba(231, 236, 244, .8);
	position: relative;
	padding: 100px 0 95px;
}
.bg_index_recommend01 > * {
	position: relative;
	z-index: 1;
}
.bg_index_recommend01:before {
	content: '';
	display: block;
	background-image: url(./images/index/deco_recommend01.svg);
	background-repeat: no-repeat;
	background-position: center bottom;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 521px;
}
.row_index_recommend01 {
	margin: 0 2.5%;
}
.row_index_recommend01 li {
	max-width: 360px;
	width: 31.579%;
	margin-right: 2.6315%;
}
.row_index_recommend01 li:nth-child(3n), .row_index_recommend01 li:last-child {
	margin-right: 0;
}
.row_index_recommend01 li .icn {
	background: #2877a5;
	width: 300px;
	height: 300px;
	border-radius: 100%;
	margin-bottom: 15px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.row_index_recommend01 li .txt {
	line-height: 1.38;
	font-size: 130%;
	letter-spacing: .1em;
}
.row_index_recommend02 {
	margin-bottom: 80px;
}
.row_index_recommend02 .col {
	background-repeat: no-repeat;
	background-position: center top;
	position: relative;
	width: 50%;
	height: auto;
	padding: 300px 2% 0;
}
.row_index_recommend02 .col_l {
	background-image: url(./images/index/bg_recommend01.jpg);
}
.row_index_recommend02 .col_r {
	background-image: url(./images/index/bg_recommend02.jpg);
}
.row_index_recommend02 .box {
	background: rgba(255, 255, 255, .9);
	border: 2px solid #2877a5;
	max-width: 800px;
	width: 100%;
	height: 100%;
	padding: 47px 8.3%;
}
.row_index_recommend02 .copy {
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 40px;
	line-height: 1.5;
	font-size: 200%;
	letter-spacing: .1em;
}
.row_index_recommend02 .copy span {
	margin: 0 -1em;
}
.row_index_recommend02 .copy:after {
	content: '';
	display: block;
	background-image: url(./images/page/bdr01.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 10px;
}

.bg_fee01 {
	background: url(./images/index/bg_fee04.jpg) no-repeat center left/ cover;
	padding-bottom: calc(100/1920 * 100vw);
}
.bg_fee01 .ttl01 {
	height: calc(130/1920 * 100vw);
	background: rgba(255, 255, 255, 0.1);
	font-size: calc(46/1920 * 100vw);
	margin-bottom: calc(50 / 1920 * 100vw);
}
.bg_fee01 .copy01 {
	font-size: calc(80/1920 * 100vw);
	line-height: 1;
	margin-bottom: calc(45/1920 * 100vw);
}
.bg_fee01 .copy01 small{
	font-size: calc(60/1920 * 100vw);
}
.bg_fee01 .copy01 em{
	font-size: calc(140/1920 * 100vw);
}
.bg_fee01 .copy02 {
	line-height: 1;
	border: 2px solid #fff;
	height: calc(130/1920 * 100vw);
	font-size:  calc(50/1920 * 100vw);
	margin-bottom: calc(40/1920 * 100vw);
}
.bg_fee01 .copy02 span {
	font-size:  calc(90/1920 * 100vw);
}
.bg_fee01 .txt01 {
	font-size:  calc(26/1920 * 100vw);
}

@media(min-width: 1441px) {
	.row_index_recommend02 .copy br.pc_only {
		display: none;
	}
}
@media(min-width: 961px) and (max-width:1440px) {
	.row_index_recommend02 .copy {
		height: 5.5em;
	}
}
@media(min-width: 961px) and (max-width:1200px) {
	.row_index_recommend01 li .txt {
		font-size: 100%;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.row_index_recommend01 li .icn {
		width: calc(300/1299 * 100vw);
		height: calc(300/1299 * 100vw);
		margin-bottom: calc(15/1299 * 100vw);
	}
	.row_index_recommend01 li .icn img {
		width: 50%;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.bg_fee01 {
		padding-bottom: calc(100/1599 * 100vw);
	}
	.bg_fee01 .ttl01 {
		height: calc(130/1599 * 100vw);
		font-size: calc(46/1599 * 100vw);
		margin-bottom: calc(50 / 1599 * 100vw);
	}
	.bg_fee01 .copy01 {
		font-size: calc(80/1599 * 100vw);
		margin-bottom: calc(45/1599 * 100vw);
	}
	.bg_fee01 .copy01 small{
		font-size: calc(60/1599 * 100vw);
	}
	.bg_fee01 .copy01 em{
		font-size: calc(140/1599 * 100vw);
	}
	.bg_fee01 .copy02 {
		height: calc(130/1599 * 100vw);
		font-size:  calc(50/1599 * 100vw);
		margin-bottom: calc(40/1599 * 100vw);
	}
	.bg_fee01 .copy02 span {
		font-size:  calc(90/1599 * 100vw);
	}
	.bg_fee01 .txt01 {
		font-size:  calc(26/1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_fee01 {
		padding-bottom: calc(100/1299 * 100vw);
	}
	.bg_fee01 .ttl01 {
		height: calc(130/1299 * 100vw);
		font-size: calc(46/1299 * 100vw);
		margin-bottom: calc(50 / 1299 * 100vw);
	}
	.bg_fee01 .copy01 {
		font-size: calc(80/1299 * 100vw);
		margin-bottom: calc(45/1299 * 100vw);
	}
	.bg_fee01 .copy01 small{
		font-size: calc(60/1299 * 100vw);
	}
	.bg_fee01 .copy01 em{
		font-size: calc(140/1299 * 100vw);
	}
	.bg_fee01 .copy02 {
		height: calc(130/1299 * 100vw);
		font-size:  calc(50/1299 * 100vw);
		margin-bottom: calc(40/1299 * 100vw);
	}
	.bg_fee01 .copy02 span {
		font-size:  calc(90/1299 * 100vw);
	}
	.bg_fee01 .txt01 {
		font-size:  calc(26/1299 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.ttl_index_recommend .en {
		font-size: 480%;
	}
	.copy_index_recommend {
		font-size: 200%;
	}
	.row_index_recommend01 li .txt {
		font-size: 80%;
	}
	.row_index_recommend02 .col {
		width: 100%;
		padding: 300px 5% 0;
	}
	.row_index_recommend02 .col_l {
		margin-bottom: 60px;
	}
}
@media(max-width: 767px) {
	.ttl_index_recommend {
		margin-bottom: calc(29 / 750 * 100vw);
	}
	.ttl_index_recommend .en {
		line-height: .78;
		font-size: 281.25%;
	}
	.copy_index_recommend {
		margin-bottom: calc(69 / 750 * 100vw);
		/* font-size: 156.25%; */
		font-size: 151.25%;
		letter-spacing: .1em;
	}
	.bg_index_recommend01 {
		padding: calc(93 / 750 * 100vw) 0 calc(95 / 750 * 100vw);
	}
	.bg_index_recommend01:before {
		background-image: url(./images/index/deco_recommend01_sp.svg);
		background-position: center bottom;
		-webkit-background-size: cover;
		background-size: cover;
		height: calc(521 / 750 * 100vw);
	}
	.row_index_recommend01 {
		margin: -7vw 0 0;
	}
	.row_index_recommend01 li {
		max-width: none;
		width: calc(346 / 750 * 100vw);
		margin-top: 7vw;
		margin-right: 0;
	}
	.row_index_recommend01 li .icn {
		width: calc(300 / 750 * 100vw);
		height: calc(300 / 750 * 100vw);
		margin-bottom: calc(27 / 750 * 100vw);
	}
	.row_index_recommend01 li .icn img {
		height: calc(145 / 750 * 100vw);
    	width: auto;
	}
	.row_index_recommend01 li .txt {
		line-height: 1.33;
		font-size: 93.75%;
		letter-spacing: 0;
	}
	.row_index_recommend02 {
		margin-bottom: 0;
	}
	.row_index_recommend02 .col {
		-webkit-background-size: contain;
		background-size: contain;
		width: 100%;
		margin-bottom: calc(80 / 750 * 100vw);
		padding: calc(300 / 750 * 100vw) 3.2% 0;
	}
	.row_index_recommend02 .box {
		border-width: calc(4 / 750 * 100vw);
		max-width: none;
		padding: calc(34 / 750 * 100vw) 3.4% calc(30 / 750 * 100vw);
	}
	.row_index_recommend02 .copy {
		margin-bottom: calc(30 / 750 * 100vw);
		padding-bottom: calc(50 / 750 * 100vw);
		font-size: 125%;
		letter-spacing: .1em;
	}
	.row_index_recommend02 .copy span {
		margin: 0;
	}
	.row_index_recommend02 .copy:after {
		height: calc(10 / 750 * 100vw);
	}
	.bg_fee01 {
		background: url(./images/index/bg_fee04_sp.jpg) no-repeat center left/ cover;
		padding-bottom: calc(100/750 * 100vw);
	}
	.bg_fee01 .ttl01 {
		height: calc(130/750 * 100vw);
		font-size: calc(46/750 * 100vw);
		margin-bottom: calc(50 / 750 * 100vw);
	}
	.bg_fee01 .copy01 {
		font-size: calc(68/750 * 100vw);
		margin-bottom: calc(45/750 * 100vw);
	}
	.bg_fee01 .copy01 small{
		font-size: calc(50/750 * 100vw);
	}
	.bg_fee01 .copy01 em{
		font-size: calc(120/750 * 100vw);
	}
	.bg_fee01 .copy02 {
		height: calc(110/750 * 100vw);
		font-size:  calc(44/750 * 100vw);
		margin-bottom: calc(40/750 * 100vw);
	}
	.bg_fee01 .copy02 span {
		font-size:  calc(78/750 * 100vw);
	}
	.bg_fee01 .txt01 {
		font-size:  calc(26/750 * 100vw);
	}
}

/* index_contact
------------------------------------------------------------------*/
.index_contact {
	padding: 100px 0;
}
.ttl_index_contact {
	position: relative;
	margin-bottom: 42px;
	padding: 0 2.6%;
}
.ttl_index_contact .en {
	margin: 0 2.6%;
	line-height: .62;
	font-size: 500%;
	letter-spacing: .11em;
}
.ttl_index_contact:before, .ttl_index_contact:after {
	content: '';
	display: block;
	flex-grow: 1;
	background: #153a76;
	height: 2px;
}
.bg_index_contact {
	position: relative;
	padding: 94px 0 130px;
}
.bg_index_contact > * {
	position: relative;
	z-index: 3;
}
.bg_index_contact:before {
	content: '';
	display: block;
	background-image: linear-gradient(to left, #153a76, #086ea9);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
	width: 95.83%;
	height: calc(100% - 130px);
	margin: 0 auto;
}
.bg_index_contact:after {
	content: '';
	display: block;
	background: #e7ecf4;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 64.85%;
}
.bg_index_contact .box_copy {
	z-index: 2;
	max-width: calc(1420px + 7%);
	width: 100%;
	margin-bottom: 50px;
	padding: 0 3.5%;
}
.bg_index_contact .box_copy .bdr {
	position: relative;
	width: 100%;
}
.bg_index_contact .box_copy .bdr:before {
	content: '';
	display: block;
	position: absolute;
	top: 35px;
	left: 0;
	border: 3px solid rgba(255, 255, 255, .2);
	border-top: none;
	width: 100%;
	height: 190px;
}
.inner_contact {
	max-width: calc(1545px + 10%);
	margin: 0 auto;
	width: 100%;
}
@media all and (-ms-high-contrast: none) {
	.bg_index_contact .box_copy .bdr:before {
		top: 32px;
	}
}
.bg_index_contact .box_copy .copy:before, .bg_index_contact .box_copy .copy:after {
	content: '';
	display: block;
	flex-grow: 1;
	background: rgba(255, 255, 255, .2);
	height: 3px;
}
.bg_index_contact .box_copy .copy span {
	display: block;
	margin: 0 .8em;
	line-height: 1.5;
	font-size: 200%;
	letter-spacing: .1em;
}
.bg_index_contact .box_copy .copy span i {
	display: inline-block;
	position: relative;
	line-height: 1;
	font-style: normal;
	font-size: 150%;
	letter-spacing: .1em;
}
.bg_index_contact .box_copy .copy span i:before {
	content: '';
	background: #fff;
	position: absolute;
	top: -24px;
	left: 0;
	right: 0;
	border-radius: 50%;
	width: 13px;
	height: 13px;
	margin: auto;
}
@media all and (-ms-high-contrast: none) {
	.bg_index_contact .box_copy .copy span i:before {
		top: -40px;
	}
}
.bg_index_contact .row_btn {
	position: relative;
	z-index: 1;
	margin-bottom: 55px;
	margin-left: auto;
}
.bg_index_contact .row_btn01 {
	position: relative;
	z-index: 1;
	margin-bottom: 55px;
	margin-left: 36px;
	width: 91%;
}
.bg_index_contact .row_btn01 .col_r {
	position: relative;
}
/* .bg_index_contact .row_btn01 .col_r::before {
	content: "";
	position: absolute;
	background: url("images/index/icn_contct01.png")no-repeat center / contain;
    width: 205px;
    height: 614px;
	right: -35%;
	top: 0;
	bottom: 0;
	margin: auto;
} */
.bg_index_contact .row_btn01 .col_r::before {
	content: "";
	position: absolute;
	background: url("images/index/icn_contct01_01.png")no-repeat center / contain;
    width: 405px;
    height: 714px;
	right: -34%;
	top: -65px;
	bottom: 0;
	margin: auto;
}
.bg_index_contact .row_btn01.row_btn .col {
	max-width: 476px;
	width: 48%;
}
.bg_index_contact .row_btn .col {
	max-width: 500px;
	width: 48%;
}
.bg_index_contact .row_btn .unit_time {
	position: relative;
	padding-right: 110px;
}
.bg_index_contact .row_btn .unit_time .txt_time {
	line-height: 1.67;
	font-size: 90%;
	letter-spacing: .1em;
}
.bg_index_contact .row_btn .unit_time .btn_map {
	background: rgba(255, 255, 255, .1);
	position: absolute;
	top: 7px;
	right: 0;
	width: 100px;
	line-height: 48px;
	font-size: 90%;
	letter-spacing: .1em;
	padding-right: 20px;
}
.bg_index_contact .row_btn .unit_time .btn_map:after {
	content: '';
	display: block;
	background-image: url(./images/page/arw02.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 15px;
	width: 10px;
	height: 100%;
}
.btn_index_contact01 {
	position: relative;
	width: 100%;
	height: 258px;
	margin-bottom: 60px;
}
.btn_contact {
	position: absolute;
	width: calc(395 / 1920 * 100vw);
	height: calc(80 / 1920 * 100vw);
	left: 50%;
	transform: translate(-50%, 0);
	bottom: calc(-35 / 1920 * 100vw);
}
.btn_contact a {
	position: relative;
	display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
	height: 100%;
	outline: solid 2px #153a76;
	background: #fff;
}
.btn_contact a::after {
	position: absolute;
	content: '';
	background: url(./images/index/arw01.svg) no-repeat center/ contain;
	top: 50%;
	transform: translate(0, -50%) rotate(-90deg);
    right: calc(30 / 1920 * 100vw);
    width: calc(37 / 1920 * 100vw);
    height: calc(19 / 1920 * 100vw);
}
.btn_contact a p {
	font-size: calc(30 / 1920 * 100vw);
	position: relative;
	left: calc(-10 / 1920 * 100vw);
}
.btn_index_contact01 > a {
	background-image: url(./images/index/bg_tel02.png);
	background-repeat: no-repeat;
	background-position: left center;
	-webkit-background-size: 350px;
	background-size: 350px;
	position: relative;
	width: 100%;
	height: 100%;
	padding-bottom: 50px;
}
.btn_index_contact01 .icn {
	position: absolute;
	top: -20px;
	left: -50px;
	border-radius: 50%;
	width: 104px;
	height: 104px;
	line-height: 104px;
	font-size: 150%;
	letter-spacing: .1em;
}
.col_r .btn_index_contact01 .icn {
	left: -57px;
}
.btn_index_contact01 .txt {
	display: block;
	line-height: 1;
	font-size: 140%;
	letter-spacing: .1em;
}
.btn_index_contact01 .tel {
	display: inline-block;
	position: relative;
	margin: .15em 0;
	padding-left: 1.4em;
	line-height: 1;
	font-size: 280%;
	letter-spacing: .05em;
}
.btn_index_contact01 .tel:before {
	content: '';
	display: block;
	background-image: url(./images/page/icn_tel01.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	width: 62px;
	height: 100%;
}
.btn_index_contact01 .address {
	display: block;
	line-height: 1;
	font-size: 90%;
	letter-spacing: .1em;
}
.btn_index_contact02 {
	position: relative;
	max-width: 650px;
	width: 100%;
	height: 120px;
}
.btn_index_contact02:after {
	content: '';
	display: block;
	background: rgba(21, 58, 118, .2);
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.btn_index_contact02 a {
	position: relative;
	border: 2px solid #184696;
	width: 100%;
	height: 100%;
}
.btn_index_contact02 a span {
	display: inline-block;
	position: relative;
	padding-right: 2em;
	font-size: 150%;
	letter-spacing: .1em;
}
.btn_index_contact02 a span small {
	font-size: 86.67%;
	letter-spacing: .1em;
}
.btn_index_contact02 a span:after {
	content: '';
	display: block;
	background-image: url(./images/page/arw03.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 0;
	width: 39px;
	height: 100%;
}
.btn_index_contact01 .address .adjust {
	display: none;
}
.bg_index_contact .row_btn .unit_time .txt_time .adjust {
	display: none;
}
@media(min-width: 1550px) and (max-width:1840px) {
	.bg_index_contact .row_btn .col {
		max-width: 440px;
	}
	.bg_index_contact .row_btn {
		max-width: 1270px;
	}
	.bg_index_contact .row_btn .col {
		max-width: 415px;
	}
}
@media(min-width: 1301px) and (max-width:1840px) {
	.bg_index_contact .row_btn01.row_btn .col {
		max-width: 390px;
	}
	.bg_index_contact .row_btn .col {
		max-width: 390px;
	}
	.bg_index_contact .row_btn .unit_time .btn_map {
		width: 75px;
	}
	.bg_index_contact .row_btn .unit_time {
		padding-right: 80px;
	}
	.btn_index_contact01 .icn {
		width: 90px;
		height: 90px;
		line-height: 90px;
	}
	.btn_index_contact01 .txt {
		font-size: 120%;
	}
	.btn_index_contact01 .tel {
		font-size: 247%;
	}
	.bg_index_contact .col:nth-child(3) .btn_index_contact01 .icn {
		font-size: 125%;
	}
	.btn_index_contact01 .icn {
		top: -50px;
	}
	.col_r .btn_index_contact01 .icn {
		left: -15px;
	}
	.btn_index_contact01 .icn {
		left: -15px;
	}
	.bg_index_contact .row_btn {
		max-width: 1220px;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_contact .row_btn01.row_btn {
		max-width: 1200px;
		margin-left: calc(100 / 1840*100vw);
		margin-right: auto;
	}
	.btn_index_contact01 .address .adjust {
		display: block;
	}
	.bg_index_contact .row_btn .unit_time .txt_time .adjust {
		display: block;
	}
}
@media(min-width: 1630px) and (max-width:1840px) {
	.bg_index_contact .row_btn01.row_btn {
		max-width: 1318px;
		margin-left: calc(100 / 1840*100vw);
		margin-right: auto;
	}
}
@media(min-width:1300px) and (max-width:1840px){
	/* .bg_index_contact .row_btn01 .col_r::before{
		right: -52%;
	    width: 180px;
	} */
	.bg_index_contact .row_btn01 .col_r::before {
        right: -56%;
        width: 380px;
        top: -30px;
    }
}
@media(min-width: 1465px) and (max-width:1630px) {
	.bg_index_contact .row_btn01.row_btn {
		max-width: 1205px;
		margin-left: calc(100 / 1840*100vw);
		margin-right: auto;
	}
}
@media(min-width: 1300px) and (max-width:1510px){
	/* .bg_index_contact .row_btn01 .col_r::before{
		right: -38%;
	    width: 150px;
	} */
	.bg_index_contact .row_btn01 .col_r::before {
        right: -38%;
        width: 350px;
        top: 0;
    }
}
@media(min-width: 1300px) and (max-width:1465px) {
	.bg_index_contact .row_btn01.row_btn {
		max-width: 1100px;
		margin-left: calc(43 / 1300*100vw);
	}
	.bg_index_contact .row_btn01.row_btn .col {
		max-width: 357px;
	}
	.row_btn01 .btn_index_contact01 .tel {
		font-size: 215%;
	}
	.row_btn01 .btn_index_contact01 .address {
		display: block;
		line-height: 1;
		font-size: 87%;
		letter-spacing: .1em;
	}
	.row_btn01 .btn_index_contact01 .tel:before {
		width: 50px;
	}
}
@media(min-width: 1025px) and (max-width:1300px) {
	/* .bg_index_contact .row_btn01 .col_r::before {
		width: 139px;
		height: 616px;
		right: -80%;
		top: 21%;
	} */
	.bg_index_contact .row_btn01 .col_r::before {
        width: 289px;
        height: 776px;
        right: -80%;
        top: 0;
    }
	.bg_index_contact .row_btn .unit_time {
		padding-right: 120px;
	}
	.bg_index_contact .row_btn .unit_time .txt_time {
		font-size: 70%;
	}
	.bg_index_contact .row_btn .unit_time .btn_map {
		width: 112px;
		line-height: 32px;
		font-size: 70%;
	}
	.bg_index_contact .row_btn .unit_time .btn_map:after {
		right: 16px;
		width: 8px;
	}
	.btn_index_contact01 .icn {
		left: -20px;
		width: 83px;
		height: 83px;
		line-height: 83px;
		font-size: 120%;
	}
	.bg_index_contact .row_btn {
		font-size: 85%;
		margin-left: 0;
	}
	.bg_index_contact .row_btn .col {
		max-width: 580px;
	}
	.inner_contact {
		max-width: calc(1200px + 10%);
		padding: 0 5%;
	}
	.col_r .btn_index_contact01 .icn {
		left: -20px;
	}
	.bg_index_contact .row_btn .col:last-child {
		margin: 40px auto 0;
	}
}
@media(min-width: 768px) and (max-width:1024px) {
	/* .bg_index_contact .row_btn .col_r::before {
		width: 204px;
		height: 616px;
		right: -48%;
		top: -98%;
	} */
	.bg_index_contact .row_btn .col_r::before {
        width: 304px;
        height: 716px;
        right: -55%;
        top: 8%;
    }
	.bg_index_contact .row_btn01.row_btn::before {
		right: -41px;
	}
	.ttl_index_contact .en {
		font-size: 400%;
	}
	.bg_index_contact .box_copy {
		padding: 0 5%;
	}
	.bg_index_contact .box_copy .bdr:before {
		top: 28px;
		height: 500px;
	}
	.bg_index_contact .box_copy .copy span {
		font-size: 160%;
	}
	.bg_index_contact .box_copy .copy span i:before {
		top: -19px;
		width: 10px;
		height: 10px;
	}
	.bg_index_contact .row_btn01.row_btn .col {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_contact .row_btn .col {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_contact .row_btn .col_l {
		margin-bottom: 60px;
	}
	.col_r .btn_index_contact01 .icn {
		left: -50px;
	}
	.bg_index_contact .row_btn .col {
		max-width: 580px;
	}
	.bg_index_contact .row_btn .col:last-child {
		margin-top: 60px;
	}
	.btn_contact {
		width: calc(395 / 1299 * 100vw);
    	height: calc(80 / 1299 * 100vw);
		bottom: calc(-35 / 1299 * 100vw);
	}
	.btn_contact a p {
		font-size: calc(30 / 1299 * 100vw);
		position: relative;
		left: calc(-10 / 1299 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1024px) and (-ms-high-contrast: none) {
	.bg_index_contact .box_copy .bdr:before {
		top: 25px;
	}
	.bg_index_contact .box_copy .copy span i:before {
		top: -40px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_index_contact .row_btn01.row_btn {
		margin-left:65px;
		width: 66%;
	}
	/* .bg_index_contact .row_btn01.row_btn .col_r::before {
		right: -40%;
		top: -106%;
	} */
	.bg_index_contact .row_btn01.row_btn .col_r::before {
		right: -55%;
		top: 0;
		width: 250px;
	}
}
@media(max-width: 767px) {
	.index_contact {
		padding: calc(100 / 750 * 100vw) 0;
	}
	.ttl_index_contact {
		margin-bottom: calc(63 / 750 * 100vw);
		padding: 0 3.2%;
	}
	.ttl_index_contact .en {
		font-size: 218.75%;
		letter-spacing: .12em;
	}
	.ttl_index_contact:before, .ttl_index_contact:after {
		height: calc(2 / 750 * 100vw);
	}
	.bg_index_contact {
		padding: calc(80 / 750 * 100vw) 0 calc(220 / 750 * 100vw);
	}
	.bg_index_contact:before {
		background-image: linear-gradient(to top, #153a76, #086ea9);
		width: calc(702 / 750 * 100vw);
		height: calc(100% - (160 / 750 * 100vw));
	}
	.bg_index_contact:after {
		height: calc(100% - (200 / 750 * 100vw));
	}
	.bg_index_contact .box_copy {
		max-width: none;
		margin-bottom: calc(57 / 750 * 100vw);
		padding: 0 5%;
	}
	.bg_index_contact .box_copy .bdr:before {
		display: none;
	}
	.bg_index_contact .box_copy .copy:before, .bg_index_contact .box_copy .copy:after {
		display: none;
	}
	.bg_index_contact .box_copy .copy span {
		margin: 0;
		line-height: 1.4;
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.bg_index_contact .box_copy .copy span i {
		font-size: 140%;
		letter-spacing: .1em;
	}
	.bg_index_contact .box_copy .copy span i:before {
		top: calc(-20 / 750 * 100vw);
		width: calc(15 / 750 * 100vw);
		height: calc(15 / 750 * 100vw);
	}
	.bg_index_contact .row_btn01.row_btn {
		width: 100%;
	}
	.bg_index_contact .row_btn01.row_btn .col {
		max-width: none;
		width: calc(600 / 750 * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_contact .row_btn01.row_btn .col_r::before {
		content: "";
		position: absolute;
		background: url(images/index/icn_contct01_sp.png)no-repeat center / contain;
        width: calc(518 / 750 * 100vw);
        height: calc(487 / 750 * 100vw);
        bottom: -146vw;
		left: 50%; 
		transform: translateX(-50%); 
		-webkit-transform: translateX(-50%); 
		-ms-transform: translateX(-50%);
	}
	.bg_index_contact .row_btn01.row_btn {
		margin-bottom: 61vw;
		margin-left: 0;
	}
	.bg_index_contact .row_btn {
		margin-bottom: calc(30/ 750 * 100vw);
		margin-left: 0;
	}
	.bg_index_contact .row_btn .col {
		max-width: none;
		width: calc(600 / 750 * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.col_r .btn_index_contact01 .icn {
		left: -4vw;
	}
	.bg_index_contact .row_btn .col_l {
		margin-bottom: calc(90 / 750 * 100vw);
	}
	.bg_index_contact .row_btn .unit_time {
		position: relative;
        top: calc(35 / 750 * 100vw);
		padding-right: calc(170 / 750 * 100vw);
	}
	.bg_index_contact .row_btn .unit_time .txt_time {
		line-height: 2.09;
		font-size: 68.75%;
		letter-spacing: 0;
	}
	.bg_index_contact .row_btn .unit_time .btn_map {
		top: calc(13 / 750 * 100vw);
		width: calc(170 / 750 * 100vw);
		padding-right: 7vw;
		line-height: calc(80 / 750 * 100vw);
		font-size: 93.75%;
		letter-spacing: 0;
	}
	.bg_index_contact .row_btn .unit_time .btn_map:after {
		right: calc(30 / 750 * 100vw);
		width: calc(21 / 750 * 100vw);
	}
	.btn_index_contact01 {
		height: calc(247 / 750 * 100vw);
		margin-bottom: calc(150 / 750 * 100vw);
	}
	.btn_index_contact01 a {
		background-image: url(./images/index/bg_tel01_sp.png);
		-webkit-background-size: contain;
		background-size: contain;
	}
	.btn_index_contact01 a:after {
		content: '';
		display: block;
		position: absolute;
		background: url(./images/index/arw01.svg) no-repeat center / contain;
		bottom: 0;
		right: 0;
		width: 0;
		height: 0;
		/* border-style: solid;
		border-width: 0 0 calc(40 / 750 * 100vw) calc(40 / 750 * 100vw);
		border-color: transparent transparent #fff transparent; */
	}
	.btn_contact a::after {
		right: calc(30 / 750 * 100vw);
		width: calc(37 / 750 * 100vw);
		height: calc(19 / 750 * 100vw);
	}
	.btn_index_contact01 .icn {
		top: calc(-30 / 750 * 100vw);
		left: -4vw;
		width: calc(121 / 750 * 100vw);
		height: calc(121 / 750 * 100vw);
		line-height: calc(121 / 750 * 100vw);
		font-size: 125%;
		letter-spacing: .1em;
	}
	.btn_index_contact01 .txt {
		font-size: 112.5%;
		letter-spacing: .1em;
	}
	.btn_index_contact01 .tel {
		margin: .25em 0;
		padding-left: 1.15em;
		font-size: 218.75%;
		letter-spacing: .05em;
	}
	.btn_index_contact01 .tel:before {
		width: calc(62 / 750 * 100vw);
	}
	.btn_index_contact01 .address {
		font-size: 81.25%;
		letter-spacing: 0;
	}
	.btn_index_contact02 {
		max-width: calc(600 / 750 * 100vw);
		height: calc(120 / 750 * 100vw);
	}
	.btn_index_contact02:after {
		top: calc(20 / 750 * 100vw);
		left: calc(20 / 750 * 100vw);
	}
	.btn_index_contact02 a {
		border-width: calc(4 / 750 * 100vw);
	}
	.btn_index_contact02 a span {
		padding-right: 1.55em;
		font-size: 93.75%;
		letter-spacing: 0;
	}
	.btn_index_contact02 a span small {
		font-size: 100%;
		letter-spacing: 0;
	}
	.btn_index_contact02 a span:after {
		width: calc(39 / 750 * 100vw);
	}
	.btn_index_contact01 .txt.name04 {
		padding-left: 4vw;
		letter-spacing: 0;
	}
	.inner_contact {
		max-width: calc(1200px + 10%);
		padding: 0 5%;
	}
	.bg_index_contact .row_btn .col:last-child {
		margin-top: calc(90 / 750 * 100vw);
	}
	.bg_index_contact .row_btn .col:last-child .btn_index_contact01 .icn {
		font-size: 105%;
	}
	.bg_index_contact .row_btn .col:last-child .btn_index_contact01 .address {
		font-size: 75%;
	}
	.btn_contact {
		width: calc(520 / 750 * 100vw);
		height: calc(120 / 750 * 100vw);
		left: 50%;
		transform: translate(-50%, 0);
		bottom: calc(-150 / 750 * 100vw);
	}
	.btn_contact a p {
		font-size: calc(30 / 750 * 100vw);
	}
	.btn_index_contact01 > a {
		flex-wrap: nowrap;
		padding-bottom: 0;
	}
}

/* index_case
------------------------------------------------------------------*/
.bg_index_case {
	position: relative;
	padding: 100px 0;
	background: url("images/index/deco_case01.png")no-repeat left top / 50% auto, url("images/index/deco_case02.png")no-repeat right top / 50% auto, url("images/index/deco_case03.png")no-repeat left bottom / 50% auto, url("images/index/deco_case04.png")no-repeat right bottom / 50% auto;
}
.bg_index_case > * {
	position: relative;
	z-index: 1;
}
.bg_index_case .deco {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.bg_index_case .deco img {
	position: absolute;
	max-width: 50%;
}
.bg_index_case .deco01 {
	top: 0;
	left: 0;
}
.bg_index_case .deco02 {
	top: 0;
	right: 0;
}
.bg_index_case .deco03 {
	bottom: 0;
	left: 0;
}
.bg_index_case .deco04 {
	bottom: 0;
	right: 0;
}
.ttl_index_case {
	margin-bottom: 60px;
}
.ttl_index_case .en {
	margin-bottom: 52px;
	line-height: .61;
	font-size: 600%;
	letter-spacing: .1em;
}
.ttl_index_case .ja {
	line-height: 1;
	font-size: 250%;
	letter-spacing: .1em;
}
.wrap_case01 {
	max-width: calc(1800px + 6%);
	width: 100%;
	margin: 0 auto;
	padding: 0 3%;
}
.box_index_case {
	background: rgba(21, 58, 118, .8);
	position: relative;
	padding: 50px 3% 80px;
}
.box_index_case > * {
	position: relative;
	z-index: 3;
}
.box_index_case:before {
	content: '';
	background-image: url(./images/index/deco_case05.png);
	background-repeat: no-repeat;
	background-position: left top;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 365px;
}
.box_index_case > .flex:before {
	display: none;
}
.box_index_case .col {
	position: relative;
	max-width: 500px;
}
.box_index_case .col_l:before {
	content: '';
	background-image: url(./images/page/arw04.svg);
	background-repeat: no-repeat;
	background-position: center top 42%;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	right: -17.6%;
	width: 56px;
	height: 100%;
	margin: auto;
}
.box_index_case .col .ttl {
	border: none;
	margin-bottom: 0;
	padding: 0;
	line-height: 1.67;
	font-size: 180%;
	letter-spacing: .1em;
	color: #184696;
}
.tbl_index_case {
	display: none;
	max-width: 1000px;
	width: 100%;
}
.tbl_index_case.open {
	display: block;
}
.tbl_index_case table {
	background: #fff;
	border-color: #153a76;
}
.tbl_index_case th {
	background: #f8f8f8;
	padding: 25px 28px 28px;
	font-size: 90%;
	letter-spacing: .1em;
	color: #333;
}
.tbl_index_case td {
	padding: 25px 28px 28px;
	font-size: 90%;
	letter-spacing: .1em;
}
.tbl_index_case tr:not(:last-child) th {
	border-bottom-color: #153a76;
}
.tbl_index_case tr:not(:last-child) td {
	border-bottom-color: #153a76;
}
.row_case01 {
	max-width: 1680px;
	margin: 0 auto;
	gap: 0 2%;
}
.row_case01 .col_img {
	width: 61%;
	max-width: 1000px;
}
.row_case01 .col_content {
	width: 37%;
}
.row_case02 {
	height: calc(85/1920 * 100vw);
	border-bottom: 1px solid #fff;
	margin-bottom: calc(50/1920 * 100vw);
}
.row_case02 .col_l {
	font-size: calc(26/1920 * 100vw);
	width: calc(160/1920 * 100vw);
	height: 100%;
}
.row_case02 .col_r {
	font-size: calc(24/1920 * 100vw);
	padding: 0 calc(25/ 1920 * 100vw);
	width: calc(100% - calc(160/1920 * 100vw));
	height: 100%;
	line-height: 1.4;
}
.row_case02 .txt{
	font-size: calc(20/ 1920 * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.box_index_case .col_l:before {
		width: calc(56 / 1599 * 100vw);
		right: -19%;
	}
	.row_case01 .col_img {
		width: 56%;
	}
	.row_case01 .col_content {
		width: 41%;
	}
	.row_case02 {
		height: calc(85/1599 * 100vw);
		margin-bottom: calc(50/1599 * 100vw);
	}
	.row_case02 .col_l {
		font-size: calc(24 / 1599 * 100vw);
        width: calc(130 / 1599 * 100vw);
	}
	.row_case02 .col_r {
		font-size: calc(22 / 1599 * 100vw);
        padding: 0 calc(25 / 1599 * 100vw);
        width: calc(100% - calc(130 / 1599 * 100vw));
	}
	.row_case02 .txt{
		font-size: calc(20/ 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.row_case01 .col_img {
        width: 51%;
    }
	.row_case01 .col_content {
        width: 46%;
    }
	.row_case02 {
		height: calc(85/1299 * 100vw);
		margin-bottom: calc(50/1299 * 100vw);
	}
	.row_case02 .col_l {
        font-size: calc(22 / 1299 * 100vw);
        width: calc(120 / 1299 * 100vw);
    }
	.row_case02 .col_r {
		font-size: calc(22 / 1299 * 100vw);
        letter-spacing: 0;
        padding: 0 calc(25 / 1299 * 100vw);
        width: calc(100% - calc(120 / 1299 * 100vw));
	}
	.row_case02 .txt{
		font-size: calc(20/ 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.bg_index_case {
		padding: calc(100 / 750 * 100vw) 0;
	}
	.bg_index_case .deco img {
		width: calc(351 / 750 * 100vw);
	}
	.ttl_index_case {
		margin-bottom: calc(80 / 750 * 100vw);
	}
	.ttl_index_case .en {
		margin-bottom: calc(52 / 750 * 100vw);
		font-size: 281.25%;
		letter-spacing: .1em;
	}
	.ttl_index_case .ja {
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.box_index_case {
		position: relative;
		margin-bottom: 8vw;
		padding: calc(29 / 750 * 100vw) calc(30 / 750 * 100vw) calc(40 / 750 * 100vw);
	}
	.box_index_case:before {
		height: calc(291 / 750 * 100vw);
	}
	.box_index_case .col {
		position: relative;
		max-width: none !important;
		width: calc(290 / 750 * 100vw) !important;
	}
	.box_index_case .col_l:before {
		background-image: url(./images/page/arw04_sp.svg);
		background-position: center top 34%;
		right: -15%;
		width: calc(26 / 750 * 100vw);
	}
	.box_index_case .col .ttl {
		font-size: 112.5%;
		letter-spacing: .1em;
	}
	.tbl_index_case table, .tbl_index_case tbody, .tbl_index_case tr, .tbl_index_case th, .tbl_index_case td {
		display: block;
		width: 100% !important;
	}
	.tbl_index_case th {
		padding: 3vw 4vw 4vw;
		font-size: 100%;
		letter-spacing: 0;
	}
	.tbl_index_case td {
		padding: 4vw 4vw 5vw;
		font-size: 100%;
		letter-spacing: 0;
	}
	.tbl_index_case tr:not(:last-child) th {
		border-bottom: none;
	}
	.row_case01 {
		max-width: 100%;
		gap: calc(40 / 750 * 100vw) 0;
	}
	.row_case01 .col_img {
		width: 100%;
		max-width: 100%;
	}
	.row_case01 .col_content {
		width: 100%;
	}
	.row_case02 {
		height: calc(95/750 * 100vw);
		margin-bottom: calc(30/750 * 100vw);
	}
	.row_case02 .col_l {
		font-size: calc(26 / 750 * 100vw);
        width: calc(130 / 750 * 100vw);
	}
	.row_case02 .col_r {
		font-size: calc(28 / 750 * 100vw);
        padding: 0 calc(30 / 750 * 100vw);
        width: calc(100% - calc(130 / 750 * 100vw));
	}
	.row_case02 .txt{
		font-size: calc(20/ 750 * 100vw);
	}
}


/* index_greeting
------------------------------------------------------------------*/
.ttl_index_greeting {
	margin-bottom: 42px;
	text-shadow: 0px 0px 5px #d2dbea, 0px 0px 5px #d2dbea, 0px 0px 10px #d2dbea, 0px 0px 10px #d2dbea, 0px 0px 15px #d2dbea, 0px 0px 15px #d2dbea;
}
.ttl_index_greeting .ja {
	margin-right: .35em;
	line-height: .88;
	font-size: 400%;
	letter-spacing: .1em;
}
.ttl_index_greeting .en {
	margin-top: .1em;
	line-height: 1;
	font-size: 300%;
	letter-spacing: .1em;
}
.name_index_greeting em {
	padding: 0 1.5em;
	font-size: 110%;
	letter-spacing: .1em;
}
.name_index_greeting .ja {
	margin-left: .5em;
	line-height: 1;
	font-size: 190%;
	letter-spacing: .1em;
}
.bg_index_greeting01 {
	position: relative;
	margin-bottom: 80px;
	padding: 30px 0 0;
}
.bg_index_greeting01 > * {
	position: relative;
	z-index: 1;
}
.bg_index_greeting01:before, .bg_index_greeting01:after {
	content: '';
	display: block;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	z-index: 0;
	width: 100%;
}
.bg_index_greeting01:before {
	background-image: url(./images/index/deco_greeting01.png);
	background-position: left top;
	-webkit-background-size: cover;
	background-size: cover;
	left: 0;
	max-width: 1079px;
	height: 100%;
}
.bg_index_greeting01:after {
	background-image: url(./images/index/deco_greeting02.png);
	background-position: right top;
	-webkit-background-size: contain;
	background-size: contain;
	right: 0;
	max-width: 260px;
	height: 78.73%;
}
.bg_index_greeting01 .row_box .col_img {
	position: relative;
	right: -50px;
	z-index: 0;
	max-width: 534px;
	width: 40%;
}
.bg_index_greeting01 .row_box .col_txt {
	position: relative;
	z-index: 1;
	max-width: 780px;
	width: 59%;
	margin-bottom: 7.5%;
}
.bg_index_greeting01 .row_box .col_txt .txt {
	margin-bottom: 42px;
	line-height: 2;
	text-shadow: 0px 0px 5px #d2dbea, 0px 0px 5px #d2dbea, 0px 0px 10px #d2dbea, 0px 0px 10px #d2dbea, 0px 0px 15px #d2dbea, 0px 0px 15px #d2dbea;
}
.bg_index_greeting02 {
	position: relative;
	padding-bottom: 80px;
}
.bg_index_greeting03 {
	position: relative;
	padding-bottom: 80px;
}
.bg_index_greeting02 > * {
	position: relative;
	z-index: 1;
}
.bg_index_greeting03 > * {
	position: relative;
	z-index: 1;
}
.bg_index_greeting02:before {
	content: '';
	display: block;
	background: #153a76;
	position: absolute;
	bottom: 0;
	z-index: 0;
	width: 100%;
	height: calc(100% - 70px);
}
.bg_index_greeting03:before {
	content: '';
	display: block;
	background: #153a76;
	position: absolute;
	bottom: 0;
	z-index: 0;
	width: 100%;
	height: calc(100% - 70px);
}
.box_index_greeting {
	position: relative;
	border-top: 6px solid #153a76;
	max-width: 650px;
	width: 48.6%;
	padding: 38px 3.73% 44px;
	box-shadow: 0 0 8px 2px rgba(21, 58, 118, .2);
}
.box_index_greeting > * {
	position: relative;
	z-index: 1;
}
.box_index_greeting:after {
	content: '';
	display: block;
	background-image: url(./images/index/deco_greeting03.png);
	background-repeat: no-repeat;
	background-position: right center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 0;
	width: 100%;
	height: 111px;
}
.box_index_greeting h5 {
	border-bottom: 1px solid #153a76;
	margin-bottom: 36px;
	padding-bottom: 18px;
	font-family: dnp-shuei-ymincho-std, sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 120%;
	letter-spacing: .1em;
	color: #153a76;
}
.box_index_greeting dl {
	color: #153a76;
}
.box_index_greeting dt {
	font-weight: normal;
	font-size: 90%;
	letter-spacing: .1em;
	text-align: center;
}
.box_index_greeting dd {
	position: relative;
	padding-left: .3em;
	font-size: 90%;
	letter-spacing: .1em;
}
.box_index_greeting dd:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	border-bottom: 2px dotted #153a76;
	width: calc(100% + 90px);
	height: 2px;
}
.box_index_greeting dt, .box_index_greeting dd {
	padding-bottom: 13px;
}
.box_index_greeting dt:not(:last-of-type), .box_index_greeting dd:not(:last-of-type) {
	margin-bottom: 13px;
}
.box_index_greeting .list_default li:before {
	background: #153a76;
	left: .6em;
	width: 10px;
	height: 10px;
}
.box_index_greeting .list_default li {
	padding-left: 2.3em;
	font-size: 90%;
	letter-spacing: .1em;
	color: #153a76;
}
.box_index_greeting .list_default li:not(:first-child) {
	margin-top: 9px;
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_index_greeting03 .row_box .img_index_greeting03 {
		right: 0;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_greeting01:after {
		display: none;
	}
	.bg_index_greeting01 .row_box .col_img {
		right: 0;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_greeting01 .row_box .col_txt {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.box_index_greeting {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.img_index_greeting03 {
		/*width: 100%;*/
		margin-left: auto;
		margin-right: auto;
	}
}
@media(max-width: 767px) {
	.ttl_index_greeting {
		margin-bottom: calc(34 / 750 * 100vw);
	}
	.ttl_index_greeting .ja {
		font-size: 250%;
		letter-spacing: .1em;
	}
	.ttl_index_greeting .en {
		font-size: 187.5%;
		letter-spacing: .1em;
	}
	.name_index_greeting {
		-webkit-justify-content: center !important;
		justify-content: center !important;
	}
	.name_index_greeting em {
		padding: 0 1.1em;
		font-size: 93.75%;
		letter-spacing: .1em;
	}
	.name_index_greeting .ja {
		margin-left: .8em;
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.bg_index_greeting01 {
		margin-bottom: calc(60 / 750 * 100vw);
		padding: calc(100 / 750 * 100vw) 0 0;
	}
	.bg_index_greeting01:before {
		background-image: url(./images/index/deco_greeting01_sp.png);
		background-position: left bottom;
		-webkit-background-size: contain;
		background-size: contain;
		bottom: 0;
		max-width: none;
	}
	.bg_index_greeting01:after {
		display: none;
	}
	.bg_index_greeting01 .row_box .col_img {
		right: 0;
		max-width: none;
		width: calc(534 / 750 * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_greeting01 .row_box .col_txt {
		max-width: none;
		width: 100%;
		margin-bottom: 5.6vw;
		margin-left: auto;
		margin-right: auto;
	}
	.bg_index_greeting01 .row_box .col_txt .txt {
		margin-bottom: calc(42 / 750 * 100vw);
	}
	.bg_index_greeting02 {
		padding-bottom: calc(100 / 750 * 100vw);
	}
	.bg_index_greeting03 {
		padding-bottom: calc(100 / 750 * 100vw);
	}
	.bg_index_greeting02:before {
		height: calc(100% - (100 / 750 * 100vw));
	}
	.bg_index_greeting03:before {
		height: calc(100% - (100 / 750 * 100vw));
	}
	.box_index_greeting {
		border-top-width: calc(6 / 750 * 100vw);
		max-width: none;
		width: 100%;
		padding: calc(28 / 750 * 100vw) 4.4vw calc(50 / 750 * 100vw);
	}
	.box_index_greeting:after {
		height: calc(111 / 750 * 100vw);
	}
	.box_index_greeting h5 {
		border-bottom-width: calc(2 / 750 * 100vw);
		margin-bottom: calc(30 / 750 * 100vw);
		padding-bottom: calc(29 / 750 * 100vw);
		font-size: 125%;
		letter-spacing: .1em;
	}
	.box_index_greeting dt {
		width: calc(140 / 750 * 100vw);
		font-size: 100%;
		letter-spacing: .1em;
		text-align: left;
	}
	.box_index_greeting dd {
		width: calc(496 / 750 * 100vw);
		padding-left: 0;
		font-size: 100%;
		letter-spacing: .1em;
	}
	.box_index_greeting dd:after {
		border-bottom-width: calc(2 / 750 * 100vw);
		width: calc(100% + (140 / 750 * 100vw));
		height: calc(2 / 750 * 100vw);
	}
	.box_index_greeting dt, .box_index_greeting dd {
		padding-bottom: calc(10 / 750 * 100vw);
	}
	.box_index_greeting dt:not(:last-of-type), .box_index_greeting dd:not(:last-of-type) {
		margin-bottom: calc(10 / 750 * 100vw);
	}
	.box_index_greeting .list_default li:before {
		top: .65em;
		left: 0;
		width: calc(14 / 750 * 100vw);
		height: calc(14 / 750 * 100vw);
	}
	.box_index_greeting .list_default li {
		padding-left: 1.3em;
		font-size: 100%;
		letter-spacing: .1em;
	}
	.box_index_greeting .list_default li:not(:first-child) {
		margin-top: calc(2 / 750 * 100vw);
	}
	.img_index_greeting03 {
		max-width: 100%;
		height: auto;
	}
}
/* index_clinic
------------------------------------------------------------------*/
.index_clinic {
	margin-top: -5px;
	padding-top: 5px;
}
.ttl_index_clinic {
	position: absolute;
	top: -100px;
	left: 0;
	width: 100%;
}
.ttl_index_clinic .en {
	margin-bottom: .75em;
	line-height: 1;
	font-size: 200%;
	letter-spacing: .1em;
}
.ttl_index_clinic .ja {
	line-height: 1;
	font-size: 250%;
	letter-spacing: .1em;
}
.area_index_clinic01 {
	position: relative;
	margin: 193px 0 40px;
}
.area_index_clinic01 .bg {
	padding: 70px 3% 60px;
}
.area_index_clinic01 .box {
	border: 2px solid #153a76;
	padding: 70px 2% 50px;
}
.area_index_clinic01 .col_btn {
	max-width: 550px;
	width: 32.5%;
	height: 170px;
}
.btn_index_clinic01 a {
	position: relative;
	width: 100%;
	height: 100%;
}
.btn_index_clinic01 a:after {
	content: '';
	display: block;
	background-color: rgba(255, 255, 255, .2);
	background-image: url(./images/page/arw07.svg);
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50px;
}
.btn_index_clinic01 .icn {
	display: block;
	position: absolute;
	top: -20px;
	left: 40px;
	border-radius: 50%;
	width: 80px;
	height: 80px;
	line-height: 80px;
	font-size: 120%;
	letter-spacing: .1em;
}
.btn_index_clinic01:last-child .icn {
	left: 20px;
}
.btn_index_clinic01.wrap01 .icn {
	left: 17px;
}
.btn_index_clinic01.wrap01 .txt {
	padding-left: 55px;
}
.btn_index_clinic01 .unit {
	margin-top: 33px;
}
.btn_index_clinic01 .txt {
	display: block;
	margin-bottom: .42em;
	line-height: 1;
	font-size: 150%;
	letter-spacing: .1em;
}
.btn_index_clinic01 .address {
	display: block;
	line-height: 1;
	font-size: 90%;
	letter-spacing: .1em;
}
.bg_index_clinic {
	position: relative;
	padding: 80px 0;
}
.bg_index_clinic > * {
	position: relative;
	z-index: 1;
}
.bg_index_clinic:before {
	content: '';
	background-image: url(./images/index/deco_clinic01.png);
	background-repeat: no-repeat;
	background-position: right center;
	-webkit-background-size: cover;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 1242px;
	width: 100%;
	height: 100%;
}
.row_index_clinic .col_l {
	max-width: 561px;
	width: 42%;
}
.row_index_clinic .col_r {
	max-width: 730px;
	width: 55%;
}
.row_index_clinic .logo {
	margin-bottom: 23px;
	line-height: .88;
	font-size: 200%;
	letter-spacing: .1em;
}
.row_index_clinic .address {
	margin-bottom: 21px;
}
.row_index_clinic .tel {
	max-width: 420px;
	width: 100%;
	height: 80px;
	margin-bottom: 30px;
}
.row_index_clinic .tel a {
	border: 1px solid #fff;
	width: 100%;
	height: 100%;
}
.row_index_clinic .tel a span {
	display: inline-block;
	position: relative;
	padding-left: 1.35em;
	line-height: 1;
	font-size: 230%;
	letter-spacing: .05em;
}
.row_index_clinic .tel a span:before {
	content: '';
	background-image: url(./images/page/icn_tel01.svg);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: contain;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	width: 47px;
	height: 100%;
}
.tbl_index_clinic01 {
	max-width: 550px !important;
}
.tbl_index_clinic01 .box {
	background: #fff;
	padding: 32px 15px;
}
.tbl_index_clinic01 .tbl_caption {
	margin-top: 13px;
	line-height: 1.56;
	font-size: 90%;
	letter-spacing: .1em;
}
.tbl_index_clinic01 th {
	font-size: 90%;
	letter-spacing: .1em;
}
.tbl_index_clinic01 td {
	font-size: 70%;
	letter-spacing: .1em;
}
#clinic_saitama .tbl_index_clinic01 th {
	color: #429d9a;
}
#clinic_saitama .tbl_index_clinic01 td {
	color: #429d9a;
}
#clinic_saitama .tbl_index_clinic01 thead th {
	border-bottom-color: #429d9a;
}
#clinic_tokyo .tbl_index_clinic01 th {
	color: #c1912a;
}
#clinic_tokyo .tbl_index_clinic01 td {
	color: #c1912a;
}
#clinic_tokyo .tbl_index_clinic01 thead th {
	border-bottom-color: #c1912a;
}
#clinic_kawasaki .tbl_index_clinic01 th {
	color: #8ab3cd;
}
#clinic_kawasaki .tbl_index_clinic01 td {
	color: #8ab3cd;
}
#clinic_kawasaki .tbl_index_clinic01 thead th {
	border-bottom-color: #8ab3cd;
}
.row_index_clinic .logo .adjust {
	display: none;
}
.btn_index_clinic01.wrap02 .address .adjust {
	display: none;
}
.btn_index_clinic01.wrap01 .address .adjust {
	display: none;
}

.bg_index_clinic .btn_contact{
	position: static;
    transform: unset;
    margin-right: auto;
    margin-left: auto;
}
.bg_index_clinic .btn_contact a::after {
	transform: translate(0, -50%);
}

@media(min-width: 1700px) and (max-width:1869px) {
	.btn_index_clinic01.wrap01 .icn {
		left: -10px;
	}
	.btn_index_clinic01 .icn {
		left: -20px;
	}
	.btn_index_clinic01:last-child .icn {
		left: 10px;
	}
}
@media(min-width: 1321px) and (max-width:1699px) {
	.btn_index_clinic01 .txt {
		font-size: 115%;
	}
	.btn_index_clinic01 .icn {
		top: -45px;
		left: 13px;
	}
	.btn_index_clinic01.wrap02 .address .adjust {
		display: block;
	}
}
@media(min-width: 961px) and (max-width:1320px) {
	.btn_index_clinic01.wrap01 .icn {
		left: 0;
	}
	.area_index_clinic01 .row_btn {
		font-size: 80%;
	}
	.btn_index_clinic01 .icn {
		width: 70px;
		height: 70px;
		line-height: 70px;
	}
	.btn_index_clinic01 .txt {
		padding-left: 0;
		font-size: 115%;
	}
	.btn_index_clinic01 .icn {
		top: -45px;
	}
	.btn_index_clinic01.wrap02 .address .adjust {
		display: block;
	}
	.btn_index_clinic01.wrap01 .address .adjust {
		display: block;
	}
	.btn_index_clinic01.wrap01 .txt {
		padding-left: 0;
	}
}
@media(min-width: 1141px) and (max-width:1320px) {
	.btn_index_clinic01 .txt {
		font-size: 140%;
	}
}
@media(min-width: 961px) and (max-width:1460px) {
	.row_index_clinic .logo .adjust {
		display: inherit;
	}
	.row_index_clinic .logo {
		line-height: 1.6;
	}
}
@media(min-width: 961px) and (max-width:1200px) {
	.btn_index_clinic01 .icn {
		left: 0;
	}
}
@media(min-width: 768px) and (max-width:1150px) {
	.row_index_clinic .col_r {
		width: 37%;
	}
	.row_index_clinic .col_l {
		width: 60%;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.area_index_clinic01 .row_btn {
		margin-top: -60px;
	}
	.area_index_clinic01 .col_btn {
		width: 100%;
		margin-top: 60px;
		margin-left: auto;
		margin-right: auto;
	}
	.row_index_clinic .col_l {
		width: 100%;
		margin-bottom: 40px;
		margin-left: auto;
		margin-right: auto;
	}
	.row_index_clinic .col_r {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.row_index_clinic .logo {
		letter-spacing: 0;
	}
}
@media(max-width: 767px) {
	.ttl_index_clinic {
		top: calc(-118 / 750 * 100vw);
	}
	.ttl_index_clinic .en {
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.ttl_index_clinic .ja {
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.area_index_clinic01 {
		margin: calc(209 / 750 * 100vw) 0 calc(60 / 750 * 100vw);
	}
	.area_index_clinic01 .bg {
		padding: calc(80 / 750 * 100vw) 0 calc(60 / 750 * 100vw);
	}
	.area_index_clinic01 .box {
		border-width: calc(2 / 750 * 100vw);
		padding: calc(90 / 750 * 100vw) 2% calc(50 / 750 * 100vw);
	}
	.area_index_clinic01 .row_btn {
		max-width: none;
		width: calc(600 / 750 * 100vw);
		margin-top: calc(-80 / 750 * 100vw);
	}
	.area_index_clinic01 .col_btn {
		max-width: none;
		width: 100%;
		height: calc(210 / 750 * 100vw);
		margin-top: calc(80 / 750 * 100vw);
	}
	.btn_index_clinic01 a:after {
		background-image: url(./images/page/arw07.svg);
		-webkit-background-size: calc(37 / 750 * 100vw);
		background-size: calc(37 / 750 * 100vw);
		height: calc(50 / 750 * 100vw);
	}
	.btn_index_clinic01 .icn {
		top: calc(-40 / 750 * 100vw);
		left: calc(-40 / 750 * 100vw);
		width: calc(121 / 750 * 100vw);
		height: calc(121 / 750 * 100vw);
		line-height: calc(121 / 750 * 100vw);
		font-size: 125%;
		letter-spacing: .1em;
	}
	.btn_index_clinic01.wrap01 .icn {
		left: calc(-40 / 750 * 100vw);
		top: calc(-64 / 750 * 100vw);
	}
	.btn_index_clinic01:last-child .icn {
		font-size: 100%;
		left: calc(-40 / 750 * 100vw);
		top: calc(-60 / 750 * 100vw);
	}
	.btn_index_clinic01 .unit {
		margin-top: calc(49 / 750 * 100vw);
	}
	.btn_index_clinic01 .txt {
		margin-bottom: .5em;
		font-size: 112.5%;
		letter-spacing: .1em;
	}
	.btn_index_clinic01.wrap01 .txt {
		padding-left: 0;
	}
	.btn_index_clinic01 .address {
		font-size: 75%;
		letter-spacing: .1em;
	}
	.bg_index_clinic {
		padding: calc(100 / 750 * 100vw) 0;
	}
	.bg_index_clinic:before {
		background-image: url(./images/index/deco_clinic01_sp.png);
		max-width: none;
		width: calc(535 / 750 * 100vw);
	}
	.row_index_clinic .col_l {
		max-width: none;
		width: 100%;
		margin-bottom: calc(53 / 750 * 100vw);
	}
	.row_index_clinic .col_r {
		max-width: none;
		width: 100%;
	}
	.row_index_clinic .logo {
		margin-bottom: calc(41 / 750 * 100vw);
		line-height: .88;
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.row_index_clinic .address {
		margin-bottom: calc(46 / 750 * 100vw);
		letter-spacing: .1em;
	}
	.row_index_clinic .tel {
		max-width: none;
		width: calc(600 / 750 * 100vw);
		height: calc(100 / 750 * 100vw);
		margin-bottom: calc(60 / 750 * 100vw);
	}
	.row_index_clinic .tel a {
		position: relative;
		border-width: calc(2 / 750 * 100vw);
	}
	.row_index_clinic .tel a:before {
		content: '';
		display: block;
		position: absolute;
		bottom: 0;
		right: 0;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 0 calc(40 / 750 * 100vw) calc(40 / 750 * 100vw);
		border-color: transparent transparent #fff transparent;
	}
	.row_index_clinic .tel a span {
		padding-left: 1.1em;
		font-size: 187.5%;
		letter-spacing: .05em;
	}
	.row_index_clinic .tel a span:before {
		width: calc(47 / 750 * 100vw);
	}
	.tbl_index_clinic01 {
		max-width: none !important;
	}
	.tbl_index_clinic01 .box {
		padding: calc(10 / 750 * 100vw) 5vw;
	}
	.tbl_index_clinic01 .tbl_caption {
		margin-top: calc(20 / 750 * 100vw);
		line-height: 1.77;
		font-size: 68.75%;
		letter-spacing: 0;
		text-align: left;
	}
	.tbl_index_clinic01 th {
		font-size: 68.75%;
		letter-spacing: .1em;
	}
	.tbl_index_clinic01 td {
		font-size: 62.5%;
		letter-spacing: .1em;
	}
	.area_index_clinic01 .col_btn.wrap02 {
		height: calc(240 / 750 * 100vw);
	}
}

/* index_resavation
------------------------------------------------------------------*/
.index_resavation {
	display: none;
}
.ttl_index_resavation {
	margin-bottom: 60px;
}
.ttl_index_resavation .en {
	margin-bottom: .8em;
	line-height: 1;
	font-size: 200%;
	letter-spacing: .1em;
}
.ttl_index_resavation .ja {
	line-height: 1;
	font-size: 250%;
	letter-spacing: .1em;
}
.bg_index_resavation {
	padding: 93px 0 100px;
}
.tbl_index_resavation table {
	background: #fff;
	border: none;
}
.tbl_index_resavation th {
	background: #d2dbea;
	color: #153a76;
}
.tbl_index_resavation .require span {
	padding-right: 2em;
}
.tbl_index_resavation .require span:after {
	background: #db358b;
	color: #fff;
}
.tbl_index_resavation .txt_accept {
	font-size: 90%;
	letter-spacing: .1em;
	color: #fff;
}
.tbl_index_resavation .box_form {
	background: rgba(255, 255, 255, .2);
	font-size: 90%;
	letter-spacing: .1em;
	color: #fff;
}
.tbl_index_resavation .box_privacy {
	border-color: #fff;
	color: #fff;
}
.tbl_index_resavation .box_privacy .ttl {
	font-size: 100%;
	letter-spacing: .1em;
}
.tbl_index_resavation .box_privacy .txt {
	line-height: 2;
	font-size: 80%;
	letter-spacing: .1em;
}
.tbl_index_resavation .btn_submit:before {
	border-bottom-color: #153a76;
	border-right-color: #153a76;
}
.tbl_index_resavation .btn_submit input {
	background: #fff;
	font-size: 110%;
	letter-spacing: .1em;
	color: #153a76;
}
.btn_submit input:disabled {
	background: #ddd;
	cursor: not-allowed;
}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	.ttl_index_resavation {
		margin-bottom: calc(14 / 750 * 100vw);
	}
	.ttl_index_resavation .en {
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.ttl_index_resavation .ja {
		font-size: 156.25%;
		letter-spacing: .1em;
	}
	.bg_index_resavation {
		padding: calc(91 / 750 * 100vw) 0 calc(100 / 750 * 100vw);
	}
	.tbl_index_resavation table {}
	.tbl_index_resavation tr:not(:last-child) td {
		border-bottom: none;
	}
	.tbl_index_resavation .require span {}
	.tbl_index_resavation .require span:after {
		width: calc(70 / 750 * 100vw);
		height: calc(40 / 750 * 100vw);
		line-height: calc(40 / 750 * 100vw);
	}
	.tbl_index_resavation .txt_accept {
		margin-left: -.3em;
		margin-right: -.3em;
		font-size: 106.25%;
		letter-spacing: 0;
	}
	.tbl_index_resavation .box_form {
		font-size: 100%;
		letter-spacing: 0;
	}
	.tbl_index_resavation .box_privacy {}
	.tbl_index_resavation .box_privacy .ttl {
		font-size: 106.25%;
		letter-spacing: .1em;
	}
	.tbl_index_resavation .box_privacy .txt {
		font-size: 100%;
		letter-spacing: 0;
	}
	.tbl_index_resavation .btn_submit {
		max-width: calc(600 / 750 * 100vw);
	}
	.tbl_index_resavation .btn_submit input {
		font-size: 106.25%;
		letter-spacing: 0;
	}
}
/* フッター footer
------------------------------------------------------------------*/
.main_foot {}
.row_foot01 > .col_l {}
.row_foot01 > .col_r {
	width: 45%;
	max-width: 530px;
}
.pagetop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 1000;
}
.copyright {
	background: #184696;
	padding: 12px 0;
	font-size: 90%;
	line-height: 2;
	letter-spacing: .1em;
	color: #fff;
}
@media(min-width: 768px) and (max-width:960px) {
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 100%;
		text-align: center;
		margin: 0 auto;
	}
	.row_foot01 > .col_r {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
}
@media(max-width: 767px) {
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 100%;
		max-width: 100%;
		text-align: center;
	}
	.row_foot01 > .col_r {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	.copyright {
		font-size: 75%;
		letter-spacing: .1em;
		padding: 3vw 0 24vw;
	}
	.pagetop {
		display: none !important;
	}
	.fix {
		position: fixed;
		width: 100%;
		left: 0;
		bottom: 0;
		z-index: 9;
	}
	.fix_tel {
		height: calc(140 / 750 * 100vw);
	}
	.fix_tel01 {
		width: calc(300 / 750 * 100vw);
	}
	.fix_tel02 {
		width: calc(300 / 750 * 100vw);
	}
	.fix_web {
		width: calc(250 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
	}
	.fix_tel_all {
		width: calc(250 / 750 * 100vw);
		height: calc(140 / 750 * 100vw);
		background: rgba(31, 66, 124, 0.9);
		text-align: center;
		line-height: 1.6;
	}
	.fix_tel_all.fix_web_all {
		background: rgb(255, 255, 255, 0.9);
	}
	.pagetop_sp {
		width: calc(90 / 750 * 100vw) !important;
        height: calc(90 / 750 * 100vw) !important;
        margin-left: auto;
        margin-right: calc(30 / 750 * 100vw);
        margin-bottom: calc(25 / 750 * 100vw);
	}
	#anime_test.active {
		margin-bottom: 25vw;
	}
	.fix_tel01 a, .fix_tel02 a, .fix_web a, .pagetop_sp a {
		display: block;
	}
	.fix_tel01 img, .fix_tel02 img, .fix_web img, .pagetop_sp img {
		width: 100%;
	}
	.fix_tel_all span {
		position: relative;
		padding-right: 4vw;
	}
	.fix_tel_all span:after {
		content: "";
		position: absolute;
		background: url("images/page/fix_arw.svg")no-repeat center /contain;
		bottom: 0;
		top: 0;
		margin: auto;
		right: -19vw;
		width: calc(29 / 750*100vw);
		height: calc(15/ 750*100vw);
		transform: rotate(180deg);
	}
	.fix_tel_all span:before {
		content: "各院へのお問合せ電話はこちら";
		position: absolute;
		font-size: calc(28 / 750 * 100vw);
		top: -5vw;
		margin: auto;
		right: -15vw;
		width: calc(250 / 750*100vw);
		height: calc(80 / 750*100vw);
		line-height: 1.3;
	}
	.fix_tel_all.fix_web_all span:after {
		content: "";
		position: absolute;
		background: url("images/index/arw01.svg")no-repeat center /contain;
		bottom: 0;
		top: 0;
		margin: auto;
		right: -10vw;
		width: calc(29 / 750*100vw);
		height: calc(15/ 750*100vw);
		transform: rotate(180deg);
	}
	.fix_tel_all.fix_web_all span:before {
		content: "無料相談WEB予約";
		position: absolute;
		top: -5vw;
		margin: auto;
		right: -6vw;
		width: calc(150 / 750*100vw);
		height: calc(80 / 750*100vw);
		line-height: 1.3;
	}
	.js_accordion_item.web02 a {
		width: calc(100% / 3);
	}
	.js_accordion_item.web02.web03 a {
		width: 100%;
	}
	.js_accordion_item.web02 a:nth-child(2) img{
		height: calc(200 / 750*100vw);
	}
	.js_accordion_item.web02 {
		position: absolute;
		bottom: calc(140 / 750*100vw);
		width: 100%;
		left: 0;
	}
	.js_accordion_item.web02.web03 {
		flex-direction: column;
		align-items: center;
		background: rgb(8, 110, 169, 0.9);
		padding: calc(60 / 750 * 100vw) 0;
		gap: calc(20 / 750 * 100vw);
	}
	.js_accordion_item.web02 div {
		width: calc(638 / 750 * 100vw);
	}
	.js_accordion_toggle.is_open .fix_tel_all span:after {
		transform: inherit;
	}
	.js_accordion_toggle.is_open .fix_tel_all span:before {
		content: "閉じる";
		top: -3vw;
	}
	.siq_bR, .siq_bL{
		    bottom: 80px !important;
   			right: 60px !important;
	}
	.fix_free {
		height: calc(140 / 750 * 100vw);
		/* width: calc(250 / 750 * 100vw); */
		background: rgb(248, 242, 228, 0.9);
	}
	.fix_free a {
		position: relative;
		display: flex;
		width: 100%;
		height: 100%;
	}
	/* .fix_free a::after {
		content: "";
        position: absolute;
        background: url(images/index/arw01.svg) no-repeat center / contain;
        top: 50%;
        right: 5vw;
        width: calc(29 / 750 * 100vw);
        height: calc(15 / 750 * 100vw);
        transform: rotate(-90deg);
	} */
	.fix_free a > div {
		/* position: relative;
		left: 6vw; */
		font-size: calc(32 / 750 * 100vw);
    	line-height: 1.2;
	}

	.sp_fix li {
		width: 20%;
		height: calc(140 / 750 * 100vw);
	}
	.sp_fix .fix_tel01 a{
		width: 100%;
		height: 100%;
		display: block;
		background: rgba(21, 58, 118, 0.9);
		position: relative;
	}
	.sp_fix .fix_tel01 a::after {
		position: absolute;
		content: '';
		background: url(images/index/icn_tel.svg)no-repeat center / contain;
		width: calc(52 / 750 * 100vw);
		height: calc(52 / 750 * 100vw);
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.sp_fix .fix_web01 a,
	.sp_fix .fix_web02 a,
	.sp_fix .fix_web03 a {
		width: 100%;
		height: 100%;
		display: block;
		position: relative;
		padding-top: calc(50 / 750 * 100vw);
	}
	.sp_fix .fix_web01 a {
		background: rgba(66, 157, 154, 0.9);
	}
	.sp_fix .fix_web02 a {
		background: rgba(193, 145, 42, 0.9);
	}
	.sp_fix .fix_web03 a {
		background: rgba(138, 179, 205, 0.9);
	}
	.sp_fix .fix_web01 a .txt,
	.sp_fix .fix_web02 a .txt,
	.sp_fix .fix_web03 a .txt {
		line-height: 1.1;
		font-size: calc(34 / 750 * 100vw);
	}
	.sp_fix .ccl {
		width: calc(78 / 750 * 100vw);
		height: calc(78 / 750 * 100vw);
		background: #ffff75;
		border-radius: 100%;
		position: absolute;
		top: calc(-35/ 750 * 100vw);
		left: 50%;
		transform: translate(-50%, 0);
	}
	.sp_fix .ccl p {
		font-size: calc(30 / 750 * 100vw);
	}
	.sp_fix .fix_web03 .ccl p {
		font-size: calc(26 / 750 * 100vw);
	}
}
/* slide_youtube01
------------------------------------------------------------------*/
.slide_youtube01{
	max-width: 600px;
}
.slide_youtube01 .slick-prev {
	background: url(images/page/arw09.svg)no-repeat center / cover;
	width:30px;
	height: 54px;
	transform: translate(0);
	top: 0;
	bottom: 0;
	margin: auto;
	left: -7.2%;
	z-index: 1;
}
.slide_youtube01 .slick-next {
	background: url(images/page/arw09.svg)no-repeat center / cover;
	width:30px;
	height: 54px;
	right: -7.2%;
	transform: translate(0) scaleX(-1);
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
}
.slide_youtube01 .slick-prev:before, .slide_youtube01 .slick-next:before {
	display: none;
}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	.slide_youtube01 .slick-prev, .slide_youtube01 .slick-next {
		width: calc(30 / 750 * 100vw);
		height: calc(54 / 750 * 100vw);
	}
	.slide_youtube01 .slick-prev {
		left:-2vw;
	}
	.slide_youtube01 .slick-next {
		right: -2vw;
	}
	.slide_youtube01 li iframe {
		width: 100%;
		height: calc(1260 / 750 * 100vw);
	}
}
/* 医院希望のmain_img
------------------------------------------------------------------*/
/* ============================================================
   DESIGN TOKEN
   ============================================================ */
.fv-wrap {
	--fv-navy: #0e2359;
	--fv-navy-mid: #1a3878;
	--fv-navy-light: #1f4fa0;
	--fv-gold: #d4a017;
	--fv-gold-light: #f0c040;
	--fv-yellow: #ffe300;
	--fv-white: #ffffff;
	--fv-gray-bg: #e8eef8;
	--fv-red-accent: #e03030;
	--fv-text-main: #ffffff;
	--fv-radius: 6px;
	font-family: 'Noto Sans JP', sans-serif;
}
/* ============================================================
   HEADER NAV (クリニック選択タブ)
   ============================================================ */
.fv-wrap .fv-header {
	background: var(--fv-navy);
	padding: 8px 16px 0;
}
.fv-wrap .fv-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}
.fv-wrap .fv-logo-block {
	flex-shrink: 0;
}
.fv-wrap .fv-logo-block .fv-logo-text {
	color: var(--fv-white);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
}
.fv-wrap .fv-logo-block .fv-logo-sub {
	color: var(--fv-gold-light);
	font-size: 9px;
	font-weight: 400;
}
.fv-wrap .fv-tel-block {
	text-align: right;
	margin-right: 7vw;
}
.fv-wrap .fv-tel-block a {
	color: var(--fv-white);
	font-size: 18px;
	font-weight: 900;
	text-decoration: none;
	letter-spacing: 0.5px;
}
.fv-wrap .fv-tel-block .fv-tel-label {
	display: block;
	color: var(--fv-gold-light);
	font-size: 9px;
}
/* クリニックタブ */
.fv-wrap .fv-clinic-tabs {
	display: flex;
	gap: 4px;
	margin-top: 8px;
	overflow-x: auto;
	padding-bottom: 0;
	scrollbar-width: none;
}
.fv-wrap .fv-clinic-tabs::-webkit-scrollbar {
	display: none;
}
.fv-wrap .fv-clinic-tab {
	flex: 0 0 auto;
	padding: 6px 12px;
	border-radius: 4px 4px 0 0;
	font-size: 10px;
	font-weight: 700;
	text-align: center;
	color: var(--fv-white);
	line-height: 1.4;
	cursor: pointer;
	text-decoration: none;
}
.fv-wrap .fv-clinic-tab.tab-saitama {
	background: #4a8c2a;
}
.fv-wrap .fv-clinic-tab.tab-tokyo {
	background: #c0392b;
}
.fv-wrap .fv-clinic-tab.tab-kanagawa {
	background: #2980b9;
}
.fv-wrap .fv-clinic-tab .tab-pref {
	display: block;
	font-size: 9px;
	font-weight: 400;
	opacity: 0.9;
	margin-bottom: 2px;
}
@media screen and (max-width: 767px) {
	.fv-wrap .fv-tel-block {
		margin-right: 14vw;
	}
}
/* ============================================================
   HERO (メインビジュアル)
   ============================================================ */
.fv-wrap .fv-hero {
	background: linear-gradient(160deg, var(--fv-navy) 0%, var(--fv-navy-mid) 55%, #0d1f4a 100%);
	padding: 24px 20px 28px;
	position: relative;
	overflow: hidden;
}
/* 背景装飾 */
.fv-wrap .fv-hero::before {
	content: '';
	position: absolute;
	top: -60px;
	right: -60px;
	width: 260px;
	height: 260px;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.15) 0%, transparent 70%);
	pointer-events: none;
}
.fv-wrap .fv-hero::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--fv-gold) 0%, var(--fv-gold-light) 50%, var(--fv-gold) 100%);
}
/* ターゲット訴求行 */
.fv-wrap .fv-target-bar {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}
.fv-wrap .fv-target-bar span {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(212, 160, 23, 0.5);
	color: var(--fv-gold-light);
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 20px;
}
/* メインキャッチ */
.fv-wrap .fv-headline {
	color: var(--fv-white);
	font-size: 22px;
	font-weight: 900;
	line-height: 1.4;
	margin-bottom: 14px;
	letter-spacing: -0.3px;
}
.fv-wrap .fv-headline em {
	font-style: normal;
	color: var(--fv-yellow);
	display: block;
	font-size: 45%;
}
/* サブキャッチ（強調ライン） */
.fv-wrap .fv-subhead {
	display: inline-block;
	background: var(--fv-gold);
	color: var(--fv-navy);
	font-size: 15px;
	font-weight: 900;
	padding: 6px 12px;
	border-radius: 4px;
	margin-bottom: 20px;
	line-height: 1.3;
}
/* ヒーロー内2カラム：テキスト左・写真右 */
.fv-wrap .fv-hero-inner {
	display: flex;
	align-items: flex-end;
	gap: 0;
}
.fv-wrap .fv-hero-text {
	flex: 1;
	min-width: 0;
	padding-right: 10px;
}
/* 院長プロフィール帯（旧カード → 廃止） */
.fv-wrap .fv-doctor {
	display: contents;
}
/* 院長写真（右カラム） */
.fv-wrap .fv-doctor-photo {
	flex-shrink: 0;
	width: 118px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	align-self: flex-end;
}
.fv-wrap .fv-doctor-photo img {
	object-fit: cover;
	object-position: top center;
	border-radius: 6px 6px 0 0;
}
.fv-wrap .fv-doctor-photo .dr-caption {
	background: rgba(0, 0, 0, 0.5);
	color: var(--fv-white);
	font-size: 9px;
	font-weight: 700;
	text-align: center;
	padding: 4px 4px;
	width: 118px;
	line-height: 1.5;
}
.fv-wrap .fv-doctor-photo .dr-caption span {
	display: block;
	color: var(--fv-gold-light);
	font-size: 8px;
	font-weight: 400;
}
/* 院長テキスト情報（キャプションに統合） */
.fv-wrap .fv-doctor-info {
	display: none;
}
@media(min-width: 768px) and (max-width:1599px) {


}
@media(min-width: 768px) and (max-width:1299px) {}
@media(min-width: 768px) and (max-width:960px) {
	.fv-wrap .fv-headline {
		font-size: 2.5rem !important;
	}
	.fv-wrap .fv-headline em {
		font-size: 1.5rem !important;
	}
}
@media(max-width: 767px) {
	.fv-wrap .fv-headline em {
		font-size: 1rem;
	}
}
/* ============================================================
   YOUTUBE SECTION
   ============================================================ */
.fv-wrap .fv-youtube {
	background: #0a1a3a;
	padding: 20px 16px;
}
.fv-wrap .fv-youtube-title {
	color: var(--fv-white);
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.fv-wrap .fv-youtube-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.fv-wrap .fv-yt-card {
	border-radius: 6px;
	overflow: hidden;
	background: #1a2a4a;
}
.fv-wrap .fv-yt-iframe-wrap {
	position: relative;
	aspect-ratio: 16/9;
	background: #0f1e3d;
}
.fv-wrap .fv-yt-iframe-wrap iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}
.fv-wrap .fv-yt-card-label {
	padding: 8px 10px;
	color: var(--fv-white);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
}
/*@media(max-width: 767px) {
	.fv-wrap .fv-yt-card {
		width: 100%;
	}
	.fv-wrap .fv-youtube-grid {
		grid-template-columns: none;
		gap: 20px;
	}
}*/

/* ============================================================
   PC LAYOUT (768px+)
   ============================================================ */
@media (min-width: 768px) {
	.fv-wrap .fv-header {
		padding: 0 32px;
	}
	.fv-wrap .fv-header-inner {
		padding: 12px 0 0;
	}
	.fv-wrap .fv-logo-block .fv-logo-text {
		font-size: 14px;
	}
	.fv-wrap .fv-logo-block .fv-logo-sub {
		font-size: 12px;
	}
	.fv-wrap .fv-tel-block a {
		font-size: 28px;
	}
	.fv-wrap .fv-clinic-tabs {
		gap: 6px;
	}
	.fv-wrap .fv-clinic-tab {
		padding: 8px 20px;
		font-size: 12px;
	}
	.fv-wrap .fv-clinic-tab .tab-pref {
		font-size: 10px;
	}
	.fv-wrap .fv-hero {
		padding: 30px 55px 0;
	}
	.fv-wrap .fv-hero::before {
		width: 400px;
		height: 400px;
		top: -100px;
		right: -80px;
	}
	.fv-wrap .fv-target-bar span {
		font-size: 1.5rem;
		padding: 5px 14px;
	}
	.fv-wrap .fv-hero-inner {
		align-items: flex-end;
		height: calc(630 / 1920 * 100vw);
	}
	.fv-wrap .fv-headline {
		font-size: 600%;
		margin-bottom: 100px;
	}
	.fv-wrap .fv-subhead {
		font-size: 41px;
		padding: 8px 20px;
		margin-bottom: 0;
	}
	.fv-wrap .fv-doctor-photo {
		width: calc(590 / 1920 * 100vw);
	}
	.fv-wrap .fv-doctor-photo img {
		width: 100%;
		height: auto;
	}
	.fv-wrap .fv-doctor-photo .photo-placeholder {
		width: calc(590 / 1920 * 100vw);
		height: calc(625 / 1920 * 100vw);
	}
	.fv-wrap .fv-doctor-photo .dr-caption {
		width: calc(590 / 1920 * 100vw);
		font-size: 20px;
	}
	.fv-wrap .fv-doctor-photo .dr-caption span {
		font-size: 15px;
	}
	.fv-wrap .fv-youtube {
		padding: 28px 48px;
	}
	.fv-wrap .fv-youtube-grid {
		max-width: 640px;
		margin: 0 auto;
	}
}
@media(min-width: 768px) and (max-width:1699px) {
	.fv-wrap .fv-headline {
		font-size: 500%;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.fv-wrap .fv-headline {
		font-size: 400%;
	}
	.fv-wrap .fv-hero-inner {
		height: calc(600 / 1599 * 100vw);
	}
	.fv-wrap .fv-doctor-photo {
		width: calc(540 / 1599 * 100vw);
	}
	.fv-wrap .fv-doctor-photo .photo-placeholder {
		width: calc(540 / 1599 * 100vw);
		height: calc(575 / 1599 * 100vw);
	}
	.fv-wrap .fv-doctor-photo .dr-caption {
		width: calc(540 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.fv-wrap .fv-hero {
		padding: 30px 20px 0;
	}
	.fv-wrap .fv-hero-inner {
		height: calc(600 / 1299 * 100vw);
	}
	.fv-wrap .fv-doctor-photo {
		width: calc(520 / 1299 * 100vw);
	}
	.fv-wrap .fv-doctor-photo .photo-placeholder {
		width: calc(520 / 1299 * 100vw);
		height: calc(555 / 1299 * 100vw);
	}
	.fv-wrap .fv-doctor-photo .dr-caption {
		width: calc(520 / 1299 * 100vw);
	}
	.fv-wrap .fv-subhead {
		font-size: 1.25rem;
	}
	.fv-wrap .fv-target-bar span {
        font-size: 1rem;
    }
}
@media(min-width: 768px) and (max-width:960px) {
	.fv-wrap .fv-target-bar span {
        font-size: .8rem;
    }
}

/* ============================================================
   モーダル
   ============================================================ */
.fv-modal{
	position:fixed;
	inset:0;
	background:rgba(0,0,0,.8);
	display:none;
	align-items:center;
	justify-content:center;
	z-index:9999;
}

.fv-modal.active{
	display:flex;
}

.fv-modal-inner{
	width:min(90%,900px);
	position:relative;
}

.fv-modal-video{
	position:relative;
	padding-top:56.25%;
}

.fv-modal-video iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:none;
}

.fv-modal-close{
	position:absolute;
	top:-55px;
	right:0;
	color:#fff;
	font-size:32px;
	background:none;
	border:none;
	cursor:pointer;
}

.fv-yt-thumb{
	position:relative;
	cursor:pointer;
}

.fv-yt-thumb img{
	display:block;
	width:100%;
}

.fv-play{
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	width:70px;
	height:50px;
	background:rgba(255,0,0,.9);
	border-radius:12px;
}

.fv-play:before{
	content:"";
	position:absolute;
	left:28px;
	top:15px;
	border-left:18px solid #fff;
	border-top:10px solid transparent;
	border-bottom:10px solid transparent;
}


/* index_bnr
------------------------------------------------------------------*/
.index_bnr{
	padding:calc(40 / 1920 * 100vw) 0;
}
.index_bnr .img{
    width: fit-content;
    margin: auto;
    max-width: 96%;
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_bnr{
		padding: calc(40 / 1920 * 100vw) 0;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_bnr{
		padding: calc(40 / 1299 * 100vw) 0;
	}
}
@media(max-width: 767px) {
	.index_bnr{
		padding: 2vw 0;
	}
	.index_bnr .img{
		max-width: 94%;
	}
}
/* 動画でわかる オールオン4 index_movie
------------------------------------------------------------------*/
.index_movie {
	background: #153a76 url(./images/index/bg_movie01.png) no-repeat right bottom / calc(998 / 1920 * 100vw);
	padding: calc(110 / 1920 * 100vw) 0 calc(60 / 1920 * 100vw);
}
.inner_movie01 {
    max-width: 1840px;
    margin: auto;
    width: 96%;
}
.box_movie01{
	border: 1px solid #fff;
    padding-bottom: calc(60 / 1920 * 100vw);
}
.ttl_index_movie{
    font-size: 300%;
    letter-spacing: 0.1em;
    margin-top: calc(-68 / 1920 * 100vw);
}
.ttl_index_movie span{
	display: inline-block !important;
    background: #153a76;
    padding: 0 calc(30 / 1920 * 100vw);
}
.row_movie01 .col{
	width: 45%;
	max-width: 800px;
	padding: calc(30 / 1920 * 100vw);
}
.row_movie01 .col:not(:last-child){
	margin-right: 2%;
}
.box_movie02 .movie{
    width: 100%;
	position: relative;
}
.box_movie02 .movie a{
	display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.box_movie02 .movie:before {
    content: "";
    display: block;
    background: #FF0000;
    width: calc(80 / 1920 * 100vw);
    height: calc(80 / 1920 * 100vw);
	position: absolute;
    top: 50%;
    left: 50%;
	transform: translate(-50%, -50%);
    border-radius: 50%;
}
.box_movie02 .movie:after {
	content: "";
	display: block;
	border-style: solid;
    border-color: transparent transparent transparent #ffffff;
	border-width: calc(15 / 1920 * 100vw) 0 calc(15 / 1920 * 100vw) calc(25 / 1920 * 100vw);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-40%, -50%);
}
.box_movie02 .txt{
	width: 100%;
}
.box_movie02 .txt .ttl{
    font-size: 120%;
    width: fit-content;
    padding: calc(5 / 1920 * 100vw) calc(25 / 1920 * 100vw);
    margin: auto;
    margin-bottom: calc(8 / 1920 * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.index_movie {
		background: #153a76 url(./images/index/bg_movie01.png) no-repeat right bottom / calc(998 / 1599 * 100vw);
		padding: calc(110 / 1599 * 100vw) 0 calc(60 / 1599 * 100vw);
	}
	.box_movie01{
		padding-bottom: calc(60 / 1599 * 100vw);
	}
	.ttl_index_movie{
		margin-top: calc(-68 / 1599 * 100vw);
	}
	.ttl_index_movie span{
		padding: 0 calc(30 / 1599 * 100vw);
	}
	.row_movie01 .col{
		padding: calc(30 / 1599 * 100vw);
	}
	.box_movie02 .movie:before {
		width: calc(80 / 1599 * 100vw);
		height: calc(80 / 1599 * 100vw);
	}
	.box_movie02 .movie:after {
		border-width: calc(15 / 1599 * 100vw) 0 calc(15 / 1599 * 100vw) calc(25 / 1599 * 100vw);
	}
	.box_movie02 .txt .ttl{
		padding: calc(5 / 1599 * 100vw) calc(25 / 1599 * 100vw);
		margin-bottom: calc(8 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.index_movie {
		background: #153a76 url(./images/index/bg_movie01.png) no-repeat right bottom / calc(998 / 1299 * 100vw);
		padding: calc(110 / 1299 * 100vw) 0 calc(60 / 1299 * 100vw);
	}
	.box_movie01{
		padding-bottom: calc(60 / 1299 * 100vw);
	}
    .ttl_index_movie {
		font-size: 260%;
		line-height: 1.3;
        margin-top: calc(-50 / 1299 * 100vw);
		margin-bottom: calc(30 / 1299 * 100vw);
    }
	.ttl_index_movie span{
		padding: 0 calc(30 / 1299 * 100vw);
	}
	.row_movie01 .col{
		padding: calc(30 / 1299 * 100vw);
	}
	.box_movie02 .movie:before {
		width: calc(80 / 1299 * 100vw);
		height: calc(80 / 1299 * 100vw);
	}
	.box_movie02 .movie:after {
		border-width: calc(15 / 1299 * 100vw) 0 calc(15 / 1299 * 100vw) calc(25 / 1299 * 100vw);
	}
	.box_movie02 .txt .ttl{
		padding: calc(5 / 1299 * 100vw) calc(25 / 1299 * 100vw);
		margin-bottom: calc(8 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.index_movie {
		background: #153a76 url(./images/index/bg_movie01.png) no-repeat right bottom / calc(758 / 750 * 100vw);
		padding: 21vw 0 8vw;
	}
	.inner_movie01{
	    width: 94%;
	}
	.box_movie01{
		padding-bottom: calc(35 / 750 * 100vw);
	}
	.box_movie01 > p{
		letter-spacing: 0.1em;
	    padding-left: calc(25 / 750 * 100vw);
	    margin-bottom: calc(20 / 750 * 100vw);
	}
	.ttl_index_movie{
        margin-top: calc(-110 / 750 * 100vw);
		margin-bottom: calc(30 / 750 * 100vw);
        font-size: calc(60 / 750 * 100vw);
        line-height: 1.2;
	}
	.ttl_index_movie span{
		padding: 0 calc(30 / 750 * 100vw);
	}
	.row_movie01 .col{
		width: 92%;
		padding: calc(24 / 750 * 100vw);
	}
	.row_movie01 .col:not(:last-child){
	    margin-right: 0;
        margin-bottom: calc(30 / 750 * 100vw);
	}
	.box_movie02 .movie:before {
		width: calc(80 / 750 * 100vw);
		height: calc(80 / 750 * 100vw);
	}
	.box_movie02 .movie:after {
		border-width: calc(15 / 750 * 100vw) 0 calc(15 / 750 * 100vw) calc(25 / 750 * 100vw);
	}
	.box_movie02 .txt .ttl{
	    font-size: calc(32 / 750 * 100vw);
        line-height: 1.5;
        letter-spacing: 0.05em;
		padding: calc(5 / 750 * 100vw) calc(38 / 750 * 100vw);
        margin-bottom: calc(8 / 750 * 100vw);
	}
	.box_movie02 .txt .txt{
		font-size: calc(22 / 750 * 100vw);
		line-height: 1.7;
	}
}


/* コピペ用 copy&paste
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {}


#content_home > #case + .index_contact {
  display: none !important;
}
.section_youtube_lead {
  background: #fff;
  padding: 90px 20px 20px;
  text-align: center;
}

.youtube_lead_inner {
  max-width: 1300px;
  margin: 0 auto;
  padding: 64px 40px;
  border: 1px solid #173f7a;
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 68%, #eef4fb 68%, #eef4fb 100%);
  box-sizing: border-box;
}

.youtube_lead_en {
  margin: 0 0 18px;
  color: #173f7a;
  font-size: 28px;
  letter-spacing: 0.18em;
  font-family: serif;
}

.youtube_lead_title {
  margin: 0 0 24px;
  color: #173f7a;
  font-size: 42px;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.4;
}

.youtube_lead_text {
  margin: 0 0 38px;
  color: #173f7a;
  font-size: 20px;
  line-height: 2;
  letter-spacing: 0.08em;
}

.youtube_lead_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 320px;
  padding: 22px 38px;
  border: 2px solid #173f7a;
  background: #173f7a;
  color: #fff;
  font-size: 22px;
  letter-spacing: 0.1em;
  text-decoration: none;
  box-sizing: border-box;
}

.youtube_lead_btn::before {
  content: "▶";
  margin-right: 14px;
  font-size: 18px;
}

.youtube_lead_btn:hover {
  opacity: 0.75;
}

@media screen and (max-width: 767px) {
  .section_youtube_lead {
    padding: 55px 20px 20px;
  }

  .youtube_lead_inner {
    padding: 42px 24px;
  }

  .youtube_lead_en {
    font-size: 20px;
  }

  .youtube_lead_title {
    font-size: 28px;
  }

  .youtube_lead_text {
    font-size: 15px;
    text-align: left;
  }

  .youtube_lead_btn {
    width: 100%;
    min-width: auto;
    padding: 18px 20px;
    font-size: 17px;
  }

	.youtube_sp_br {
	  display: none;
	}
}
@media screen and (max-width: 767px) {
  .youtube_sp_br {
    display: block;
  }

  .youtube_lead_title {
    font-size: 26px;
    line-height: 1.55;
    letter-spacing: 0.08em;
  }

  .youtube_lead_text {
    text-align: center;
    font-size: 16px;
  }
}

@media screen and (max-width: 390px) {
  .youtube_lead_title {
    font-size: 24px;
	  }
	br.youtube_sp_br {
	  display: none !important;
	}
}
@media screen and (max-width: 767px) {
  br.youtube_sp_br {
    display: block !important;
  }

}