@charset "utf-8";
/* ------------------------------------- */
/* デフォルト設定(各種問題回避・ブラウザ毎の初期設定の影響回避) */
/* ------------------------------------- */
body, header, footer, address, p, h1, h2, h3, h4, h5, h6, ul, li, a, div, img, form, select, dl, dt, dd, ol {
    padding: 0;
    margin:  0;
}
ul, li, dl, dt, dd {
	display: block;
}
li {
	list-style:none;
}
i {
	font-style: normal;
}
a {
	display: inline-block;
	color: inherit;
	text-decoration: none;
}
img {
	backface-visibility: hidden;
	border: 0px;
	vertical-align: bottom;
}
h1,h2,h3,h4,h5,h6 {
	display: inline-block;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
}
input, select {
	margin: 0;
	padding: 0;
	font-size: inherit;
	border: none;
}
textarea {
	font-size: inherit;
}
main, header, footer, nav, section {
	display: block;
}
/* ------------------------------------- */
/* iOSなどのプラットフォーム独自の装飾仕様をクリア */
/* ------------------------------------- */
* {
	-webkit-appearance: none;
	border-radius: 0;
}
input[type=radio] {
    -webkit-appearance: radio;
	border-radius: 0;
}
/* ------------------------------------- */
/* デフォルト設定(汎用演出用) */
/* ------------------------------------- */
/* Hover時:半透過 */
.hover,
.hover img,
.hover div {
	transition: 0.6s;
}
.hover:hover,
.hover:hover img,
.hover:hover div {
	opacity: 0.8;
}
/* Hover時:半透色 */
.hover2,
.hover2 img,
.hover2 div {
	transition: 0.6s;
}
.hover2:hover,
.hover2:hover div {
	background: #CCE2EF;
}
/* 常時:アンダーライン表示 */
.underline {
	text-decoration: underline;
}
/* Hover時:アンダーライン表示／非表示 */
.underlineN:hover {
	text-decoration: underline;
}
.underlineU {
    text-decoration: underline;
}
.underlineU:hover {
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.hover,
	.hover img,
	.hover div {
		transition: none 0 ease 0;
	}
	.hover:hover,
	.hover:hover img,
	.hover:hover div {
		opacity: 1;
	}
	.hover2,
	.hover2 img,
	.hover2 div {
		transition: none 0 ease 0;
	}
	.hover2:hover,
	.hover2:hover div {
		background: inherit;
	}
}
/* ------------------------------------- */
/* IE11読み込み時のtransition防止 */
/* ------------------------------------- */
.preload * {
	-webkit-transition: none !important;
	-moz-transition: none !important;
	-ms-transition: none !important;
	-o-transition: none !important;
	transition: none !important;
}
/* ------------------------------------- */
/* デフォルト設定(サイト毎) */
/* ------------------------------------- */
body {
	color:#333333;
	width:100%;
	height:100%;
	-webkit-text-size-adjust:100%;
	background:#ffffff;
	letter-spacing: normal;
	font-size: 16px;
	line-height: 1.6;

	font-family: "source-han-sans-japanese",sans-serif;
	font-weight: 400;
	font-style: normal;
}
@media screen and (min-width: 769px) {
	body { min-width: 1200px; }
}
/* ------------------------------------- */
/* スマホ対応用 */
/* ------------------------------------- */
.cd_sp_only {
    display: none !important;
}
@media screen and (max-width: 768px) {
	body { width: 1200px; }

	.cd_pc_only { display: none   !important; }
	div.cd_sp_only { display: block  !important; }

	br.cd_sp_only,
	span.cd_sp_only,
	img.cd_sp_only {
		display: inline !important;
	}
}

