@charset "utf-8";

/* init ===================================*/

body {
	font-family: Arial, "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
	/*font-family: Garamond, "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;*/
	color: #333;
	font-size: 1.4rem;
	line-height: 1.6;
	font-weight: 500;
	overflow-x: hidden;
	height: 100%;
	counter-reset: number;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 1em 0;
	font-weight: 900;
	line-height: 1.4em;
}

@media all and (-ms-high-contrast: none){
	*::-ms-backdrop, body { font-family: Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif; }
	/**::-ms-backdrop, h1, h2, h3, h4, h5, h6 { font-family: Garamond, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif; }*/
}/* IE11のみ */


h1 {
	margin: 0;
}

h2 {
	font-size: 2.6rem;
}

h3 {
	font-size: 1.8rem;
}

h4 {
	font-size: 1.6rem;
}

h5 {
	font-size: 1.5rem;
}

h6 {
	font-size: 1.4rem;
}

a, a img {
	cursor: pointer;
	color: #06c;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a:link {
	color: #039;
	text-decoration: underline;
}

a:visited {
	color: #000;
	text-decoration: underline;
}

a:hover {
	color: #f63;
}

a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

a:active {
	color: #993;
	text-decoration: none;
}

a[href^="tel:"] {
	color: #333;
	text-decoration: none!important;
}

a:hover[href^="tel:"] {
	text-decoration: none!important;
}

div {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

p,
ul,
ol,
dl {
	margin: 1em 0;
}

dt {
	font-weight: 900;
}

img {
	vertical-align: bottom;
}

b, strong {
	font-weight: 900;
}

hr {
	display: none;
}

input[type='text'] {
	border: 1px solid #ccc;
}

select {}

textarea {
	border: 1px solid #ccc;
}

input[type='button'],
input[type='submit'],
input[type='reset'],
input[name='return'] {
	padding: 0.5em 1em;
	background-color: #666;
	border-radius: 5px;
	border-color: #444;
	outline: 0;
	box-shadow: 0px 4px 4px rgba(0,0,0,.2);
	cursor: pointer;
	font-size: 1em;
	color: #fff;
}

input[type='submit'],
input[name='confirm'],
input[name='sendmail'] {
	background-color: #c00;
}

input[type='button']:hover,
input[type='submit']:hover,
input[type='reset']:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

input[type='button']:active,
input[type='submit']:active,
input[type='reset']:active {
	filter: alpha(opacity=100);
	opacity: 1;
}


/* table ===================================*/
table.style1 {
	font-size: 1.2rem;
	background-color: #fff;
}

table.style1 th {
	padding: 10px;
	font-weight: 900;
	border: 1px solid #ccc;
	background-color: #eee;
}

table.style1 td {
	padding: 10px;
	border: 1px solid #ccc;
}


/* column ===================================*/
.box {
	display: block;
	margin: 1em 0;
	padding: 20px;
	background-color: #fff;
	border-radius: 10px;
}

.box.attention {
	background-color: #fa0;
}

.box.attention * {
	font-size: 1.8rem;
	line-height: 1.6em;
	color: #fff;
}


/* list set ===================================*/

.list {
	counter-reset: number;
	list-style: none;
	padding: 0;
}

.list > li,
.list > dt,
.list > dd {
	margin: 0.2em 0;
	margin-left: 1.5em;
}

.list > dt {
	font-weight: 900;
}

.list > li:before,
.list > dt:before {
	content: "";
	display: block;
	float: left;
	width: 0.8em;
	height: 0.8em;
	margin: 0.3em 0;
	margin-left: -1.2em;
	text-align: center;
}

ol.list > li:before {/* 番号リスト */
	margin-top: 0;
	counter-increment: number;
	content: counter(number)".";
}

.list.dot > li:before,
.list.dot > dt:before {/* ・リスト */
	width: 0.4em;
	height: 0.4em;
	margin: 0.6em 0;
	margin-left: -0.8em;
	background-color: #000;
	border-radius: 50%;
}

.list.circle > li:before,
.list.circle > dt:before {/* ●リスト */
	background-color: #000;
	border-radius: 50%;
}

.list.square > li:before,
.list.square > dt:before {/* ■リスト */
	background-color: #000;
	border-radius: 1px;
}

/* ※（備考欄）リスト */
.list.nb > li {
	margin: 0 0 0 1.5em;
}

.list.nb > li:before {
	margin-top: 0;
	content: "※";
}

/* display ===================================*/

.hide {/* 非表示 */
	display: none !important;
}


/* shadow set ===================================*/

.bxShadow {/* ボックスシャドウ */
	box-shadow: 0 10px 50px rgba(0, 0, 0, 0.3);
}

.txShadow {/* テキストシャドウ */
	text-shadow: 0 0 20px rgba(0,0,0,0.5);
}

.dropShadow {/* ドロップシャドウ */
	-webkit-filter: drop-shadow(0 0 4px rgba(0,0,0,.5));
	-moz-filter: drop-shadow(0 0 4px rgba(0,0,0,.5));
	-ms-filter: drop-shadow(0 0 4px rgba(0,0,0,.5));
	-o-filter: drop-shadow(0 0 4px rgba(0,0,0,.5));
	filter: drop-shadow(0 0 4px rgba(0,0,0,.5));
}


/* float set ===================================*/

.floatL {/* 左回り込み */
	float: left;
}

.floatR {/* 右回り込み */
	float: right;
}

.clear {/* 回り込み解除 */
	float: none;
	clear: both;
}

.clearfix:after {/* clearfix */
	content: "";
	display: block;
	clear: both;
}


/* link ===================================*/
.nv {
	position: relative;
	display: inline-block;
	text-decoration: none;
	padding-left: 1em;
}

.nv:link {
	text-decoration: none;
}

/*
.nv:before {
	content: "▼";
	position: absolute;
	top: 50%;
	left: -1.5em;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transform-origin: 80% 0;
	transform-origin: 80% 0;
	font-size: 1rem;
	font-weight: bold;
	line-height: 0;
	color: #abc;
}
*/

.nv:before {
	content: "";
	position: absolute;
	top: 0;
	width: 7px;
	height: 7px;
	margin: 0.3em -0.3em;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	-webkit-transform-origin: 0 100%;
	transform-origin: 0 100%;
}


.pdf:before {
	content: url(../images/common/icon_pdf.png);
	width: 40px;
	height: 40px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.5em;
}

.doc:before {
	content: url(../images/common/icon_doc.png);
	width: 40px;
	height: 40px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.5em;
}

a.zoom {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

a.zoom img {
	width: 100%;
}

a.zoom:hover img {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

a.btn1 {
	display: inline-block;
	min-width: 250px;
	background: url(../images/common/nv_more.png) 95% center no-repeat;
	padding: 6px 3em;
	border: 2px solid #000;
	color: #000;
	text-decoration: none;
	text-align: center;
	border-radius: 40px;
}

a.btn1 span {
	display: inline-block;
	padding: 4px 0;
	color: #000;
	text-align: center;
}

a.btn1:hover,
a.btn1:focus {
	background-color: #000 ;
	color: #fff ;
}

a.btn1:hover span,
a.btn1:focus span {
	color: #fff ;
}


/* inline set ===================================*/

.alignL {/* 左揃え */
	text-align: left!important;
}

.alignR {/* 右揃え */
	text-align: right!important;
}

.alignC {/* 中揃え */
	text-align: center!important;
}

.palt {/* OTF字詰め（プロポーショナルメトリクス） */
font-feature-settings : "palt" 1;
}

.pwid {/* OTF字詰め(プロポーショナル字形)*/
font-feature-settings : "pwid" 1;
}

.pkna {/* OTF字詰め(仮名)*/
font-feature-settings : "pkna" 1;
}

.trad {/* 旧字体*/
font-feature-settings : "trad" 1;
}

.justify {/* 両端揃え */
	text-align: justify;
	text-justify: inter-ideograph;/*IE*/
}

.ltr {/*テキスト逆流し*/
	direction: rtl;
	unicode-bidi: bidi-override;
}

.indent {
	text-indent: 1em;
}

.note {/* 脚注 */
	font-size: 0.85em!important;
}

.lite {
	font-weight: 100;
}

.button {/* リンクボタン */
	display: inline-block;
	padding: 0 1em;
	background-color: #ccc;
	border-radius: 3px;
	vertical-align: middle;
	white-space: nowrap;
	cursor: pointer;
	font-size: 1.4rem;
	line-height: 1.6;
	text-decoration: none;
}

.button:hover {
	text-decoration: none;
	opacity: 0.7;
}


/* width set ===================================*/

.wA {
	width: auto!important;
}
.w10p {
	width: 10%!important;
}
.w20p {
	width: 20%!important;
}
.w30p {
	width: 30%!important;
}
.w40p {
	width: 40%!important;
}
.w50p {
	width: 50%!important;
}
.w60p {
	width: 60%!important;
}
.w70p {
	width: 70%!important;
}
.w100p {
	width: 100%!important;
}


/* height set ===================================*/

.hA {/* 高自動 */
	height: auto!important;
}
.mh0 {/* 最小高0 */
	min-height: 0!important;
}
.h100p {/* 高100% */
	height: 100%!important;
}

/* text color ===================================*/

.red {
	color: #f00!important;
}

.white {
	color: #fff!important;
}

.black {
	color: #000!important;
}

.blue {
	color: #039!important;
}

.orange {
	color: #f60!important;
}


/* margin set ===================================*/

.mA {
	margin: auto!important;
}

.mtb0 {
	margin-top: 0!important;
	margin-bottom: 0!important;
}
.mtb1e {
	margin-top: 1em!important;
	margin-bottom: 1em!important;
}
.mtb2e {
	margin-top: 2em!important;
	margin-bottom: 2em!important;
}
.mtb3e {
	margin-top: 3em!important;
	margin-bottom: 3em!important;
}
.mtb4e {
	margin-top: 4em!important;
	margin-bottom: 4em!important;
}
.mtb5e {
	margin-top: 5em!important;
	margin-bottom: 5em!important;
}


/* padding set ===================================*/

.ptb0 {
	padding-top: 0!important;
	padding-bottom: 0!important;
}
.ptb1e {
	padding-top: 1em!important;
	padding-bottom: 1em!important;
}
.ptb2e {
	padding-top: 2em!important;
	padding-bottom: 2em!important;
}
.ptb3e {
	padding-top: 3em!important;
	padding-bottom: 3em!important;
}
.ptb4e {
	padding-top: 4em!important;
	padding-bottom: 4em!important;
}
.pb150 {
	padding-bottom: 150px!important;
}
.p1e {
	padding: 1em!important;
}
