@charset "UTF-8";

html {
	font-size: 10px;
	line-height: 1.6;
	letter-spacing: 1px;
	overflow-x: hidden;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #333;
}

body{
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	background: #fff;
	position: relative;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

.grecaptcha-badge { visibility: hidden; }

#wrapper a:link      { text-decoration: none; color: #018c8f; }
#wrapper a:visited   { text-decoration: none; color: #018c8f; }
#wrapper a:hover     { text-decoration: none; }
#wrapper a:active    { text-decoration: none; }

a[href^="tel:"] {
	pointer-events: none;
}

a,:focus {
	outline: none;
}

::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

.img img {
	width: 100%;
	height: auto;
}

.tb   { display: none!important;}
.tbsp { display: none!important;}
.sp   { display: none!important;}

.pc   { display: inline-block!important;}
.pctb { display: inline-block!important;}
.pcsp { display: inline-block!important;}

.opacity a:hover,
.opacity input:hover {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-moz-opacity: 0.60;
	-khtml-opacity: 0.60;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none!important;
}

/*======================================================
  common
======================================================*/

.grLnk a:link,
.grLnk a:visited {
	color: #018c8f!important;
	text-decoration: none!important;
}

.blLnk a:link,
.blLnk a:visited {
	color: #13284e!important;
	text-decoration: none!important;
}

.wtLnk a:link,
.wtLnk a:visited {
	color: #fff!important;
	text-decoration: none!important;
}

.bkLnk a:link,
.bkLnk a:visited {
	color: #333!important;
	text-decoration: none!important;
}

.wtTxt {
	color: #fff;
}

.bkTxt {
	color: #333;
}

.grTxt {
	color: #018c8f;
}

.orTxt {
	color: #f4a600;
}

.cntWrp {
	max-width: 1200px;
	margin: 0 auto;
}

.cntMinWrp {
	max-width: 1000px;
	margin: 0 auto;
}

.cntTxt {
	font-weight: 400;
	font-size: 1.6rem;
	line-height: 1.8;
}

.stgTxt {
	font-weight: 700;
	font-size: 1.8rem;
	color: #018c8f;
}

.idxCntTtlBox {
	text-align: center;
	margin: 0 0 40px;
}

.idxCntTtlEn {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1;
	color: #018c8f;
	margin: 0 0 10px;
}

.idxCntTtl {
	font-weight: 700;
	font-size: 3.6rem;
	line-height: 1.3;
	white-space: nowrap;
}

.capTxt {
	position: relative;
	display: inline-block;
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #727272;
	margin: 15px 0 0;
	padding: 0 0 0 20px;
}

.capTxt:before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.capLst {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #777;
	margin: 15px 0 0;
}

.capLst li {
	position: relative;
	padding: 0 0 0 20px;
}

.capLst li:before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.capLst li:not(:last-child) {
	margin: 0 0 5px!important;
}

.capAtnLst {
	font-weight: 700;
	color: #e50000;
}

.rtBox {
	text-align: right;
	margin: 30px 0 0;
}

.cntMinBtn a {
	position: relative;
	display: inline-block;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.3;
	padding: 0 25px 0 0;
}

.cntMinBtn a:before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: calc(100% - 25px);
	height: 1px;
	background: #b8b8b8;
}

.cntMinBtn a:after {
	content: "";
	position: absolute;
	top: calc(50% - 9px);
	right: 0;
	width: 18px;
	height: 18px;
	background: url(../images/common/arw_rt_wt.png) center no-repeat #018c8f;
	background-size: 10px auto;
	border-radius: 50%;
}

.blMinBtn a:after {
	background: url(../images/common/arw_rt_wt.png) center no-repeat #1a2e5a;
	background-size: 10px auto;
}

.wtMinBtn a:before {
	background: #96c3c4;
}

.wtMinBtn a:after {
	background: url(../images/common/arw_rt_gr.png) center no-repeat #fff;
	background-size: 10px auto;
}

.cntBtn {
	text-align: center;
	max-width: 320px;
	width: 100%;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.2;
	letter-spacing: -0.005em;
	margin: 50px auto 0;
}

.cntBtn a {
	display: block;
	padding: 22px;
	background: #018c8f;
	border-radius: 6px;
}

.cntBtnBl a {
	background: #13274c;
}

.cntBtn span {
	position: relative;
	padding: 0 28px 0 0;
	z-index: 1;
}

.cntBtn span:after {
	content: "";
	position: absolute;
	top: calc(50% - 9px);
	right: 0;
	width: 18px;
	height: 18px;
	background: url(../images/common/arw_rt_gr.png) center no-repeat #fff;
	background-size: 10px auto;
	border-radius: 50%;
	z-index: 2;
}

.cntBtnBl span:after {
	background: url(../images/common/arw_rt_bl.png) center no-repeat #fff;
	background-size: 10px auto;
}

@media screen and (max-width:767px) {
	.cntTxt {
		font-size: 1.5rem;
		line-height: 1.6;
	}

	.stgTxt {
		font-size: 1.7rem;
	}
	
	.idxCntTtlBox {
		margin: 0 0 20px;
	}

	.idxCntTtlEn {
		font-size: 1.2rem;
		margin: 0 0 2px;
	}

	.idxCntTtl {
		font-size: 2.6rem;
	}
	
	.capTxt {
		font-size: 1.4rem;
		margin: 10px 0 0;
	}

	.capLst {
		font-size: 1.4rem;
		margin: 10px 0 0;
	}

	.capLst li:not(:last-child) {
		margin: 0 0 3px!important;
	}
	
	.rtBox {
		margin: 15px 0 0;
	}

	.cntMinBtn a {
		font-size: 1.4rem;
		letter-spacing: -0.005em;
	}

	.cntMinBtn a:before {
		width: calc(100% - 20px);
	}
	
	.cntBtn {
		max-width: 260px;
		font-size: 1.5rem;
		margin: 20px auto 0;
	}

	.cntBtn a {
		padding: 15px;
		border-radius: 4px;
	}

	.cntBtn span {
		padding: 0 26px 0 0;
	}

	.cntBtn span:after {
		top: calc(50% - 8px);
		width: 16px;
		height: 16px;
		background-size: 8px auto;
	}

	.cntBtnBl span:after {
		background-size: 8px auto;
	}
}

/*======================================================
  header
======================================================*/

header {
	width: 100%;
	height: 155px;
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	background: #fff;
	z-index: 100;
}

header.chg {
	border-bottom: solid 1px #dfdfdf;
}

.hdrBox {
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 30px;
}

.hdrLgBox {
	display: flex;
	align-items: center;
}

.hdrLg {
	max-width: 365px;
}

.hdrCntBox {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.hdrTelBox {
	display: flex;
	align-items: center;
}

.hdrTel {
	order: 2;
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1;
	letter-spacing: -0.005em;
	margin: 0 0 0 15px;
	padding: 0 0 0 28px;
	background: url(../images/common/icn_tel_gr.png) left bottom no-repeat;
	background-size: 25px auto;
}

.hdrTel [data-ruby] {
	position: relative;
}

.hdrTel [data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: 0;
	left: 2px;
	right: 0;
	margin: auto;
	font-weight: 400;
	font-size: 1.1rem;
	letter-spacing: 0.40rem;
}

.hdrTxt {
	order: 1;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.3;
	color: #777;
}

.hdrNav {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.3;
}

.hdrNav li {
	margin: 0 0 0 15px;
}

.hdrNav a {
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 7.5px;
	box-sizing: border-box;
	border-radius: 5px;
}

.hdrNav li:nth-child(1) a {
	background: #f4a600;
}

.hdrNav li:nth-child(2) a {
	background: #649dcd;
}

.hdrNav li:nth-child(1) span {
	padding: 0 0 0 25px;
	background: url(../images/common/icn_mail_wt.png) left no-repeat;
	background-size: 20px auto;
}

.hdrNav img {
	width: auto;
	height: 40px;
}

@media screen and (max-width:1300px) {
	.hdrLg {
		max-width: 300px;
	}

	.hdrTelBox {
		display: block;
	}
	
	.hdrTxt {
		font-size: 1rem;
	}
	
	.hdrTxt br {
		display: none;
	}
	
	.hdrTel {
		margin: 0 0 3px;
	}
}

@media screen and (max-width:1040px) {
	header {
		height: 80px;
	}
	
	.hdrBox {
		height: 80px;
	}

	.hdrCntBox {
		display: none;
	}
}

@media screen and (max-width:767px) {
	header {
		height: 60px;
	}
	
	.hdrBox {
		height: 60px;
		padding: 0 15px;
	}
	
	.hdrLg {
		max-width: 182.5px;
	}
}

/* gNav */
.gNavBox {
	background: #018c8f;
}

.gNav {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	display: flex;
	align-items: center;
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1;
}

.gNav li {
	text-align: center;
	width: 16.666%;
	position: relative;
}

.gNav li:not(:last-child):after {
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	right: 0;
	width: 1px;
	height: 20px;
	background: rgba(255,255,255,0.35);
}

.gNav li a {
	display: block;
	line-height: 65px;
	transition: all 0.3s ease;
}

@media screen and (max-width:1200px) {
	.gNav {
		font-size: 1.6rem;
	}
}

@media screen and (max-width:1040px) {
	.gNav {
		display: none;
	}
}

/* mdlAra */
.mdlAra {
	display: none;
}

@media screen and (max-width:1040px) {
	.mdlAra {
		display: block;
	}

	.menu, .menu span {
		display: inline-block;
		-webkit-transition: all .2s;
		transition: all .2s;
		box-sizing: border-box;
	}

	.menu {
		position: fixed;
		top: 0;
		right: 0;
		width: 80px;
		height: 80px;
		background: #018c8f;
		z-index: 2000;
		cursor: pointer;
		transition: all 0.3s ease;
	}

	.menu span {
		width: 46px;
		height: 3px;
		position: absolute;
		left: 17px;
		background: #fff;
		z-index: 100;
	}

	button {
		border: none;
		background: none;
	}

	.menu span:nth-of-type(1) {
		top: 27px;
	}

	.menu span:nth-of-type(2) {
		top: 39px;
	}

	.menu span:nth-of-type(3) {
		top: 51px;
	}

	.menu.active span:nth-of-type(1) {
		-webkit-transform: translateY(12px) rotate(45deg);
		transform: translateY(12px) rotate(45deg);
	}

	.menu.active span:nth-of-type(2) {
		opacity: 0;
	}

	.menu.active span:nth-of-type(3) {
		-webkit-transform: translateY(-12px) rotate(-45deg);
		transform: translateY(-12px) rotate(-45deg);
	}

	.mdlNavWrp {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1000;
		width: 100% ;
		height: 100vh;
		opacity: 0;
		padding: 0 30px;
		overflow-y: scroll;
		box-sizing: border-box;
		background: #fff;
		background-size: cover;
		transition: all  0.3s ease;
		visibility: hidden;
	}

	.mdlNavWrp.active {
		right: 0;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		transform: translateX(0);
		visibility: visible;
	}
	
	.mdlLgBox {
		height: 80px;
		display: flex;
		align-items: center;
		margin: 0 0 30px;
	}
	
	.mdlNavBox {
		margin: 0 0 30px;
		overflow: hidden;
		border-radius: 10px;
	}
	
	.mdlNav {
		font-weight: 700;
		font-size: 2rem;
		line-height: 1;
	}

	.mdlNav li:not(:last-child) {
		border-bottom: solid 1px #dfdfdf;
	}
	
	.mdlNav li a {
		display: block;
		position: relative;
		padding: 25px 15px;
		background: #018c8f;
		z-index: 1;
	}
	
	.mdlNav li a:after {
		content: "";
		position: absolute;
		top: calc(50% - 15px);
		right: 15px;
		width: 30px;
		height: 30px;
		box-sizing: border-box;
		background: url(../images/common/arw_big_rt_gr.png) center no-repeat #fff;
		background-size: 10px auto;
		border-radius: 50%;
		z-index: 2;
	}
	
	.mdlInfBox {
		max-width: 500px;
		margin: 0 auto;
		padding: 10px;
		box-sizing: border-box;
		background: #f7f7f7;
		border-radius: 10px;
	}
	
	.mdlInfInr {
		padding: 15px;
		background: #fff;
		border-radius: 8px;
	}
	
	.mdlTelBox {
		text-align: center;
		margin: 0 0 15px;
	}
	
	.mdlSubNavBox .hdrNav {
		justify-content: center;
	}
	
	.mdlSubNavBox .hdrNav li {
		margin: 0 7.5px;
	}
}

@media screen and (max-width:767px) {
	.menu {
		width: 45px;
		height: 45px;
		top: 7.5px;
		right: 7.5px;
		border-radius: 3px;
	}

	.menu span {
		width: 30px;
		left: 8px;
	}

	.menu span:nth-of-type(1) {
		top: 13px;
	}

	.menu span:nth-of-type(2) {
		top: 22px;
	}

	.menu span:nth-of-type(3) {
		top: 31px;
	}

	.menu.active span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(45deg);
		transform: translateY(9px) rotate(45deg);
	}

	.menu.active span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(-45deg);
		transform: translateY(-9px) rotate(-45deg);
	}

	.mdlNavWrp {
		padding: 0 15px;
	}

	.mdlLgBox {
		height: 60px;
		margin: 0 0 20px;
	}
	
	.mdlNavBox {
		margin: 0 0 20px;
		border-radius: 8px;
	}
	
	.mdlNav {
		font-size: 1.6rem;
	}
	
	.mdlNav li a {
		padding: 15px;
	}
	
	.mdlNav li a:after {
		top: calc(50% - 9px);
		right: 10px;
		width: 18px;
		height: 18px;
		background-size: 10px auto;
	}
	
	.mdlInfBox {
		padding: 7.5px;
		border-radius: 8px;
	}
	
	.mdlInfInr {
		border-radius: 6px;
	}
	
	.mdlTelBox {
		text-align: center;
		margin: 0 0 10px;
	}
	
	.mdlSubNavBox .hdrNav {
		display: block;
	}
	
	.mdlSubNavBox .hdrNav li {
		margin: 0 0 10px;
	}
	
	.mdlSubNavBox .hdrNav li:last-child {
		margin: 0;
	}
}

/*======================================================
  mnAra
======================================================*/

.mnAra {
	height: 600px;
	position: relative;
	margin: 155px 0 0;
	background: #d1e8f0;
	z-index: 1;
}

.mnCtr {
	width: 100%;
	height: 600px;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 30px;
	box-sizing: border-box;
}

.mnWrp {
	max-width: 1200px;
	width: 100%;
	height: 600px;
	display: flex;
	align-items: center;
	position: relative;
	margin: 0 auto;
	box-sizing: border-box;
	z-index: 2;
}

.mnCth {
	max-width: 550px;
	position: relative;
	margin: 0 0 60px;
	z-index: 1;
}

.mnCth:before {
	content: "";
	position: absolute;
	top: -60px;
	left: -25px;
	width: 90px;
	height: 90px;
	background: url(../images/index/icn_dot_main.png) center no-repeat;
	background-size: 90px auto;
	z-index: -1;
}

.mnBnr {
	max-width: 300px;
	overflow: hidden;
	border: solid 1px #ffc5c5;
	border-radius: 8px;
}

.mnTimBox {
	position: absolute;
	bottom: 50px;
	right: 50px;
	padding: 10px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 15px;
}

.mnTimBox .timTbl {
	font-size: 1.8rem;
}

.mnTimBox .timTbl th,
.mnTimBox .timTbl td {
	padding: 15px;
}

@media screen and (max-width:1300px) {
	.mnTimBox {
		bottom: 30px;
		right: 0;
	}
	
	.mnCth {
		max-width: 500px;
	}
}

@media screen and (max-width:1040px) {
	.mnAra {
		margin: 80px 0 0;
	}
	
	.mnWrp {
		align-items: flex-start;
		padding: 80px 0 0;
	}

	.mnCth {
		max-width: 400px;
		margin: 0 0 20px;
	}
	
	.mnCth:before {
		top: -45px;
		left: -15px;
		width: 70px;
		height: 70px;
		background-size: 70px auto;
	}
	
	.mnBnr {
		max-width: 250px;
	}
	
	.mnTimBox {
		bottom: 30px;
		right: auto;
		left: 0;
	}
}

@media screen and (max-width:767px) {
	.mnAra {
		height: auto;
		position: relative;
		margin: 60px 0 0;
		background: #e7f1f3;
	}

	.mnCtr {
		height: 100%;
		padding: 0 15px;
	}

	.mnWrp {
		height: 100%;
		align-items: flex-end;
		justify-content: center;
	}

	.mnCth {
		display: none;
	}

	.mnBnr {
		max-width: 100%;
		margin: 0 auto 15px;
		border-radius: 6px;
	}

	.mnTimBox {
		width: calc(100% - 30px);
		position: relative;
		bottom: 0;
		right: 0;
		margin: 15px;
		padding: 7.5px;
		border-radius: 10px;
	}

	.mnTimBox .timTbl {
		font-size: 1.4rem;
	}
	
	.mnTimBox .timTbl th,
	.mnTimBox .timTbl td {
		padding: 7.5px 5px;
	}
}

/* slide */
.mnSldLst {
	height: 600px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.mnSldLst li {
	padding-bottom: 600px;
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: left 50% top 0;
}

.mnSld01 {
	background-image: url(https://www.naracon.jp/wp/wp-content/uploads/2026/05/sld_main_01-scaled.png);
}

.mnSld02 {
	background-image: url(https://www.naracon.jp/wp/wp-content/uploads/2026/05/sld_main_02-scaled.png);
}

@media screen and (max-width:767px) {
	.mnSldLst {
		position: relative;
		height: auto;
	}

	.mnSldLst li {
		padding-bottom: 0;
	}
}

/*======================================================
  content
======================================================*/

/* sldAra */
.sldAra {
	padding: 80px 0;
}

.sldNav {
	display: flex;
	margin: 0 -15px;
}

.sldNav li {
	margin: 0 15px;
}

.slick-slide {
	height: auto !important;
}

.sldImg {
	overflow: hidden;
	border-radius: 10px;
	margin: 0 0 15px;
}

.sldTtl {
	text-align: center;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
}

.slide-arrow {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	border: solid 1px #fff;
	border-radius: 50%;
	cursor: pointer;
	z-index: 100;
}

.slide-arrow:hover {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	text-decoration: none!important;
}

.prev-arrow {
	left: 50px;
	transform:rotate(180deg);
	background: url(../images/common/arw_big_rt_wt.png) center no-repeat rgba(1,140,143,0.9);
	background-size: 15px auto;
}

.next-arrow {
	right: 50px;
	background: url(../images/common/arw_big_rt_wt.png) center no-repeat rgba(1,140,143,0.9);
	background-size: 15px auto;
}

@media screen and (max-width:767px) {
	.sldAra {
		padding: 30px 0 0;
	}

	.sldNav {
		margin: 0 -5px;
	}

	.sldNav li {
		margin: 0 5px;
	}

	.sldImg {
		border-radius: 8px;
		margin: 0 0 10px;
	}

	.sldTtl {
		font-size: 1.5rem;
	}

	.slide-arrow {
		width: 40px;
		height: 40px;
	}

	.prev-arrow {
		left: 20px;
		background-size: 10px auto;
	}

	.next-arrow {
		right: 20px;
		background-size: 10px auto;
	}
}

.sldNav.is-static {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	gap: 30px;
}

.sldNav.is-static li {
	margin: 0;
	width: calc((100% - 30px) / 2);
	max-width: 300px;
}

@media screen and (max-width:767px) {
	.sldNav.is-static {
		gap: 20px 10px;
	}

	.sldNav.is-static li {
		width: calc((100% - 10px) / 2);
		max-width: none;
	}
}

/* idxAbtAra */
.idxAbtAra {
	min-height: 800px;
	padding: 100px 30px 0;
	box-sizing: border-box;
	background: url(../images/index/bg_about.png) left calc(50% - 400px) top 0 no-repeat;
	background-size: 800px auto;
}

.idxAbtWrp {
	max-width: 1200px;
	display: flex;
	justify-content: flex-end;
	margin: 0 auto;
}

.idxAbtBox {
	max-width: 570px;
}

.idxAbtTtlBox {
	text-align: left;
	margin: 0 0 40px;
}

.idxAbtCth {
	margin: 0 0 30px;
}

.idxAbtBox .cntTxt {
	margin: 0 0 50px;
}

.ctaNav {
	text-align: center;
	display: flex;
	align-items: center;
	
}

.ctaNav li {
	margin: 0 20px 0 0;
}

.ctaNav a {
	height: 65px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px 25px;
	box-sizing: border-box;
	border-radius: 5px;
}

.ctaNav li:nth-child(1) a {
	background: #018c8f;
}

.ctaTel {
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 3rem;
	line-height: 1;
	letter-spacing: -0.005em;
	padding: 0 0 0 23px;
	background: url(../images/common/icn_tel_wt.png) left bottom no-repeat;
	background-size: 20px auto;
}

.ctaTel [data-ruby] {
	position: relative;
}

.ctaTel [data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: 0;
	left: 2px;
	right: 0;
	margin: auto;
	font-weight: 400;
	font-size: 0.9rem;
	letter-spacing: 0.35rem;
}

.ctaNav li:nth-child(2) a {
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.3;
	background: #f4a600;
}

.ctaNav li:nth-child(2) span {
	padding: 0 0 0 25px;
	background: url(../images/common/icn_mail_wt.png) left no-repeat;
	background-size: 20px auto;
}

@media screen and (max-width:1400px) {
	.idxAbtAra {
		background: url(../images/index/bg_about.png) left calc(50% - 280px) top 0 no-repeat;
		background-size: 600px auto;
	}
	
	.idxAbtBox {
		max-width: 500px;
	}
	
	.ctaNav {
		justify-content: space-between;
		margin: 0;
	}

	.ctaNav li {
		margin: 0;
	}
	
}

@media screen and (max-width:1040px) {
	.idxAbtAra {
		min-height: auto;
		padding: 50px 30px 570px;
		background: url(../images/index/bg_about.png) left 50% bottom 0 no-repeat;
		background-size: 600px auto;
	}
	
	.idxAbtWrp {
		justify-content: center;
	}

	.idxAbtBox {
		max-width: 100%;
	}
	
	.idxAbtTtlBox {
		text-align: center;
	}
	
	.idxAbtCth {
		max-width: 570px;
		margin: 0 auto 30px;
	}
	
	.ctaNav {
		justify-content: center;
		margin: 0 -10px;
	}

	.ctaNav li {
		margin: 0 10px;
	}

}

@media screen and (max-width:767px) {
	.idxAbtAra {
		padding: 30px 15px calc(100% + 15px);
		background: url(../images/index/bg_about.png) left 50% bottom 0 no-repeat;
		background-size: 100% auto;
	}
	
	.idxAbtWrp {
		display: block;
	}

	.idxAbtBox {
		max-width: 100%;
	}

	.idxAbtTtlBox {
		margin: 0 0 20px;
	}

	.idxAbtCth {
		margin: 0 auto 20px;
	}

	.idxAbtBox .cntTxt {
		margin: 0 0 30px;
	}

	.ctaNav {
		margin: 0 -5px;
	}

	.ctaNav li {
		margin: 0 5px;
	}

	.ctaNav a {
		height: 50px;
		padding: 15px 7.5px;
		border-radius: 4px;
	}

	.ctaTel {
		font-size: 2.2rem;
		letter-spacing: -0.005em;
		white-space: nowrap;
		padding: 0 0 0 17.5px;
		background-size: 15px auto;
	}

	.ctaTel [data-ruby]::before {
		font-size: 0.7rem;
		letter-spacing: 0.25rem;
	}

	.ctaNav li:nth-child(2) a {
		text-align: left;
		font-size: 1.3rem;
		line-height: 1.1;
		letter-spacing: -0.005em;
		white-space: nowrap;
	}

	.ctaNav li:nth-child(2) span {
		padding: 0 0 0 17.5px;
		background-size: 15px auto;
	}
	
	.idxAbtBox .rtBox {
		text-align: center;
	}
}

/* idxTpcAra */
.idxTpcAra {
	margin: -60px 0 0;
	padding: 0 30px;
}

.idxTpcCtr {
	padding: 20px;
	background: #edf7f7;
	border-radius: 15px;
}

.idxTpcBox {
	display: flex;
	padding: 30px;
	background: #fff;
	border-radius: 10px;
}

.idxTpcTtlBox {
	max-width: 200px;
	width: 100%;
	margin: 0 50px 0 0;
}

.idxTpcTtlInr {
	margin: -30px 0 50px -30px;
	background: #edf7f7;
	padding: 20px 20px 40px 30px;
	border-radius: 0 0 15px 0;
}

.idxTpcCntBox {
	width: calc(100% - 250px);
}

.idxTpcLst li:not(:last-child) {
	border-bottom: dashed 1px #dfdfdf;
}

.idxTpcLst li a {
	display: block;
	position: relative;
	padding: 20px 45px 20px 0;
}

.idxTpcLst li a:after {
	content: "";
	position: absolute;
	top: calc(50% - 18px);
	right: 0;
	width: 36px;
	height: 36px;
	background: url(../images/common/arw_big_rt_gr.png) center no-repeat #edf7f7;
	background-size: 12.5px auto;
	border-radius: 50%;
}

.idxTpcLstBox {
	display: flex;
	align-items: center;
}

.icnNew {
	text-align: center;
	min-width: 54px;
	height: 54px;
	position: absolute;
	top: calc(50% - 27px);
	left: 0;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1;
	color: #e50000;
	padding: 16px 0 0;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #e50000;
	border-radius: 50%;
}

.idxTpcLstCntBox {
	display: flex;
	align-items: center;
}

.idxTpcLstDta {
	display: inline-block;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1;
	margin: 0 25px 0 0;
}

.idxTpcLstTtl {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.5;
}

@media screen and (max-width:1040px) {
	.idxTpcTtlBox {
		max-width: 170px;
		margin: 0 30px 0 0;
	}

	.idxTpcCntBox {
		width: calc(100% - 200px);
	}
}

@media screen and (max-width:767px) {
	.idxTpcAra {
		margin: -60px 0 0;
		padding: 0 15px;
	}

	.idxTpcCtr {
		padding: 10px;
		border-radius: 6px;
	}

	.idxTpcBox {
		display: block;
		padding: 10px;
		border-radius: 4px;
	}

	.idxTpcTtlBox {
		text-align: center;
		max-width: 100%;
		margin: 0 0 20px;
	}

	.idxTpcTtlInr {
		margin: -20px -20px 20px;
		padding: 20px;
		border-radius: 10px 10px 0 0;
	}

	.idxTpcCntBox {
		width: 100%;
	}

	.idxTpcLst li a {
		padding: 10px;
	}

	.idxTpcLst li a:after {
		top: calc(50% - 12px);
		width: 24px;
		height: 24px;
		background-size: 10px auto;
	}

	.idxTpcLstBox {
		display: block;
	}

	.icnNew {
		min-width: 36px;
		height: 36px;
		top: 15px;
		font-size: 1.1rem;
		padding: 12px 0 0;
	}

	.idxTpcLstCntBox {
		display: block;
	}

	.idxTpcLstDta {
		font-size: 1.2rem;
		margin: 0 0 10px;
	}

	.idxTpcLstTtl {
		font-size: 1.5rem;
	}
}

/* idxSchAra */
.idxSchAra {
	padding: 100px 30px 0;
}

.schBox {
	display: flex;
}

.schTimBox {
	max-width: 600px;
	margin: 0 50px 0 0;
}

.timTblBox {
	overflow: hidden;
	box-sizing: border-box;
	border: solid 1px #018c8f;
	border-radius: 10px;
}

.timTbl {
	width: 100%;
	font-size: 2rem;
	line-height: 0.8;
	background: #fff;
	vertical-align: middle;
}

.timTbl th {
	text-align: center;
	width: 200px;
	padding: 20px 10px;
	font-weight: 500;
	white-space: nowrap;
	border-right: solid 1px #018c8f;
	border-bottom: solid 1px #018c8f;
	box-sizing: border-box;
	vertical-align: middle;
}

.timTbl td {
	text-align: center;
	font-weight: 500;
	color: #018c8f;
	padding: 20px;
	border-right: solid 1px #018c8f;
	border-bottom: solid 1px #018c8f;
	vertical-align: middle;
}

.timTbl tr:last-child th,.timTbl tr:last-child td {
	border-bottom: none;
}

.timTbl td:last-child {
	border-right: none!important;
}

.timIcn {
	padding: 0 0 0 30px;
	background: url(../images/common/icn_time_gr.png) left no-repeat;
	background-size: 20px auto;
}

.rstBox {
	border-bottom: none!important;
}

.rstBox p {
	font-size: 1.6rem;
	line-height: 1.5;
	writing-mode: vertical-rl;
	margin: 0 auto;
}

.schCntBox {
	width: calc(100% - 650px);
}

.schCth {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	margin: 0 0 15px;
	padding: 0 0 10px;
	border-bottom: dashed 1px #dfdfdf;
}

.schCth .grTxt {
	color: #018c8f;
}

@media screen and (max-width:1040px) {
	.schBox {
		display: block;
	}

	.schTimBox {
		margin: 0 auto 30px;
	}

	.schCntBox {
		width: 100%;
	}
}

@media screen and (max-width:767px) {
	.idxSchAra {
		padding: 30px 15px 0;
	}

	.schTimBox {
		margin: 0 auto 20px;
	}
	
	.timTblBox {
		width: 100%;
		border-radius: 8px;
	}

	.timTbl {
		width: 100%;
		font-size: 1.4rem;
	}
	
	.timTblMin {
		width: 100px!important;
	}
	
	.timTbl th {
		width: auto;
		padding: 7.5px 5px;
	}

	.timTbl td {
		padding: 10px 5px;
	}

	.timTbl tr:last-child td {
		border-bottom: none;
	}

	.timTbl th:last-child,.timTbl td:last-child {
		border-right: none!important;
	}

	.timIcn {
		padding: 0 0 0 20px;
		background-size: 15px auto;
	}

	.rstBox {
		border-bottom: solid 1px #018c8f!important;
	}

	.rstBox p {
		font-size: 1.4rem;
		line-height: 1;
		writing-mode: horizontal-tb;
	}
}

/* idxAcsAra */
.idxAcsAra {
	padding: 100px 30px;
}

.idxAcsBox {
	display: flex;
}

.idxAcsMapBox {
	order: 2;
	width: calc(100% - 500px);
	height: 0;
	position: relative;
	padding-top: 55%;
	overflow: hidden;
	border-radius: 10px
}

.idxAcsMapBox iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.idxAcsCntBox {
	order: 1;
	max-width: 450px;
	width: 100%;
	margin: 0 50px 0 0;
}

.idxAcsTtl {
	position: relative;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
	margin: 0 0 20px;
	padding: 0 0 0 25px;
}

.idxAcsTtl:before {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 15px;
	height: 2px;
	background: #018c8f;
}

.ttlMinBtnBox .idxAcsTtl {
	margin: 0;
} 

.idxAcsCntBox .cntTxt {
	margin: 0 0 40px;
}

.cntFrmTxt {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
	color: #018c8f;
	margin: 0 0 20px;
	padding: 5px 10px;
	border: solid 1px #018c8f;
}

.acsCntTtl {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
}

.ttlMinBtnBox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 15px;
	padding: 0 0 10px;
	border-bottom: dashed 1px #dfdfdf;
}

.minBtn {
	width: 100px;
}

.minBtn a {
	text-align: center;
	width: 100%;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	padding: 5px;
	display: block;
	box-sizing: border-box;
	background: #018c8f;
	border-radius: 50px;
}

.minBtn span {
	padding: 0 10px 0 0;
	background: url(../images/common/arw_rt_wt.png) right no-repeat;
	background-size: 6px auto;
}

.idxAcsCntLst .cntTxt{
	margin: 0!important;
}

.idxAcsCntLst li:not(:last-child) {
	margin: 0 0 20px;
}

@media screen and (max-width:1040px) {
	.idxAcsBox {
		display: block;
	}
	
	.idxAcsMapBox {
		width: 100%;
		margin: 0 0 50px;
	}

	.idxAcsCntBox {
		max-width: 100%;
		margin: 0;
	}
}

@media screen and (max-width:767px) {
	.idxAcsAra {
		padding: 30px 15px;
	}
	
	.idxAcsMapBox {
		width: 100%;
		margin: 0 0 20px;
		padding-top: 55%;
		border-radius: 8px
	}

	.idxAcsTtl {
		font-size: 1.8rem;
		margin: 0 0 20px;
		padding: 0 0 0 20px;
	}

	.idxAcsTtl:before {
		width: 10px;
	}

	.idxAcsCntBox .cntTxt {
		margin: 0 0 30px;
	}
	
	.cntFrmTxt {
		margin: 0 0 20px;
		padding: 7.5px 15px;
	}
	
	.idxAcsCntLst li {
		position: relative;
		padding: 0 0 50px;
	}
	
	.acsCntTtl {
		font-size: 1.5rem;
	}

	.idxAcsBtnBox {
		position: relative;
		margin: 0 0 30px;
		padding: 0 0 20px;
	}
	
	.ttlMinBtnBox {
		display: block;
		margin: 0 0 10px;
		padding: 0 0 10px;
		border-bottom: dashed 1px #dfdfdf;
	}

	.minBtn {
		max-width: 200px;
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	.minBtn a {
		padding: 12px;
		border-radius: 4px;
	}

	.minBtn span {
		padding: 0 20px 0 0;
		background-size: 10px auto;
	}
}

/* idxMlsAra */
.idxMlsAra {
	padding: 80px 30px;
	background: url(../images/index/bg_stripe.png) top #c5e0f6;
	background-size: 7px auto;
}

.idxMlsTtlBox {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin: 0 0 40px;
}

.idxMlsTtl {
	max-width: 400px;
	margin: 0 0 30px;
}

.idxMlsCth {
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1.3;
	color: #13284e;
}

.idxMlsBox {
	display: flex;
}

.idxMlsMnBox {
	width: calc(100% - 420px);
	padding: 20px;
	box-sizing: border-box;
	background: #a6cbeb;
	border: solid 1px #85b5de;
	border-radius: 8px;
}

.idxMlsMnLst {
	display: flex;
	margin: 0 -10px;
}

.idxMlsMnLst li {
	text-align: center;
	width: calc(50% - 20px);
	min-height: 260px;
	margin: 0 10px;
	padding: 20px 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 6px;
}

.idxMlsMnLstTtl {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 1.3;
	letter-spacing: -0.005em;
	margin: 0 0 30px;
	padding: 0 50px 0 0 ;
}

.idxMlsMnLstTtl:after {
	content: "";
	position: absolute;
	top: calc(50% - 17px);
	right: 0;
	width: 34px;
	height: 34px;
	background: url(../images/common/arw_big_rt_wt.png) center no-repeat #649dcd;
	background-size: 15px auto;
	border-radius: 50%;
}

.idxMlsMnLstImg {
	max-width: 130px;
	margin: 0 auto 20px;
}

.idxMlsMnLstTxt {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.5;
}

.idxMlsSubBox {
	max-width: 380px;
	width: 100%;
	display: flex;
	margin: 0 0 0 40px;
	padding: 20px;
	background: #a6cbeb;
	box-sizing: border-box;
	border: solid 1px #85b5de;
	border-radius: 8px;
}

.idxMlsSubLst {
	width: 100%;
}

.idxMlsSubLst li {
	text-align: center;
	box-sizing: border-box;
	background: #fff;
	border-radius: 6px;
}

.idxMlsSubLst li:first-child {
	margin: 0 0 20px;
}

.idxMlsSubLstImg a {
	display: block;
	padding: 15px;
	box-sizing: border-box;
}

.idxMlsSubLstImg img {
	max-width: 300px;
	margin: 0 auto;
}

@media screen and (max-width:1200px) {
	.idxMlsBox {
		display: block;
	}
	
	.idxMlsMnBox {
		width: 100%;
		margin: 0 0 30px;
	}

	.idxMlsSubBox {
		max-width: 100%;
		margin: 0;
	}

	.idxMlsSubLst {
		display: flex;
	}

	.idxMlsSubLst li {
		width: calc(50% - 10px);
	}

	.idxMlsSubLst li:first-child {
		margin: 0 10px 0 0;
	}
	
	.idxMlsSubLst li:last-child {
		margin: 0 0 0 10px;
	}
}

@media screen and (max-width:767px) {
	.idxMlsAra {
		padding: 30px 15px;
	}

	.idxMlsTtlBox {
		text-align: center;
		display: block;
		margin: 0 0 20px;
	}

	.idxMlsTtl {
		max-width: 260px;
		margin: 0 auto 20px;
	}

	.idxMlsCth {
		text-align: left;
		display: inline-block;
		font-size: 1.5rem;
		margin: 0 0 20px;
	}

	.idxMlsBox {
		display: block;
	}

	.idxMlsMnBox {
		width: 100%;
		margin: 0 0 20px;
		padding: 10px;
		border-radius: 6px;
	}

	.idxMlsMnLst {
		margin: 0 -5px;
	}

	.idxMlsMnLst li {
		width: calc(50% - 10px);
		min-height: 200px;
		margin: 0 5px;
		padding: 10px;
		border-radius: 4px;
	}

	.idxMlsMnLstTtl {
		text-align: left;
		font-size: 1.6rem;
		letter-spacing: -0.01em;
		white-space: nowrap;
		margin: 0 0 20px;
		padding: 0 25px 0 0 ;
	}

	.idxMlsMnLstTtl:after {
		top: calc(50% - 9px);
		width: 18px;
		height: 18px;
		background-size: 8px auto;
	}

	.idxMlsMnLstImg {
		max-width: 120px;
		margin: 0 auto 15px;
	}

	.idxMlsMnLstTxt {
		text-align: left;
		font-size: 1.5rem;
		line-height: 1.3;
	}
	
	.idxMlsMnLstTxt br {
		display: none;
	}

	.idxMlsSubBox {
		max-width: 100%;
		width: 100%;
		margin: 0;
		padding: 10px;
		border-radius: 6px;
	}

	.idxMlsSubLst {
		width: 100%;
		display: block;
	}

	.idxMlsSubLst li {
		width: 100%;
		border-radius: 4px;
	}

	.idxMlsSubLst li:first-child {
		margin: 0 0 10px;
	}
	
	.idxMlsSubLst li:last-child {
        margin: 0;
    }

	.idxMlsSubLstImg img {
		max-width: 400px;
	}

}

/* otrAra */
.otrAra {
	padding: 50px 30px;
	background: url(../images/index/bg_other.jpg) right top;
	background-size: cover;
}

.otrBox {
	max-width: 900px;
	box-sizing: border-box;
	border: solid 1px rgba(255,255,255,0.5);
	border-radius: 10px;
}

.otrLst {
	display: flex;
}

.otrLst li {
	width: 50%;
	position: relative;
	padding: 40px;
	box-sizing: border-box;
}

.otrLst li:first-child:after {
	content: "";
	position: absolute;
	top: 40px;
	right: 0;
	height: calc(100% - 80px);
	border-right: dashed 1px rgba(255,255,255,0.5);
}

.otrLstTxtBox {
	min-height: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 30px;
}

.otrLstTxt {
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	color: #fff;
}

.otrLstLg {
	background: #fff;
	border-radius: 6px;
	box-shadow: 1px 0 8px rgba(0,0,0,0.12);
}

.otrLstLg a {
	display: block;
	padding: 20px;
}

@media screen and (max-width:1040px) {
	.otrLst li {
		padding: 15px;
	}
	
	.otrLstTxtBox {
		min-height: 65px;
		margin: 0 0 15px;
	}
	
	.otrLstTxt {
		font-size: 1.6rem;
	}
}

@media screen and (max-width:767px) {
	.otrAra {
		padding: 30px 15px;
		background: url(../images/index/bg_other.jpg) right -200px center;
		background-size: cover;
	}

	.otrBox {
		border-radius: 6px;
	}

	.otrLst {
		display: block;
	}

	.otrLst li {
		width: 100%;
		padding: 15px;
	}

	.otrLst li:first-child:after {
		top: auto;
		bottom: 0;
		right: 15px;
		width: calc(100% - 30px);
		height: auto;
		border-right: none;
		border-bottom: dashed 1px rgba(255,255,255,0.5);
	}

	.otrLstTxtBox {
		min-height: auto;
		margin: 0 0 15px;
	}

	.otrLstTxt {
		font-size: 1.5rem;
	}

	.otrLstLg {
		max-width: 400px;
		margin: 0 auto;
		border-radius: 4px;
	}

	.otrLstLg a {
		padding: 10px;
	}
}

/*======================================================
  footer
======================================================*/

.fltBnr {
	display: none;
	position: fixed;
	bottom: 40px;
	right: 30px;
	z-index: 999;
}

.fltBnr img {
	width: 200px;
	height: auto;
	border: 2px solid #3f8fd2;
	border-radius: 8px;
	transition: .2s;
}

.fltBnr .close {
	position: absolute;
	top: -10px;
	right: -10px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	background: #3f8fd2;
	border-radius: 50%;
	cursor: pointer;
}

.ptpBtn {
	position: fixed;
	left: 30px;
	bottom: 30px;
	z-index: 200;
}

.ptpBtn a {
	text-align: center;
	width: 50px;
	height: 50px;
	display: block;
	padding: 18px 0 0;
	box-sizing: border-box;
	background: #018c8f;
	border: solid 1px #fff;
	border-radius: 50%;
}

.ptpBtn img {
	max-width: 15px;
	height: auto;
	margin: 0 auto;
	transform:rotate(-90deg);
}

@media screen and (max-width:767px) {
	.fltBnr {
		bottom: 15px;
		right: 10px;
	}

	.fltBnr img {
		width: 250px;
		border: 1px solid #3f8fd2;
		border-radius: 4px;
	}

	.fltBnr .close {
		top: -8px;
		right: -8px;
		width: 24px;
		height: 24px;
		font-size: 16px;
	}

	.ptpBtn {
		left: 10px;
		bottom: 20px;
	}

	.ptpBtn a {
		width: 40px;
		height: 40px;
		padding: 15px 0 0;
	}

	.ptpBtn img {
		max-width: 10px;
	}
}

/* ftrAra */
.ftrBox {
	display: flex;
	padding: 40px 30px;
	background: #fff;
}

.ftrCntBox {
	margin: 0 50px 0 0;
}

.ftrLg {
	max-width: 320px;
	margin: 0 0 20px;
}

.ftrAdd {
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1.6;
}

.ftrNav {
	max-width: 550px;
	display: flex;
	flex-wrap: wrap;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1;
	margin: 0 0 5px;
}

.ftrNav li {
	margin: 0 25px 15px 0;
}

.ftrNav li a {
	position: relative;
	display: block;
	padding: 0 0 0 15px;
}

.ftrNav li a:before {
	content: "";
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	width: 6px;
	height: 6px;
	background: #018c8f;
	border-radius: 50%;
}

.ftrSubNav {
	display: flex;
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1;
}

.ftrSubNav li a {
	position: relative;
	display: block;
	padding: 0 30px 0 0;
}

.ftrSubNav li:first-child a:before {
	content: "";
	position: absolute;
	top: calc(50% - 6px);
	right: 15px;
	width: 1px;
	height: 12px;
	background: #bbb;
}

.cpyTxt {
	text-align: right;
	font-weight: 400;
	font-size: 1.2rem;
	line-height: 1.3;
	color: #fff;
	padding: 15px 30px;
	background: #454545;
}

@media screen and (max-width:1200px) {
	.ftrNav {
		max-width: 450px;
	}
}

@media screen and (max-width:767px) {
	.ftrBox {
		display: block;
		padding: 20px 15px;
	}

	.ftrCntBox {
		margin: 0 0 20px;
	}

	.ftrLg {
		max-width: 182.5px;
		margin: 0 auto 15px;
	}

	.ftrAdd {
		text-align: center;
		line-height: 1.5;
	}
	
	.ftrNavBox {
		margin: 0 -5px;
	}

	.ftrNav {
		max-width: 100%;
		justify-content: center;
		font-weight: bold;
		font-size: 1.4rem;
		letter-spacing: -0.005em;
		box-sizing: border-box;
		margin: 0 0 5px;
	}

	.ftrNav li {
		text-align: center;
		width: calc(50% - 10px);
		margin: 0 5px 10px;
	}

	.ftrNav li a {
		padding: 12.5px 5px;
		background: #edf7f7;
		border: solid 1px #018c8f;
		border-radius: 50px;
	}

	.ftrNav li a:before {
		content: none;
	}
	
	.ftrNav li a:link,
	.ftrNav li a:visited {
		color: #018c8f!important;
	}

	.ftrSubNav {
		justify-content: center;
	}

	.ftrSubNav li a {
		padding: 0 15px;
	}

	.ftrSubNav li:first-child a:before {
		top: calc(50% - 5px);
		right: 0;
		height: 10px;
	}

	.cpyTxt {
		text-align: center;
		font-size: 1rem;
		padding: 10px 15px 80px;
	}
}

/*=========================================================
lower
=========================================================*/

/* lwrMnAra */
.lwrMnAra {
	height: 250px;
	position: relative;
	margin: 155px 0 0;
	padding: 0 30px;
	background: url(../images/common/bg_main_lwr.png) right no-repeat #e7f1f3;
	background-size: auto 100%;
	z-index: 1;
}

.lwrMnWrp {
	max-width: 1200px;
	height: 250px;
	display: flex;
	align-items: center;
	margin: 0 auto;
}

.lwrMnTtl {
	max-width: 800px;
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 4.2rem;
	line-height: 1.2;
	z-index: 1;
}

.lwrMnMinTtl {
	font-size: 3.8rem;
}

.lwrMnTtl:before {
	content: "";
	position: absolute;
	top: -55px;
	left: -30px;
	width: 100px;
	height: 100px;
	background: url(../images/common/icn_dot_main.png) center no-repeat;
	background-size: 100px auto;
	z-index: -1;
}

@media screen and (max-width:1040px) {
	.lwrMnAra {
		margin: 80px 0 0;
		height: 200px;
	}
	
	.lwrMnWrp {
		height: 200px;
	}
	
	.lwrMnTtl {
		max-width: 500px;
		font-size: 3rem;
	}
	
	.lwrMnMinTtl {
		font-size: 2.6rem;
	}
	
	.lwrMnTtl:before {
		top: -50px;
		left: -20px;
		width: 80px;
		height: 80px;
		background-size: 80px auto;
	}
}

@media screen and (max-width:767px) {
	.lwrMnAra {
		height: 120px;
		margin: 60px 0 0;
		padding: 0 15px;
		background: url(../images/common/bg_main_lwr.png) right -150px center no-repeat #e7f1f3;
		background-size: auto 100%;
	}

	.lwrMnWrp {
		height: 120px;
	}

	.lwrMnTtl {
		max-width: 300px;
		font-size: 2rem;
	}
	
	.lwrMnMinTtl {
		font-size: 1.8rem;
	}
	
	.lwrMnTtl:before {
		top: -30px;
		left: -10px;
		width: 50px;
		height: 50px;
		background-size: 50px auto;
	}
}

/* pkzNav */
.pkzNavBox {
	padding: 15px 30px;
	background: #f6f6f6;
	z-index: 2;
}

.pkzNav {
	max-width: 1200px;
	display: flex;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.3;
	margin: 0 auto;
}

.pkzNav li:not(:last-child) {
	position: relative;
	margin: 0 30px 0 0;
}

.pkzNav li:not(:last-child):after {
	content: "";
	position: absolute;
	top: calc(50% - 6px);
	right: -15px;
	width: 1px;
	height: 12px;
	background: #dbdbdb;
}

.pkzNav li a {
	display: block;
}

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

/* title */
.lwrCntTtl {
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	margin: 0 0 50px;
	padding: 13px 13px 13px 85px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 4px;
	z-index: 1;
}

.lwrCntTtl:before {
	content: "";
	position: absolute;
	top: -10px;
	left: 15px;
	width: 60px;
	height: 60px;
	background: url(../images/common/icn_dot_title.png) center no-repeat;
	background-size: 60px auto;
	z-index: 2;
}

.lwrCntMinTtl {
	position: relative;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
	margin: 0 0 50px;
	z-index: 1;
}

.lwrCntMinTtl:before {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #dfdfdf;
	z-index: 2;
}

.lwrCntMinTtl:after {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 0;
	width: 80px;
	height: 1px;
	background: #018c8f;
	z-index: 3;
}

.lwrCntMinCth {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
	color: #f39800;
	margin: 0 0 30px;
}

@media screen and (max-width:1040px) {
	.lwrCntTtl {
		font-size: 2.2rem;
		padding: 12px 12px 12px 75px;
	}

	.lwrCntTtl:before {
		top: -7.5px;
		left: 12.5px;
		width: 50px;
		height: 50px;
		background-size: 50px auto;
	}
}

@media screen and (max-width:767px) {
	.lwrCntTtl {
		font-size: 1.8rem;
		margin: 0 0 20px;
		padding: 10px 10px 10px 50px;
		border-radius: 3px;
	}

	.lwrCntTtl:before {
		top: -4px;
		left: 8px;
		width: 36px;
		height: 36px;
		background-size: 36px auto;
	}
	
	.lwrCntMinTtl {
		font-size: 1.7rem;
		margin: 0 0 30px;
	}

	.lwrCntMinTtl:before {
		bottom: -6px;
	}

	.lwrCntMinTtl:after {
		bottom: -6px;
		width: 40px;
	}
}

/* layout */
.lwrCntAra {
	padding: 100px 30px;
}

.lwrTtlBox {
	display: flex;
	align-items: center;
}

.lwrTtlCntBox {
	order: 2;
	width: calc(100% - 420px);
}

.lwrTtl {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.5;
	color: #00787e;
	margin: 0 0 20px;
}

.lwrTtlImgBox {
	order: 1;
	max-width: 370px;
	margin: 0 50px 0 0;
}

.lwrTtlImg {
	overflow: hidden;
	border: solid 1px #dfdfdf;
	border-radius: 8px;
}

.bigImgBox {
	display: flex;
	align-items: center;
	margin: 0 0 80px;
}

.bigImgBoxImgBox {
	max-width: 520px;
	margin: 0 80px 0 0;
}

.bigImgBoxRt .bigImgBoxImgBox {
	order: 2;
	margin: 0 0 0 80px;
}

.bigImgBoxImg {
	overflow: hidden;
	border-radius: 8px;
}

.bigImgBoxCntBox {
	width: calc(100% - 600px);
}

.bigImgBoxRt .bigImgBoxCntBox {
	order: 1;
}

.bigImgTtl {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #018c8f;
	margin: 0 0 30px;
}

@media screen and (max-width:767px) {
	.lwrTtlBox {
		display: block;
		position: relative;
		padding: 0 0 50px;
	}

	.lwrTtlCntBox {
		width: 100%;
		margin: 0 0 20px;
	}

	.lwrTtl {
		font-size: 2rem;
		margin: 0 0 15px;
	}

	.lwrTtlImgBox {
		max-width: 100%;
		margin: 0;
	}

	.lwrTtlImg {
		overflow: hidden;
		border-radius: 6px;
	}
	
	.bigImgBox {
		display: block;
		margin: 0 0 30px;
	}

	.bigImgBoxImgBox {
		max-width: 100%;
		margin: 0 0 20px;
	}

	.bigImgBoxRt .bigImgBoxImgBox {
		margin: 0 0 20px;
	}

	.bigImgBoxImg {
		border-radius: 6px;
	}

	.bigImgBoxCntBox {
		width: 100%;
	}

	.bigImgTtl {
		font-size: 1.8rem;
		margin: 0 0 15px;
	}
}

/* list */
.nmbLst {
	margin: 0 0 60px;
}

.nmbLst li:not(.capLst li) {
	padding: 10px;
	background: #f6f6f6;
	border-radius: 10px;
}

.nmbLst li:not(:last-child) {
	margin: 0 0 20px;
}

.nmbLstBox {
	display: flex;
}

.nmbLstNmbBox {
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 10px 0 0;
	background: #018c8f;
	border-radius: 6px;
}

.nmbLstNmbInr {
	text-align: center;
	color: #fff;
}

.nmbLstNmbEn {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
	margin: 0 0 5px;
}

.nmbLstNmb {
	font-weight: 700;
	font-size: 3.8rem;
	line-height: 0.8;
}

.nmbLstCntBox {
	width: calc(100% - 100px);
	display: flex;
	align-items: center;
	padding: 10px 20px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 6px;
}

.nmbLstTtl {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	margin: 0 0 5px;
}

.bigImgLst li {
	display: flex;
	align-items: center;
}

.bigImgLst li:not(:last-child) {
	margin: 0 0 80px;
}

.bigImgLstImgBox {
	max-width: 520px;
	margin: 0 80px 0 0;
}

.bigImgLstImg {
	overflow: hidden;
	border-radius: 8px;
}

.bigImgLst li:nth-child(even) .bigImgLstImgBox {
	order: 2;
	margin: 0 0 0 80px;
}

.bigImgLstCntBox {
	width: calc(100% - 600px);
}

.bigImgLst li:nth-child(even) .bigImgLstCntBox {
	order: 1;
}

.bigImgLstTtlBox {
	display: flex;
	align-items: center;
	margin: 0 0 30px;
}

.bigImgLstNmbBox {
	text-align: center;
	min-width: 80px;
	height: 80px;
	color: #fff;
	padding: 15px 0 0;
	box-sizing: border-box;
	background: #018c8f;
	border-radius: 50%;
}

.bigImgLstNmbEn {
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1;
}

.bigImgLstNmb {
	display: inline-block;
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.1;
	border-bottom: solid 1px #fff;
}

.bigImgLstNmbTtl {
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.3;
	margin: 0 0 0 20px;
}

.bigImgLstCntBox .cntMinBtn {
	margin: 30px 0;
}

.shpCapBox {
	max-width: 450px;
	padding: 15px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 4px;
}

.shpCapTtl {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.3;
	color: #018c8f;
	margin: 0 0 5px;
	padding: 0 0 5px;
	border-bottom: dashed 1px #dfdfdf;
}

.shpCapTxt {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.3;
	color: #777;
}

.minImgLst li {
	display: flex;
	align-items: center;
}

.minImgLst li:not(:last-child) {
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: dashed 1px #dfdfdf;
}

.minImgLstImgBox {
	max-width: 160px;
	margin: 0 40px 0 0;
}

.minImgLstImg {
	overflow: hidden;
	border: solid 1px #dfdfdf;
	border-radius: 8px;
}

.minImgLstCntBox {
	width: calc(100% - 200px);
}

.minImgLstTtl {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	color: #018c8f;
	margin: 0 0 10px;
}

.minImgLstNmbTtl {
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.3;
	color: #018c8f;
	margin: 0 0 10px;
	padding: 0 0 0 45px;
}

.minImgLstNmbTtl:before {
	text-align: center;
	width: 36px;
	height: 36px;
	position: absolute;
	left: 0;
	top: calc(50% - 18px);
	color: #fff;
	background: #018c8f;
	border-radius: 50%;
}

.minImgLst li:nth-child(1) .minImgLstNmbTtl:before {
	content: "1";
}

.minImgLst li:nth-child(2) .minImgLstNmbTtl:before {
	content: "2";
}

.minImgLst li:nth-child(3) .minImgLstNmbTtl:before {
	content: "3";
}

.minImgLst li:nth-child(4) .minImgLstNmbTtl:before {
	content: "4";
}

.minImgLst li:nth-child(5) .minImgLstNmbTtl:before {
	content: "5";
}

.chkIcnLstBox {
	padding: 15px;
	background: #f7f7f7;
	border-radius: 10px
}

.chkIcnLstInr {
	padding: 20px 15px;
	background: #fff;
	border-radius: 8px
}

.chkIcnLst li:not(:last-child) {
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: dashed 1px #dfdfdf;
}

.chkIcnLstTtl {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.3;
	position: relative;
	padding: 0 0 0 35px;
	z-index: 1;
}

.chkIcnLstTtl:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 26px;
	height: 26px;
	background: url(../images/common/icn_check_wt.png) center no-repeat #00787e;
	background-size: 15px auto;
	border-radius: 50%;
	z-index: 2;
}

.pdfIcnLst li:not(:last-child) {
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: dashed 1px #dfdfdf;
}

.pdfIcnLstTtl {
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.3;
	position: relative;
	padding: 0 0 0 45px;
	z-index: 1;
}

.pdfIcnLstTtl:before {
	content: "";
	position: absolute;
	top: calc(50% - 16px);
	left: 0;
	width: 32px;
	height: 32px;
	background: url(../images/common/icn_pdf_wt.png) center no-repeat #e5252a;
	background-size: 20px auto;
	border-radius: 50%;
	z-index: 2;
}

.flwLst {
	position: relative;
	margin: 0 0 80px;
	z-index: 1;
}

.flwLst:before {
	content: "";
	position: absolute;
	top: 40px;
	left: 35px;
	width: 10px;
	height: calc(100% - 80px);
	background: #dfdfdf;
	z-index: -1;
}

.flwLst li {
	display: flex;
	align-items: center;
}

.flwLst li:not(:last-child) {
	margin: 0 0 50px;
}

.flwLstNmbBox {
	text-align: center;
	min-width: 80px;
	height: 80px;
	color: #fff;
	padding: 15px 0 0;
	box-sizing: border-box;
	background: #018c8f;
	border-radius: 50%;
}

.flwLstNmbEn {
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1;
}

.flwLstNmb {
	display: inline-block;
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.1;
	border-bottom: solid 1px #fff;
}

.flwLstNmbTtl {
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.3;
	margin: 0 0 0 20px;
}

.flwLstCntBox {
	margin: 0 0 0 50px;
}

.flwLstTtl {
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.3;
	margin: 0 0 5px;
}

@media screen and (max-width:1040px) {
	.bigImgLstImgBox {
		max-width: 370px;
		margin: 0 50px 0 0;
	}

	.bigImgLst li:nth-child(even) .bigImgLstImgBox {
		margin: 0 0 0 50px;
	}

	.bigImgLstCntBox {
		width: calc(100% - 420px);
	}
}

@media screen and (max-width:767px) {
	.nmbLst {
		margin: 0 0 20px;
	}

	.nmbLst li:not(.capLst li) {
		border-radius: 6px;
	}

	.nmbLst li:not(:last-child) {
		margin: 0 0 10px;
	}

	.nmbLstBox {
		display: block;
	}

	.nmbLstNmbBox {
		width: 100%;
		height: auto;
		margin: 0 0 10px;
		border-radius: 4px;
	}

	.nmbLstNmbInr {
		display: flex;
		align-items: center;
		padding: 7.5px;
	}

	.nmbLstNmbEn {
		font-size: 1.3rem;
		margin: 0 5px 0 0;
	}

	.nmbLstNmb {
		font-size: 1.8rem;
	}

	.nmbLstCntBox {
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border-radius: 4px;
	}

	.nmbLstTtl {
		font-size: 1.8rem;
	}


	.bigImgLst li {
		display: block;
	}

	.bigImgLst li:not(:last-child) {
		margin: 0 0 30px;
	}

	.bigImgLstImgBox {
		max-width: 100%;
		margin: 0 0 20px;
	}

	.bigImgLstImg {
		border-radius: 6px;
	}

	.bigImgLst li:nth-child(even) .bigImgLstImgBox {
		margin: 0 0 20px;
	}

	.bigImgLstCntBox {
		width: 100%;
	}

	.bigImgLstTtlBox {
		margin: 0 0 15px;
	}

	.bigImgLstNmbBox {
		min-width: 50px;
		height: 50px;
		padding: 10px 0 0;
	}

	.bigImgLstNmbEn {
		font-size: 0.9rem;
		margin: 0 0 2px;
	}

	.bigImgLstNmb {
		font-size: 1.8rem;
	}

	.bigImgLstNmbTtl {
		font-size: 1.8rem;
		margin: 0 0 0 15px;
	}

	.bigImgLstCntBox .cntMinBtn {
		margin: 20px 0;
	}
	
	.minImgLst {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 -5px -20px;
	}
	
	.minImgLst li {
		width: calc(50% - 10px);
		display: block;
		margin: 0 5px 20px!important;
	}

	.minImgLst li:not(:last-child) {
		margin: 0;
		padding: 0;
		border-bottom: none;
	}

	.minImgLstImgBox {
		max-width: 100%;
		margin: 0 0 15px;
	}

	.minImgLstImg {
		border-radius: 4px;
	}

	.minImgLstCntBox {
		width: 100%;
	}

	.minImgLstTtl {
		font-size: 1.6rem;
	}

	.minImgLstNmbTtl {
		font-size: 1.6rem;
		padding: 0 0 0 30px;
	}

	.minImgLstNmbTtl:before {
		width: 22px;
		height: 22px;
		top: calc(50% - 11px);
	}

	.chkIcnLstBox {
		padding: 10px;
		border-radius: 8px
	}

	.chkIcnLstInr {
		padding: 15px;
		border-radius: 6px
	}

	.chkIcnLst li:not(:last-child) {
		margin: 0 0 15px;
		padding: 0 0 15px;
	}

	.chkIcnLstTtl {
		font-size: 1.6rem;
		padding: 0 0 0 30px;
	}

	.chkIcnLstTtl:before {
		width: 18px;
		height: 18px;
		margin: 3px 0 0;
		background-size: 10px auto;
	}
	
	.pdfIcnLst li:not(:last-child) {
		margin: 0 0 15px;
		padding: 0 0 15px;
	}

	.pdfIcnLstTtl {
		font-size: 1.6rem;
		padding: 0 0 0 35px;
	}

	.pdfIcnLstTtl:before {
		top: calc(50% - 12px);
		width: 24px;
		height: 24px;
		background-size: 15px auto;
	}
	
	.flwLst {
		margin: 0 0 30px;
	}

	.flwLst:before {
		top: 50px;
		left: 22.5px;
		width: 5px;
		height: 70%;
	}

	.flwLst li:not(:last-child) {
		margin: 0 0 20px;
	}

	.flwLstNmbBox {
		min-width: 50px;
		height: 50px;
		padding: 10px 0 0;
	}

	.flwLstNmbEn {
		font-size: 0.9rem;
		margin: 0 0 2px;
	}

	.flwLstNmb {
		font-size: 1.8rem;
	}

	.flwLstNmbTtl {
		font-size: 1.8rem;
		margin: 0 0 0 15px;
	}

	.flwLstCntBox {
		margin: 0 0 0 15px;
	}

	.flwLstTtl {
		font-size: 1.8rem;
		margin: 0 0 3px;
	}
}

/* table */
.tblBox {
	display: flex;
	margin: 0 0 80px;
}

.tblBoxLt {
	width: calc(50% - 20px);
	margin: 0 20px 0 0;
}

.tblBoxRt {
	width: calc(50% - 20px);
	margin: 0 0 0 20px;
}

.mrtTbl {
	width: 100%;
	table-layout: fixed;
	border-top: solid 1px #dfdfdf;
	border-left: solid 1px #dfdfdf;
}

.mrtTbl th {
	width: 100%;
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	color: #fff;
	padding: 12px;
	background: #018c8f;
	border-bottom: solid 1px #dfdfdf;
	border-right: solid 1px #dfdfdf;
	vertical-align: middle;
}

.mrtTblSft th {
	background: #16adb0;
}

.mrtTblHrd th {
	background: #168ab0;
}

.mrtTblMls th {
	background: #f4a600;
}

.mrtTbl td {
	width: 100%;
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.3;
	padding: 10px;
	background: #fff;
	border-bottom: solid 1px #dfdfdf;
	border-right: solid 1px #dfdfdf;
	vertical-align: middle;
}

.mrtTblMls td {
	padding: 20px;
}

.mrtTbl td.mrtTblSubTtl {
	font-weight: 700;
	font-size: 1.8rem;
	background: #f7f7f7;
}

.mrtTblSft .mrtTblSubTtl {
	color: #16adb0;
}

.mrtTblHrd .mrtTblSubTtl {
	color: #168ab0;
}

.mrtTblMlsBox {
	display: flex;
	align-items: center;
	justify-content: center;
}

.mrtTblMlsTtl {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	color: #f4a600;
	white-space: nowrap;
	margin: 0 20px 0 0;
}

.mrtTblMlsLst {
	text-align: left;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
}

.mrtTblMlsLst li:not(:last-child) {
	margin: 0 0 10px;
}

.vrtTbl {
	width: 100%;
	border-top: solid 1px #dfdfdf;
	border-left: solid 1px #dfdfdf;
}

.vrtTbl th {
	width: 260px;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	color: #fff;
	padding: 15px 20px;
	box-sizing: border-box;
	background: #018c8f;
	border-right: solid 1px #dfdfdf;
	border-bottom: solid 1px #dfdfdf;
	vertical-align: top;
}

.vrtTbl td {
	font-weight: 400;
	font-size: 1.6rem;
	line-height: 1.8;
	padding: 15px 20px;
	background: #fff;
	border-right: solid 1px #dfdfdf;
	border-bottom: solid 1px #dfdfdf;
}

@media screen and (max-width:767px) {
	.tblBox {
		display: block;
		margin: 0 0 30px;
	}

	.tblBoxLt {
		width: 100%;
		margin: 0 0 20px;
	}

	.tblBoxRt {
		width: 100%;
		margin: 0;
	}

	.mrtTbl tr,
	.mrtTbl th,
	.mrtTbl td,
	.vrtTbl tr,
	.vrtTbl th,
	.vrtTbl td {
		display: block;
	}
	
	.mrtTbl th,
	.vrtTbl th {
		width: 100%;
		font-size: 1.6rem;
		padding: 10px;
		box-sizing: border-box;
	}

	.mrtTbl td,
	.vrtTbl td {
		font-size: 1.5rem;
		padding: 10px;
		box-sizing: border-box;
	}
	
	.mrtTbl td.mrtTblSubTtl {
		font-size: 1.6rem;
	}
	
	.mrtTblMlsBox {
		display: block;
	}

	.mrtTblMlsTtl {
		font-size: 1.6rem;
		margin: 0 0 5px;
	}

	.mrtTblMlsLst {
		font-size: 1.5rem;
	}

	.mrtTblMlsLst li:not(:last-child) {
		margin: 0 0 5px;
	}
}

/* common */
.btmNo {
	margin: 0!important;
}

.btmLw {
	margin: 0 0 60px!important;
}

.btmHi {
	margin: 0 0 80px!important;
}

.autNo {
	margin: 0 auto!important;
}

.cntCthTxtBox {
	text-align: center;
}

.cntCthTxt {
	text-align: left;
	display: inline-block;
	font-weight: 700;
	font-size: 3.4rem;
	line-height: 1.3;
	margin: 0 0 30px;
}

.cntCthTxtGr {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 3rem;
	line-height: 1.3;
	color: #018c8f;
	margin: 0 0 30px;
}

.cntCthTxtOr {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 3rem;
	line-height: 1.3;
	color: #f4a600;
	margin: 30px 0 0;
}

.dtaTxt {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1;
	color: #018c8f;
	white-space: nowrap;
	padding: 3px 12px;
	border: solid 1px #018c8f;
	border-radius: 50px;
}

@media screen and (max-width:1040px) {
	.cntCthTxt {
		font-size: 2.8rem;
	}
}

@media screen and (max-width:767px) {
	.btmLw {
		margin: 0 0 20px!important;
	}

	.btmHi {
		margin: 0 0 30px!important;
	}

	.cntCthTxt {
		font-size: 1.8rem;
		margin: 0 0 20px;
	}

	.cntCthTxtGr {
		text-align: left;
		font-size: 1.8rem;
		margin: 0 0 20px;
	}

	.cntCthTxtOr {
		text-align: left;
		font-size: 1.8rem;
		margin: 20px 0 0;
	}
	
	.dtaTxtBox {
		text-align: right;
		margin: 15px 0 0;
		padding: 10px 0 0;
		border-top: dashed 1px #dfdfdf;
	}
	
	.dtaTxt {
		font-size: 1rem;
		padding: 2px 10px;
	}
}

/*=========================================================
　お知らせ topics
=========================================================*/

.tpcAra {
	padding: 100px 30px;
}

.tpcLst li {
	padding: 15px;
	background: #f7f7f7;
	border-radius: 10px;
}

.tpcLst li:not(:last-child) {
	margin: 0 0 30px;
}

.tpcLstBox {
	display: flex;
}

.tpcLstImgBox {
	max-width: 185px;
	width: 100%;
	margin: 0 15px 0 0;
}

.tpcLstImg {
	position: relative;
	overflow: hidden;
	background: #fff;
	border-radius: 8px;
}

.tpcLstImg:before {
	content: "";
	display: block;
	padding-top: 100%;
}

.tpcLstImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tpcLstCntBox {
	width: calc(100% - 200px);
	padding: 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
}

.tpcLstTtlBox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 15px;
	padding: 0 0 10px;
	border-bottom: dashed 1px #dfdfdf;
}

.wp-pagenavi {
	text-align: center;
	margin: 50px 0 0;
}

.wp-pagenavi a,
.wp-pagenavi span {
	text-align: center;
	font-weight: 700;
	font-size: 2.8rem;
	margin: 0 5px;
	padding: 5px 10px;
	color: #333!important;
	box-sizing: border-box;
	background: #f7f7f7!important;
	border-radius: 4px;
}

.wp-pagenavi span.current {
	color: #fff!important;
	box-sizing: border-box;
	background: #018c8f!important;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	height: 100%!important;
	font-size: 2.4rem!important;
	color: #018c8f!important;
	padding: 7px 5px!important;
	background: #fff!important;
	border: solid 1px #018c8f!important;
}

.wp-pagenavi a:hover {
	color: #fff!important;
	background: #018c8f!important;
	transition: all 0.3s ease;
}

@media screen and (max-width:767px) {
	.tpcAra {
		padding: 30px 15px;
	}

	.tpcLst li {
		padding: 10px;
		border-radius: 8px;
	}

	.tpcLst li:not(:last-child) {
		margin: 0 0 15px;
	}

	.tpcLstBox {
		display: block;
	}

	.tpcLstImgBox {
		max-width: 100%;
		margin: 0 0 10px;
	}

	.tpcLstImg {
		border-radius: 6px;
	}

	.tpcLstImg:before {
		padding-top: 80%;
	}

	.tpcLstCntBox {
		width: 100%;
		border-radius: 6px;
	}

	.tpcLstTtlBox {
		display: block;
		margin: 0 0 15px;
		padding: 0 0 15px;
	}
	
	.wp-pagenavi {
		margin: 25px 0 0;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		font-size: 1.8rem;
		margin: 0 3px;
		padding: 7px 9px;
		border-radius: 3px;
	}

	.wp-pagenavi a.previouspostslink,
	.wp-pagenavi a.nextpostslink {
		font-size: 1.6rem!important;
		padding: 7px 5px!important;
	}
}

/*=========================================================
　お知らせ詳細 topics
=========================================================*/

.tpcDtlBox {
	padding: 15px;
	background: #f7f7f7;
	border-radius: 10px;
}

.tpcDtlTtlBox {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 15px;
	padding: 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
}

.tpcTtl {
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.5;
	margin: 0 20px 0 0;
}

.tpcDtlCntBox {
	padding: 30px 15px 10px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
	font-size: 1.8rem;
}

.tpcDtlCntBox p {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.8;
	margin: 0 0 20px;
}

.tpcDtlCntBox b {
	font-weight: 700;
}

.tpcDtlCntBox strong {
	font-weight: 700;
	font-size: 2.2rem;
	color: #018c8f;
}

.tpcDtlCntBox img {
	max-width: 100%;
	height: auto;
	overflow: hidden;
	border-radius: 8px;
}

.tpcDtlCntBox h1 {
	position: relative;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.4;
	margin: 0 0 40px;
	padding: 15px 15px 15px 30px;
	background: #f7f7f7;
	border-radius: 4px;
	z-index: 1;
}

.tpcDtlCntBox h1:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	width: 5px;
	height: calc(100% - 20px);
	background: #018c8f;
	border-radius: 5px;
	z-index: 2;
}

.tpcDtlCntBox h2 {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.4;
	color: #018c8f;
	margin: 0 0 40px;
	padding: 15px 0;
	border-top: solid 1px #018c8f;
	border-bottom: solid 1px #018c8f;
}

.tpcDtlCntBox h3 {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	padding: 0 0 7px;
	margin: 0 0 40px;
	border-bottom: dashed 1px #dfdfdf;
}

.tpcDtlCntBox h4 {
	position: relative;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	margin: 0 0 40px;
	padding: 0 0 0 20px;
}

.tpcDtlCntBox h4:before {
	content: "";
	position: absolute;
	top: calc(50% - 4px);
	left: 0;
	width: 8px;
	height: 8px;
	background: #018c8f;
}

.tpcDtlCntBox h5 {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	color: #018c8f;
	margin: 0 0 40px;
}

.tpcDtlCntBox h6 {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	font-style: italic;
	margin: 0 0 40px;
}

.tpcDtlCntBox ol {
	counter-reset: item;
	list-style-type: none;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.4;
	margin: 0 0 50px;
}

.tpcDtlCntBox ol li {
	position: relative;
	padding: 0 0 0 35px;
}

.tpcDtlCntBox ol li:before {
	text-align: center;
	counter-increment: item;
	content: counter(item);
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	font-size: 1.4rem;
	line-height: 1;
	color: #fff;
	letter-spacing: -0.005em;
	white-space: nowrap;
	padding: 4px 0 0;
	box-sizing: border-box;
	background: #018c8f;
	border-radius: 50%;
}

.tpcDtlCntBox ol li:not(:last-child) {
	margin: 0 0 20px;
}

.tpcDtlCntBox ul {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.4;
	color: #018c8f;
	margin: 0 0 50px;
}

.tpcDtlCntBox ul li {
	position: relative;
	padding: 0 0 0 20px;
}

.tpcDtlCntBox ul li:not(:last-child) {
	margin: 0 0 15px;
}

.tpcDtlCntBox ul li:before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

.tpcDtlCntBox table {
	width: 100%;
	margin: 0 0 50px;
	border-top: solid 1px #dfdfdf;
	border-left: solid 1px #dfdfdf;
}

.tpcDtlCntBox table th {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.6;
	color: #fff;
	padding: 20px;
	box-sizing: border-box;
	background: #018c8f;
	border-right: solid 1px #dfdfdf;
	border-bottom: solid 1px #dfdfdf;
}

.tpcDtlCntBox table td {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.6;
	padding: 20px;
	box-sizing: border-box;
	border-right: solid 1px #dfdfdf;
	border-bottom: solid 1px #dfdfdf;
}

.tpcDtlCntBox blockquote {
	position: relative;
	font-style: italic;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.6;
	margin: 0 0 50px;
	padding: 20px 20px 20px 70px;
	background: #f8f8f8;
	border-radius: 6px;
}

.tpcDtlCntBox blockquote:before {
	content: "“";
	position: absolute;
	top: 15px;
	left: 20px;
	font-style: normal;
	font-weight: 700;
	font-size: 6rem;
	line-height: 1;
	color: #018c8f;
}

@media screen and (max-width:1040px) {
	.tpcDtlTtlBox {
		display: block;
	}
	
	.tpcTtl {
		margin: 0 0 20px;
	}
}

@media screen and (max-width:767px) {
	.tpcDtlBox {
		padding: 10px;
		border-radius: 8px;
	}

	.tpcDtlTtlBox {
		display: block;
		margin: 0 0 10px;
		padding: 10px;
		border-radius: 6px;
	}

	.tpcTtl {
		font-size: 1.8rem;
		line-height: 1.4;
		margin: 0 0 15px;
	}

	.tpcDtlCntBox {
		padding: 15px 10px 10px;
		border-radius: 6px;
	}

	.tpcDtlCntBox p {
		font-size: 1.6rem;
		line-height: 1.6;
		margin: 0 0 15px;
	}

	.tpcDtlCntBox strong {
		font-size: 1.8rem;
	}

	.tpcDtlCntBox img {
		border-radius: 6px;
	}

	.tpcDtlCntBox h1 {
		font-size: 1.8rem;
		margin: 0 0 20px;
		padding: 10px 10px 10px 20px;
		border-radius: 3px;
	}

	.tpcDtlCntBox h1:before {
		top: 8px;
		left: 8px;
		width: 4px;
		height: calc(100% - 18px);
	}

	.tpcDtlCntBox h2 {
		font-size: 1.8rem;
		margin: 0 0 20px;
		padding: 8px 0;
	}

	.tpcDtlCntBox h3 {
		font-size: 1.6rem;
		padding: 0 0 5px;
		margin: 0 0 20px;
	}

	.tpcDtlCntBox h4 {
		font-size: 1.6rem;
		margin: 0 0 20px;
		padding: 0 0 0 18px;
	}

	.tpcDtlCntBox h4:before {
		top: calc(50% - 3px);
		left: 0;
		width: 6px;
		height: 6px;
	}

	.tpcDtlCntBox h5 {
		font-size: 1.6rem;
		line-height: 1.4;
		margin: 0 0 20px;
	}

	.tpcDtlCntBox h6 {
		font-size: 1.6rem;
		margin: 0 0 20px;
	}

	.tpcDtlCntBox ol {
		font-size: 1.6rem;
		margin: 0 0 30px;
	}

	.tpcDtlCntBox ol li {
		padding: 0 0 0 25px;
	}

	.tpcDtlCntBox ol li:before {
		width: 18px;
		height: 18px;
		margin: 3px 0 0;
		padding: 1px 0 0;
	}

	.tpcDtlCntBox ol li:not(:last-child) {
		margin: 0 0 10px;
	}

	.tpcDtlCntBox ul {
		font-size: 1.6rem;
		margin: 0 0 30px;
	}

	.tpcDtlCntBox ul li {
		padding: 0 0 0 15px;
	}

	.tpcDtlCntBox ul li:not(:last-child) {
		margin: 0 0 10px;
	}

	.tpcDtlCntBox table {
		margin: 0 0 30px;
	}
	
	.tpcDtlCntBox table tr,
	.tpcDtlCntBox table th,
	.tpcDtlCntBox table td {
		display: block;
	}

	.tpcDtlCntBox table th {
		font-size: 1.6rem;
		padding: 7.5px;
	}

	.tpcDtlCntBox table td {
		font-size: 1.6rem;
		padding: 7.5px;
	}

	.tpcDtlCntBox blockquote {
		font-size: 1.5rem;
		margin: 0 0 20px;
		padding: 10px 10px 10px 40px;
		border-radius: 4px;
	}

	.tpcDtlCntBox blockquote:before {
		top: 5px;
		left: 10px;
		font-size: 5rem;
	}
}

/*=========================================================
　お問い合わせ contact
=========================================================*/

.cctAra {
	padding: 100px 30px;
}

.cctTelCtr {
	text-align: center;
	margin: 0 0 80px;
}

.cctTelBox {
	display: inline-block;
	padding: 15px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 10px;
}

.cctTelInr {
	text-align: center;
	padding: 25px;
	background: #fff;
	border-radius: 8px;
}

.cctTel {
	position: relative;
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 4.6rem;
	line-height: 1;
	white-space: nowrap;
	margin: 0 0 20px;
	padding: 0 0 0 70px;
	background: url(../images/common/icn_free.png) left bottom no-repeat;
	background-size: 60px auto;
}

.cctTel [data-ruby] {
	position: relative;
}

.cctTel [data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: 0;
	left: 5px;
	right: 0;
	margin: auto;
	font-weight: 400;
	font-size: 1.5rem;
	letter-spacing: 1rem;
}

.cctTel:after {
	content: "";
	position: absolute;
	bottom: -5px;
	right: 0;
	width: calc(100% - 70px);
	height: 1px;
	background: #018c8f;
}

.cctTelTxt {
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
}

.cctTxt {
	text-align: center;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.6;
	margin: 0 0 60px;
}

.cctTxt .stgTxt {
	font-weight: 700;
	color: #ff0000;
}

.frmBox {
	padding: 40px 30px 30px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 15px;
}

.frmStpImg {
	max-width: 520px;
	margin: 0 auto 40px;
}

.frmInr {
	padding: 30px;
	background: #fff;
	border-radius: 10px;
}

.frmLst {
	margin: 0 0 30px;
}

.frmLst li {
	display: flex;
	align-items: flex-start;
	padding: 30px 0;
	border-bottom: solid 1px #dfdfdf;
}

.frmLstTtlBox {
	max-width: 220px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 30px 0 0;
	padding: 20px 0 0;
}

.frmLstTtl {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
}

.essIcn {
	text-align: center;
	display: inline-block;
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1;
	color: #fff;
	padding: 6px;
	background: #ff0000;
	border-radius: 3px;
}

.frmLstCntBox {
	width: calc(100% - 250px);
}

.frmLstHorBox {
	display: flex;
	align-items: center;
}

.frmLstHorBox p {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	margin: 0 15px 0 0;
}

.frmBox01 {
	width: 100%;
	padding: 20px 15px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	color: #333;
	box-sizing: border-box;
	background: #f7f7f7;
	border: solid 1px #f1f1f1;
	border-radius: 6px!important;
}

.frmBox02 {
	width: 100px;
	padding: 20px 15px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	color: #333;
	box-sizing: border-box;
	background: #f7f7f7;
	border: solid 1px #f1f1f1;
	border-radius: 6px!important;
}

.frmBox03 {
	width: 170px;
	padding: 20px 15px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	color: #333;
	box-sizing: border-box;
	background: #f7f7f7;
	border: solid 1px #f1f1f1;
	border-radius: 6px!important;
}

.frmBox04 {
	width: 100%;
	height: 200px;
	padding: 20px 15px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	color: #333;
	box-sizing: border-box;
	background: #f7f7f7;
	border: solid 1px #f1f1f1;
	border-radius: 6px!important;
}

::placeholder {
  color: #acacac;
}

.frmLstPlcTtl {
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	margin: 0 0 20px;
}

.frmLstPlcBox {
	max-width: 700px;
	margin: 0 auto 40px;
	padding: 20px 30px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 6px;
}

.frmLstPlcTxt {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.8;
}

.cctDneBtn {
	max-width: 320px;
	margin: 0 auto;
}

.cctDneBtn button,
.cctDneBtn input {
	text-align: center;
	width: 100%;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #fff;
	padding: 23px 30px;
	background: #018c8f;
	border: none;
	border-radius: 6px!important;
	cursor: pointer;
}

.cctBakBtn {
	max-width: 240px;
	margin: 0 auto;
}
.cctBakBtn button,
.cctBakBtn input {
	text-align: center;
	width: 100%;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #fff;
	margin: 20px 0 0;
	padding: 18px 20px;
	background: #168ab0;
	border: none;
	border-radius: 6px!important;
	cursor: pointer;
}

.errTxt {
	display: block;
	font-weight: 500!important;
	font-size: 1.5rem!important;
	line-height: 1.2!important;
	color: #ff0000!important;
	margin: 10px 0 0!important;
}

@media screen and (max-width:1040px) {
	.frmBox {
		padding: 30px 20px 20px;
	}
}

@media screen and (max-width:767px) {
	
	.cctAra {
		padding: 30px 15px;
	}
	
	.cctTelCtr {
		margin: 0 0 30px;
	}

	.cctTelBox {
		padding: 7.5px;
		border-radius: 8px;
	}

	.cctTelInr {
		padding: 15px;
		border-radius: 6px;
	}

	.cctTel {
		font-size: 3rem;
		margin: 0 0 10px;
		padding: 0 0 0 35px;
		background-size: 30px auto;
	}

	.cctTel [data-ruby]::before {
		left: 4px;
		font-weight: 400;
		font-size: 1rem;
		letter-spacing: 0.75rem;
	}

	.cctTel:after {
		bottom: -3px;
		width: calc(100% - 35px);
	}

	.cctTelTxt {
		font-size: 1.4rem;
	}

	.cctTxt {
		text-align: left;
		font-size: 1.5rem;
		margin: 0 0 20px;
	}
	
	.frmBox {
		padding: 20px 10px 10px;
		border-radius: 8px;
	}

	.frmStpImg {
		max-width: 260px;
		margin: 0 auto 15px;
	}

	.frmInr {
		padding: 0 10px 15px;
		border-radius: 6px;
	}

	.frmLst li {
		display: block;
		padding: 15px 0;
	}

	.frmLstTtlBox {
		max-width: 100%;
		margin: 0 0 10px;
		padding: 0;
	}

	.frmLstTtl {
		font-size: 1.5rem;
	}
	
	.essIcn {
		font-size: 1rem;
		padding: 4px;
	}

	.frmLstCntBox {
		width: 100%;
	}

	.frmLstHorBox p {
		font-size: 1.5rem;
		margin: 0 10px 0 0;
	}

	.frmBox01 {
		width: 100%;
		padding: 12px 10px;
		font-size: 1.5rem;
		border-radius: 4px!important;
	}

	.frmBox02 {
		width: 80px;
		padding: 12px 10px;
		font-size: 1.5rem;
		border-radius: 4px!important;
	}

	.frmBox03 {
		width: 100%;
		padding: 12px 10px;
		font-size: 1.5rem;
		border-radius: 4px!important;
	}

	.frmBox04 {
		width: 100%;
		height: 120px;
		padding: 12px 10px;
		font-size: 1.5rem;
		border-radius: 4px!important;
	}
	
	.frmLstPlcTtl {
		font-size: 1.6rem;
		margin: 0 0 15px;
	}

	.frmLstPlcBox {
		margin: 0 auto 20px;
		padding: 10px;
		border-radius: 4px;
	}

	.frmLstPlcTxt {
		font-size: 1.4rem;
	}

	.cctDneBtn {
		max-width: 260px;
	}

	.cctDneBtn button,
	.cctDneBtn input {
		font-size: 1.5rem;
		padding: 15px 10px;
		border-radius: 4px!important;
	}

	.cctBakBtn {
		max-width: 200px;
	}
	
	.cctBakBtn button,
	.cctBakBtn input {
		font-size: 1.4rem;
		margin: 15px 0 0;
		padding: 12px 10px;
		border-radius: 4px!important;
	}

	.errTxt {
		font-size: 1.4rem!important;
	}
}

/*=========================================================
　クーポン券 coupon
=========================================================*/

.cpnAra {
	padding: 100px 30px;
}

.cpnLst {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.cpnLst {
	margin: 0 -20px 40px;
}

.cpnLst li {
	width: calc(33.33% - 20px);
	margin: 0 10px 40px;
}

.cpnLst li div {
	width: 280px;
	position: relative;
	min-height: 580px;
	margin: 0 auto;
	background-size: 280px auto;
	background-repeat: no-repeat;
}

.cpnLstTxt {
	text-align: center;
	position: absolute;
	bottom: 25px;
	left: 0;
	right: 0;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #333;
	margin: 0 auto;
}

.cpnLstTxt span {
	font-weight: 700;
	font-size: 1.6rem;
	color: #e04876;
}

.atnFrmTxtBox {
	text-align: center;
	margin: 0 0 50px;
}

.atnFrmTxt {
	text-align: center;
	display: inline-block;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.2;
	color: #ff0000;
	padding: 7.5px 15px;
	border: solid 1px #ff0000;
}

.atnTxtBox {
	text-align: center;
	margin: 0 0 30px;
}

.atnTxt {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.5;
	padding: 0 0 0 40px;
	z-index: 1;
}

.atnTxt:before {
	content: "!";
	position: absolute;
	top: 7px;
	left: 13px;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1;
	color: #fff;
	z-index: 3;
}

.atnTxt:after {
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	width: 30px;
	height: 30px;
	background: #f39800;
	border-radius: 50%;
	z-index: 2;
}


@media screen and (max-width:1040px) {
	.cpnLst li {
		width: calc(50% - 20px);
	}
}

@media screen and (max-width:767px) {
	.cpnAra {
		padding: 30px 15px;
	}

	.cpnLst {
		margin: 0 -5px 20px;
	}
	
	.cpnLst {
		display: block;
		margin: 0 0 10px;
	}
	
	.cpnLst li {
		width: 100%;
		margin: 0 0 20px;
	}

	.atnFrmTxtBox {
		margin: 0 0 20px;
	}

	.atnFrmTxt {
		text-align: left;
		font-size: 1.5rem;
		padding: 5px 10px;
	}

	.atnTxtBox {
		margin: 0 0 15px;
	}

	.atnTxt {
		text-align: left;
		font-size: 1.8rem;
		line-height: 1.4;
		padding: 0 0 0 25px;
	}

	.atnTxt:before {
		top: 3px;
		left: 7px;
		font-size: 1.6rem;
	}

	.atnTxt:after {
		top: 3px;
		width: 18px;
		height: 18px;
	}

}

/*=========================================================
　コンタクトの選び方 select
=========================================================*/

.slcAra {
	padding: 100px 30px;
}

@media screen and (max-width:767px) {
	.slcAra {
		padding: 30px 15px;
	}
}

/*=========================================================
　ブログ一覧 blog
=========================================================*/

.blgAra {
	padding: 100px 30px;
}

.blgWrp {
	max-width: 1200px;
	display: flex;
	margin: 0 auto;
}

.blgMnClm {
	width: calc(100% - 350px);
}

.blgLst {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px -30px;
}

.blgLst li {
	width: calc(33.33% - 20px);
	margin: 0 10px 30px;
	padding: 10px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 8px;
}

.blgLstImg {
	position: relative;
	margin: 0 0 10px;
	overflow: hidden;
	border-radius: 8px;
}

.blgLstImg:before {
	content: "";
	display: block;
	padding-top: 86.5%;
}

.blgLstImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blgLstCntBox {
	padding: 10px;
	background: #fff;
	border-radius: 6px;
}

.blgLstTtl {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.4;
}

.blgDtaBox {
	text-align: right;
	margin: 10px 0 0;
	padding: 15px 0 0;
	border-top: dashed 1px #dfdfdf;
}

.blgSubClm {
	max-width: 300px;
	width: 100%;
	margin: 0 0 0 50px;
}

.blgSubClmBnr {
	margin: 0 0 50px;
	overflow: hidden;
	border: solid 2px #3f8fd2;
	border-radius: 8px;
}

.blgSubClmTtl {
	position: relative;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	margin: 0 0 30px;
	padding: 15px 15px 15px 25px;
	background: #f7f7f7;
	border-radius: 4px;
	z-index: 1;
}

.blgSubClmTtl:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	width: 5px;
	height: calc(100% - 20px);
	background: #018c8f;
	border-radius: 5px;
	z-index: 2;
}

.blgSubClmCtgLst {
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.3;
	margin: 0 0 50px;
}

.blgSubClmCtgLst li:not(:last-child) {
	margin: 0 0 10px;
}

.blgSubClmTagLst {
	display: flex;
	flex-wrap: wrap;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.3;
	margin: 0 -5px 40px;
}

.blgSubClmTagLst li {
	margin: 0 5px 10px;
}

.blgSubClmTagLst li a {
	display: block;
	padding: 10px 15px;
	background: #edf7f7;
	border-radius: 50px;
}

.blgSubClmMinBnrLst li:not(:last-child) {
	margin: 0 0 20px;
}

.blgSubClmMinBnr {
	overflow: hidden;
	border: solid 1px #dfdfdf;
	border-radius: 4px;
}

.blgSubClmMinBnr a {
	display: block;
	padding: 15px;
}

@media screen and (max-width:1040px) {
	.blgMnClm {
		width: calc(100% - 300px);
	}

	.blgLst {
		margin: 0 -7.5px -30px;
	}

	.blgLst li {
		width: calc(50% - 15px);
		margin: 0 7.5px 30px;
	}

	.blgSubClm {
		max-width: 270px;
		margin: 0 0 0 30px;
	}
}

@media screen and (max-width:767px) {
	.blgAra {
		padding: 30px 15px;
	}

	.blgWrp {
		display: block;
	}

	.blgMnClm {
		width: 100%;
	}

	.blgLst {
		margin: 0 -5px -15px;
	}

	.blgLst li {
		width: calc(50% - 10px);
		margin: 0 5px 15px;
		padding: 7.5px;
		border-radius: 6px;
	}

	.blgLstImg {
		margin: 0 0 7.5px;
		border-radius: 6px;
	}

	.blgLstCntBox {
		padding: 7.5px;
		border-radius: 4px;
	}

	.blgLstTtl {
		font-size: 1.5rem;
	}

	.blgDtaBox {
		padding: 10px 0 0;
	}

	.blgSubClm {
		max-width: 100%;
		margin: 30px 0 0;
	}

	.blgSubClmBnr {
		margin: 0 0 20px;
		border: solid 1px #3f8fd2;
		border-radius: 6px;
	}

	.blgSubClmTtl {
		font-size: 1.6rem;
		margin: 0 0 15px;
		padding: 10px 10px 10px 20px;
		border-radius: 3px;
	}

	.blgSubClmTtl:before {
		top: 8px;
		left: 8px;
		width: 4px;
		height: calc(100% - 16px);
	}

	.blgSubClmCtgLst {
		font-size: 1.6rem;
		margin: 0 0 30px;
	}

	.blgSubClmTagLst {
		font-size: 1.4rem;
		margin: 0 -3px 20px;
	}

	.blgSubClmTagLst li {
		margin: 0 3px 10px;
	}

	.blgSubClmTagLst li a {
		padding: 7.5px 10px;
	}

	.blgSubClmMinBnrLst li:not(:last-child) {
		margin: 0 0 10px;
	}

	.blgSubClmMinBnr a {
		text-align: center;
		padding: 10px;
	}
	
	.blgSubClmMinBnr img {
		max-width: 400px;
	}
}

/*=========================================================
　遠近両用コンタクトレンズのご紹介 biforcal
=========================================================*/

.bifAra {
	padding: 100px 30px;
}

.bifBox {
	margin: 0 0 60px;
	padding: 30px 20px;
	background: #f7f7f7;
	border-radius: 10px;
}

.bifImgLst {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 30px;
	overflow: hidden;
	border-radius: 8px;
}

.bifImgLst li {
	width: 33.33%;
	height: 350px;
	position: relative;
}

.bifImgLst li:nth-child(1) {
	background: url(../images/biforcal/img_biforcal_01.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLst li:nth-child(2) {
	background: url(../images/biforcal/img_biforcal_02.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLst li:nth-child(3) {
	background: url(../images/biforcal/img_biforcal_03.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLst li:nth-child(4) {
	background: url(../images/biforcal/img_biforcal_04.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLst li:nth-child(5) {
	background: url(../images/biforcal/img_biforcal_05.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLst li:nth-child(6) {
	background: url(../images/biforcal/img_biforcal_06.jpg) top no-repeat;
	background-size: cover;
}

.bifImgLstTtl {
	text-align: center;
	width: 100%;
	height: 80px;
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
	color: #fff;
	background: rgba(1,140,143,0.5);
}

.bifChkBox {
	display: flex;
}

.bifChkBoxLt {
	width: calc(50% - 10px);
	margin: 0 10px 0 0;
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
}

.bifChkBoxRt {
	width: calc(50% - 10px);
	margin: 0 0 0 10px;
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
}

.bifBtnBox {
	margin: -30px 0 80px;
}

.mcnBox {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 30px 0 0;
}

.mcnBoxTtl {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
	margin: 0 10px 0 0;
}

.mcnBoxLg {
	max-width: 150px;
}

@media screen and (max-width:1200px) {
	.bifImgLstTtl {
		font-size: 1.8rem;
	}
}

@media screen and (max-width:767px) {
	.bifAra {
		padding: 30px 15px;
	}

	.bifBox {
		margin: 0 0 20px;
		padding: 20px 10px;
		border-radius: 8px;
	}

	.bifImgLst {
		margin: 0 0 20px;
		border-radius: 6px;
	}

	.bifImgLst li {
		width: 50%;
		height: 180px;
	}

	.bifImgLstTtl {
		height: 60px;
		font-size: 1.4rem;
	}
	
	.bifChkBox {
		display: block;
	}

	.bifChkBoxLt {
		width: 100%;
		margin: 0 0 20px;
		padding: 10px;
		border-radius: 6px;
	}

	.bifChkBoxRt {
		width: 100%;
		margin: 0;
		padding: 10px;
		border-radius: 6px;
	}

	.bifBtnBox {
		margin: 0 0 30px;
	}

.mcnBox {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 30px 0 0;
}

.mcnBoxTtl {
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1;
	margin: 0 10px 0 0;
}

.mcnBoxLg {
	max-width: 150px;
}
}

/*=========================================================
　取扱商品 product
=========================================================*/

.prdAra {
	padding: 100px 30px;
}

.prdNavBox {
	max-width: 1000px;
	margin: 0 auto 80px;
	padding: 15px;
	background: #f7f7f7;
	border-radius: 10px;
}

.prdNav {
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	background: #fff;
	border-radius: 8px;
}

.prdNav li {
	width: 25%;
	box-sizing: border-box;
	border-right: solid 1px #dfdfdf;
}

.prdNav li:nth-child(4n) {
	border-right: none;
}

.prdNav li:nth-child(-n+4) {
	border-bottom: solid 1px #dfdfdf;
}

.prdNav li a {
	text-align: center;
	display: block;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.3;
	padding: 20px;
}

.prdNav li span {
	text-align: left!important;
	display: inline-block;
	position: relative;
	padding: 0 0 0 30px;
}

.prdNav li span:before {
    content: "";
    position: absolute;
    top: calc(50% - 9px);
    left: 0;
    width: 18px;
    height: 18px;
    background: url(../images/common/arw_rt_wt.png) center no-repeat #018c8f;
    background-size: 10px auto;
    border-radius: 50%;
	transform:rotate(90deg);
}

.prdLst:not(.prdIcnLst) {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -20px 40px;
}

.prdLst li:not(.prdIcnLst li) {
	width: calc(33.33% - 40px);
	margin: 0 20px 40px;
	padding: 15px;
	box-sizing: border-box;
	background: #f7f7f7;
	border-radius: 8px;
}

.prdLstImg {
	position: relative;
	margin: 0 0 15px;
	overflow: hidden;
	border-radius: 6px;
}

.prdLstImg:before {
	content: "";
	display: block;
	padding-top: 66.5%;
}

.prdLstImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.prdNme {
	font-weight: 700;
	font-size: 1.6rem;
	margin: 0 0 10px;	
	background: #018c8f;
	color: #fff;
	padding: 10px;
}

.prdTtl {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.4;
	margin: 0 0 15px;
}

.prdLstDtaBox {
	margin: 10px 0 0;
	padding: 15px 0 0;
	border-top: dashed 1px #dfdfdf;
}

.prdLstDta {
	font-weight: 400;
	font-size: 1.3rem;
	line-height: 1.3;
	color: #777;
	margin: 0 0 25px;
}

.prdIcnLst {
	display: flex;
	flex-wrap: wrap;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1;
	color: #fff;
	margin: 0 -5px -10px;
}

.prdIcnLst li {
	margin: 0 5px 10px;
}

.eyeIcn {
	padding: 7px 10px;
	background: #0c5aa3;
	border-radius: 50px;
}

.eyeIcn span {
	padding: 5px 5px 5px 28px;
	background: url(../images/common/icn_eye.png) left no-repeat;
	background-size: 20px auto;
}

.mlsIcn01 {
	padding: 7px 10px;
	background: #13274c;
	border-radius: 50px;
}

.mlsIcn02 {
	font-weight: 700;
	color: #13274c;
	padding: 7px 10px;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #13274c;
	border-radius: 50px;
}

.mlsIcn01 span {
	padding: 5px 5px 5px 28px;
	background: url(https://www.naracon.jp/wp/wp-content/uploads/2026/05/icn_mls_01.png) left no-repeat;
	background-size: 20px auto;
}

.mlsIcn02 span {
	padding: 5px 5px 5px 28px;
	background: url(https://www.naracon.jp/wp/wp-content/uploads/2026/05/icn_mls_02.png) left no-repeat;
	background-size: 20px auto;
}

@media screen and (max-width:1040px) {
	.prdNav li {
		width: 50%;
		border-right: none;
		border-bottom: solid 1px #dfdfdf;
	}
	
	.prdNav li:nth-child(odd) {
		border-right: solid 1px #dfdfdf;
	}

	.prdNav li:nth-last-child(-n+2) {
		border-bottom: none;
	}
	
	.prdLst:not(.prdIcnLst) {
		margin: 0 -10px 30px;
	}

	.prdLst li:not(.prdIcnLst li) {
		width: calc(33.33% - 20px);
		margin: 0 10px 30px;
		padding: 10px;
	}
}

@media screen and (max-width:767px) {
	.prdAra {
		padding: 30px 15px;
	}

	.prdNavBox {
		margin: 0 auto 30px;
		padding: 10px;
		border-radius: 8px;
	}

	.prdNav {
		display: block;
		border-radius: 6px;
	}
	
	.prdNav li {
		width: 100%;
	}

	.prdNav li:nth-child(odd) {
		border-right: none;
	}
	
	.prdNav li:nth-last-child(-n+2) {
		border-bottom: solid 1px #dfdfdf;
	}
	
	.prdNav li:nth-last-child(-n+1) {
		border-bottom: none;
	}
	
	.prdNav li a {
		text-align: left;
		font-size: 1.5rem;
		padding: 17.5px 10px;
	}

	.prdNav li span {
		padding: 0 0 0 25px;
	}

	.prdNav li span:before {
		top: calc(50% - 8px);
		width: 16px;
		height: 16px;
	}
	
	.prdNav li span br {
		display: none;
	}

	.prdLst:not(.prdIcnLst) {
		display: block;
		margin: 0;
	}

	.prdLst li:not(.prdIcnLst li) {
		width: 100%;
		margin: 0 0 15px;
		padding: 10px;
	}
	
	.prdLstImg {
		margin: 0 0 10px;
		border-radius: 4px;
	}

	.prdTtl {
		font-size: 1.6rem;
		margin: 0 0 10px;
	}

	.prdLstDta {
		font-size: 1.2rem;
		margin: 0 0 20px;
	}

	.prdIcnLst {
		font-size: 1.2rem;
		margin: 0 -5px -5px;
	}

	.prdIcnLst li {
		margin: 0 5px 5px;
	}

	.eyeIcn {
		padding: 5px 7.5px;
	}

	.eyeIcn span {
		padding: 3px 3px 3px 25px;
		background-size: 15px auto;
	}

	.mlsIcn01,.mlsIcn02 {
		padding: 5px 7.5px;
	}

	.mlsIcn01 span,.mlsIcn02 span {
		padding: 3px 3px 3px 25px;
		background-size: 15px auto;
	}
}

/*=========================================================
　定額制コンタクトメルスプランのご紹介 mels
=========================================================*/

.mlsAra {
	padding: 100px 30px;
}

.mlsNavBox {
	margin: 0 0 80px;
	padding: 15px;
	background: #f7f7f7;
	border-radius: 10px;
}

.mlsNav {
	display: flex;
	margin: 0 -7.5px;
}

.mlsNav li {
	width: calc(33.33% - 15px);
	margin: 0 7.5px;
}

.mlsNavImg {
	margin: 0 0 15px;
	overflow: hidden;
	border-radius: 10px;
}

.mlsTabBox {
	margin: 0 0 80px;
	padding: 20px;
	background: #f7f7f7;
	border-radius: 10px;
}

.mlsTabNavBox {
	border-bottom: solid 3px #018c8f;
}

.mlsTabNav {
	text-align: center;
	display: flex;
	margin: 0 -6px;
}

.mlsTabNav li {
	width: calc(14.28% - 12px);
	height: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 6px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 6px 6px 0 0;
}

.tab {
	text-align: center;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.3;
	cursor: pointer;
	transition: all 0.2s ease;
}

.tab.act {
	color: #fff;
	background: #018c8f;
	cursor: default;
}

.tab:hover {
	opacity: 0.5;
}

.tab.act:hover {
	opacity: 1;
}

.tabCnt {
	  display: none;
}

.tabCnt.shw {
	display: block;
}

.mlsTabCntBox {
	padding: 30px;
	background: #fff;
	border-radius: 0 0 8px 8px;
}

.mlsTabLst {
	display: flex;
	justify-content: center;
	margin: 0 -15px 50px;
}

.mlsTabLst li {
	width: calc(33.33% - 30px);
	margin: 0 15px;
}

.mlsTabLstImg {
	position: relative;
	margin: 0 0 20px;
	overflow: hidden;
	border: solid 1px #dfdfdf;
	border-radius: 6px;
}

.mlsTabLstImg:before {
	content: "";
	display: block;
	padding-top: 65%;
}

.mlsTabLstImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mlsTabLstTtl {
	text-align: center;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.4;
	color: #018c8f;
}

@media screen and (max-width:1200px) {
	.mlsNavBox {
		max-width: 800px;
		margin: 0 auto 80px;
	}

	.mlsNav {
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 -7.5px -30px;
	}

	.mlsNav li {
		width: calc(50% - 15px);
		margin: 0 7.5px 30px;
	}

	.mlsTabNav {
		margin: 0 -3px;
	}

	.mlsTabNav li {
		width: calc(14.28% - 6px);
		margin: 0 3px;
	}

	.tab {
		font-size: 1.6rem;
		letter-spacing: -0.005em;
	}
	
	.mlsTabLst {
		margin: 0 -10px 30px;
	}

	.mlsTabLst li {
		width: calc(33.33% - 20px);
		margin: 0 10px;
	}
	
	.mlsTabLstTtl {
		text-align: left;
		font-size: 1.6rem;
	}
	
	.mlsTabLstTtl br {
		display: none;
	}
}

@media screen and (max-width:767px) {
	.mlsAra {
		padding: 30px 15px;
	}

	.mlsNavBox {
		max-width: 450px;
		margin: 0 auto 30px;
		padding: 10px;
		border-radius: 8px;
	}

	.mlsNav {
		display: block;
		margin: 0;
	}

	.mlsNav li {
		width: 100%;
		margin: 0;
	}
	
	.mlsNavBox li:not(:last-child) {
		margin: 0 0 15px;
	}

	.mlsNavImg {
		margin: 0 0 10px;
		border-radius: 8px;
	}

	.mlsTabBox {
		margin: 0 0 30px;
		padding: 10px;
		border-radius: 8px;
	}

	.mlsTabNavBox {
		border-bottom: none;
	}

	.mlsTabNav {
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 -5px;
	}

	.mlsTabNav li {
		width: calc(50% - 10px);
		height: auto;
		margin: 0 5px 10px;
		padding: 3px 0;
		box-sizing: border-box;
		border: solid 1px #018c8f;
		border-radius: 50px;
	}

	.tab {
		font-size: 1.4rem;
		line-height: 1.2;
	}

	.mlsTabCntBox {
		padding: 15px;
		border-radius: 6px;
	}

	.mlsTabLst {
		flex-wrap: wrap;
		margin: 0 -5px 5px;
	}

	.mlsTabLst li {
		width: calc(50% - 10px);
		margin: 0 5px 15px;
	}

	.mlsTabLstImg {
		margin: 0 0 10px;
		border-radius: 4px;
	}

	.mlsTabLstTtl {
		text-align: left;
		font-size: 1.5rem;
	}
}

/*=========================================================
　店舗情報･アクセス access
=========================================================*/

.acsAra {
	padding: 100px 30px;
}

.acsMapBox {
	width: 100%;
	height: 0;
	position: relative;
	margin: 0 0 60px;
	padding-top: 37.5%;
	overflow: hidden;
	border-radius: 10px
}

.acsMapBox iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.lwrCntMinBtnBox {
	position: relative;
}

.lwrCntMinBtnBox .cntFrmTxt {
	position: absolute;
	top: 0;
	right: 0;
}

@media screen and (max-width:767px) {
	.acsAra {
		padding: 30px 15px;
	}
	
	.acsMapBox {
		margin: 0 0 30px;
		padding-top: 60%;
	}
	
	.lwrCntMinBtnBox .cntFrmTxt {
		position: relative;
	}
}

/*=========================================================
　当店の特長 shop
=========================================================*/

.shpAra {
	padding: 100px 30px;
}

@media screen and (max-width:767px) {
	.shpAra {
		padding: 30px 15px;
	}
}

/*=========================================================
　404 NOT FOUND
=========================================================*/

.notAra {
	margin: 155px 0 0;
	padding: 80px 30px;
}

.notWrp {
	max-width: 1200px;
	min-height: 350px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
}

.notTtl {
	text-align: center;
	font-weight: 900;
	font-size: 4rem;
	line-height: 1.1;
	color: #ff0004;
	margin: 0 0 50px;
}

.notTtl .bigTxt {
	font-weight: 900;
	font-size: 15rem;
}

.notTxt {
	text-align: center;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.4;
}

@media screen and (max-width:1040px) {
	.notAra {
		margin: 80px 0 0;
		padding: 80px 30px;
	}
}

@media screen and (max-width:767px) {
	.notAra {
		margin: 60px 0 0;
		padding: 40px 15px;
	}
	
	.notWrp {
		min-height: auto;
		display: block;
	}

	.notTtl {
		font-size: 2.5rem;
		margin: 0 0 30px;
	}

	.notTtl .bigTxt {
		font-size: 10rem;
	}

	.notTxt {
		font-size: 1.7rem;
	}
}


/*=========================================================

TB

=========================================================*/

@media screen and (min-width:768px) and (max-width:1040px) {

	.pc   { display: none!important;}
	.pcsp { display: none!important;}
	.sp   { display: none!important;}
	
	.pctb { display: inline-block!important;}
	.tb   { display: inline-block!important;}
	.tbsp { display: inline-block!important;}

}

/*=========================================================

SP

=========================================================*/

@media screen and (max-width:767px) {
	
	.pc   { display: none!important;}
	.tb   { display: none!important;}
	.pctb { display: none!important;}
	
	.pcsp { display: inline-block!important;}
	.tbsp { display: inline-block!important;}   
	.sp   { display: inline-block!important;}
	
	.opacity a:active {
		opacity: 0.50;
		filter: alpha(opacity=50);
		-ms-filter: "alpha(opacity=50)";
		-moz-opacity: 0.50;
		-khtml-opacity: 0.50;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
		transition: all 0.2s ease;
		text-decoration: none!important;
	}
	
	a[href^="tel:"] {
		pointer-events: auto!important;
	}
	
	input[type="button"],input[type="text"],input[type="submit"],input[type="image"],input[type="date"],textarea, select {
		-webkit-appearance: none;
		border-radius: 0;
	}

}