@charset "utf-8";
/* CSS Document */

/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
pre,
textarea {
	overflow: auto
}

[hidden],
audio:not([controls]),
template {
	display: none
}

details,
main,
summary {
	display: block
}

input[type=number] {
	width: auto
}

input[type=search] {
	-webkit-appearance: textfield
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type='submit'] {
	-webkit-appearance: none
}

progress {
	display: inline-block
}

small {
	font-size: 75%
}

textarea {
	resize: vertical
}

[unselectable] {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

*,
::after,
::before {
	box-sizing: inherit;
	border-style: solid;
	border-width: 0
}

* {
	font-size: inherit;
	line-height: inherit;
	margin: 0;
	padding: 0
}

::after,
::before {
	text-decoration: inherit;
	vertical-align: inherit
}

:root {
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	box-sizing: border-box;
	cursor: default;
	font: 16px/1.5 sans-serif;
	text-rendering: optimizeLegibility
}

a {
	text-decoration: none
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle
}

button,
input,
select,
textarea {
	background-color: transparent;
	color: inherit;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace
}

nav ol,
nav ul {
	list-style: none
}

select {
	-moz-appearance: none;
	-webkit-appearance: none
}

select::-ms-expand {
	display: none
}

select::-ms-value {
	color: currentColor
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

::-moz-selection {
	background-color: #B3D4FC;
	text-shadow: none
}

::selection {
	background-color: #B3D4FC;
	text-shadow: none
}

@media screen {
	[hidden~=screen] {
		display: inherit
	}

	[hidden~=screen]:not(:active):not(:focus):not(:target) {
		clip: rect(0 0 0 0) !important;
		position: absolute !important
	}
}


/*-------------------------------------------------------------------------------
追加クラス
-------------------------------------------------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal;
}

.ellipsis {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 100%;
}

.ellipsisMulti2 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.ellipsisMulti3 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}


.listIndent {
	padding-left: 1em;
	text-indent: -1em;
}

.noEvent {
	pointer-events: none;
	cursor: inherit;
}

.verdana {
	font-family: Verdana;
}

.serif {
	font-family: serif;
}


.imgFit {
	max-width: 100%;
	height: auto;
}

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

.imgCover {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.imgContain {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.imgWrapContain {}

.imgWrapContain img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}


@media print {

	/* 印刷無効化 */
	.noPrint {
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	.hidden-xs {
		display: none !important;
	}
}

@media only screen and (max-width: 1024px) {
	.hidden-md {
		display: none !important;
	}
}

@media only screen and (max-width: 1200px) {
	.hidden-lg {
		display: none !important;
	}
}


@media print,
screen and (min-width:768px) {
	.visible-xs {
		display: none !important;
	}

	.ro {
		transition: opacity 0.3s;
	}

	.ro:hover {
		opacity: 0.6;
		-moz-opacity: 0.6;
		filter: alpha(opacity=60);

	}

	.roBright:hover {
		-webkit-filter: brightness(1.2);
		-moz-filter: brightness(1.2);
		-o-filter: brightness(1.2);
		-ms-filter: brightness(1.2);
		filter: brightness(1.2);
		transition: filter 0.3s;
	}

	.roZoom {
		transition: transform 0.3s;
	}

	.roZoom:hover {
		transform: scale(1.3);
	}

	/* 要素拡大エリア(要素内の拡大したい要素に.inZoomを設定すること) */
	.roZoomWrap .inZoom {
		overflow: hidden;
	}

	.roZoomWrap .inZoom>* {
		transition: transform 0.3s;
	}

	.roZoomWrap:hover .inZoom>* {
		transform: scale(1.15);
	}

}


/*
準備中-非表示
*/
.preHide {
	display: none !important;
}

.preNoEvent {
	opacity: 0.5;
	pointer-events: none !important;
}


/*
reCAPTCHAロゴ非表示
※代わりにフォーム下部に利用規約説明を入れること
*/
.grecaptcha-badge {
	visibility: hidden;
}