@charset "UTF-8";

/* ie11ハック */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	img[src$=".svg"] {
		width: 100%;
		height: auto;
	}
}

/* デフォルト定義/* デフォルト定義 */
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic");
  font-weight: 400;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic");
  font-weight: 500;
}
@font-face {
  font-family: "Custom Yu Gothic";
  src: local("Yu Gothic");
  font-weight: bold;
}
*,*:before,*:after {
	-webkit-box-sizing: border-box;
	box-sizing		: border-box;
}
html {
	font-size: 10px;
}
body {
	line-height: 1;
	min-height: 100%;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	font-size: 14px;
	color: #212121;
	text-align: justify;
	text-justify: inter-ideograph;
}
a {
	color: #212121;
	text-decoration: none;
}
a > * {
	-webkit-transition:all 200ms linear;
	transition		:all 200ms linear;
	box-shadow: #fff 0 0 0;
	-webkit-backface-visibility: hidden;
			backface-visibility: hidden;
}
.ua-pc a:hover > * {
	opacity: 0.6;
}
.ua-pc a.noHoverAction:hover > * {
	opacity: 1;
}
a.hoverAction {
	position: relative;
	display: inline-block;
	vertical-align: top;
}
a.hoverAction:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	-webkit-transition:all 200ms linear;
	transition		:all 200ms linear;
}
body.ua-pc a.hoverAction:hover:before {
	background-color: rgba(255,255,255,0.7);
}
img {
	vertical-align: bottom;
	max-width: 100%;;
	height: auto;
}
ul,ol {
	list-style: none;
}
.mintyou {
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-family: YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* 各種パーツ定義 */
.static { position:static; }
.relative { position:relative; }
.absolute { position:absolute; }
.sticky { position:sticky; }
.fixed { position:fixed; }
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.flex.space-between {/* 両端揃え */
	justify-content: space-between;
}
.flex.space-around {/* 均等割り */
	justify-content: space-around;
}
.displaynone {
	display: none !important;
}
.bold {
	font-weight: bold;
}
.block {
	display: block;
}
.colbox ,
.colbox > .colbox {
	letter-spacing: -0.4em;
}
.colbox > * {
	letter-spacing: normal;
}
.col {
	display: inline-block;
	vertical-align: top;
}
.table {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.table-header {
	display: table-header-group;
}
.table-body {
	display: table-row-group;
}
.table-footer {
	display: table-footer-group;
}
.table-row {
	display: table-row;
}
.table-cell {
	display: table-cell;
	vertical-align: top;
}
.image {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	height: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	padding-top: 100%;
}
.image.no-image {
	position: relative;
	background-color: #ccc;
}
.image.no-image:before {
	position: absolute;
	content: 'NO IMAGE';
	font-weight: bold;
	font-size: 1.285rem;
	line-height: 1;
	margin-top: -0.5em;
	color: #fff;
	width: 100%;
	top: 50%;
	left: 0;
	text-align: center;
}
.ac { text-align: center; }
.al {
	text-align: justify;
	text-justify: inter-ideograph;
}
.ar { text-align: right; }
.sp {
	display: none !important;
}
.ua-tb a[href^="tel:"] ,
.ua-pc a[href^="tel:"] {
	pointer-events: none;
}
@media only screen and (max-width: 767px){
	.sp {
		display: block !important;
	}
	img.sp ,
	svg.sp ,
	span.sp ,
	br.sp {
		display: inline-block !important;
	}
	.pc {
		display: none !important;
	}
	.fadeinUPsp {
		opacity: 0;
		-webkit-transform: translate3d(0, 45px, 0);
				transform: translate3d(0, 45px, 0);
	}
	.fadeinUPsp.on {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
		-webkit-transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
		transition		: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	.fadeinUPsp + .fadeinUPsp.on {
		transition-delay: 200ms;
	}
	.fadeinsp {
		opacity: 0;
	}
	.fadeinsp.on {
		opacity: 1;
		-webkit-transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
				transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	/* スマホ対策 */
	* {
		-webkit-overflow-scrolling: touch;
	}
	select ,
	input[type="button"],
	input[type="text"],
	input[type="number"],
	input[type="url"],
	input[type="submit"] {
		-webkit-appearance: none !important;
		border-radius: 0;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
	}
	input[type="text"]{
		line-height:1;
		padding: 5px 3px;
	}
	::-webkit-input-placeholder {
		padding-top: 2px;
	}
}
.fadeinUP {
	opacity: 0;
	-webkit-transform: translate3d(0, 45px, 0);
			transform: translate3d(0, 45px, 0);
}
.fadeinUP.on {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
			transform: translate3d(0, 0, 0);
	-webkit-transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
	transition		: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
.fadeinUP + .fadeinUP.on {
	transition-delay: 200ms;
}
.fadein {
	opacity: 0;
}
.fadein.on {
	opacity: 1;
	-webkit-transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
			transition: all 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
*:focus {
  outline: none;
}
/* IE8+, Chrome */
input, button {
  outline: none;
}

/* Firefox */
input::-moz-focus-inner, button::-moz-focus-inner {
  border: 0;
}