@charset "euc-jp";
/*-----------------------------------------------------------------------------
** fix
-----------------------------------------------------------------------------*/
body,html {
	height: 100%;
}

/*-----------------------------------------------------------------------------
** 初期設定
-----------------------------------------------------------------------------*/
html {
	font-size: 62.5%;/* 10px */
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	color: #333;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size: 1.4rem;
	/*letter-spacing:0.8pt;*/
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
}

/*-----------------------------------------------------------------------------
** a
-----------------------------------------------------------------------------*/
a {
	color: #0033cc;
	text-decoration: none;
}
a:hover,
a:active {
	color: #0033cc;
	text-decoration: underline;
}
a.overwhite {
	display: block;
}
a.overwhite:hover img {
	cursor: pointer;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
	opacity:0.7;
	zoom:1;
}
@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}
/*-----------------------------------------------------------------------------
** img
-----------------------------------------------------------------------------*/
img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
/*---------- IE8のみ適用(縦横比を合わせる為) ----------*/
.ie8 img {
	width: auto;
}

/*-----------------------------------------------------------------------------
** table
-----------------------------------------------------------------------------*/
table {
  border-spacing: 0;
  border-collapse: collapse;
	border-top: 1px solid #a9a9a9;
	border-left: 1px solid #a9a9a9;
	margin-bottom: 30px;
	width: 100%;
}
th {
	background: #eae8e8;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}
th.yellow {
	background: #ffff82;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}
th, td {
	border-bottom: 1px solid #a9a9a9;
	border-right: 1px solid #a9a9a9;
	line-height: 1.4;
	padding: 10px;
	vertical-align: middle;
}
/* red01 */
table.red01 th {
	background: #ffefdb;
	color: #EA7500;
	font-weight: bold;
}
table.red01 td.td01 {
	font-size: 1.6rem;
	font-weight: bold;
	text-align: right;
}	

@media screen and (max-width: 767px) {
  /* gray01 */
	table.gray01 {
    border-top: 1px solid #a9a9a9;
		font-size: 1.3rem;
  }
  table.gray01 td {
    display: block;
    text-align: center;
  }
  table.gray01 th {
    border-top: none;
    border-bottom: none;
    display: block;
  }
	/* gray02 */
  table.gray02 {
    border: none;
		font-size: 1.3rem;
  }
  table.gray02 thead {
    display: none;
  }
	.live table.gray02 tr.dataWrap {
		border-top: 4px solid #1fad97;
	}
	.live-pm table.gray02 tr.dataWrap {
		border-top: 4px solid #1f5cad;
	}
	.good table.gray02 tr.dataWrap {
		border-top: 4px solid #eb355f;
	}
  table.gray02 tr {
    border-top: 1px solid #a9a9a9;
    display: block;
    margin-bottom: 30px;
  }
	table.gray02 tr:last-child {
		margin-bottom: 0;
	}
  table.gray02 td {
    border-left: 1px solid #a9a9a9;
    border-bottom: 1px solid #a9a9a9;
    display: block;
    padding: 10px;
    text-align: right;
  }
  table.gray02 td::before {
		background: #eae8e8;
    content: attr(data-label);
    float: left;
		padding: 2px 3px;
  }
	table.gray02 td label {
		min-height: 0;
		width: 86%;
	}
}
@media screen and (min-width: 768px) {
	table.gray02 {
		font-size: 1.2rem;
	}
	body.live table.gray02 th {
		background: #0b463d;
		color: #FFFFFF;
	}
	body.live-pm table.gray02 th {
		background: #0b2346;
		color: #FFFFFF;
	}
	body.good table.gray02 th {
		background: #b60a1f;
		color: #FFFFFF;
	}
}
/*-----------------------------------------------------------------------------
** フォーム系
-----------------------------------------------------------------------------*/
/*---- input ----*/
input {
	background-color: #FFFFFF;
	border: solid 1px #b5b5b5;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 14px;
	padding: 12px 10px;
	line-height: 40px;
	height: 40px;
}
input[type='text'],
input[type='tel'],
input[type='email'],
input[type='search'],
input[type='number'],
input[type='url'],
input[type="submit"],
textarea {
	-webkit-appearance: none;
	border-radius: 0;
}
/* 右のスピンボタンを消す設定 */
/* Chrome、Safari */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
/* Firefox、IE */
input[type="number"] {
	-moz-appearance:textfield;
}

/*---- テキストエリア ----*/
textarea {
	border: solid 1px #b5b5b5;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 12px 10px;
}
/*---- select ----*/
/* IEで下矢印を消す */
select::-ms-expand {
	display: none;
}
label.selectWrap {
	background: #FFFFFF;
	border: solid 1px #b5b5b5;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	color: #333;
	display: inline-block;
	position: relative;
}
label.selectWrap select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;/*-- 背景を透過 --*/
	border: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	font-size: 12px;
	padding: 10px 35px 10px 10px;
	position: relative;
	outline: none;
	width: 100%;
	z-index: 2;
}
label.selectWrap:before {
	color: #333333;
	content: "\f107";
	font-size: 20px;
	font-family: FontAwesome;
	height: 100%;
	width: 30px;
	position: absolute;
	text-align: center;
	top: 2px;
	right: 0;
	z-index: 1;
}

/*-----------------------------------------------------------------------------
** checkbox　チェックボックス　＆　radio　ラジオボタン
-----------------------------------------------------------------------------*/
.label-content input[type="checkbox"],
.label-content input[type="radio"] {
	display: none;
}
.label-content {
	cursor: pointer;
	display: table;
	line-height: 1;
	min-height: 60px;
	width: 100%;
}
.label-content .checkbox-icon,
.label-content .checkbox-txt,
.label-content .radio-icon,
.label-content .radio-txt {
	display: table-cell;
	vertical-align: middle;
}
.label-content .checkbox-txt,
.label-content .radio-txt {
	font-size: 14px;
	padding-left: 5px;
}
.label-content .checkbox-icon,
.label-content .radio-icon {
	width: 30px;
}
/*-- チェックボックス(off) --*/
.label-content .checkbox-icon:before {
	background: url(../img/common/check_off.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
	content:" ";
	display:inline-block;
	width: 25px;
	height: 25px;
	vertical-align: middle;
}
/*-- チェックボックス(on) --*/
.label-content input[type="checkbox"]:checked + .checkbox-icon:before {
	background: url(../img/common/check_on.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
}
/*-- チェックボックス(disabled) --*/
.label-content input[type="checkbox"]:disabled + .checkbox-icon:before {
	background: url(../img/common/check_des.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
	content:" ";
	display:inline-block;
	width: 25px;
	height: 25px;
	vertical-align: middle;
}
/*-- ラジオ(off) --*/
.label-content .radio-icon:before {
	background: url(../img/common/radio_off.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
	content:" ";
	display:inline-block;
	width: 25px;
	height: 25px;
	vertical-align: middle;
}
/*-- ラジオ(on) --*/
.label-content input[type="radio"]:checked + .radio-icon:before {
	background: url(../img/common/radio_on.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
}
/*-- ラジオ(disabled) --*/
.label-content input[type="radio"]:disabled + .radio-icon:before {
	background: url(../img/common/radio_des.png) no-repeat;
	-webkit-background-size: 25px 25px;
	background-size: 25px 25px;
	content:" ";
	display:inline-block;
	width: 25px;
	height: 25px;
	vertical-align: middle;
}
.label-content .radio-txt {
	text-align: center;
}
.label-content .radio-txt img {
	vertical-align: middle;
	margin-left: 4px;
}

/*-----------------------------------------------------------------------------
** wrap
-----------------------------------------------------------------------------*/
#wrap {
	height: auto !important;
	min-height: 100%;
	position: relative;
	text-align: left;
	width: 100%;
}
/*-----------------------------------------------------------------------------
** header
-----------------------------------------------------------------------------*/
header {
	margin-bottom: 30px;
	padding: 10px 0;
	width: 100%;
}
body.live header {
	background: #072924;
	background-image: -ms-linear-gradient(top, #106256 0%, #072924 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #106256 0%, #072924 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #106256), color-stop(100, #072924));/* Webkit (Safari/Chrome 10) */
	background-image: -webkit-linear-gradient(top, #106256 0%, #072924 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #106256 0%, #072924 100%);
}
body.live-pm header {
	background: #1d2088;
	background-image: -ms-linear-gradient(top, #23439c 0%, #1d2088 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #23439c 0%, #1d2088 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #23439c), color-stop(100, #1d2088));/* Webkit (Safari/Chrome 10) */
	background-image: -webkit-linear-gradient(top, #23439c 0%, #1d2088 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #23439c 0%, #1d2088 100%);
}
body.good header {
	background: #BEBEBE;
	background-image: -ms-linear-gradient(top, #FFFFFF 0%, #BEBEBE 100%);/* IE10+ */
	background-image: -moz-linear-gradient(top, #FFFFFF 0%, #BEBEBE 100%);/* Mozilla Firefox */ 
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFFFFF), color-stop(100, #BEBEBE));/* Webkit (Safari/Chrome 10) */ 
	background-image: -webkit-linear-gradient(top, #FFFFFF 0%, #BEBEBE 100%);/* Webkit (Chrome 11+) */
	background-image: linear-gradient(to bottom, #FFFFFF 0%, #BEBEBE 100%);
	border-top: 1px solid #d9d9d9;
	border-bottom: 2px solid #d01027;
}
header #headerInner {
	margin: 0 auto;
	max-width: 900px;
}
/*---------- ロゴ ----------*/
header h1 img {
	margin-left: 10px;
	width: 200px;
}
@media print, screen and (min-width: 768px) {
	header h1 img {
		width: 278px;
	}
	body.live-pm header h1 img {
		width: 254px;
	}
}
/*-----------------------------------------------------------------------------
** content
-----------------------------------------------------------------------------*/
#content {
	margin: 0 auto;
	max-width: 900px;
	padding-bottom: 60px;
}
section.roundGy {
	border: 2px solid #d6d4d4;
	border-radius: 10px;
	margin-right: 10px;
	margin-bottom: 30px;
	margin-left: 10px;
}

/*-----------------------------------------------------------------------------
** footer
-----------------------------------------------------------------------------*/
footer {
	background-color: #f3f2f2;
	bottom: 0;
	padding: 10px 0;
	font-size: 1.2rem;
	position: absolute;
	text-align: center;
	width: 100%;
}
footer ul {
	margin-bottom: 10px;
}
footer li {
	display: inline;
}
footer li i {
	padding-right: 4px;
}
/*-----------------------------------------------------------------------------
** title
-----------------------------------------------------------------------------*/
h2 {
	border-bottom: 1px solid #a9a9a9;
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 20px;
	padding: 0 20px 10px;
}
@media print, screen and (min-width: 768px) {
	h2 {
		font-size: 3.0rem;
	}
}
h3 {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 20px;
	padding: 4px 0 4px 10px;
}
.live h3 {
	border-left: 4px solid #0b463d;
}
.live-pm h3 {
	border-left: 4px solid #0b2346;
}
.good h3 {
	border-left: 4px solid #b60a1f;
}

/*-----------------------------------------------------------------------------
** btn
-----------------------------------------------------------------------------*/
button.btn {
	border: 1px solid transparent;
	border-radius: 10px;
	cursor: pointer;
	display: block;
	font-weight: bold;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}
button.btn:not([disabled]):hover,
button.btn:not([disabled]):active {/* disabled以外に有効 */
	filter: alpha(opacity=80);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=80)";  /* ie 8 */
	-moz-opacity: 0.8;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;              /* Safari 1.x */
	opacity: 0.8;
	text-decoration: none;
}
button.btn[disabled] {
	background: #E0E0E0;
	border: 1px solid #DDDDDD;
	color: #666;
	cursor: not-allowed;
}
button.btn i {
	padding-right: 5px;
	padding-left: 5px;
}

/*---------------------------------- btn common ----------------------------------*/
button.btnOr,
button.btnRd,
button.btnGy {
	color: #FFF;
	font-size: 2.0rem;
	padding: 4px 6px;
}
@media print, screen and (min-width: 768px) {
	button.btnOr,
	button.btnRd,
	button.btnGy {
		font-size: 2.6rem;
		padding: 8px 10px;
	}
}
button.btnOr_S,
button.btnGn_S,
button.btnGy_S {
	color: #FFF;
	font-size: 1.3rem;
	padding: 6px 8px;
}
button.btnOr_M {
	color: #FFF;
	font-size: 1.6rem;
	padding: 6px 8px;
}

/*---------------------------------- orange ----------------------------------*/
/* normal */
button.btnOr,
button.btnOr_M,
button.btnOr_S {
	background-color: #FF7D00;/* 旧IE用 */
	background-image: -ms-linear-gradient(top, #ffa03c 0%, #ffa03c 50%, #FF7D00 50%, #FF7D00 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #ffa03c 0%, #ffa03c 50%, #FF7D00 50%, #FF7D00 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ffa03c), color-stop(50, #ffa03c), color-stop(50, #FF7D00), color-stop(100, #FF7D00));/* Webkit (Safari/Chrome 10) */ 
	background-image: -webkit-linear-gradient(top, #ffa03c 0%, #ffa03c 50%, #FF7D00 50%, #FF7D00 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #ffa03c 0%, #ffa03c 50%, #FF7D00 50%, #FF7D00 100%);
	border-color: #FF7D00;
}
button.btnOr_S {
	text-shadow: 1px 1px 1px #FF7D00;
}
/*---------------------------------- green ----------------------------------*/
/* normal */
button.btnGn,
button.btnGn_S {
	background-color: #2E8C19;/* 旧IE用 */
	background-image: -ms-linear-gradient(top, #03A93A 0%, #03a93a 50%, #2E8C19 50%, #2E8C19 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #03A93A 0%, #03a93a 50%, #2E8C19 50%, #2E8C19 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #03A93A), color-stop(50, #03a93a), color-stop(50, #2E8C19), color-stop(100, #2E8C19));/* Webkit (Safari/Chrome 10) */ 
	background-image: -webkit-linear-gradient(top, #03A93A 0%, #03a93a 50%, #2E8C19 50%, #2E8C19 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #03A93A 0%, #03a93a 50%, #2E8C19 50%, #2E8C19 100%);
	border-color: #2E8C19;
}
/* small */
button.btnGn_S {
	text-shadow: 1px 1px 1px #226b12;
}
/*---------------------------------- red ----------------------------------*/
/* normal */
button.btnRd,
button.btnRd_S {
	background-color: #c3010f;/* 旧IE用 */
	background-image: -ms-linear-gradient(top, #eb0718 0%, #eb0718 50%, #c3010f 50%, #c3010f 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #eb0718 0%, #eb0718 50%, #c3010f 50%, #c3010f 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #eb0718), color-stop(50, #eb0718), color-stop(50, #c3010f), color-stop(100, #c3010f));/* Webkit (Safari/Chrome 10) */ 
	background-image: -webkit-linear-gradient(top, #eb0718 0%, #eb0718 50%, #c3010f 50%, #c3010f 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #eb0718 0%, #eb0718 50%, #c3010f 50%, #c3010f 100%);
	border-color: #c3010f;
}
/* small */
button.btnRd_S {
	text-shadow: 1px 1px 1px #99040e;
}
/*---------------------------------- ｇray ----------------------------------*/
/* normal */
button.btnGy,
button.btnGy_S {
	background-color: #999999;/* 旧IE用 */
	background-image: -ms-linear-gradient(top, #999999 0%, #999999 50%, #777777 50%, #777777 100%);/* IE10+ */ 
	background-image: -moz-linear-gradient(top, #999999 0%, #999999 50%, #777777 50%, #777777 100%);/* Mozilla Firefox */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #999999), color-stop(50, #999999), color-stop(50, #777777), color-stop(100, #777777));/* Webkit (Safari/Chrome 10) */ 
	background-image: -webkit-linear-gradient(top, #999999 0%, #999999 50%, #777777 50%, #777777 100%);/* Webkit (Chrome 11+) */ 
	background-image: linear-gradient(to bottom, #999999 0%, #999999 50%, #777777 50%, #777777 100%);
	border-color: #999999;
}
/* small */
button.btnGy_S {
	text-shadow: 1px 1px 1px #999999;
}


/*-----------------------------------------------------------------------------
** 共通パーツ
-----------------------------------------------------------------------------*/
/*---------- float解除 ----------*/
.clearfix {
	zoom: 1;
}
.clearfix:after {
	clear: both;
	content: "";
	display: block;
}
/*---------- 注意文 ----------*/
.note {
	text-indent: -1em;
	padding-left: 1em;
}
.note span {
	color: #da0f0f;
}

/*---------- エラー ----------*/
.errorWrap {
	background: #ffe6e3;
	border: 2px solid #e74c3c;
	border-radius: 8px;
	color: #FF0000;
	font-weight: bold;
	margin: 0 3% 20px;
	padding: 20px 10px;
	text-align: center;
}
input.error {
	background: #ffe6e3;
	margin-bottom: 6px;
}
select.error {
	background: #ffe6e3 !important;
	z-index: 0;
}
p.errorDispText {
	color: #FF0000;
	font-weight: bold;
}

/*---------- 情報枠 ----------*/
.infoWrap {
	background: #f3f2f2;
	border: 2px dotted #8c8a8a;
	margin-bottom: 40px;
	padding: 16px;
}

/*---------- 強調 ----------*/
em {
	background: #ffff66;
	font-style: normal;
}
/*---------- 太字 ----------*/
.FB {
	font-weight: bold;
}
/*---------- 太字大文字 ----------*/
.FB20 {
	font-size: 2rem;
	font-weight: bold;
}
/*---------- リード文 ----------*/
.readTxt {
	margin: 0 20px 30px;
}
/*---------- マージン ----------*/
.MB20 {
	margin-bottom: 20px;
}
.MB30 {
	margin-bottom: 30px;
}
.MRL16 {
	margin-right: 16px;
	margin-left: 16px;
}
/*---------- 幅 ----------*/
.W15 {
	width: 15%;
}
.W40 {
	width: 40%;
}
.W60 {
	width: 60%;
}
.W94 {
	width: 94%;
	margin-left: auto;
	margin-right: auto;
}
