@charset "utf-8";
/*------------------------------------------------------------------
/
/	common.css
/
/-----------------------------------------------------------------*/
/* line
-------------------------------------------------------*/
hr.line01 {
	clear: both;
	height: 1px;
	margin: 10px 0;
	border: none;
	border-bottom: 1px dotted #ccc;
}
hr.space01 {
	clear: both;
	height: 1px;
	margin: 10px 0;
	border: none;
}
/* title
-------------------------------------------------------*/
.page-title {
	text-align: center;
}
.page-title img {
	max-width: 800px;
}
.title-box {
	padding: 10px 0;
}
.text-title {
	margin-bottom: 0;
	text-align: center;
	vertical-align: middle;
	font-family: serif;
	font-weight: normal;
	font-size: 180%;
}
/* text
-------------------------------------------------------*/
.text01 {
	text-align: center;
	padding: 0 10px;
	margin-bottom: 10px;
}
.text-lead {
	text-align: center;
	padding: 0 10px;
	margin-bottom: 10px;
}
.err-text01 {
	margin-bottom: 10px;
	font-size: 90%;
	font-weight: bold;
	color: #d82309;
	line-height: 1.2;
}
/* link
-------------------------------------------------------*/
.text-link {
	display: inline-block;
	background-size: 20px 20px;
}
.text-link:before {
	content: ">";
	display: inline-block;
	background: #d82309;
	margin-right: 5px;
	vertical-align: middle;
	border-radius: 8px 8px;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	font-size: 12px;
	color: #fff;
}
.text-link.type-x:before {
	content: "x";
}
.text-link.type-back:before {
	content: "<";
}
.text-link:hover:before {
	text-decoration: none;
}
.text-link input[type=button] {
	display: inline-block;
	border: none;
	cursor: pointer;
}
/* btn
-------------------------------------------------------*/
.btn-box {
	padding: 20px 0 30px 0;
	margin: 0 auto;
	max-width: 500px;
	text-align: center;
}
.text-btn,
a.text-btn {
	display: block;
	padding: 15px 0;
	line-height: 1;
	width: 100%;
	background: #d82309;
	border: 1px solid #d82309;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-webkit-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	cursor: pointer;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.text-btn:hover,
a.text-btn:hover {
	opacity: 0.7;
}
/* nav
-------------------------------------------------------*/

/* box
-------------------------------------------------------*/
.contents-box {
	margin-bottom: 50px;
	background: url(../images/common/bg01.png) repeat-y center center;
	background-size: 100% contain;
}
.contents-box:before { content:""; display:table;}
.contents-box:after { content:""; display:table; clear:both;}
.contents-box { zoom:1;}
/* list
-------------------------------------------------------*/
.dlist-box {
	background: url(../images/common/line01.png) repeat-x left top;
	margin: 0 90px;
	margin-bottom: 10px;
}
.dlist-box dl {
	display: table;
	width: 100%;
	background: url(../images/common/line01.png) repeat-x left bottom;
}
.dlist-box dt {
	display: table-cell;
	width: 30%;
	padding: 20px 20px 20px 0;
	line-height: 1.2;
	vertical-align: middle;
	font-weight: bold;
}
.dlist-box dd {
	display: table-cell;
	padding: 20px 0 20px 20px;
	line-height: 1.2;
	vertical-align: middle;
}
/* table
-------------------------------------------------------*/
.table-box {
	box-sizing: border-box;
}
.table-box table {
	border: 1px solid #ccc;
	border-collapse: collapse;
	width: 100%;
}
.table-box th {
	border: 1px solid #ccc;
	padding: 5px;
	background: #fafafa;
	font-weight: bold;
	font-size: 90%;
}
.table-box td {
	border: 1px solid #ccc;
	background: #fff;
	padding: 5px;
	font-size: 90%;
}
.table-box.tc th,
.table-box.tc td,
.table-box.th-tc th,
.table-box.td-tc td,
.table-box .tc th,
.table-box .tc td,
.table-box .th-tc th,
.table-box .td-tc td {
	text-align: center;
}
.table-box.tl th,
.table-box.tl td,
.table-box.th-tl th,
.table-box.td-tl td,
.table-box .tl th,
.table-box .tl td,
.table-box .th-tl th,
.table-box .td-tl td {
	text-align: left;
}
.table-box.tr th,
.table-box.tr td,
.table-box.th-tr th,
.table-box.td-tr td,
.table-box .tr th,
.table-box .tr td,
.table-box .th-tr th,
.table-box .td-tr td {
	text-align: right;
}
.table-box.type-fix table {
	table-layout: fixed;
}
.table-box.type-x {
	width: 100%;
	height: auto;
	overflow-x: auto;
}
.table-box.type-x table {
	width: 600px;
}
.table-box.type-y {
	border: 1px solid #ccc;
}
.table-box.type-y table {
}
/* form
-------------------------------------------------------*/
.form {
}
.form label {
	cursor: pointer;
	display:inline-block;
	*display: inline;
	*zoom: 1;
	margin: 0 3px 3px 0;
	padding: 0 10px 5px 0;
}
.form label.check-label {
    clear: both;
	display: block;
    font-size: 110%;
    line-height: 1.1;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid #eee;
    background: #f9f9f9;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.form label.check-label.size-s {
	font-size: 90%;
	padding: 5px 10px;
}
.form label.check-label.active {
	background-color: #fdb813;
}
.form-text01 {
	margin: 0 2px 10px 0;
}
.form input[type="checkbox"] ,
.form input[type="radio"] {
	margin-right: 5px;
	background: none;
}
.form input[type="radio"] {
	width: 12px;
	height: 12px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}
.form input[type="text"],
.form input[type="password"] {
	box-sizing: border-box;
	background: #fff;
	border: 1px solid #000;
	margin: 0 3px 3px 0;
	padding: 5px;
	width: 100%;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
	color: #000;
}
.form select {
	box-sizing: border-box;
	background: #fff;
	border: 1px solid #000;
	margin: 0 3px 3px 0;
	padding: 5px;
	width: 100%;
	/*background: url(../images/common/arrow_b.png) no-repeat 99% 60% #fff;*/
	background-size: 20px 20px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
	cursor: pointer;
	color: #000;
}
.form textarea {
	box-sizing: border-box;
	background: #fff;
	width: 100%;
	border: 1px solid #000;
	margin: 0 3px 3px 0;
	padding: 5px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
	color: #000;
}
.form label.check-label {
	box-sizing: border-box;
	margin: 0 3px 3px 0;
	width: 100%;
}
.form label.check-label + br {
	display: none;
}
.required-box {
	background: #fafaf0;
}
.required-icon {
	display:inline-block;
	*display: inline;
	*zoom: 1;
	font-size: 70%;
	letter-spacing: 0.2em;
	text-align: center;
	line-height: 1.1;
	padding: 2px 10px;
	vertical-align: top;
	margin: 0 5px;
	color: #fff;
	background: #d82309;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight: normal;
}
.form .text {
	margin: 0 5px 5px 0;
	font-size: 90%;
}
.form .btn {
	max-width: 200px;
	margin: 0 auto;
}

/* effect
-------------------------------------------------------*/
.effect-scroll,
.effect-delay {
	overflow: hidden;
	position: relative;
	opacity: 0;
	bottom: -50px;
	transition: opacity 0.5s linear, bottom 0.3s linear;
	-moz-transition: opacity 0.5s linear, bottom 0.3s linear;
	-webkit-transition: opacity 0.5s linear, bottom 0.3s linear;
	-o-transition: opacity 0.5s linear, bottom 0.3s linear;
	-ms-transition: opacity 0.5s linear, bottom 0.3s linear;
}
.effect-scroll.type-fade,
.effect-delay.type-fade {
	bottom: 0;
}
.effect-scroll.current,
.effect-delay.current {
	opacity: 1;
	bottom: 0;
}
/* colorbox
-------------------------------------------------------*/
/* temp
-------------------------------------------------------*/
.d-inline { display: inline!important;}
.d-inlineblock { display: inline-block!important;}
.d-block { display: block!important;}
.cf:before { content:""; display:table;}
.cf:after { content:""; display:table; clear:both;}
.cf { zoom:1;}
.text-str { color: rgba(235,0,70,1);}
.text-err { color: rgba(235,0,70,1);}
.text-em { color: #22409a;}
.text-em2 { color: rgba(75,180,40,1);}
.text-em3 { color: #fdb813;}
.text-no { color: #ccc;}
.text-marker { background: #FFFF99;}
.size-ss { font-size: 70%;}
.size-s { font-size: 80%;}
.size-m { font-size: 100%;}
.size-l { font-size: 120%;}
.size-ll { font-size: 150%;}
.size-lll { font-size: 200%;}
.fl { float: left;}
.fr { float: right;}
.fn { float: none;}
.text-left { text-align: left;}
.text-right { text-align: right;}
.text-center { text-align: center;}
.m0 { margin: 0!important;}
.m10 { margin: 10px!important;}
.m20 { margin: 20px!important;}
.m30 { margin: 30px!important;}
.m40 { margin: 40px!important;}
.m50 { margin: 50px!important;}
.mt0 { margin-top: 0!important;}
.mt10 { margin-top: 10px!important;}
.mt20 { margin-top: 20px!important;}
.mt30 { margin-top: 30px!important;}
.mt40 { margin-top: 40px!important;}
.mt50 { margin-top: 50px!important;}
.mb0 { margin-bottom: 0!important;}
.mb10 { margin-bottom: 10px!important;}
.mb20 { margin-bottom: 20px!important;}
.mb30 { margin-bottom: 30px!important;}
.mb40 { margin-bottom: 40px!important;}
.mb50 { margin-bottom: 50px!important;}
.ml0 { margin-left: 0!important;}
.ml10 { margin-left: 10px!important;}
.ml20 { margin-left: 20px!important;}
.ml30 { margin-left: 30px!important;}
.ml40 { margin-left: 40px!important;}
.ml50 { margin-left: 50px!important;}
.mr0 { margin-right: 0!important;}
.mr10 { margin-right: 10px!important;}
.mr20 { margin-right: 20px!important;}
.mr30 { margin-right: 30px!important;}
.mr40 { margin-right: 40px!important;}
.mr50 { margin-right: 50px!important;}
.p0 { padding: 0!important;}
.p10 { padding: 10px!important;}
.p20 { padding: 20px!important;}
.p30 { padding: 30px!important;}
.p40 { padding: 40px!important;}
.p50 { padding: 50px!important;}
.pt0 { padding-top: 0!important;}
.pt10 { padding-top: 10px!important;}
.pt20 { padding-top: 20px!important;}
.pt30 { padding-top: 30px!important;}
.pt40 { padding-top: 40px!important;}
.pt50 { padding-top: 50px!important;}
.pb0 { padding-bottom: 0!important;}
.pb10 { padding-bottom: 10px!important;}
.pb20 { padding-bottom: 20px!important;}
.pb30 { padding-bottom: 30px!important;}
.pb40 { padding-bottom: 40px!important;}
.pb50 { padding-bottom: 50px!important;}
.pl0 { padding-left: 0!important;}
.pl10 { padding-left: 10px!important;}
.pl20 { padding-left: 20px!important;}
.pl30 { padding-left: 30px!important;}
.pl40 { padding-left: 40px!important;}
.pl50 { padding-left: 50px!important;}
.pr0 { padding-right: 0!important;}
.pr10 { padding-right: 10px!important;}
.pr20 { padding-right: 20px!important;}
.pr30 { padding-right: 30px!important;}
.pr40 { padding-right: 40px!important;}
.pr50 { padding-right: 50px!important;}
.wa { width: auto!important;}
.w100p { width: 100%!important;}
.w98p { width: 98%!important;}
.w96p { width: 96%!important;}
.w90p { width: 90%!important;}
.w86p { width: 86%!important;}
.w80p { width: 80%!important;}
.w70p { width: 70%!important;}
.w60p { width: 60%!important;}
.w50p { width: 50%!important;}
.w40p { width: 40%!important;}
.w33p { width: 33.33%!important;}
.w30p { width: 30%!important;}
.w20p { width: 20%!important;}
.w10p { width: 10%!important;}
.w300 { width: 300px!important;}
.w250 { width: 250px!important;}
.w200 { width: 200px!important;}
.w150 { width: 150px!important;}
.w100 { width: 100px!important;}
.w80 { width: 70px!important;}
.w60 { width: 60px!important;}
.w50 { width: 50px!important;}
.w30 { width: 30px!important;}
.w10 { width: 10px!important;}

@media screen and (min-width: 1600px) {
/* 1600pxより大きい場合 */
	/* line
	-------------------------------------------------------*/
	/* title
	-------------------------------------------------------*/
	/* text
	-------------------------------------------------------*/
	/* link
	-------------------------------------------------------*/
	/* btn
	-------------------------------------------------------*/
	/* nav
	-------------------------------------------------------*/
	/* list
	-------------------------------------------------------*/
	/* table
	-------------------------------------------------------*/
	/* form
	-------------------------------------------------------*/
	/* effect
	-------------------------------------------------------*/
	/* colorbox
	-------------------------------------------------------*/
	/* temp
	-------------------------------------------------------*/
}
@media screen and (max-width: 1000px) {
/* 1000pxより小さい場合 */
}
@media screen and (min-width: 768px) {
/* 768pxより大きい場合 */
}
@media screen and (max-width: 768px) {
/* 768pxより小さい場合 */
	/* line
	-------------------------------------------------------*/
	/* title
	-------------------------------------------------------*/
	/* text
	-------------------------------------------------------*/
	/* link
	-------------------------------------------------------*/
	/* btn
	-------------------------------------------------------*/
	/* nav
	-------------------------------------------------------*/
	/* list
	-------------------------------------------------------*/
	.dlist-box {
		margin: 0 10px;
		margin-bottom: 10px;
	}
	/* table
	-------------------------------------------------------*/
	/* form
	-------------------------------------------------------*/
	/* effect
	-------------------------------------------------------*/
	/* colorbox
	-------------------------------------------------------*/
	/* temp
	-------------------------------------------------------*/
}
@media screen and (max-width: 640px) {
/* 640pxより小さい場合 */
	/* line
	-------------------------------------------------------*/
	/* title
	-------------------------------------------------------*/
	#page-title {
	}
	.page-title .area-in {
		height: 130px;
	}
	.page-title .title {
		font-size: 200%;
	}
	.page-title .bg {
		height: 130px;
	}
	.page-title .bg img {
		max-height: 130px;
	}
	.title-box {
		padding: 20px 0;
	}
	.text-title {
	margin-bottom: 0;
	font-size: 200%;
	}
	.title-box.type-box {
		max-width: 160px;
		max-height: none;
		border: 1px solid #000;
		margin: 0 auto 20px auto;
	}
	.title-box.type-box .text-title {
		font-size: 150%;
	}
	.title-box.type-box .text-lead.size-s {
		font-size: 60%;
		margin: 0;
	}
	/* text
	-------------------------------------------------------*/
	/* link
	-------------------------------------------------------*/
	/* btn
	-------------------------------------------------------*/
	/* nav
	-------------------------------------------------------*/
	.dlist-box {
	}
	.dlist-box dl {
	display: block;
	}
	.dlist-box dt {
	display: block;
	width: auto;
	padding: 10px 0 0 0;
	}
	.dlist-box dd {
	display: block;
	padding: 10px 0;
	}
	/* list
	-------------------------------------------------------*/
	/* table
	-------------------------------------------------------*/
	/* form
	-------------------------------------------------------*/
	/* effect
	-------------------------------------------------------*/
	.effect-scroll,
	.effect-delay {
		/*bottom: -30px;*/
		bottom: 0;
		transition: opacity 0.3s linear, bottom 0.1s linear;
		-moz-transition: opacity 0.3s linear, bottom 0.1s linear;
		-webkit-transition: opacity 0.3s linear, bottom 0.1s linear;
		-o-transition: opacity 0.3s linear, bottom 0.1s linear;
		-ms-transition: opacity 0.3s linear, bottom 0.1s linear;
	}
	/* colorbox
	-------------------------------------------------------*/
	/* temp
	-------------------------------------------------------*/
}
@media screen and (max-width: 450px) {
/* 450pxより小さい場合 */
	/* line
	-------------------------------------------------------*/
	/* title
	-------------------------------------------------------*/
	/* text
	-------------------------------------------------------*/
	/* link
	-------------------------------------------------------*/
	/* btn
	-------------------------------------------------------*/
	/* nav
	-------------------------------------------------------*/
	/* list
	-------------------------------------------------------*/
	/* table
	-------------------------------------------------------*/
	/* form
	-------------------------------------------------------*/
	/* effect
	-------------------------------------------------------*/
	/* colorbox
	-------------------------------------------------------*/
	/* slick
	-------------------------------------------------------*/
	/* photo
	-------------------------------------------------------*/
	/* temp
	-------------------------------------------------------*/
}
