@charset "utf-8";
/* Theme Name: res */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&display=swap');
html, body {
	font-size: 18px;
	line-height: 2;
	color: #000000;
	letter-spacing: .1em;
	font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.clear{
	clear: both;
}
img {
	max-width: 100%;
	height: auto;
}
li {
	list-style: none;
}
a {
	color: inherit;
}
.txt_link {
	color: #dbd371;
	
}
:root {
	--guideline-color: #dbd371;
}
a:hover {
	opacity: .7;
	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: -170px;
	height: calc(100% + 340px);
}
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; }

.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; }
@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;
	}
}
.txt_white { color: #fff!important; }
.bg_white { background-color: #fff!important; }
.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(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 {
		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); }
	.txt_width {
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
}

.min{
	font-family: fot-tsukuaoldmin-pr6n, sans-serif;
	font-weight: 300;
	font-style: normal;
}
.txt_l{
	font-weight: 300;
}
.tate{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.txt_col01{color: #000000;}
.txt_col02{color: #1873E9;}
.txt_col03{color: #333333;}
.txt_col04{color: #888888;}
.txt_col05{color: #DBD371;}
.txt_col06{color: #F6F6F6;}
.txt_col07{color: #F8F6E4;}
.txt_col08{color: #FF0000;}
.bg_col01{background: #000000;}
.bg_col02{background: #1873E9;}
.bg_col03{background: #333333;}
.bg_col04{background: #888888;}
.bg_col05{background: #DBD371;}
.bg_col06{background: #F6F6F6;}
.bg_col07{background: #F8F6E4;}
.bg_col08{background: #FF0000;}
.bg_col09{background: #EEEEEE;}

.bg_ptn01{background: url(images/page/pattern01.png);}
.bg_ptn02{background: url(images/page/pattern02.png);}
.bg_ptn03{background: url(images/page/pattern03.png);}
.bg_ptn04{background: url(images/page/pattern04.jpg);}
.bg_ptn05{background: url(images/page/pattern05.jpg);}

/* ヘッダー header
------------------------------------------------------------------*/
header {
	position: relative;
	z-index: 10;
	height: auto;
}
header h1{
	position: absolute;
	top: 40px;
	left: 40px;
	width: 430px;
	height: 93px;
}
.area_btn_head{
	width: 420px;
	height: 80px;
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 10000;
}
.btn_tel{
	width: 240px;
	height: 80px;
}
.btn_tel a{
	display: block;
	width: 100%;
	height: 100%;
	letter-spacing: 0;
	line-height: 1em;
	padding-top: 13px;
	background: #ffffff;
	border: solid 1px #000000;
}
.btn_tel a p:nth-child(1){
	font-size: 88.888%;
	line-height: 1em;
	letter-spacing: 0.1em;
	font-weight: bold;
	margin-bottom: 10px;
}
.btn_tel a p:nth-child(2){
	font-size: 133.333%;
	line-height:  21px;
	letter-spacing: 0.1em;
	height: 25px;
	background: url(images/page/icn_tel.svg);
	background-repeat: no-repeat;
	background-position:left center;
	background-size: auto;
	padding-left: 19px;
	width: 184px;
	margin:0 auto;
	white-space: nowrap;
}
.btn_web{
	width: 170px;
	height: 80px;
}
.btn_web a{
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 14px;
}
.btn_web a p:nth-child(1){
	font-size: 88.888%;
	line-height: 1em;
	letter-spacing: 0.1em;
	margin-bottom: 8px;
}
.btn_web a p:nth-child(2){
	font-size: 133.333%;
	line-height: 1em;
	letter-spacing: 0.1em;
}
.btn_web a:after{
	content: "";
	display: block;
	position: absolute;
	bottom: 5px;
	right: 5px;
	border-left: 10px solid transparent;
	border-bottom: 10px solid #ffffff;
}
.txt_head_add{
	font-size: 88.888%;
	text-align: right;
	line-height: 2em;
	letter-spacing: 0.1em;
	position: absolute;
	top: 120px;
	right: 17px;
}
.txt_head_access{
	font-size: 111.111%;
	letter-spacing: 0.1em;
	background: url(images/index/icn_access.svg);
	background-repeat: no-repeat;
	background-position:left center;
	background-size: calc(61/1920*100vw) calc(61/1920*100vw);
	height: calc(61/1920*100vw);
	line-height: calc(61/1920*100vw);
	padding-left: calc(80/1920*100vw);
	position: absolute;
	bottom: calc(39/1920*100vw);
	left: calc(50/1920*100vw);
}
.txt_head01{
	width: 240px;
	height: calc(50/1920*100vw);
	letter-spacing: 0.1em;
	line-height: calc(50/1920*100vw);
	background: url(images/index/icn_txt01.svg),rgba(246,246,246,0.9);
	background-repeat: no-repeat;
	background-position:20px center;
	background-size: auto;
	padding-left: 47px;
	position: absolute;
	bottom: calc(39/1920*100vw);
	left: calc((111/1920*100vw) + 284px);
}
.txt_head02{
	width: 180px;
	height: calc(50/1920*100vw);
	letter-spacing: 0.1em;
	line-height: calc(50/1920*100vw);
	background: url(images/index/icn_txt02.svg),rgba(246,246,246,0.9);
	background-repeat: no-repeat;
	background-position:20px center;
	background-size: auto;
	padding-left: 47px;
	position: absolute;
	bottom: calc(39/1920*100vw);
	left: calc((111/1920*100vw) + 544px);
}
@media(min-width: 961px) and (max-width:1480px) {
	header h1{
		position: absolute;
		top: calc(40/1480*100vw);
		left: calc(40/1480*100vw);
		width: calc(430/1480*100vw);
		height: calc(93/1480*100vw);
	}
	.area_btn_head{
		width: 380px;
		height: 70px;
	}
	.btn_tel{
		width: 210px;
		height: 70px;
	}
	.btn_tel a{
		font-size: 90%;
		padding-top: 12px;
	}
	.btn_tel a p:nth-child(1){
		margin-bottom: 9px;
	}
	.btn_tel a p:nth-child(2){
		line-height:  20px;
		height: 22px;
		background-size: contain;
		padding-left: 18px;
		width:170px;
	}
	.btn_web{
		width: 160px;
		height: 70px;
	}
	.btn_web a{
		font-size: 90%;
		padding-top: 13px;
	}
	.btn_web a p:nth-child(1){
		margin-bottom: 7px;
	}
	.btn_web a:after{
		content: "";
		display: block;
		position: absolute;
		bottom: 5px;
		right: 5px;
		border-left: 10px solid transparent;
		border-bottom: 10px solid #ffffff;
	}
	.txt_head_add{
		font-size: 88.888%;
		text-align: right;
		line-height: 2em;
		letter-spacing: 0.1em;
		position: absolute;
		top: 110px;
		right: 17px;
	}
	.txt_head_access{
		font-size: 100%;
		letter-spacing: 0.1em;
		background: url(images/index/icn_access.svg);
		background-repeat: no-repeat;
		background-position:left center;
		background-size: calc(61/1920*100vw) calc(61/1920*100vw);
		height: calc(61/1920*100vw);
		line-height: calc(61/1920*100vw);
		padding-left: calc(80/1920*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc(50/1920*100vw);
	}
	.txt_head01{
		width: 220px;
		font-size: 88.888%;
		height: calc(50/1920*100vw);
		letter-spacing: 0.1em;
		line-height: calc(50/1920*100vw);
		background: url(images/index/icn_txt01.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(20/1480*100vw) center;
		background-size: calc(17/1480*100vw) calc(20/1480*100vw);
		padding-left: calc(47/1480*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc((111/1920*100vw) + 254px);
	}
	.txt_head02{
		width: 165px;
		font-size: 88.888%;
		height: calc(50/1920*100vw);
		letter-spacing: 0.1em;
		line-height: calc(50/1920*100vw);
		background: url(images/index/icn_txt02.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(20/1480*100vw) center;
		background-size: calc(16/1480*100vw) calc(20/1480*100vw);
		padding-left: calc(47/1480*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc((111/1920*100vw) + 494px);
	}
}
@media(min-width: 961px) and (max-width:1350px) {
	.txt_head_access{
		font-size: 88.888%;
		letter-spacing: 0.1em;
		background: url(images/index/icn_access.svg);
		background-repeat: no-repeat;
		background-position:left center;
		background-size: calc(61/1920*100vw) calc(61/1920*100vw);
		height: calc(61/1920*100vw);
		line-height: calc(61/1920*100vw);
		padding-left: calc(80/1920*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc(50/1920*100vw);
	}
	.txt_head01{
		width: 195px;
		font-size: 77.777%;
		height: calc(50/1920*100vw);
		letter-spacing: 0.1em;
		line-height: calc(50/1920*100vw);
		background: url(images/index/icn_txt01.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(20/1480*100vw) center;
		background-size: calc(17/1480*100vw) calc(20/1480*100vw);
		padding-left: calc(47/1480*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc((111/1920*100vw) + 224px);
	}
	.txt_head02{
		width: 150px;
		font-size: 77.777%;
		height: calc(50/1920*100vw);
		letter-spacing: 0.1em;
		line-height: calc(50/1920*100vw);
		background: url(images/index/icn_txt02.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(20/1480*100vw) center;
		background-size: calc(16/1480*100vw) calc(20/1480*100vw);
		padding-left: calc(47/1480*100vw);
		position: absolute;
		bottom: calc(39/1920*100vw);
		left: calc((111/1920*100vw) + 434px);
	}
}
@media(min-width: 961px) and (max-width:1150px) {
	.area_btn_head{
		width: 340px;
		height: 60px;
	}
	.btn_tel{
		width: 190px;
		height: 60px;
	}
	.btn_tel a{
		font-size: 80%;
		padding-top: 10px;
	}
	.btn_tel a p:nth-child(1){
		margin-bottom: 7px;
	}
	.btn_tel a p:nth-child(2){
		line-height:  20px;
		height: 20px;
		background-size: contain;
		padding-left: 16px;
		width:155px;
	}
	.btn_web{
		width: 140px;
		height: 60px;
	}
	.btn_web a{
		font-size: 80%;
		padding-top: 11px;
	}
	.btn_web a p:nth-child(1){
		margin-bottom: 6px;
	}
	.txt_head_add{
		font-size: 77.777%;
		top: 100px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	header h1{
		position: absolute;
		top: calc(40/1480*100vw);
		left: calc(40/1480*100vw);
		width: calc(430/1480*100vw);
		height: calc(93/1480*100vw);
	}
	.txt_head_add{
		font-size: 88.888%;
		text-align: center;
		line-height: 2em;
		letter-spacing: 0.1em;
		position: static;
	}
	.txt_head_access{
		font-size: 111.111%;
		letter-spacing: 0.1em;
		background: url(images/index/icn_access.svg);
		background-repeat: no-repeat;
		background-position:left center;
		background-size: auto;
		height: 61px;
		line-height: 61px;
		padding-left: 80px;
		position: static;
		width: 330px;
		margin:30px auto 30px;
	}
	.txt_head01{
		width: 240px;
		height: 50px;
		letter-spacing: 0.1em;
		line-height: 50px;
		background: url(images/index/icn_txt01.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:20px center;
		background-size: auto;
		padding-left: 47px;
		position: static;
		margin-right: 20px;
		margin-bottom: 30px;
	}
	.txt_head02{
		width: 180px;
		height: 50px;
		letter-spacing: 0.1em;
		line-height: 50px;
		background: url(images/index/icn_txt02.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:20px center;
		background-size: auto;
		padding-left: 47px;
		position: static;
		margin-bottom: 30px;
	}
}
@media(max-width: 767px) {
	header h1{
		position: absolute;
		top: calc(20/750*100vw);
		left: calc(24/750*100vw);
		width: calc(430/750*100vw);
		height: calc(93/750*100vw);
	}
	.txt_head_add{
		font-size: 100%;
		text-align: center;
		line-height: 2em;
		letter-spacing: 0;
		position: static;
	}
	.txt_head_access{
		font-size: 87.5%;
		letter-spacing: 0.1em;
		background: url(images/index/icn_access.svg);
		background-repeat: no-repeat;
		background-position:left center;
		background-size: calc(84/750*100vw) calc(84/750*100vw);
		height: calc(84/750*100vw);
		line-height: calc(83/750*100vw);
		padding-left: calc(109/750*100vw);
		position: static;
		width: calc(428/750*100vw);
		margin:calc(9/750*100vw) auto calc(30/750*100vw);
		white-space: nowrap;
	}
	.txt_head01{
		width: calc(354/750*100vw);
		height: calc(70/750*100vw);
		font-size: 81.25%;
		letter-spacing: 0.1em;
		line-height: calc(70/750*100vw);
		background: url(images/index/icn_txt01.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(32/750*100vw) center;
		background-size: calc(24/750*100vw) calc(30/750*100vw);
		padding-left: calc(70/750*100vw);
		position: static;
		margin-right: calc(20/750*100vw);
		margin-bottom: calc(44/750*100vw);
	}
	.txt_head02{
		width: calc(272/750*100vw);
		height: calc(70/750*100vw);
		font-size: 81.25%;
		letter-spacing: 0.1em;
		line-height: calc(70/750*100vw);
		background: url(images/index/icn_txt02.svg),rgba(246,246,246,0.9);
		background-repeat: no-repeat;
		background-position:calc(34/750*100vw) center;
		background-size: calc(22/750*100vw) calc(30/750*100vw);
		padding-left: calc(70/750*100vw);
		position: static;
		margin-bottom: calc(44/750*100vw);
	}
}


/* メインイメージ main_img
------------------------------------------------------------------*/
.main_img {
	position: relative;
	background: url(images/index/bg_main.jpg)no-repeat center / calc(1920/1920*100vw) calc(970/1920*100vw);
	height: calc(970/1920*100vw);
}
.main_img .slide_main {
	opacity: 0;
}
.main_img .slide_main li {
	height: calc(970/1920*100vw);
}
.main_img.tab .slide_main li {
	height: auto;
}
.main01 {
	background: url(images/index/img_main01_l.jpg), url(images/index/img_main01_r.jpg);
	background-repeat: no-repeat,no-repeat;
	background-position: left top,right bottom;
	background-size: calc(960/1920*100vw) calc(850/1920*100vw),calc(760/1920*100vw) calc(550/1920*100vw);
}
.main02 {
	background: url(images/index/img_main02_l.jpg), url(images/index/img_main02_r.jpg);
	background-repeat: no-repeat,no-repeat;
	background-position: left top,right bottom;
	background-size: calc(960/1920*100vw) calc(850/1920*100vw),calc(760/1920*100vw) calc(550/1920*100vw);
}
.main_img .slick-slide .sp_only {
	display: none !important;
}
.catch01,
.catch02{
	font-size: calc(50/1920*100vw);
	line-height: 2em;
	letter-spacing: 0.1em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: calc(185/1920*100vw);
	left: calc(50% + (94/1920*100vw));
}
.catch01 span,
.catch02 span{
	-ms-text-combine-horizontal: all;
	-webkit-text-combine: horizontal;
	-moz-text-combine-upright: all;
	text-combine-upright: all;
}
.catch01 img{
	width: calc(19/1920*100vw);
	height: calc(176/1920*100vw);
	position: absolute;
	bottom: calc(-176/1920*100vw);
	left: calc(45/1920*100vw);
}
.catch02 img{
	width: calc(19/1920*100vw);
	height: calc(190/1920*100vw);
	position: absolute;
	bottom: calc(-14/1920*100vw);
	left: calc(45/1920*100vw);
}
@media(min-width: 768px) and (max-width:960px) {
	
}
@media only screen and (max-width: 767px) {
	.main_img {
		position: relative;
		background: url(images/index/bg_main_sp.png)no-repeat center / calc(750/750*100vw) calc(1151/750*100vw);
		height: calc(1151/750*100vw);
	}
	.main_img .slide_main {
		opacity: 0;
	}
	.main_img .slide_main li {
		height: calc(1151/750*100vw);
	}
	.main_img .slide_main li {
		min-height: auto;
		height: auto;
	}
	.main01, .main02 {
		background: none;
	}
	.main_img .slick-slide .sp_only {
		display: inherit!important;
	}
	.main_img .slick-slide .tb_pc {
		display: none !important;
	}
	.catch01,
	.catch02{
		font-size: 156.25%;
		line-height: 2em;
		letter-spacing: 0.1em;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		position: absolute;
		top: calc(489/750*100vw);
		left: calc(25/750*100vw);
	}
	.catch02{
		top: calc(436/750*100vw);
	}
	.catch01 span,
	.catch02 span{
		margin-bottom: calc(5/750*100vw);
	}
	.catch01 img{
		width: calc(19/750*100vw);
		height: calc(176/750*100vw);
		position: absolute;
		bottom: calc(-172/750*100vw);
		left: calc(42/750*100vw);
	}
	.catch02 img{
		width: calc(19/750*100vw);
		height: calc(190/750*100vw);
		position: absolute;
		bottom: calc(-5/750*100vw);
		left: calc(42/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;
}
.fix_nav.gnav > ul {
	width: calc(95% - 440px);
	max-width: 1340px;
}
.gnav > ul {
	width: 95%;
	max-width: 1340px;
	margin: auto;
}
.gnav > ul > li {
	position: relative;
}
.gnav > ul > li:nth-child(1) {
	width: calc(162/1340*100%);
}
.gnav > ul > li:nth-child(2) {
	width: calc(315/1340*100%);
}
.gnav > ul > li:nth-child(3) {
	width: calc(293/1340*100%);
}
.gnav > ul > li:nth-child(4) {
	width: calc(185/1340*100%);
}
.gnav > ul > li:nth-child(5) {
	width: calc(185/1340*100%);
}
.gnav > ul > li:nth-child(6) {
	width: calc(199/1340*100%);
}
.gnav > ul > li:not(:last-child):after{
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #000000;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.gnav > ul > li > a {
	padding: 29px 0 28px;
	display: block;
	position: relative;
	text-align: center;
}
.gnav > ul > li .ja {
	position: relative;
	display: inline-block;
	color: #000000;
	font-size: 111.111%;
	line-height: 1em;
	font-weight: 300;
}
.gnav > ul > li > a .ja:after {
	content: "";
	position: absolute;
    border-bottom: 1px solid #dbd371;
    width: 100%;
    bottom: -16px;
    right: 0;
    left: 0;
    top: auto;
    margin: auto;
    height: 0;
	transform: rotate(0);
	opacity: 0;
	transition: .3s;
}
.gnav > ul > li > a.active .ja:after,.gnav > ul > li > a:hover .ja:after,.gnav > ul > li > a:hover .ja:after,.gnav > ul > li > a.open .ja:after {
	opacity: 1;
	transition: .3s;
}
.gnav > ul > li .icn {
	text-align: center;
	display: block;
	margin-bottom: 10px;
}
.gnav .nav_sub {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 480px;
	background: rgba(0,0,0,0.9);
	z-index: 3;
	padding: 21px 41px 39px;
}
.gnav .nav_sub2 {
	width: 480px;
	left: 50%;
}
.gnav .nav_sub > ul > li {
	width: 178px;
}
.gnav .nav_sub > ul > li a {
	font-weight: 300;
	text-align: center;
	color: #ffffff;
	display: block;
	width: 100%;
	height: 60px;
	line-height: 60px;
	border-bottom: solid 1px #333333;
	white-space: nowrap;
}
.fix_nav.is_fixed  {
	transition: .5s;
	transform: translateY(0);
	opacity: 1;
	z-index: 10;
}
.fix_nav .wrap{
	width: 420px;
	height: 140px;
	margin-right: 20px;
}
.fix_nav .btn_tel{
	width: 240px;
	height: 80px;
	margin-top: 30px;
}
.fix_nav .btn_tel a{
	display: block;
	width: 100%;
	height: 100%;
	letter-spacing: 0;
	line-height: 1em;
	padding-top: 13px;
	background: #ffffff;
	border: solid 1px #000000;
}
.fix_nav .btn_tel a p:nth-child(1){
	font-size: 88.888%;
	line-height: 1em;
	letter-spacing: 0.1em;
	font-weight: bold;
	margin-bottom: 10px;
}
.fix_nav .btn_tel a p:nth-child(2){
	font-size: 133.333%;
	line-height:  21px;
	letter-spacing: 0.1em;
	height: 25px;
	background: url(images/page/icn_tel.svg);
	background-repeat: no-repeat;
	background-position:left center;
	background-size: auto;
	padding-left: 19px;
	width: 184px;
	margin:0 auto;
	white-space: nowrap;
}
.fix_nav .btn_web{
	width: 170px;
	height: 80px;
	margin-top: 30px;
}
.fix_nav .btn_web a{
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 14px;
	position: relative;
}
.fix_nav .btn_web a p:nth-child(1){
	font-size: 88.888%;
	line-height: 1em;
	letter-spacing: 0.1em;
	margin-bottom: 8px;
}
.fix_nav .btn_web a p:nth-child(2){
	font-size: 133.333%;
	line-height: 1em;
	letter-spacing: 0.1em;
}
.fix_nav .btn_web a:after{
	content: "";
	display: block;
	position: absolute;
	bottom: 5px;
	right: 5px;
	border-left: 10px solid transparent;
	border-bottom: 10px solid #ffffff;
}
@media(min-width: 961px) and (max-width:1520px) {
	.fix_nav.gnav > ul > li .ja {
		font-size: 100%;
	}
	.fix_nav.gnav .nav_sub {
		width: calc(480/1520*100vw);
		padding: 21px 41px 39px;
	}
	.fix_nav.gnav .nav_sub2 {
		width: calc(480/1520*100vw);
	}
	.fix_nav.gnav .nav_sub > ul > li {
		width: calc(178/398*100%);
	}
	.fix_nav.gnav .nav_sub > ul > li a {
		font-size: 88.888%;
		height: 60px;
		line-height: 60px;
	}
	.fix_nav.gnav > ul {
		width: calc(95% - 370px);
		max-width: 1340px;
	}
	.fix_nav .wrap{
		width: 370px;
		height: 140px;
		margin-right: 20px;
	}
	.fix_nav .btn_tel{
		width: 210px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_tel a{
		padding-top: 13px;
	}
	.fix_nav .btn_tel a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 10px;
	}
	.fix_nav .btn_tel a p:nth-child(2){
		font-size: 133.333%;
		padding-left: 19px;
		width: 164px;
	}
	.fix_nav .btn_web{
		width: 150px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_web a{
		padding-top: 14px;
	}
	.fix_nav .btn_web a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 8px;
	}
	.fix_nav .btn_web a p:nth-child(2){
		font-size: 133.333%;
	}
}
@media(min-width: 961px) and (max-width:1320px) {
	.fix_nav.gnav > ul > li .ja {
		font-size: 88.888%;
	}
	.fix_nav.gnav .nav_sub {
		width: calc(480/1520*100vw);
		padding: 21px 30px 39px;
	}
	.fix_nav.gnav .nav_sub2 {
		width: calc(480/1520*100vw);
	}
	.fix_nav.gnav .nav_sub > ul > li {
		width: calc(185/418*100%);
	}
	.fix_nav.gnav .nav_sub > ul > li a {
		font-size: 77.777%;
		height: 60px;
		line-height: 60px;
	}
	.fix_nav.gnav > ul {
		width: calc(95% - 330px);
		max-width: 1340px;
	}
	.fix_nav .wrap{
		width: 330px;
		height: 140px;
		margin-right: 15px;
	}
	.fix_nav .btn_tel{
		width: 190px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_tel a{
		font-size: 90%;
		padding-top: 13px;
	}
	.fix_nav .btn_tel a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 10px;
	}
	.fix_nav .btn_tel a p:nth-child(2){
		font-size: 133.333%;
		padding-left: 19px;
		width: 164px;
	}
	.fix_nav .btn_web{
		width: 130px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_web a{
		font-size: 90%;
		padding-top: 14px;
	}
	.fix_nav .btn_web a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 8px;
	}
	.fix_nav .btn_web a p:nth-child(2){
		font-size: 133.333%;
	}
}
@media(min-width: 961px) and (max-width:1200px) {
	.fix_nav.gnav > ul > li .ja {
		font-size: 77.777%;
		letter-spacing: 0;
	}
	.fix_nav.gnav > ul {
		width: calc(95% - 290px);
		max-width: 1340px;
	}
	.fix_nav .wrap{
		width: 290px;
		height: 140px;
		margin-right: 15px;
	}
	.fix_nav .btn_tel{
		width: 170px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_tel a p:nth-child(2){
		font-size: 122.222%;
		padding-left: 14px;
		width: 150px;
		margin-top: 3px;
	}
	.fix_nav .btn_web{
		width: 110px;
		height: 80px;
		margin-top: 30px;
	}
	.fix_nav .btn_web a p:nth-child(2){
		font-size: 122.222%;
		letter-spacing: 0;
		padding-top: 5px;
	}
}
@media(min-width: 961px) and (max-width:1400px) {
	.gnav > ul > li .ja {
		font-size: 100%;
	}
}
@media(min-width: 961px) and (max-width:1100px) {
	.gnav > ul > li .ja {
		font-size: 88.888%;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.gnav > ul > li .ja {
		font-size: 88.888%;
		letter-spacing: 0;
	}
	.fix_nav.gnav > ul > li > a {
		padding: 9px 0 28px;
	}
	.fix_nav.gnav > ul > li .ja {
		font-size: 70%;
		letter-spacing: 0;
	}
	.fix_nav.gnav > ul > li .icn {
		width: 25px;
		height: 25px;
		margin:0 auto ;
	}
	.gnav .nav_sub {
		width: calc(400/960*100vw);
		padding: 11px 30px 19px;
	}
	.gnav .nav_sub2 {
		width: calc(400/960*100vw);
	}
	.fix_nav.gnav .nav_sub {
		width: calc(350/960*100vw);
		padding: 11px 20px 19px;
	}
	.fix_nav.gnav .nav_sub2 {
		width: calc(350/960*100vw);
	}
	.gnav .nav_sub > ul > li {
		width: 44%;
	}
	.gnav .nav_sub > ul > li a {
		font-size: 77.777%;
		letter-spacing: 0;
		height: 40px;
		line-height: 40px;
	}
	.fix_nav.gnav .nav_sub > ul > li a {
		font-size: 70%;
		letter-spacing: 0;
		height: 40px;
		line-height: 40px;
	}
	.fix_nav.gnav > ul {
		width: calc(95% - 170px);
		max-width: 1340px;
	}
	.fix_nav .wrap{
		width: 170px;
		height: 100px;
		margin-right: 10px;
		display: block;
	}
	.fix_nav .btn_tel{
		width: 170px;
		height: 40px;
		margin-top: 10px;
	}
	.fix_nav .btn_tel a{
		font-size: 90%;
		padding-top: 8px;
	}
	.fix_nav .btn_tel a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 10px;
	}
	.fix_nav .btn_tel a p:nth-child(2){
		font-size: 122.222%;
		padding-left: 15px;
		width: 150px;
	}
	.fix_nav .btn_web{
		width: 170px;
		height: 40px;
		margin-top: 0;
	}
	.fix_nav .btn_web a{
		font-size: 90%;
		padding-top: 9px;
	}
	.fix_nav .btn_web a p:nth-child(1){
		font-size: 88.888%;
		margin-bottom: 8px;
	}
	.fix_nav .btn_web a p:nth-child(2){
		font-size: 122.222%;
	}
}
@media only screen and (max-width: 767px) {
	.gnav {
		display: none;
	}
	.btn_gnav_sp {
		position: fixed;
		top: 3vw;
		right: 3.2vw;
		height: calc(100 / 750 * 100vw);
		width: calc(100 / 750 * 100vw);
		background: #000000;
		z-index: 10000;
		outline: none;
	}
	.btn_gnav_sp .txt_gnav {
		position: absolute;
		width: calc(48 / 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: -3.5vw;
		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.5vw;
	}
	.btn_gnav_sp .icn_gnav:after {
		bottom: -1.5vw;
	}
	.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;
	}
	.gnav_sp {
		padding: 19vw 0 0;
		overflow-y: auto;
		overflow-x: hidden;
		background: rgba(255,255,255,.96);
		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;
	}
	.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_sp .nav_main {
		padding-bottom: 20vw;
	}
	.gnav_sp .nav_main > ul {
		padding: 0 calc(24/750*100vw);
		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 #000000;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer {
		padding-bottom: 2.5vw;
		border-bottom: 1px solid #000000;
	}
	.gnav_sp .nav_main > ul > li > a {
		padding: 3.5vw 4vw 3.5vw 0;
		border-bottom: 1px solid #000000;
		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: "";
		position: absolute;
		right: calc(20 / 750 * 100vw);
		top: 1vw;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(14 / 750 * 100vw) solid #000000;
		border-top: calc(10 / 750 * 100vw) solid transparent;
		border-bottom: calc(10 / 750 * 100vw) solid transparent;
		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 {
		color: #333333;
		font-weight: 300;
		padding-left: calc(17/750*100vw);
	}
	.gnav_sp .nav_main > ul > li > a .en {
		font-size: 62.5%;
		letter-spacing: .1em;
		margin-top: 1vw;
		padding-right: 35px;
		color: #dbd371;
	}
	.gnav_sp .nav_sub {
		background: rgba(0,0,0,.9);
		padding: 5.5vw 5.6vw 7.5vw;
		/*display: none;*/ /* クリックで開閉させる場合はコメント解除 */
	}
	.gnav_sp .nav_sub li {
		width: 100%;
		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;
		font-weight: 300;
	}
	.gnav_sp .nav_sub a:after {
		content: "";
		position: absolute;
		left: 0;
		top: 1vw;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(17 / 750 * 100vw) solid #fff;
		border-top: calc(10 / 750 * 100vw) solid transparent;
		border-bottom: calc(10 / 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_first
------------------------------------------------------------------*/
.index_first{
	position: relative;
	padding: 150px 0 0 0;
	z-index: 1;
}
.img_first01_index{
	position: absolute;
	top: 200px;
	left: 0;
	width: calc(1000/1920*100vw);
}
.box_first01_index{
	width: 484px;
	margin-left: auto;
	margin-bottom: calc(70/1300*100vw);
}
.ttl_first01_index{
	font-size: 255.555%;
	letter-spacing: 0.1em;
	line-height: 2em;
	margin-left: 8px;
	margin-right: -25px;
}
.box_txt_first01_index{
	width: 280px;
}
.txt_first01_index{
	width: 280px;
	height: 360px;
	margin-bottom: 61px;
	margin-left: auto;
}
.box_first02_index{
	height: 635px;
	position: relative;
	padding-top: 61px;
}
.box_first02_index:before{
	content: "";
	display: block;
	width: 1080px;
	height: 400px;
	background: #f6f6f6;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}
.img_first02_index{
	width: 621px;
	margin-left: auto;
}
.img_first03_index{
	width: 421px;
	margin-right: auto;
	margin-top: -70px;
}
@media(min-width: 961px) and (max-width:1300px) {
	.img_first01_index{
		position: absolute;
		top: 200px;
		left: 0;
		width: calc(1000/1920*100vw);
	}
	.box_first02_index{
		height: calc(635/1300*100vw);
		position: relative;
		padding-top: 61px;
	}
	.box_first02_index:before{
		content: "";
		display: block;
		width: calc(1080/1300*100vw);
		height: calc(400/1300*100vw);
		background: #f6f6f6;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}
	.img_first02_index{
		width: calc(621/1300*100vw);
		margin-left: auto;
	}
	.img_first03_index{
		width: calc(421/1300*100vw);
		margin-right: auto;
		margin-top: -70px;
	}
}
@media(min-width: 961px) and (max-width:1230px) {
	.box_first01_index{
		width: 444px;
	}
	.box_txt_first01_index{
		width: 260px;
	}
	.txt_first01_index{
		width: 260px;
		height: 360px;
		margin-bottom: 61px;
	}
}
@media(min-width: 961px) and (max-width:1130px) {
	.box_first01_index{
		width: 394px;
	}
	.box_txt_first01_index{
		width: 220px;
	}
	.ttl_first01_index{
		margin-left: 0;
	}
	.txt_first01_index{
		width: 220px;
		height: 420px;
		margin-bottom: 61px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.index_first{
		position: relative;
		padding: 80px 0 0 0;
	}
	.img_first01_index{
		position: static;
		top: 0;
		left: 0;
		width: 100%;
		margin-bottom: 80px;
	}
	.box_first01_index{
		width: 424px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 100px;
	}
	.box_first01_index .flex{
		margin-bottom: 100px;
	}
	.ttl_first01_index{
		font-size: 255.555%;
		letter-spacing: 0.1em;
		line-height: 2em;
		margin-left: 8px;
		margin-right: -25px;
	}
	.box_txt_first01_index{
		width: 220px;
	}
	.txt_first01_index{
		width: 220px;
		height: 460px;
		margin-bottom: 0;
		margin-left: auto;
	}
	.box_first02_index{
		height: calc(302/750*100vw);
		position: relative;
		padding-top: calc(60/750*100vw);
	}
	.box_first02_index:before{
		content: "";
		display: block;
		width: calc(600/750*100vw);
		height: calc(250/750*100vw);
		background: #f6f6f6;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}
	.img_first02_index{
		width: calc(390/750*100vw);
		margin-left: auto;
	}
	.img_first03_index{
		width: calc(265/750*100vw);
		margin-right: auto;
		margin-top: calc(-345/750*100vw);
	}
}
@media(max-width: 767px) {
	.index_first{
		position: relative;
		padding: calc(85/750*100vw) 0 0 0;
	}
	.img_first01_index{
		position: static;
		top: 0;
		left: 0;
		width: 100%;
		margin-bottom: calc(80/750*100vw);
	}
	.box_first01_index{
		width: calc(646/750*100vw);
		margin-left: auto;
		margin-right: auto;
		margin-bottom: calc(142/750*100vw);
	}
	.box_first01_index .flex{
		margin-bottom: calc(69/750*100vw);
	}
	.ttl_first01_index{
		font-size: 168.75%;
		letter-spacing: 0.1em;
		line-height: 2em;
		margin-left: 0;
		margin-right: 0;
	}
	.box_txt_first01_index{
		width: calc(404/750*100vw);
	}
	.txt_first01_index{
		width: 100%;
		height: calc(680/750*100vw);
		margin-bottom: 0;
		margin-left: auto;
		font-size: 100%;
		line-height: 2em;
		letter-spacing: 0;
	}
	.box_first02_index{
		height: calc(302/750*100vw);
		position: relative;
		padding-top: calc(60/750*100vw);
	}
	.box_first02_index:before{
		content: "";
		display: block;
		width: calc(600/750*100vw);
		height: calc(250/750*100vw);
		background: #f6f6f6;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}
	.img_first02_index{
		width: calc(390/750*100vw);
		margin-left: auto;
	}
	.img_first03_index{
		width: calc(265/750*100vw);
		margin-right: auto;
		margin-top: calc(-345/750*100vw);
	}
}

/* 診療案内 index_medical
------------------------------------------------------------------*/
.bg_madical01_index{
	background: url(images/index/deco_medical.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: auto;
	padding-top: 450px;
	margin-top: -403px;
	z-index: -1;
	margin-bottom: 73px;
}
.ttl_madical01_index{
	font-size: 300%;
	letter-spacing: 0.2em;
	line-height: 1em;
	position: relative;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	margin-bottom: 12px;
	height: 275px;
}
.ttl_madical02_index{
	line-height: 1;
	font-size: 150%;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
}
.ttl_madical03_index{
	line-height: 1;
	font-size: 225%;
	letter-spacing: 0.4em;
	margin-bottom: 14px;
}
.box_medical01_index{
	width: 50%;
	height: 550px;
	background: url(images/index/img_medical01.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
.box_medical01_index:after,
.box_medical02_index:after{
	content: "";
	display: block;
	width: 100%;
	height: 4px;
	background: linear-gradient(90deg, #dbd371 0%, #dbd371 50%, #000000 50%, #000000 100%);
	position: absolute;
	bottom: -4px;
	left: 0;
	right: 0;
}
.box_txt_medical01_off_index{
	width: 160px;
	height: 380px;
	background: rgba(0,0,0,0.2);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	opacity: 1;
	transition: .3s;
}
.txt_madical01_index{
	font-size: 277.777%;
	letter-spacing: 0.1em;
	position: absolute;
	right: 8px;
	top:45px;
}
.txtimg_medical01_index{
	position: absolute;
	left: 35px;
	top: 50%;
	transform: translateY(-50%);
}
.btn_medical01_index{
	display: block;
	background: url(images/index/btn_circle_medical.svg);
	background-position: left center;
	background-repeat: no-repeat;
	width: 41px;
	height: 41px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 53px;
}
.btn_medical01_index:after{
	content: "";
	display: block;
	width: 46px;
	height: 7px;
	background: url(images/index/btn_arw_medical.svg);
	background-position: left center;
	background-repeat: no-repeat;
	position: absolute;
	top: 15px;
	right: -26px;
	transition: .3s;
}
.btn_medical01_index:hover:after{
	right: -31px;
	transition: .3s;
}
.box_txt_medical01_on_index{
	background: rgba(0,0,0,0.67);
	padding: calc(184/1920*100vw) calc(175/1920*100vw) 0;
	width: 100%;
	height: 100%;
	opacity:0;
	transition: .3s;
	position: relative;
	z-index: 1;
}
.box_txt_medical01_on_index .btn_medical01_index{
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	bottom: auto;
	margin-top:22px;
}
.box_medical02_index{
	display: block;
	width: 50%;
	height: 550px;
	background: url(images/index/img_medical02.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
.img_medical03_index{
	width: calc(230/1920*100vw);
	height: calc(230/1920*100vw);
	position: absolute;
	left: calc(26/1920*100vw);
	bottom: calc(26/1920*100vw);
}
.box_medical01_index:hover .box_txt_medical01_off_index,
.box_medical02_index:hover .box_txt_medical01_off_index{
	opacity:0;
	transition: .3s;
}
.box_medical01_index:hover .box_txt_medical01_on_index,
.box_medical02_index:hover .box_txt_medical01_on_index{
	opacity: 1;
	transition: .3s;
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_madical01_index{
		background: url(images/index/deco_medical.jpg);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: calc(1920/750*50vw) calc(977/750*50vw);
		padding-top: 100px;
		margin-top: 50px;
		position: relative;
		z-index: -1;
		margin-bottom: 73px;
	}
	.ttl_madical01_index{
		font-size: 388.888%;
		letter-spacing: 0.2em;
		line-height: 1em;
		position: relative;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		margin-bottom: 12px;
	}
	.ttl_madical02_index{
		font-size: 166.666%;
		letter-spacing: 0.1em;
		margin-bottom: 102px;
	}
	.ttl_madical03_index{
		font-size: 277.777%;
		letter-spacing: 0.4em;
		margin-bottom: 14px;
	}
	.box_medical01_index{
		width: 100%;
		height: 550px;
		background: url(images/index/img_medical01.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.box_medical01_index:after,
	.box_medical02_index:after{
		content: "";
		display: block;
		width: 100%;
		height: 4px;
		background: linear-gradient(90deg, #dbd371 0%, #dbd371 50%, #000000 50%, #000000 100%);
		position: absolute;
		bottom: -4px;
		left: 0;
		right: 0;
	}
	.box_txt_medical01_off_index{
		width: 160px;
		height: 380px;
		background: rgba(0,0,0,0.2);
		position: absolute;
		top: 50%;
		left: auto;
		right: calc(50% + 130px);
		transform: translate(0,-50%);
		opacity: 1;
		transition: .3s;
	}
	.txt_madical01_index{
		font-size: 277.777%;
		letter-spacing: 0.1em;
		position: absolute;
		right: 8px;
		top:45px;
	}
	.txtimg_medical01_index{
		position: absolute;
		left: 35px;
		top: 50%;
		transform: translateY(-50%);
	}
	.btn_medical01_index{
		display: block;
		background: url(images/index/btn_circle_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		width: 41px;
		height: 41px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: 53px;
	}
	.btn_medical01_index:after{
		content: "";
		display: block;
		width: 46px;
		height: 7px;
		background: url(images/index/btn_arw_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		position: absolute;
		top: 15px;
		right: -26px;
		transition: .3s;
	}
	.btn_medical01_index:hover:after{
		right: -31px;
		transition: .3s;
	}
	.box_txt_medical01_on_index{
		background: none;
		padding: 50px 0 70px;
		width: 90%;
		height: 100%;
		opacity:1;
		transition: .3s;
		position: relative;
		z-index: 1;
		margin: auto;
	}
	.box_txt_medical01_on_index .btn_medical01_index{
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		bottom: auto;
		margin-top:22px;
	}
	.box_medical02_index{
		width: 100%;
		height: 550px;
		background: url(images/index/img_medical02.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.box_medical02_index .box_txt_medical01_off_index{
		right: auto;
		left: calc(50% + 130px);
	}
	.img_medical03_index{
		width: calc(230/960*100vw);
		height: calc(230/960*100vw);
		position: absolute;
		left: calc(26/960*100vw);
		bottom: calc(26/960*100vw);
	}
	.box_medical01_index:hover .box_txt_medical01_off_index,
	.box_medical02_index:hover .box_txt_medical01_off_index{
		opacity:1;
		transition: .3s;
	}
	.box_medical01_index:hover .box_txt_medical01_on_index,
	.box_medical02_index:hover .box_txt_medical01_on_index{
		opacity: 1;
		transition: .3s;
	}
}
@media(max-width: 767px) {
	.bg_madical01_index{
		background: url(images/index/deco_medical.jpg);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: calc(1920/750*50vw) calc(977/750*50vw);
		padding-top: calc(96/750*100vw);
		margin-top: calc(50/750*100vw);
		position: relative;
		z-index: -1;
		margin-bottom: calc(75/750*100vw);
	}
	.ttl_madical01_index{
		font-size: 218.75%;
		letter-spacing: 0.2em;
		line-height: 1em;
		position: relative;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		margin-bottom: calc(13/750*100vw);
		height: calc(340/750*100vw);
	}
	.ttl_madical02_index{
		font-size: 93.75%;
		letter-spacing: 0.1em;
		margin-bottom: calc(53/750*100vw);
	}
	.ttl_madical03_index{
		font-size: 156.25%;
		letter-spacing: 0.4em;
		margin-left: calc(20/750*100vw);
		margin-bottom:calc(3/750*100vw);
	}
	.box_medical01_index{
		width: 100%;
		height: calc(450/750*100vw);
		background: url(images/index/img_medical01_sp.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.box_medical01_index:after,
	.box_medical02_index:after{
		content: "";
		display: block;
		width: 100%;
		height: calc(8/750*100vw);
		background: linear-gradient(90deg, #dbd371 0%, #dbd371 50%, #000000 50%, #000000 100%);
		position: absolute;
		bottom: calc(-8/750*100vw);
		left: 0;
		right: 0;
	}
	.box_txt_medical01_off_index{
		width: calc(160/750*100vw);
		height: calc(380/750*100vw);
		background: rgba(0,0,0,0.2);
		position: absolute;
		top: calc(50% + (8/750*100vw));
		left: auto;
		right: calc(50% + (83/750*100vw));
		transform: translate(0,-50%);
		opacity: 1;
		transition: .3s;
	}
	.txt_madical01_index{
		font-size: 156.25%;
		letter-spacing: 0.1em;
		position: absolute;
		right: calc(10/750*100vw);
		top:calc(45/750*100vw);
	}
	.txtimg_medical01_index{
		position: absolute;
		left: calc(35/750*100vw);
		top: 50%;
		transform: translateY(-50%);
		width: calc(15/750*100vw);
		height: calc(135/750*100vw);
	}
	.btn_medical01_index{
		display: block;
		background: url(images/index/btn_circle_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		width: calc(41/750*100vw);
		height: calc(41/750*100vw);
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: calc(53/750*100vw);
	}
	.btn_medical01_index:after{
		content: "";
		display: block;
		width: calc(46/750*100vw);
		height: calc(7/750*100vw);
		background: url(images/index/btn_arw_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: calc(15/750*100vw);
		right: calc(-26/750*100vw);
		transition: .3s;
	}
	.btn_medical01_index:hover:after{
		right: calc(-31/750*100vw);
		transition: .3s;
	}
	.box_txt_medical01_on_index{
		background: none;
		padding: calc(47/750*100vw) 0 calc(57/750*100vw);
		width: calc(646/750*100vw);
		height: 100%;
		opacity:1;
		transition: .3s;
		position: relative;
		z-index: 1;
		margin: auto;
	}
	.box_medical02_index{
		width: 100%;
		height: calc(450/750*100vw);
		background: url(images/index/img_medical02_sp.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
	}
	.box_medical02_index .box_txt_medical01_off_index{
		right: auto;
		left: calc(50% + (83/750*100vw));
	}
	.img_medical03_index{
		width: calc(230/750*100vw);
		height: calc(230/750*100vw);
		position: absolute;
		left: calc(40/750*100vw);
		bottom: calc(32/750*100vw);
	}
	.box_medical01_index:hover .box_txt_medical01_off_index,
	.box_medical02_index:hover .box_txt_medical01_off_index{
		opacity:1;
		transition: .3s;
	}
	.box_medical01_index:hover .box_txt_medical01_on_index,
	.box_medical02_index:hover .box_txt_medical01_on_index{
		opacity: 1;
		transition: .3s;
	}
}

.bg_medical01_index{
	position: relative;
	padding: 80px 0;
}
.bg_medical01_index:after{
	content: "";
	background: #f8f6e4;
	height: 400px;
	width: calc(50% + 670px);
	position: absolute;
	right: 0;
	left: auto;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}
.col_medical01_index{
	width: 350px;
	height: 350px;
}
.col_medical01_index:nth-child(1),
.col_medical01_index:nth-child(2),
.col_medical01_index:nth-child(3){
	margin-bottom: 61px;
}
.box_medical03_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical04.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_medical04_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical05.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_medical05_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical06.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_medical06_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical07.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_medical07_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical08.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_medical08_index{
	width: 100%;
	height: 100%;
	background: url(images/index/img_medical09.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	position: relative;
}
.box_txt_medical02_off_index{
	opacity: 1;
	transition: .3s;
}
.txt_madical02-1_index{
	font-size: 200%;
	letter-spacing: 0.1em;
	position: absolute;
	left: 50%;
	top:65px;
	transform: translateX(-50%);
}
.txt_madical02-2_index{
	font-size: 200%;
	letter-spacing: 0.1em;
	position: absolute;
	left: 50%;
	top:53px;
	transform: translateX(-50%);
}
.txt_madical02-3_index{
	text-align: center;
	font-size: 200%;
	line-height: 155.555%;
	letter-spacing: 0.1em;
	position: absolute;
	left: 50%;
	top:34px;
	transform: translateX(-50%);
}
.txtimg_medical02_index{
	position: absolute;
	left: 48px;
	top: 50%;
	transform: translateY(-50%);
}
.btn_medical02_index{
	display: block;
	background: url(images/index/btn_circle_medical.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 32px;
	height: 32px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 79px;
}
.box_medical04_index .btn_medical02_index{
	bottom: 53px;
}
.box_medical05_index .btn_medical02_index,
.box_medical07_index .btn_medical02_index,
.box_medical08_index .btn_medical02_index{
	bottom: 33px;
}
.btn_medical02_index:after{
	content: "";
	display: block;
	width: 38px;
	height: 6px;
	background: url(images/index/btn_arw_medical.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 12px;
	right: -23px;
	transition: .3s;
}
.btn_medical02_index:hover:after{
	right: -28px;
	transition: .3s;
}
.box_txt_medical02_on_index{
	opacity: 0;
	transition: .3s;
}
.box_txt_medical02_on_index{
	background: rgba(0,0,0,0.67);
	border-radius: 50%;
	width: 100%;
	height: 100%;
	opacity:0;
	transition: .3s;
	position: relative;
	z-index: 1;
}
.box_txt_medical02_on_index .txt{
	width: calc(100% - 110px);
	margin: auto;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.box_txt_medical02_on_index .btn_medical02_index{
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	bottom: auto;
	margin-top:22px;
}
.box_medical03_index:hover .box_txt_medical02_off_index,
.box_medical04_index:hover .box_txt_medical02_off_index,
.box_medical05_index:hover .box_txt_medical02_off_index,
.box_medical06_index:hover .box_txt_medical02_off_index,
.box_medical07_index:hover .box_txt_medical02_off_index,
.box_medical08_index:hover .box_txt_medical02_off_index{
	opacity: 0;
	transition: .3s;
}
.box_medical03_index:hover .box_txt_medical02_on_index,
.box_medical04_index:hover .box_txt_medical02_on_index,
.box_medical05_index:hover .box_txt_medical02_on_index,
.box_medical06_index:hover .box_txt_medical02_on_index,
.box_medical07_index:hover .box_txt_medical02_on_index,
.box_medical08_index:hover .box_txt_medical02_on_index{
	opacity: 1;
	transition: .3s;
}
@media(min-width: 961px) and (max-width:1410px) {
	.bg_medical01_index:after{
		height: calc(400/1410*100vw);
		width: calc(50% + (670/1410*100vw));
	}
	.col_medical01_index{
		width: calc(350/1410*100vw);
		height: calc(350/1410*100vw);
	}
	.col_medical01_index:nth-child(1),
	.col_medical01_index:nth-child(2),
	.col_medical01_index:nth-child(3){
		margin-bottom: calc(61/1410*100vw);
	}
	.txt_madical02-1_index{
		font-size: calc(36/1410*100vw);
		top:calc(65/1410*100vw);
	}
	.txt_madical02-2_index{
		font-size: calc(36/1410*100vw);
		top:calc(53/1410*100vw);
	}
	.txt_madical02-3_index{
		font-size: calc(36/1410*100vw);
		top:calc(34/1410*100vw);
	}
	.txtimg_medical02_index{
		left: calc(48/1410*100vw);
		max-width: calc(11/1410*100vw);
	}
	.btn_medical02_index{
		width: calc(32/1410*100vw);
		height: calc(32/1410*100vw);
		bottom: calc(79/1410*100vw);
	}
	.box_medical04_index .btn_medical02_index{
		bottom: calc(53/1410*100vw);
	}
	.box_medical05_index .btn_medical02_index,
	.box_medical07_index .btn_medical02_index,
	.box_medical08_index .btn_medical02_index{
		bottom: calc(33/1410*100vw);
	}
	.btn_medical02_index:after{
		width: calc(38/1410*100vw);
		height: calc(6/1410*100vw);
		top: calc(12/1410*100vw);
		right: calc(-23/1410*100vw);
	}
	.btn_medical02_index:hover:after{
		right: calc(-28/1410*100vw);
	}
	.box_txt_medical02_on_index .txt{
		width: calc(100% -  (110/1410*100vw));
		font-size: 88.888%;
	}
	.box_txt_medical02_on_index .btn_medical02_index{
		bottom: auto;
		margin-top:calc(22/1410*100vw);
	}
}
@media(min-width: 961px) and (max-width:1200px) {
	.box_txt_medical02_on_index .txt{
		line-height: 1.6em;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_medical01_index{
		position: relative;
		padding: 80px 0;
	}
	.bg_medical01_index:after{
		content: "";
		background: #f8f6e4;
		height: 1550px;
		width: calc(50% + 670px);
		position: absolute;
		right: 0;
		left: auto;
		top: auto;
		transform: translateY(0);
		bottom: 0;
		z-index: -1;
	}
	.col_medical01_index{
		width: 350px;
		height: auto;
	}
	.col_medical01_index:nth-child(1),
	.col_medical01_index:nth-child(2),
	.col_medical01_index:nth-child(3),
	.col_medical01_index:nth-child(4){
		margin-bottom: 61px;
	}
	.box_medical03_index,
	.box_medical04_index,
	.box_medical05_index,
	.box_medical06_index,
	.box_medical07_index,
	.box_medical08_index{
		height: 350px;
		margin-bottom: 35px;
	}
	.box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.txt_madical02-1_index{
		font-size: 200%;
		letter-spacing: 0.1em;
		position: absolute;
		left: 50%;
		top:65px;
		transform: translateX(-50%);
	}
	.txt_madical02-2_index{
		font-size: 200%;
		letter-spacing: 0.1em;
		position: absolute;
		left: 50%;
		top:53px;
		transform: translateX(-50%);
	}
	.txt_madical02-3_index{
		text-align: center;
		font-size: 200%;
		line-height: 155.555%;
		letter-spacing: 0.1em;
		position: absolute;
		left: 50%;
		top:34px;
		transform: translateX(-50%);
	}
	.txtimg_medical02_index{
		position: absolute;
		left: 48px;
		top: 50%;
		transform: translateY(-50%);
	}
	.btn_medical02_index{
		display: block;
		background: url(images/index/btn_circle_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		width: 32px;
		height: 32px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: 79px;
	}
	.box_medical04_index .btn_medical02_index{
		bottom: 53px;
	}
	.box_medical05_index .btn_medical02_index,
	.box_medical07_index .btn_medical02_index,
	.box_medical08_index .btn_medical02_index{
		bottom: 33px;
	}
	.btn_medical02_index:after{
		content: "";
		display: block;
		width: 38px;
		height: 6px;
		background: url(images/index/btn_arw_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 12px;
		right: -23px;
		transition: .3s;
	}
	.btn_medical02_index:hover:after{
		right: -28px;
		transition: .3s;
	}
	.box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
	.box_txt_medical02_on_index{
		background: none;
		border-radius: 0;
		width: 100%;
		height: 100%;
		opacity:1;
		transition: .3s;
		position: relative;
		z-index: 1;
	}
	.box_txt_medical02_on_index .txt{
		width: calc(100% - 110px);
		margin: auto;
		position: absolute;
		left: 0;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.box_txt_medical02_on_index .btn_medical02_index{
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		bottom: auto;
		margin-top:22px;
	}
	.box_medical03_index:hover .box_txt_medical02_off_index,
	.box_medical04_index:hover .box_txt_medical02_off_index,
	.box_medical05_index:hover .box_txt_medical02_off_index,
	.box_medical06_index:hover .box_txt_medical02_off_index,
	.box_medical07_index:hover .box_txt_medical02_off_index,
	.box_medical08_index:hover .box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.box_medical03_index:hover .box_txt_medical02_on_index,
	.box_medical04_index:hover .box_txt_medical02_on_index,
	.box_medical05_index:hover .box_txt_medical02_on_index,
	.box_medical06_index:hover .box_txt_medical02_on_index,
	.box_medical07_index:hover .box_txt_medical02_on_index,
	.box_medical08_index:hover .box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
}
@media(min-width: 768px) and (max-width:850px) {
	.bg_medical01_index{
		position: relative;
		padding: 80px 0;
	}
	.bg_medical01_index:after{
		height: calc(1550/850*100vw);
		width: 100%;
	}
	.col_medical01_index{
		width: calc(350/850*100vw);
		height: auto;
	}
	.col_medical01_index:nth-child(1),
	.col_medical01_index:nth-child(2),
	.col_medical01_index:nth-child(3),
	.col_medical01_index:nth-child(4){
		margin-bottom:calc(60/850*100vw);
	}
	.box_medical03_index,
	.box_medical04_index,
	.box_medical05_index,
	.box_medical06_index,
	.box_medical07_index,
	.box_medical08_index{
		height: calc(350/850*100vw);
		margin-bottom: calc(35/850*100vw);
	}
	.box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.txt_madical02-1_index{
		font-size: calc(36/850*100vw);
		top:calc(65/850*100vw);
	}
	.txt_madical02-2_index{
		font-size: calc(36/850*100vw);
		top:calc(53/850*100vw);
	}
	.txt_madical02-3_index{
		font-size: calc(36/850*100vw);
		top:calc(34/850*100vw);
	}
	.txtimg_medical02_index{
		left: calc(48/850*100vw);
		max-width: calc(11/850*100vw);
	}
	.btn_medical02_index{
		width: calc(32/850*100vw);
		height: calc(32/850*100vw);
		bottom: calc(79/850*100vw);
	}
	.box_medical04_index .btn_medical02_index{
		bottom: calc(53/850*100vw);
	}
	.box_medical05_index .btn_medical02_index,
	.box_medical07_index .btn_medical02_index,
	.box_medical08_index .btn_medical02_index{
		bottom: calc(33/850*100vw);
	}
	.btn_medical02_index:after{
		width: calc(38/850*100vw);
		height: calc(6/850*100vw);
		top: calc(12/850*100vw);
		right: calc(-23/850*100vw);
	}
	.btn_medical02_index:hover:after{
		right: calc(-28/850*100vw);
	}
	.box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
	.box_txt_medical02_on_index{
		background: none;
		border-radius: 0;
	}
	.box_medical03_index:hover .box_txt_medical02_off_index,
	.box_medical04_index:hover .box_txt_medical02_off_index,
	.box_medical05_index:hover .box_txt_medical02_off_index,
	.box_medical06_index:hover .box_txt_medical02_off_index,
	.box_medical07_index:hover .box_txt_medical02_off_index,
	.box_medical08_index:hover .box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.box_medical03_index:hover .box_txt_medical02_on_index,
	.box_medical04_index:hover .box_txt_medical02_on_index,
	.box_medical05_index:hover .box_txt_medical02_on_index,
	.box_medical06_index:hover .box_txt_medical02_on_index,
	.box_medical07_index:hover .box_txt_medical02_on_index,
	.box_medical08_index:hover .box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
}
@media(max-width: 767px) {
	.bg_medical01_index{
		position: relative;
		padding: calc(26/750*100vw) 0 calc(90/750*100vw);
	}
	.bg_medical01_index:after{
		content: "";
		background: #f8f6e4;
		height: calc(1721/750*100vw);
		width: 100%;
		position: absolute;
		right: 0;
		left: auto;
		top: auto;
		transform: translateY(0);
		bottom: 0;
		z-index: -1;
	}
	.col_medical01_index{
		width: calc(341/702*100%);
		height: auto;
	}
	.col_medical01_index:nth-child(1),
	.col_medical01_index:nth-child(2),
	.col_medical01_index:nth-child(3),
	.col_medical01_index:nth-child(4){
		margin-bottom: calc(53/750*100vw);
	}
	.box_medical03_index,
	.box_medical04_index,
	.box_medical05_index,
	.box_medical06_index,
	.box_medical07_index,
	.box_medical08_index{
		width: 100%;
		height: auto;
		padding-top: 100%;
		margin-bottom: calc(26/750*100vw);
	}
	.box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.txt_madical02-1_index{
		font-size: 112.5%;
		letter-spacing: 0;
		position: absolute;
		left: 50%;
		top:calc(61/750*100vw);
		transform: translateX(-50%);
	}
	.txt_madical02-2_index{
		font-size: 112.5%;
		letter-spacing: 0;
		position: absolute;
		left: 50%;
		top:calc(50/750*100vw);
		transform: translateX(-50%);
	}
	.txt_madical02-3_index{
		text-align: center;
		font-size: 112.5%;
		line-height: 155.555%;
		letter-spacing: 0;
		position: absolute;
		left: 50%;
		top:calc(32/750*100vw);
		transform: translateX(-50%);
	}
	.txtimg_medical02_index{
		position: absolute;
		left: calc(61/750*100vw);
		top: 50%;
		transform: translateY(-50%);
		width: calc(12/750*100vw);
	}
	.txtimg_medical02_index img{
		width: calc(12/750*100vw);
	}
	.btn_medical02_index{
		display: block;
		background: url(images/index/btn_circle_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		width: calc(41/750*100vw);
		height: calc(41/750*100vw);
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: calc(76/750*100vw);
	}
	.box_medical04_index .btn_medical02_index{
		bottom: calc(51/750*100vw);
	}
	.box_medical05_index .btn_medical02_index,
	.box_medical07_index .btn_medical02_index,
	.box_medical08_index .btn_medical02_index{
		bottom: calc(33/750*100vw);
	}
	.btn_medical02_index:after{
		content: "";
		display: block;
		width: calc(46/750*100vw);
		height: calc(7/750*100vw);
		background: url(images/index/btn_arw_medical.svg);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: calc(15/750*100vw);
		right: calc(-26/750*100vw);
		transition: .3s;
	}
	.btn_medical02_index:hover:after{
		right: calc(-31/750*100vw);
		transition: .3s;
	}
	.box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
	.box_txt_medical02_on_index{
		background: none;
		border-radius: 0;
		width: 100%;
		height: 100%;
		opacity:1;
		transition: .3s;
		position: relative;
		z-index: 1;
		font-size: 87.5%;
		letter-spacing: 0;
		line-height: calc(48/28*100%);
	}
	.box_medical03_index:hover .box_txt_medical02_off_index,
	.box_medical04_index:hover .box_txt_medical02_off_index,
	.box_medical05_index:hover .box_txt_medical02_off_index,
	.box_medical06_index:hover .box_txt_medical02_off_index,
	.box_medical07_index:hover .box_txt_medical02_off_index,
	.box_medical08_index:hover .box_txt_medical02_off_index{
		opacity: 1;
		transition: .3s;
	}
	.box_medical03_index:hover .box_txt_medical02_on_index,
	.box_medical04_index:hover .box_txt_medical02_on_index,
	.box_medical05_index:hover .box_txt_medical02_on_index,
	.box_medical06_index:hover .box_txt_medical02_on_index,
	.box_medical07_index:hover .box_txt_medical02_on_index,
	.box_medical08_index:hover .box_txt_medical02_on_index{
		opacity: 1;
		transition: .3s;
	}
}
.bg_medical02_index{
	background: url(images/index/img_medical10.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 84px 0 123px;
}
.ttl_madical04_index{
	font-size: 222.222%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-bottom: 26px;
}
.txt_madical02_index{
	text-align: center;
	margin-bottom: 46px;
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_medical02_index{
		background: url(images/index/img_medical10.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		padding: 84px 0 123px;
		margin-top: 80px;
	}
	.ttl_madical04_index{
		font-size: 222.222%;
		letter-spacing: 0.1em;
		line-height: 1.6em;
		margin-bottom: 26px;
	}
	.txt_madical02_index{
		text-align: center;
		margin-bottom: 46px;
	}
}
@media(max-width: 767px) {
	.bg_medical02_index{
		background: url(images/index/img_medical10_sp.jpg);
		background-position: top center;
		background-repeat: no-repeat;
		background-size: cover;
		padding: calc(84/750*100vw) 0 calc(99/750*100vw);
		margin-top: calc(80/750*100vw);
	}
	.ttl_madical04_index{
		font-size: 156.25%;
		letter-spacing: 0;
		line-height: 1.4em;
		margin-bottom: calc(48/750*100vw);
	}
	.txt_madical02_index{
		text-align: left;
		margin:0 auto calc(45/750*100vw);
		width: calc(646/750*100vw);
	}
}

/* 烏山通り歯科の特徴 index_feature
------------------------------------------------------------------*/
.index_feature{
	padding: 110px 0 150px;
}
.ttl_feature01_index{
	font-size: 388.888%;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
}
.ttl_feature02_index{
	font-size: 166.666%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 77px;
}
.area_feature01_index{
	position: relative;
	padding: 100px 0 40px;
	margin-bottom: 100px;
}
.img_feature01_index{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 75%;
	max-width: 1200px;
}
.box_feature01_index{
	padding:53px 70px 70px;
	width: 680px;
	border-left: solid 1px #000000;
	position: relative;
	z-index: 1;
}
.box_feature01_index.mgn_l{
	border-left: none;
	border-right: solid 1px #000000;
}
.box_feature01_index .bg_ptn04,
.box_feature01_index .bg_ptn05{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.9;
	z-index: -1;
}
.icn_feature01_index{
	position: absolute;
	left: -57px;
	bottom: 0;
}
.box_feature01_index.mgn_l .icn_feature01_index{
	left: auto;
	right: -57px;
}
.box_feature01_index .min:first-child{
	font-size: 222.222%;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	margin-bottom: 28px;
}
.box_feature01_index .txt_l{
	margin-bottom: 41px;
}
@media(min-width: 961px) and (max-width:1500px) {
	.area_feature01_index{
		position: relative;
		padding: calc(100/1500*100vw) 0 calc(40/1500*100vw);
		margin-bottom: 100px;
	}
	.icn_feature01_index{
		left: calc(-57/1500*100vw);
		width: calc(36/1500*100vw);
	}
	.box_feature01_index.mgn_l .icn_feature01_index{
		left: auto;
		right: calc(-57/1500*100vw);
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.area_feature01_index{
		position: relative;
		padding: calc(363/960*100vw) 0 0;
		margin-bottom: 100px;
	}
	.img_feature01_index{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: 90%;
		max-width: 1200px;
	}
	.box_feature01_index{
		padding:53px 70px 70px;
		width: 100%;
		border-left: solid 1px #000000;
		position: relative;
		z-index: 1;
		margin-bottom: 30px;
	}
	.box_feature01_index.mgn_l{
		border-left: none;
		border-right: solid 1px #000000;
	}
	.box_feature01_index .bg_ptn04,
	.box_feature01_index .bg_ptn05{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.9;
		z-index: -1;
	}
	.icn_feature01_index{
		position: absolute;
		left: calc(-57/1500*100vw);
		width: calc(36/1500*100vw);
		bottom: 0;
	}
	.box_feature01_index.mgn_l .icn_feature01_index{
		left: auto;
		right: calc(-57/1500*100vw);
	}
	.box_feature01_index .min:first-child{
		font-size: 222.222%;
		line-height: 1.6em;
		letter-spacing: 0.1em;
		margin-bottom: 28px;
	}
	.box_feature01_index .txt_l{
		margin-bottom: 0;
	}
}
@media(max-width: 767px) {
	.index_feature{
		padding: calc(110/750*100vw) 0 calc(80/750*100vw);
	}
	.ttl_feature01_index{
		font-size: 187.5%;
		letter-spacing: 0;
		margin-bottom: calc(10/750*100vw);
	}
	.ttl_feature02_index{
		font-size: 166.666%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-bottom: calc(70/750*100vw);
	}
	.area_feature01_index{
		position: relative;
		padding: calc(363/750*100vw) 0 0;
		margin-bottom: calc(100/750*100vw);
	}
	.area_feature01_index .inner1500{
		width: 100%;
		padding: 0;
	}
	.img_feature01_index{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: calc(726/750*100vw);
		max-width: calc(726/750*100vw);
	}
	.img_feature01_index.mgn_l{
		margin-left: auto;
		margin-right: 0;
	}
	.img_feature01_index.mgn_r{
		margin-left: 0;
		margin-right: auto;
	}
	.box_feature01_index{
		padding: calc(42/750*100vw) calc(49/750*100vw) calc(43/750*100vw);
		width: calc(668/750*100vw);
		border-left: solid 1px #000000;
		position: relative;
		z-index: 1;
		margin-bottom: calc(60/750*100vw);
		margin-right: 0;
		margin-left: auto;
	}
	.box_feature01_index.mgn_l{
		border-left: none;
		border-right: solid 1px #000000;
		margin-right: auto;
		margin-left: 0;
	}
	.box_feature01_index .bg_ptn04,
	.box_feature01_index .bg_ptn05{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.9;
		z-index: -1;
	}
	.icn_feature01_index{
		position: absolute;
		left: calc(-57/750*100vw);
		width: calc(36/750*100vw);
		bottom: 0;
	}
	.box_feature01_index.mgn_l .icn_feature01_index{
		left: auto;
		right: calc(-57/750*100vw);
	}
	.box_feature01_index .min:first-child{
		font-size: 156.25%;
		line-height: 1.48em;
		letter-spacing: 0;
		margin-bottom: calc(28/750*100vw);
	}
	.box_feature01_index .txt_l{
		margin-bottom: 0;
	}
}
.box_slider_index{
	position: relative;
	height: 235px;
	margin-bottom: 100px;
}
.img_slider_index{
	position: absolute;
	top:0;
	width: 100%;
	height: 235px;
	background: url(images/index/img_slider_index.png) repeat-x 0 0/3980px 235px;
	-webkit-animation: bg-animation 120s linear infinite;
	animation: bg-animation 120s linear infinite;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
@keyframes bg-animation {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -3980px 0;
	}
}
@-webkit-keyframes bg-animation {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -3980px 0;
	}
}
@media(min-width: 768px) and (max-width:960px) {

}
@media(max-width: 767px) {
	.box_slider_index{
		position: relative;
		height: calc(235 / 750 * 100vw);
		margin-bottom: calc(100/750*100vw);
	}
	.img_slider_index{
		position: absolute;
		top:0;
		width: 100%;
		height: calc(235 / 750 * 100vw);
		background: url(images/index/img_slider_index.png) repeat-x 0 0/calc(3980 / 750 * 100vw) calc(235 / 750 * 100vw);
		-webkit-animation: bg-animation 120s linear infinite;
		animation: bg-animation 120s linear infinite;
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both;
	}
}

.area_feature02_index{
	position: relative;
}
.area_feature02_index:before{
	content: "";
	width: 361px;
	height: 355px;
	background: url(images/index/deco_feature01.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto;
	position: absolute;
	right: -20px;
	top: 223px;
}
.area_feature02_index.r_reverse:before{
	right: auto;
	left: -20px;
	top: 124px;
}
.icn_feature02_index{
	position: absolute;
	right: 42px;
	top: 335px;
}
.area_feature02_index.r_reverse .icn_feature02_index{
	right: auto;
	left: 42px;
	top: 233px;
}
.img_feature02_index{
	width: calc(680/1500*100%);
}
.box_feature02_index{
	width: calc(600/1500*100%);
	margin-right: 130px;
}
.area_feature02_index.r_reverse .box_feature02_index{
	width: calc(600/1500*100%);
	margin-right: auto;
	margin-left: 130px;
}
.box_feature02_index .min:first-child{
	font-size: 222.222%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	margin-top: -17px;
	margin-bottom: 28px;
}
.box_feature02_index .txt_l{
	margin-bottom: 41px;
}
@media(min-width: 961px) and (max-width:1300px) {
	.box_feature02_index{
		margin-right: calc(130/1300*100vw);
	}
	.area_feature02_index.r_reverse .box_feature02_index{
		margin-left: calc(130/1300*100vw);
	}
	.box_feature02_index .min:first-child{
		font-size: 188.888%;
	}
}
@media(min-width: 961px) and (max-width:1070px) {
	.box_feature02_index .min:first-child{
		font-size: 150%;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.wrap_feature01_index{
		width: 100%;
		padding: 0;
	}
	.area_feature02_index{
		position: relative;
	}
	.area_feature02_index:before{
		content: "";
		width: 280px;
		height: 355px;
		background: url(images/index/deco_feature02_sp.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: auto;
		position: absolute;
		right: 0;
		top: calc(566/750*100vw);
	}
	.area_feature02_index.r_reverse:before{
		width: 281px;
		background: url(images/index/deco_feature01_sp.png);
		right: auto;
		left: 0;
		top: calc(567/750*100vw);
	}
	.icn_feature02_index{
		position: absolute;
		right: 50px;
		top: calc(238/750*100vw);
	}
	.area_feature02_index.r_reverse .icn_feature02_index{
		right: auto;
		left: 50px;
		top: calc(238/750*100vw);
	}
	.img_feature02_index{
		width: calc(640/750*100%);
	}
	.img_feature02_index img{
		width: 100%;
	}
	.area_feature02_index .box_feature02_index{
		width: calc(100% - 100px)!important;
		margin-right: auto!important;
		margin-left: auto!important;
		margin-top: 50px;
	}
	.box_feature02_index .min:first-child{
		font-size: 222.222%;
		letter-spacing: 0.1em;
		line-height: 1.6em;
		margin-top: -17px;
		margin-bottom: 28px;
	}
	.box_feature02_index .txt_l{
		margin-bottom: 41px;
	}
	.box_feature02_index .btn_default01{
		margin-left: auto;
		margin-right: auto;
	}
}
@media(max-width: 767px) {
	.wrap_feature01_index{
		width: 100%;
		padding: 0;
	}
	.area_feature02_index{
		position: relative;
	}
	.area_feature02_index:before{
		content: "";
		width: calc(280/750*100vw);
		height: calc(355/750*100vw);
		background: url(images/index/deco_feature02_sp.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		position: absolute;
		right: 0;
		top: calc(566/750*100vw);
	}
	.area_feature02_index.r_reverse:before{
		width: calc(281/750*100vw);
		background: url(images/index/deco_feature01_sp.png);
		background-size: contain;
		right: auto;
		left: 0;
		top: calc(567/750*100vw);
	}
	.icn_feature02_index{
		position: absolute;
		right: calc(52/750*100vw);
		top: calc(238/750*100vw);
		width: calc(39/750*100vw);
	}
	.area_feature02_index.r_reverse .icn_feature02_index{
		right: auto;
		left: calc(52/750*100vw);
		top: calc(238/750*100vw);
	}
	.img_feature02_index{
		width: calc(640/750*100vw);
	}
	.img_feature02_index img{
		width: 100%;
	}
	.area_feature02_index .box_feature02_index{
		width: calc(646/750*100vw)!important;
		margin-right: auto!important;
		margin-left: auto!important;
		margin-top: calc(41/750*100vw);
	}
	.box_feature02_index .min:first-child{
		font-size: 156.25%;
		letter-spacing: 0;
		line-height: 1.6em;
		margin-top: 0;
		margin-bottom: calc(25/750*100vw);
	}
	.box_feature02_index .txt_l{
		margin-bottom: calc(42/750*100vw);
	}
	.box_feature02_index .btn_default01{
		margin-left: auto;
		margin-right: auto;
	}
}
.parallax {
	background: url("images/index/img_parallax.jpg")no-repeat center / cover;
	height: 700px;
	width: 100%;
	background-attachment: fixed!important;
	padding-top: 151px;
}
.parallax.is_ios, .parallax.tab {
	background-attachment: inherit!important;
}
.txt_parallax01_index{
	font-size: 277.777%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 36px;
}
.txt_parallax02_index{
	font-size: 133.333%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 37px;
}
.txt_parallax03_index{
	text-align: center;
	margin-bottom: 43px;
}
@media(min-width: 768px) and (max-width:960px) {

}
@media(max-width: 767px) {
	.parallax, .parallax.is_ios {
		width: 100%;
		background-attachment: inherit!important;
	}
	.parallax {
		background-image: url("images/index/img_parallax_sp.jpg");
		height: calc(1011 / 750 * 100vw);
		padding-top: calc(145/750*100vw);
	}
	.txt_parallax01_index{
		font-size: 156.25%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-bottom: calc(36/750*100vw);
	}
	.txt_parallax02_index{
		font-size: 75%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-bottom: calc(50/750*100vw);
	}
	.txt_parallax03_index{
		text-align: left;
		width: calc(646/750*100vw);
		margin: auto;
		margin-bottom: calc(45/750*100vw);
	}
}

/* はじめて当院へお越しの方へ index_first_visit
------------------------------------------------------------------*/
.bg_first_visit_index{
	background: url(images/index/bg_first_visit.jpg);
	background-position:left center;
	background-repeat: no-repeat;
	background-size: auto;
	height: 1000px;
	position: relative;
}
.ttl_first_visit01_index{
	font-size: 333.333%;
	letter-spacing: 0.2em;
	line-height: 2em;
	position: absolute;
	top: 260px;
	transform: translateX(50%);
	right: calc(50% + 620px);
}
.wrap_first_visit_index{
	width: 1220px;
	height: 960px;
	padding: 30px;
	position: absolute;
	top: 20px;
	right: 20px;
}
.area_first_visit_index{
	overflow: hidden;
	position: relative;
	height: 900px;
	padding: 60px;
	touch-action: auto !important;
	-webkit-overflow-scrolling: touch;
}
/* パーフェクトスクロールバー */
.area_first_visit_index .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background: #000000 !important;
	right: 0px !important;
	width: 4px !important;
}
.area_first_visit_index .ps-container > .ps-scrollbar-y-rail {
	background: #ffffff !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1;
}
.ttl_first_visit02_index{
	font-size: 222.222%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 20px;
}
.txt_first_visit01_index{
	font-size: 133.333%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 40px;
}
.txt_first_visit02_index{
	width: calc(100% - 40px);
	margin:0 auto 80px;
}
.txt_first_visit03_index{
	font-size: 133.333%;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-bottom: 35px;
}
.area_first_visit_index .box_flow{
	position: relative;
	padding: 40px 40px 40px 80px;
}
.area_first_visit_index .box_flow .num{
	height: 100%;
	width: 40px;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 133.333%;
}
.area_first_visit_index .box_flow .num span{
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
}
.area_first_visit_index .box_flow .col_img{
	width: calc(240/920*100%);
}
.area_first_visit_index .box_flow .col_txt{
	width: calc(635/920*100%);
}
.area_first_visit_index .box_flow .col_txt .ttl{
	font-size: 133.333%;
	letter-spacing: 0.1em;
	margin-top: -14px;
	margin-bottom: 6px;
} 
.area_first_visit_index .arw_flow:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-top: 16px solid #dbd371;
	border-right: 23px solid transparent;
	border-left: 23px solid transparent;
	right: 0;
	left: 0;
	bottom: -35px;
	margin: auto;
}
@media(min-width: 961px) and (max-width:1600px) {
	.ttl_first_visit01_index{
		top: 260px;
		transform: translateX(0);
		right: auto;
		left: 50px;
	}
	.wrap_first_visit_index{
		width: calc(100% - 365px);
		padding: calc(30/1600*100vw);
	}
	.area_first_visit_index{
		padding: calc(60/1600*100vw);
	}
	.area_first_visit_index .box_flow{
		position: relative;
		padding: calc(40/1600*100vw) calc(40/1600*100vw) calc(40/1600*100vw) calc(80/1600*100vw);
	}
}
@media(min-width: 961px) and (max-width:1200px) {
	.area_first_visit_index .box_flow .col_txt .ttl{
		font-size: 111.111%;
	} 
}
@media(min-width: 768px) and (max-width:960px) {
	.bg_first_visit_index{
		background: url(images/index/bg_first_visit.jpg),#000000;
		background-position:left top;
		background-repeat: no-repeat;
		background-size: auto;
		height: 1570px;
		padding-top: 590px;
		position: relative;
	}
	.ttl_first_visit01_index{
		font-size: 277.777%;
		letter-spacing: 0.2em;
		line-height: 2em;
		position: absolute;
		top: 100px;
		transform: translateX(0);
		right: auto;
		left: 50px;
	}
	.wrap_first_visit_index{
		width: calc(100% - 40px);
		height: 960px;
		padding: 30px;
		position: absolute;
		top: 590px;
		right: 20px;
	}
	.area_first_visit_index{
		padding: 30px;
	}
	.area_first_visit_index .box_flow{
		position: relative;
		padding:100px 40px 40px 40px ;
	}
	.area_first_visit_index .box_flow .num{
		height: 60px;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		font-size: 133.333%;
	}
	.area_first_visit_index .box_flow .num span{
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		right: 0;
		transform: translateY(-50%);
	}
	.area_first_visit_index .box_flow .col_img{
		width: 240px;
		margin:0 auto;
	}
	.area_first_visit_index .box_flow .col_txt{
		width: 100%;
	}
	.area_first_visit_index .box_flow .col_txt .ttl{
		text-align: center;
		margin-bottom: 20px;
	}
	.area_first_visit_index .box_flow .col_txt .txt_l{
		margin-top: 20px;
	}
}
@media(max-width: 767px) {
	.bg_first_visit_index{
		background: url(images/index/bg_first_visit_sp.jpg);
		background-position:left top;
		background-repeat: no-repeat;
		background-size: cover;
		height: calc(1389/750*100vw);
		padding-top: calc(589/750*100vw);
		position: relative;
	}
	.ttl_first_visit01_index{
		font-size: 156.25%;
		letter-spacing: 0.2em;
		line-height: 2em;
		position: absolute;
		top: calc(92/750*100vw);
		transform: translateX(0);
		right:auto;
		left: calc(73/750*100vw);
	}
	.wrap_first_visit_index{
		width: calc(702/750*100vw);
		height: calc(700/750*100vw);
		padding:calc(80/750*100vw) calc(28/750*100vw);
		position: absolute;
		top: calc(589/750*100vw);
		right: calc(24/750*100vw);
	}
	.area_first_visit_index{
		overflow: hidden;
		position: relative;
		height: calc(540/750*100vw);
		padding: 0;
		touch-action: auto !important;
		-webkit-overflow-scrolling: touch;
	}
	.ttl_first_visit02_index{
		font-size: 125%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-top: calc(-4/750*100vw);
		margin-bottom: calc(15/750*100vw);
	}
	.txt_first_visit01_index{
		font-size: 150%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-bottom: calc(9/750*100vw);
	}
	.txt_first_visit02_index{
		width: calc(600/750*100vw);
		margin:0 auto calc(67/750*100vw) 0;
	}
	.txt_first_visit03_index{
		font-size: 150%;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin-bottom: calc(32/750*100vw);
	}
	.area_first_visit_index .box_flow{
		position: relative;
		padding: calc(106/750*100vw) calc(40/750*100vw) calc(40/750*100vw) calc(40/750*100vw);
	}
	.area_first_visit_index .box_flow .num{
		height: calc(60/750*100vw);
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		font-size: 125%;
		letter-spacing: 0.1em;
	}
	.area_first_visit_index .box_flow .num span{
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		right: 0;
		transform: translateY(-50%);
	}
	.area_first_visit_index .box_flow .col_img{
		width: calc(432/750*100vw)!important;
		margin: auto;
	}
	.area_first_visit_index .box_flow .col_img img{
		width: 100%;
	}
	.area_first_visit_index .box_flow .col_txt{
		width: 100%;
	}
	.area_first_visit_index .box_flow .col_txt .ttl{
		font-size: 112.5%;
		letter-spacing: 0;
		line-height: 155.555%;
		margin-top: 0;
		margin-bottom: calc(30/750*100vw);
		text-align: center;
	} 
	.area_first_visit_index .box_flow .col_txt .txt_l{
		margin-top: calc(19/750*100vw);
	}
	.area_first_visit_index .arw_flow:before {
		border-top-width: calc(30 / 750 * 100vw);
		border-right-width: calc(45 / 750 * 100vw);
		border-left-width: calc(45 / 750 * 100vw);
		bottom: -9.5vw;
	}
}

/* ご挨拶 index_greeting
------------------------------------------------------------------*/
.index_greeting{
	position: relative;
	padding-top: 143px;
}
.ttl_greeting01_index{
	margin: 0 0 0 83px;
	font-size: 388.888%;
	letter-spacing: 0.2em;
	line-height: 1em;
}
.ttl_greeting02_index{
	margin: 7px 0 0 38px;
	font-size: 166.666%;
	letter-spacing: 0.1em;
	line-height: 1em;
}
.area_greeting01_index{
	position: relative;
	height: 860px;
}
.area_greeting01_index:after{
	content: "";
	width: 100%;
	height: 700px;
	background: #f6f6f6;
	position: absolute;
	top:50px;
	left: 0;
	z-index: -1;
}
.area_greeting01_index .inner1340 .wrap_box_greeting01_index{
	position: relative;
}
.box_greeting01_index{
	width: calc(100% - 500px);
	max-width: 769px;
	height: 860px;
	margin-top: 0;
	margin-right: auto;
	position: absolute;
	top: 0;
	left: 0;
}
.ttl_greeting03_index{
	font-size: 333.333%;
	letter-spacing: 0.1em;
	line-height: 166.666%;
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	border-right: solid 1px #000000;
}
.ttl_greeting03_index span{
	font-size: 133.333%;
}
.box_greeting02_index{
	background: #ffffff;
	width: 140px;
	height: 300px;
	position: absolute;
	top: 370px;
	left: 0;
}
.img_greeting_index{
	width: calc(580/769*100%);
	height: 860px;
	margin-left: 100px;
	position: relative;
}
.img_greeting_index img{
	position: absolute;
	bottom: 0;
}
.txt_greeting01_index{
	font-size: 111.111%;
	position: absolute;
	top: 33px;
	right: 24px;
}
.txt_greeting02_index{
	font-size: 222.222%;
	letter-spacing: 0.1em;
	position: absolute;
	top: 32px;
	left: 9px;
}
.txt_greeting02_index span{
	font-size: 60%;
	display: inline-block;
	margin-bottom: 16px;
}
.area_greeting01_index .inner1240{
	position: relative;
}
.box_greeting03_index{
	width: 460px;
	padding-top: 136px;
	margin-left: auto;
}
.box_greeting03_index .txt_l{
	margin-bottom: 40px;
}
@media(min-width: 961px) and (max-width:1440px) {
	.ttl_greeting03_index{
		font-size: calc(60/1440*100vw);
		top: auto;
		bottom: calc(260/1440*100vw);
	}
	.img_greeting_index{
		margin-left: calc(100/1440*100vw);
	}
}
@media(min-width: 961px) and (max-width:1150px) {
	.ttl_greeting03_index{
		font-size: calc(60/1440*100vw);
		top: auto;
		bottom: calc(300/1440*100vw);
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.index_greeting{
		position: relative;
		padding-top: 143px;
	}
	.ttl_greeting01_index{
		margin: 0 0 0 83px;
		font-size: 388.888%;
		letter-spacing: 0.2em;
		line-height: 1em;
	}
	.ttl_greeting02_index{
		margin: 7px 0 0 38px;
		font-size: 166.666%;
		letter-spacing: 0.1em;
		line-height: 1em;
	}
	.area_greeting01_index{
		position: relative;
		height: auto;
	}
	.area_greeting01_index:after{
		content: "";
		width: 100%;
		height: 810px;
		background: #f6f6f6;
		position: absolute;
		top:50px;
		left: 0;
		z-index: -1;
	}
	.area_greeting01_index .inner1340 .wrap_box_greeting01_index{
		position: relative;
	}
	.box_greeting01_index{
		width: 100%;
		max-width: 769px;
		height: 860px;
		margin-top: 0;
		margin-right: auto;
		margin-left: auto;
		position: static;
		top: 0;
		left: 0;
	}
	.ttl_greeting03_index{
		font-size: 333.333%;
		letter-spacing: 0.1em;
		line-height: 166.666%;
		position: absolute;
		top: 0;
		right: 0;
		display: inline-block;
		border-right: solid 1px #000000;
	}
	.ttl_greeting03_index span{
		font-size: 133.333%;
	}
	.box_greeting02_index{
		background: #ffffff;
		width: 140px;
		height: 300px;
		position: absolute;
		top: 370px;
		left: 0;
	}
	.img_greeting_index{
		width: 580px;
		height: 860px;
		margin-left: auto;
		margin-right: auto;
		position: relative;
	}
	.img_greeting_index img{
		position: absolute;
		bottom: 0;
	}
	.txt_greeting01_index{
		font-size: 111.111%;
		position: absolute;
		top: 33px;
		right: 24px;
	}
	.txt_greeting02_index{
		font-size: 222.222%;
		letter-spacing: 0.1em;
		position: absolute;
		top: 32px;
		left: 9px;
	}
	.txt_greeting02_index span{
		font-size: 60%;
		display: inline-block;
		margin-bottom: 16px;
	}
	.area_greeting01_index .inner1240{
		position: relative;
	}
	.box_greeting03_index{
		width: 100%;
		padding-top: 50px;
		margin-bottom: 100px;
		margin-left: auto;
	}
	.box_greeting03_index .txt_l{
		margin-bottom: 40px;
	}
	.box_greeting03_index .btn_default01{
		margin-left: auto;
		margin-right: auto;
	}
}
@media(max-width: 767px) {
	.index_greeting{
		position: relative;
		padding-top: calc(143/750*100vw);
	}
	.ttl_greeting01_index{
		margin: 0 0 0 calc(35/750*100vw);
		font-size: 218.75%;
		letter-spacing: 0.2em;
		line-height: 1em;
	}
	.ttl_greeting02_index{
		margin: calc(10/750*100vw) 0 0 calc(20/750*100vw);
		font-size: 93.25%;
		letter-spacing: 0.1em;
		line-height: 1em;
	}
	.area_greeting01_index{
		position: relative;
		height: auto;
	}
	.area_greeting01_index:after{
		content: "";
		width: 100%;
		height: calc(602/750*100vw);
		background: #f6f6f6;
		position: absolute;
		top:calc(85/750*100vw);
		left: 0;
		z-index: -1;
	}
	.area_greeting01_index .inner1340 .wrap_box_greeting01_index{
		position: relative;
	}
	.box_greeting01_index{
		width: calc(646/750*100vw);
		max-width: calc(646/750*100vw);
		height: calc(688/750*100vw);
		margin-top: calc(50/750*100vw);
		margin-right: auto;
		margin-left: auto;
		position: relative;
		top: 0;
		left: 0;
	}
	.ttl_greeting03_index{
		font-size: 187.5%;
		letter-spacing: 0.1em;
		line-height: 1.8em;
		position: absolute;
		top: calc(32/750*100vw);
		right: calc(-5/750*100vw);
		display: inline-block;
		border-right: solid 1px #000000;
	}
	.ttl_greeting03_index span{
		font-size: 133.333%;
	}
	.box_greeting02_index{
		background: #ffffff;
		width: calc(172/750*100vw);
		height: calc(322/750*100vw);
		position: absolute;
		top: calc(323/750*100vw);
		left: 0;
	}
	.img_greeting_index{
		width: calc(464/750*100vw);
		height: calc(688/750*100vw);
		margin-left: calc(72/750*100vw);
		margin-right: auto;
		position: relative;
	}
	.img_greeting_index img{
		position: absolute;
		bottom: 0;
	}
	.txt_greeting01_index{
		font-size: 81.25%;
		letter-spacing: 0.1em;
		position: absolute;
		top: calc(40/750*100vw);
		right: calc(27/750*100vw);
	}
	.txt_greeting02_index{
		font-size: 125%;
		letter-spacing: 0.1em;
		position: absolute;
		top: calc(38/750*100vw);
		left: calc(24/750*100vw);
	}
	.txt_greeting02_index span{
		font-size: 75%;
		display: inline-block;
		margin-bottom: calc(8/750*100vw);
	}
	.area_greeting01_index .inner1240{
		position: relative;
	}
	.box_greeting03_index{
		width: calc(646/750*100vw);
		padding-top: calc(59/750*100vw);
		margin-bottom: calc(100/750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.box_greeting03_index .txt_l{
		margin-bottom: calc(45/750*100vw);
	}
	.box_greeting03_index .btn_default01{
		margin-left: auto;
		margin-right: auto;
	}
}

/* 採用情報+TOPICS index_recruit_blog
------------------------------------------------------------------*/
.col_recruit_index{
	width: calc(1040/1920*100%);
	background: url(images/page/pattern04.jpg);
	padding: calc(80/1920*100vw) calc(80/1920*100%) calc(80/1920*100vw) 0;
}
.col_topics_index{
	width: calc(880/1920*100%);
	padding:calc(77/1920*100vw) calc(80/1920*100vw) calc(80/1920*100vw);
}
.box_recruit_index{
	padding: calc(260/1920*100vw) calc(50/960*100%) calc(30/1920*100vw);
	width: 380px;
	position: relative;
}
.ttl_recruit_index{
	font-size: calc(50/1920*100vw);
	letter-spacing: 0.1em;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.icn_recruit_index{
	position: absolute;
	width: calc(12/1920*100vw);
	height: calc(81/1920*100vw);
	top: calc(128/1920*100vw);
	right: calc(50% + 45px);
}
.box_recruit_index .txt_l{
	margin-bottom: 35px;
}
.box_recruit_index .btn_default01{
	max-width: 240px;
}
.img_recruit_index{
	width: calc(100% - 380px);
}
.ttl_topics_index{
	margin-bottom: 11px;
}
.ttl_topics_index .en{
	display: block;
	font-size: 200%;
	letter-spacing: 0.1em;
}
.ttl_topics_index .ja{
	display: block;
	letter-spacing: 0.05em;
	padding-top: 24px;
	margin-left: 15px;
}
.col_topics_index .btn_default01{
	width: 100px;
	margin-top: 22px;
}
.col_topics_index .btn_default01 a {
	font-size: 88.888%;
	line-height: 1em;
	padding: 1px 3% 9px;
}
.col_topics_index .btn_default01.border01 a:after {
	width: 10px;
}
#content_home .blog_archive{
	border-top: solid 1px #000000;
	padding: 20px 0;
}
#content_home .blog_archive:last-child{
	border-bottom: solid 1px #000000;
}
@media(min-width: 961px) and (max-width:1240px) {
	.col_recruit_index{
		width: 100%;
		background: url(images/page/pattern04.jpg);
		padding: 80px 0;
	}
	.col_topics_index{
		width: 100%;
		padding:77px 80px 80px;
	}
	.col_recruit_index .flex{
		width: 90%;
		max-width: 960px;
		margin: auto;
	}
	.box_recruit_index{
		padding: 260px 50px 30px;
		width: 380px;
		position: relative;
	}
	.ttl_recruit_index{
		font-size: 277.777%;
		letter-spacing: 0.1em;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.icn_recruit_index{
		position: absolute;
		width: 12px;
		height: 81px;
		top: 128px;
		right: calc(50% + 45px);
	}
	.box_recruit_index .txt_l{
		margin-bottom: 35px;
	}
	.box_recruit_index .btn_default01{
		max-width: 240px;
	}
	.img_recruit_index{
		width: calc(100% - 380px);
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.col_recruit_index{
		width: 100%;
		background: url(images/page/pattern04.jpg);
		padding: 80px 0;
	}
	.col_topics_index{
		width: 100%;
		padding:77px 50px 80px;
	}
	.col_recruit_index .flex{
		display: block;
		width: 90%;
		max-width: 960px;
		margin: auto;
	}
	.box_recruit_index{
		padding: 50px 0 0;
		width: 100%;
		position: relative;
	}
	.ttl_recruit_index{
		font-size: 277.777%;
		letter-spacing: 0.1em;
		position: static;
		transform: translateX(0);
		width: 100%;
		margin: 0 auto;
	}
	.ttl_recruit02_index {
		font-size: 166.666%;
		letter-spacing: 0.1em;
		width: 100%;
		margin:0 auto 30px;
	}
	.icn_recruit_index{
		position: absolute;
		width: 12px;
		height: 81px;
		top: 128px;
		right: calc(50% + 45px);
	}
	.box_recruit_index .txt_l{
		margin-bottom: 35px;
	}
	.box_recruit_index .btn_default01{
		max-width: 240px;
	}
	.img_recruit_index{
		width: 580px;
		margin: auto;
	}
}
@media(max-width: 767px) {
	.col_recruit_index{
		width: 100%;
		background: url(images/page/pattern04.jpg);
		padding: calc(63/750*100vw) 0 calc(100/750*100vw);
	}
	.col_topics_index{
		width: 100%;
		padding:calc(77/750*100vw) calc(24/750*100vw) calc(100/750*100vw);
	}
	.col_recruit_index .flex{
		display: block;
		width: calc(646/750*100vw);
		max-width: calc(646/750*100vw);
		margin: auto;
	}
	.box_recruit_index{
		padding: calc(39/750*100vw) 0 0;
		width: 100%;
		position: relative;
	}
	.ttl_recruit_index{
		font-size: 187.5%;
		letter-spacing: 0.1em;
		position: static;
		transform: translateX(0);
		width: 100%;
		margin: 0 auto;
	}
	.ttl_recruit02_index {
		font-size: 93.75%;
		letter-spacing: 0.1em;
		width: 100%;
		margin:0 auto calc(41/750*100vw);
	}
	.box_recruit_index .txt_l{
		margin-bottom: calc(43/750*100vw);
	}
	.box_recruit_index .btn_default01{
		max-width: calc(560/750*100vw);
	}
	.img_recruit_index{
		width: calc(580/750*100vw);
		margin: auto;
	}
	.ttl_topics_index{
		margin-bottom: calc(22/750*100vw);
	}
	.ttl_topics_index .en{
		display: block;
		font-size: 156.25%;
		letter-spacing: 0.1em;
		margin-left: calc(25/750*100vw);
	}
	.ttl_topics_index .ja{
		display: block;
		letter-spacing: 0.05em;
		padding-top: calc(24/750*100vw);
		margin-left: calc(13/750*100vw);
	}
	.col_topics_index .btn_default01{
		width: calc(200/750*100vw);
		margin-top: calc(20/750*100vw);
	}
	.col_topics_index .btn_default01 a {
		font-size: 100%;
		line-height: 1em;
		padding: calc(5/750*100vw) 3% calc(19/750*100vw);
	}
	.col_topics_index .btn_default01.border01 a:after {
		width: calc(20/750*100vw);
	}
	#content_home .thmb {
		width: calc(180/750*100vw);
	}
	#content_home .txt_post {
		width: calc(488/750*100vw);
	}
	#content_home .txt_post .date {
		font-size: 75%;
		letter-spacing: 0.1em;
	}
	#content_home .txt_post .txt_excerpt {
		line-height: 156.25%;
		font-size: 100%;
	}
	#content_home .blog_archive{
		border-top: solid 1px #000000;
		padding: calc(40/750*100vw) 0;
	}
	#content_home .blog_archive:last-child{
		border-bottom: solid 1px #000000;
	}
}

/* 新着情報 index_news
------------------------------------------------------------------*/
.index_news{
	padding: 78px 0;
}
.ttl_news_index{
	margin-bottom: 53px;
}
.ttl_news_index .ja{
	display: block;
	font-size: 155.555%;
	letter-spacing: 0.2em;
	line-height: 1em;
}
.ttl_news_index .en{
	display: block;
	font-size: 77.777%;
	letter-spacing: 0.2em;
	line-height: 1em;
	padding: 8px 0 0 24px;
}
/* ※パーフェクトスクロールバー用基本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) {
	margin-bottom: 23px;
}
.index_news li dt {
	width: 136px;
}
.index_news li dd {
	width: calc(100% - 136px);
}
.index_news li dd a {
	color: #dbd371; /* コーダーさんへに記載されている★標準テキスト：リンク色に変更*/
}
/* パーフェクトスクロールバー */
.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background: #000000 !important;
	right: 0px !important;
	width: 4px !important;
}
.ps-container > .ps-scrollbar-y-rail {
	background: none !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{
		padding: calc(95/750*100vw) calc(52/750*100vw) calc(115/750*100vw);
	}
	.index_news .inner1240{
		padding: 0;
	}
	.ttl_news_index{
		margin-bottom: calc(60/750*100vw);
	}
	.ttl_news_index .ja{
		display: block;
		font-size: 156.25%;
		letter-spacing: 0.2em;
		line-height: 1em;
	}
	.ttl_news_index .en{
		display: block;
		font-size: 100%;
		letter-spacing: 0.2em;
		line-height: 1em;
		padding: calc(9/750*100vw) 0 0 calc(7/750*100vw);
	}
	.index_news ul {
		max-height: calc(500 / 750 * 100vw);
	}
	.index_news li:not(:last-of-type) {
		margin-bottom: calc(40/750*100vw);
	}
	.index_news li dl {
		display: block;
	}
	.index_news li dt {
		width: 100%;
		letter-spacing: 0.1em;
		margin-bottom: calc(12/750*100vw);
	}
	.index_news li dd {
		width: 100%;
		line-height: 1.5625;
	}
}


/* コンテンツ名 class
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:960px) {
	
}
@media(max-width: 767px) {
	
}


/* フッター footer
------------------------------------------------------------------*/
.main_foot {
	padding: 80px 0 60px;
}
.row_foot01 > .col_l {
	width: 52%;
	max-width: 640px;
}
.logo_foot{
	margin-bottom: 20px;
}
.address_foot{
	font-weight: 300;
	margin-bottom: 22px;
}
.address_foot span{
	display: inline-block;
}
.tel_foot{
	width: 240px;
	height: 33px;
}
.tel_foot a{
	display: block;
	font-size: 173.333%;
	background: url(images/page/icn_tel_foot.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	line-height: 26px;
	letter-spacing: 0.1em;
	padding-left: 24px;
	width: 100%;
	height: 100%;
	white-space: nowrap;
}
.row_foot01 > .col_r {
	width: 45%;
	max-width: 500px;
}
.box_access_foot{
	padding: 20px 27px 20px 30px;
	margin-bottom: 80px;
}
.txt_access_foot01{
	font-size: 111.111%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	background: url(images/page/icn_access_foot01.svg);
	background-repeat: no-repeat;
	background-position: left 5px;
	background-size: 61px 61px;
	padding-left: 80px;
	height: 71px;
	margin-top: -5px;
	white-space: nowrap;
}
.txt_access_foot02{
	font-size: 111.111%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	background: url(images/page/icn_access_foot02.svg);
	background-repeat: no-repeat;
	background-position: left 5px;
	background-size: 61px 61px;
	padding-left: 80px;
	height: 71px;
	margin-top: -5px;
	white-space: nowrap;
}
.box_link_foot{
	padding: 55px 0 29px;
}
.ttl_link_foot{
	font-size: 133.333%;
	line-height: 1em;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}
.area_link_list_foot:not(:last-child){
	margin-bottom: 40px;
}
.area_link_list_foot li{
	width: 206px;
	font-size: 88.888%;
	font-weight: 300;
	margin-bottom: 8px;
}
.area_link_list_foot li a{
	position: relative;
	padding-left: 14px;
}
.area_link_list_foot li a:after {
	content: "";
	position: absolute;
	right: auto;
	left: 0;
	top: 50%;
	transform: translateY(calc(-50% + 2px));
	width: 0;
	height: 0;
	border-left: 7px solid #000000;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	margin: auto;
}
.box_sns_foot{
	width: 371px;
	padding: 25px 0 ;
	margin: auto;
}
.btn_fb_foot a{
	display: block;
	background: url(images/page/icn_fb.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	padding-left: 50px;
	height: 30px;
	line-height: 26px;
	font-size: 133.333%;
	letter-spacing: 0.1em;
	white-space: nowrap;
}
.btn_yt_foot a{
	display: block;
	background: url(images/page/icn_yt.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	padding-left: 50px;
	height: 30px;
	line-height: 30px;
	font-size: 133.333%;
	letter-spacing: 0.1em;
	white-space: nowrap;
}
.pagetop {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 1000;
}
.copyright {
	font-size: 88.888%;
	font-weight: 300;
	padding: 23px 0 25px;
}
@media(min-width: 961px) and (max-width:1070px) {
	.txt_access_foot01{
		background-position: left 0;
		font-size: 100%;
		height: 61px;
		margin-top: 0;
	}
	.txt_access_foot02{
		background-position: left 0;
		font-size: 100%;
		height: 61px;
		margin-top: 0;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 100%;
		text-align: center;
		margin: 0 auto;
	}
	.tel_foot{
		width: 240px;
		height: 33px;
		margin: 0 auto 30px;
	}
	.row_foot01 > .col_r {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	.txt_access_foot01{
		width: 480px;
		margin:0 auto 20px;
	}
	.txt_access_foot02{
		width: 480px;
		margin: auto;
	}
}
@media(max-width: 767px) {
	.main_foot {
		padding: calc(100/750*100vw) 0 calc(35/750*100vw);
	}
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 100%;
		max-width: 100%;
		text-align: center;
	}
	.logo_foot{
		width: calc(460/750*100vw);
		height: calc(99/750*100vw);
		margin: 0 auto calc(58/750*100vw);
	}
	.address_foot{
		font-weight: 300;
		letter-spacing: 0;
		line-height: 2em;
		margin-bottom: calc(45/750*100vw);
	}
	.address_foot span{
		display: inline-block;
	}
	.tel_foot{
		width: calc(390/750*100vw);
		height: calc(49.5/750*100vw);
		margin: 0 auto calc(80/750*100vw);
	}
	.tel_foot a{
		display: block;
		font-size: 156.25%;
		background: url(images/page/icn_tel_foot.svg);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: contain;
		line-height: calc(40/750*100vw);
		letter-spacing: 0.1em;
		padding-left: calc(49/750*100vw);
		width: 100%;
		height: 100%;
		white-space: nowrap;
	}
	.row_foot01 > .col_r {
		width: calc(702/750*100%);
		max-width: 100%;
		margin: 0 auto;
	}
	.box_access_foot{
		padding: calc(40/750*100vw);
		margin-bottom: calc(80/750*100vw);
	}
	.txt_access_foot01{
		font-size: 87.5%;
		letter-spacing: 0;
		line-height: 164.285%;
		background: url(images/page/icn_access_foot01.svg);
		background-repeat: no-repeat;
		background-position: left calc(6/750*100vw);
		background-size: calc(84/750*100vw) calc(84/750*100vw);
		padding-left: calc(114/750*100vw);
		height: calc(90/750*100vw);
		margin-top: calc(-6/750*100vw);
		margin-bottom: calc(40/750*100vw);
		white-space: nowrap;
	}
	.txt_access_foot02{
		font-size: 87.5%;
		letter-spacing: 0;
		line-height: 164.285%;
		background: url(images/page/icn_access_foot02.svg);
		background-repeat: no-repeat;
		background-position: left calc(9/750*100vw);
		background-size: calc(84/750*100vw) calc(84/750*100vw);
		padding-left: calc(114/750*100vw);
		height: calc(93/750*100vw);
		margin-top: calc(-9/750*100vw);
		white-space: nowrap;
	}
	.box_link_foot{
		padding: calc(91/750*100vw) calc(28/750*100vw) calc(81/750*100vw);
	}
	.ttl_link_foot{
		font-size: 150%;
		line-height: 1em;
		letter-spacing: 0.1em;
		margin-bottom: calc(40/750*100vw);
	}
	.area_link_list_foot:not(:last-child){
		margin-bottom: calc(73/750*100vw);
	}
	.area_link_list_foot li{
		width: calc(302/646*100%);
		font-size: 87.5%;
		letter-spacing: 0;
		font-weight: 300;
		margin-bottom: calc(4/750*100vw);
		margin-right: calc(42/646*100%);
	}
	.area_link_list_foot li:nth-child(2n){
		margin-right: 0;
	}
	.area_link_list_foot li a{
		position: relative;
		padding-left: calc(17/750*100vw);
	}
	.area_link_list_foot li a:after {
		content: "";
		position: absolute;
		right: auto;
		left: 0;
		top: 50%;
		transform: translateY(calc(-50% + (2/750*100vw)));
		width: 0;
		height: 0;
		border-left: calc(12/750*100vw) solid #000000;
		border-top: calc(6.5/750*100vw) solid transparent;
		border-bottom: calc(6.5/750*100vw) solid transparent;
		margin: auto;
	}
	.box_sns_foot{
		width: calc(455/750*100vw);
		padding: calc(38/750*100vw) 0 ;
		margin: auto;
	}
	.btn_fb_foot a{
		display: block;
		background: url(images/page/icn_fb.svg);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: calc(44/750*100vw) calc(44/750*100vw);
		padding-left: calc(65/750*100vw);
		height: calc(44/750*100vw);
		line-height: calc(44/750*100vw);
		font-size: 93.75%;
		letter-spacing: 0.1em;
		white-space: nowrap;
	}
	.btn_yt_foot a{
		display: block;
		background: url(images/page/icn_yt.svg);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: calc(44/750*100vw) calc(44/750*100vw);
		padding-left: calc(65/750*100vw);
		height: calc(44/750*100vw);
		line-height: calc(44/750*100vw);
		font-size: 93.75%;
		letter-spacing: 0.1em;
		white-space: nowrap;
	}
	.copyright {
		font-size: 87.5%;
		letter-spacing: 0.1em;
		padding: 4vw 0 20vw;
	}
	.pagetop {
		display: none!important;
	}
	.fix {
		position: fixed;
		width: 100%;
		left: 0;
		bottom: 0;
		z-index: 9;
	}
	.fix_tel {
		width: calc(320/750*100%);
	}
	.fix_web {
		width: calc(310/750*100%);
	}
	.pagetop_sp {
		width: calc(120/750*100%);
	}
	.fix_tel a, .pagetop_sp a {
		display: block;
	}
}

/* 画像拡大用　luminos
------------------------------------------------------------------*/

 .lum-lightbox { 
	background-color: rgba(255,255,255,.9); 
} 
.lum-close-button:after, .lum-close-button:before { 
	background-color: rgb(39,184,194); 
} 
.lum-gallery-button { 
	display: none !important; 
} 
a.zoom{ 
	position: relative; 
	display: block; 
} 
a.zoom:before { 
	content: ""; 
	position: absolute; 
	width: 100%; 
	height: 4.27vw; 
	left: 0; 
	right: 0; 
	top: 0; 
	bottom: 0; 
	margin: auto; 
	letter-spacing: .1em; 
	line-height: 4.27vw; 
	text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 15px #fff, 0 0 15px #fff; 
	text-align: center; 
} 
a.zoom::after{ 
	content: ''; 
	position: absolute; 
	top: 0; 
	right: 0; 
	display: block; 
	width: 1.5em; 
	height: 1.5em; 
	background-color: rgba(0,0,0,0.5); 
	background-image: url("images/page/icn_zoom.svg"); 
	background-size: 1em 1em; 
	background-position: center center; 
	background-repeat: no-repeat; 
} 
.lum-lightbox.lum-open { 
	z-index: 10; 
}  

.lum-lightbox-inner img { 
	max-width: calc(1000 / 750*100vw); 
} 
@media(min-width: 768px) and (max-width:1099px){
	.lum-lightbox-image-wrapper { 
		overflow-x: scroll; 
	} 
}
@media(max-width: 767px){
	a.zoom:before {
		content: "タップで拡大します"; 
	}
	.lum-lightbox-image-wrapper { 
		overflow-x: scroll; 
	} 
}
/* コピペ用 copy&paste
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:960px) {

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

}
