/*-----------------------------------------------------	*/
/*	for all						*/
/*-----------------------------------------------------	*/

/* ------ Web Font ------ */
/* IE */
@font-face {
	font-family: iconfont;
	src: url(CONDENSEicon.eot);
}
/* Firefox, Opera, Safari */
@font-face {
	font-family: iconfont;
	src: url(CONDENSEicon.otf) format("truetype");
}
.icon {
	font-family: iconfont;
	font-weight: normal;
	padding: 0 5px;
}

/* ------ Common ------ */
/* clerfix */
.clerfix:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}
img {
	max-width: 100%;
	height: auto;
	width: auto\9;
}
.imgR {
	float: right;
	margin: 0 0 20px 20px;
}
.imgL {
	float: left;
	margin: 0 20px 20px 0;
}
body { background: url(../img/common/body_bg.gif);}
.tac { text-align: center;}
#wrapper {
	width: 100%;
	background-image: url(../img/common/wrapper_bg.gif);
}
.row-fluid { width: 100%;}
.red { color: #e60012;}
.green { color: #2b8561;}
.bold { font-weight: bold;}
.small {
	font-size: 86%;
	line-height: 1.5;
}
.pdB10 { padding: 0 0 10px;}
.pdB20 { padding: 0 0 20px;}
.pdB30 { padding: 0 0 30px;}
.pdR5 { padding: 0 5px 0 0;}
.pdRL5 { padding: 0 5px;}
.pdR10 { padding: 0 10px 0 0;}
.pdRL10 { padding: 0 10px;}
.pdL10 { padding: 0 0 0 10px;}

.mt30 { margin-top: 30px; }

.input_error{
	color: #E60012;
}

/* ------ Table ------ */
.table {
	width: 100%;
	margin-bottom: 30px;
	border-bottom: solid 1px #ddd;
	border-right: solid 1px #ddd;
	*border-left: solid 1px #ddd;
}
.table .tbody {
	display: table;
	width: 100%;
	background: #fff;
}
.table dl {
	display: table-row;
	font-size: 90%;
	line-height: 160%;
	border-top: solid 1px #ddd;
	overflow: hidden;
	*zoom: 1;
}
.table .thead {
	text-align: center;
	background-color: #eee;
	display: block;
	font-size: 85%;
	line-height: 160%;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
	padding: 5px 8px;
}
.table dl dt,
.table dl dd {
	display: table-cell;
	*display: inline;
	padding: 5px 8px;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
	*border-top: none;
	*border-left: none;
	vertical-align: middle;
	*zoom: 1;
}
.table .col1 {
	width: 30%;
}

/* ------ Header ------ */
header {
	width: 100%;
	background: #fff;
}
#header-inner {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
	*zoom: 1;
}
#header-inner form {
	float: right;
	margin: -55px 0 0;
}
.searchTextBox {
	border-radius: 6px;
	min-width: 200px;
}
.searchBtn {
	color: #fff;
	cursor: pointer;
	background: #575555;
	border-radius: 6px;
	border: none;
	padding: 6px 10px;
}
#logo {
	padding: 20px 0;
}
#logo a {
	display: block;
	max-width: 304px;
}

/* ------ Navi ------ */

#gnav {
	clear: both;
	width: 100%;
	background: #e60012;
}

@media screen and (min-width:980px){

	.menu-mobile {
		display: none;
	}

	.megamenu {
		width: 960px;
		margin: 0 auto;
	}

	.megamenu > ul {
		display: block !important;
		width:100%;
		position: relative;
		z-index:100;
	}

	.megamenu > ul::after {
		content: "";
		display: block;
		clear: both;
	}
	
	.megamenu > ul > li {
		float: left;
		width: 16.66%;
	}
		
	.megamenu > ul > li > a {
		display: block;
		width: 100%;
		height: 100%;
		background: #e60012;
		font-size: 92%;
		line-height: 1.7;
		font-weight: bold;
		text-align: center;
		color: #FFF;
		text-decoration: none;
		box-sizing: border-box;
		padding: 14px;
		border-left: 1px solid #9A1E1E;
	}
	
	.megamenu > ul > li > a span {
		display: block;
		font-size: 70%;
		color: #5A0007;
	}
	
	.megamenu > ul > li:last-child > a {
		border-right: 1px solid #9A1E1E;
	}
	
	.megamenu > ul > li:hover > a {
		background: #BC010F;
	}

	.megamenu > ul > li > ul {
		visibility: hidden;
		opacity: 0;
		-ms-filter: "alpha( opacity=0 )";
		filter: alpha( opacity=0 );
		position: absolute;
		width: 100%;
		background: #333;
		background-color: rgba(0,0,0,0.8);
		box-shadow: 0 3px 3px 0 rgba(0,0,0,0.2);
		padding: 40px;
		box-sizing: border-box;
		transition: .1s ease;
		-webkit-transition: .1s ease;
		-moz-transition: .1s ease;
	}

	.megamenu > ul > li:hover > ul {
		visibility: visible;
		opacity: 100;
		-ms-filter: "alpha( opacity=100 )";
		filter: alpha( opacity=100 );
	}

	.megamenu > ul > li > ul::after {
		content: "";
		display: block;
		clear: both;
	}

	.megamenu > ul > li > ul::before {
		position: absolute;
		margin: auto;
		content: "";
		top: -7px;
		left: 73px;
		border-left: 7px solid transparent;
		border-right: 7px solid transparent;
		border-bottom: 7px solid #000;
		opacity:0.7;
	}

	.megamenu > ul > li > ul > li {
		float: left;
		width: 48%;
		margin-right: 4%;
	}

	.megamenu > ul > li > ul > li:nth-child(1),
	.megamenu > ul > li > ul > li:nth-child(2) {
		margin-bottom: 4%;
	}

	.megamenu > ul > li > ul > li:nth-child(even) {
		margin-right: 0;
	}

	.megamenu > ul > li > ul > li dl {
		border-radius: 6px;
		overflow: hidden;
	}

	.megamenu > ul > li > ul > li dl dt {
		font-size: 103%;
		font-weight: bold;
		color: #FFF;
		padding: 11px 15px;
		
	}

	.megamenu > ul > li > ul > li dl dt.bg-red {
		background: #E60012;
	}

	.megamenu > ul > li > ul > li dl dt.bg-green {
		background: #2B8561;
	}

	.megamenu > ul > li > ul > li dl dt.bg-gray {
		background: #777;
	}

	.megamenu > ul > li > ul > li dl dd {
		padding: 22px;
		background: #FFF;
		min-height: 100px;
	}
	
	.megamenu > ul > li > ul > li dl dd ol {
		padding: 0;
	}

	.megamenu > ul > li > ul > li dl dd ol li a {
		display: inline-block;
		font-size: 95%;
		font-weight: bold;
		padding-left: 22px;
		background: url(../img/common/icon_dashed_01.gif) no-repeat 0 4px;
	}

	.megamenu > ul > li > ul > li dl dd p {
		margin-top: 6px;
		font-size: 73%;
		color: #777;
	}

}

@media screen and (max-width:979px){

	.menu-mobile {
		display: block;
		padding: 15px 15px 15px 57px;
		background: url(../img/common/icon_menu.png) no-repeat 20px center;
		background-size: 22px 22px;
		background-color: #e60012;
		font-size: 80%;
		color: #FFF;
		text-shadow: rgba(0,0,0,0.5) 1px 1px 0;
		cursor: pointer;
	}
	
	.menu-mobile span {
		font-size: 140%;
		margin-right: 12px;
	}

	.menu-mobile.active {
		background: url(../img/common/icon_menu_close.png) no-repeat 20px center;
		background-size: 22px 22px;
	}

	.megamenu .show-on-mobile {
		display: block;
	}

	.megamenu {
		width: auto;
	}

	.megamenu > ul {
		display: none;
		background: #373737;
	}

	.megamenu > ul > li > a {
		display: block;
		padding: 17px 15px 13px 15px;
		box-shadow: 0 1px 0 #1e1e1e, 0 2px 0 #515151;
		color: #FFF;
		text-decoration: none;
	}

	.megamenu > ul > li > a span {
		display: none;
	}

	.megamenu > ul > li > ul {
		padding: 15px;
		box-shadow: 0 1px 0 #1e1e1e, 0 2px 0 #515151;
	}

	.megamenu > ul > li > ul > li {
		margin-bottom: 15px;
	}

	.megamenu > ul > li > ul > li:last-child {
		margin-bottom: 0;
	}

	.megamenu > ul > li > ul > li dl {
		border-radius: 6px;
		overflow: hidden;
	}

	.megamenu > ul > li > ul > li dl dt {
		padding: 9px 12px;
		color: #FFF;
	}

	.megamenu > ul > li > ul > li dl dt.bg-red {
		background: #E60012;
	}

	.megamenu > ul > li > ul > li dl dt.bg-green {
		background: #2B8561;
	}

	.megamenu > ul > li > ul > li dl dt.bg-gray {
		background: #777;
	}

	.megamenu > ul > li > ul > li dl dd {
		background: #FFF;
	}
	
	.megamenu > ul > li > ul > li dl dd ol {
		padding: 0;
	}

	.megamenu > ul > li > ul > li dl dd ol li a {
		display: block;
		font-size: 95%;
		color: #333;
		text-decoration: none;
		padding: 15px 15px 15px 37px;
		background: url(../img/common/icon_dashed_01.gif) no-repeat 15px center;
		background-size: 12px 12px;
		border-bottom: 1px solid #DDD;
	}

	.megamenu > ul > li > ul > li:last-child dl dd ol li:last-child a {
		border-bottom: none;
	}

	.megamenu > ul > li > ul > li dl dd p {
		padding: 5px 15px 15px 15px;
		font-size: 70%;
		color: #777;
	}

}

/* ------ Mainvisual ------ */
#mainvisual {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 0 3px rgba(0,0,0,0.3);
}
#mainvisual-inner {
	position: relative;
	padding-left: 50%;
}
#mainvisual-inner .img {
	display: none;
	float: left;
}
#mainvisual-arrow {
	position: absolute;
	z-index: 200;
	width: 100%;
	top: 40%;
	left: 0;
	margin-top: -10px;
}
#mainvisual-arrow-inner {
	position: relative;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
#mainvisual-arrow .prev,
#mainvisual-arrow .next {
	position: absolute;
	width: 30px;
	height: 30px;
	overflow: hidden;
}
#mainvisual-arrow .prev {
	left: 3%;
}
#mainvisual-arrow .next {
	right: 3%;
}
#mainvisual-arrow a {
	display: block;
	width: 30px;
	height: 54px;
}
#mainvisual-arrow a:link,
#mainvisual-arrow a:visited {
	margin-top: 0px;
}
#mainvisual-arrow a:hover,
#mainvisual-arrow a:active {
	margin-top: -30px;
}
#mainvisual-arrow a img {
	vertical-align: top;
}
#mainvisual-btn {
	width: 100%;
	height: 10px;
	margin-top: 10px;
	text-align: center;
}
#mainvisual-btn div {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 8px;
	overflow: hidden;
	vertical-align: top;
}
#mainvisual-btn div {
	*display: inline;
}
#mainvisual-btn span {
	display: block;
	width: 10px;
	height: 20px;
}
#mainvisual-btn span.current {
	margin-top: -10px;
}
#mainvisual-btn img {
	vertical-align: top;
}

/* ------ Contents ------ */
#contents {
	width: 980px;
	margin: 0 auto;
	padding-top: 20px;
	overflow: hidden;
	*zoom: 1;
}
article {
	margin: 0 auto;
	padding: 0 10px;
}
#left-column {
	float: left;
	width: 710px;
	padding-bottom: 20px;
}

.box,.box1,.box2 {
	background:#fff;
	margin-bottom: 20px;
	padding: 30px;
	border: solid 1px #E5DCC0;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 0 4px rgba(210, 193, 140, 0.5);
}
.box { border-top: none;}
.box1 {
	-webkit-border-radius: 0 0 6px 6px;
	border-radius: 0 0 6px 6px;
}
.box2 { padding: 30px 20px;}

.caution { margin: 0 0 20px;}
.caution a {
	background: url(../img/common/icon_caution.gif) no-repeat;
	padding: 0 0 0 24px;
}

/* breadcrumb */
#breadcrumb {
	font-size: 90%;
	width: 100%;
	background: rgba(255, 255, 255, 0.5);
	border-bottom: 1px solid #e5dcc0;
	box-shadow: 0px 2px 1px #c3beb1 inset;
	padding: 4px 0;
}
#breadcrumb-inner {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
	*zoom: 1;
}
#breadcrumb ul {
	overflow: hidden;
	padding: 0 0 0 28px;
	background: url(../img/common/icon_breadcrumb.png) no-repeat 0 2px;
}
#breadcrumb ul li { float: left;}
#breadcrumb li:first-child:before {
    display: none;
}
#breadcrumb li:before {
	font-size: 90%;
    text-decoration: none;
    vertical-align: bottom;
	font-family: iconfont;
    content: "ú";
    display: inline-block;
    padding: 0 5px;
}

.bnr-area {
	background:#fff;
	margin-bottom: 15px;
	padding: 4px;
	border: solid 1px #E5DCC0;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 0 4px rgba(210, 193, 140, 0.5);
}

.bnr-area img {
	border-radius: 2px;
}

.bnr-area img:hover {
	opacity: 0.9;
}

.cards-area {}
.column-set2 {
	margin: 0 -2.5% 0 0;
	/*overflow: hidden;*/
	clear: both;
}
.column2 {
	float: left;
	width: 47.5%;
	margin: 0 2.5% 2.5% 0;
}
.column-set3 {
	margin: 0 -15px 0 0;
	/*overflow: hidden;*/
	clear: both;
}
.column3 {
	float: left;
	width: 302px;
	margin: 0 15px 20px 0;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	background: #ff00;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
	border: 4px solid #fff;
}
.card1 { background: url(../img/top/bg_btn_01.gif);}
.card2 { background: url(../img/top/bg_btn_02.gif);}
.card3 { background: url(../img/top/bg_btn_03.gif);}
.card1 a,.card2 a,.card3 a {
	display: block;
	padding: 20px 0;
}
.card1 a,.card2 a,.card3 a {
	text-indent: -9999px;
	min-height: 90px;
}
.card1 a { background:url(../img/top/btn_card_01.png) no-repeat 50% 50%;}
.card2 a { background:url(../img/top/btn_card_02.png) no-repeat 50% 50%;}
.card3 a { background:url(../img/top/btn_card_03.png) no-repeat 50% 50%;}
.card1 a:hover { background:url(../img/top/btn_card_01_on.gif) no-repeat 50% 50% #2b8561;}
.card2 a:hover { background:url(../img/top/btn_card_02_on.gif) no-repeat 50% 50% #f32732;}
.card3 a:hover { background:url(../img/top/btn_card_03_on.gif) no-repeat 50% 50% #664033;}

/* ------ 4Column ------ */
.column-set4 {
	margin: 0 -20px 0 0;
	/*overflow: hidden;*/
	clear: both;
}
.column4 {
	float: left;
	width: 225px;
	display: block;
	margin: 0 20px 20px 0;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	background: #fff;
	box-shadow: 0 0 4px rgba(210, 193, 140, 0.8);
}
.cont-area .column-set4 h3{
	color: #fff;
	font-size: 90%;
	text-align: center;
	background: #575555;
	padding: 5px;
	border-radius: 6px 6px 0 0;
	-webkit-border-radius: 6px 6px 0 0;
}
.cont-area .column-set4 a{
	display: block;
}
.cont-area .column-set4 a .column4:hover{
	background: url(../img/top/bg_dot_01.gif);
}
.cont-area .column-set4 a p img {
    display: block;
    margin: 0 auto;
    padding: 25px;
    text-align: center;
}

/* ------ コールセンター / top page ------ */
.tel-area .column-set4 .column4 { min-height: 230px;}
.tel-area .column-set4 h3{
	color: #fff;
	font-size: 90%;
	text-align: center;
	padding: 5px;
	border-radius: 6px 6px 0 0;
	-webkit-border-radius: 6px 6px 0 0;
	background: #e60012;
}
.tel-area .column-set4 .column4 div {
	padding: 10px 20px;
}
.tel-area .column-set4 .column4 dl {
	font-weight: bold;
	padding: 0 0 5px;
}
.tel-area .column-set4 .column4 dt {
	font-size: 90%;
}
.tel-area .column-set4 .column4 dd {
	text-indent: -9999px;
	font-size: 120%;
}
.tel-area .column-set4 dd.num1 { background: url(../img/common/tel_01.gif) no-repeat;}
.tel-area .column-set4 dd.num2 { background: url(../img/common/tel_02.gif) no-repeat;}
.tel-area .column-set4 dd.num3 { background: url(../img/common/tel_03.gif) no-repeat; height: 33px;}
.tel-area .column-set4 dd.num4 { background: url(../img/common/tel_04.gif) no-repeat;}
.tel-area .column-set4 dd.num5 { background: url(../img/common/tel_05.gif) no-repeat;}
.tel-area .column-set4 dd.num6 { background: url(../img/common/tel_06.gif) no-repeat;}
.tel-area .column-set4 dd.num7 { background: url(../img/common/tel_07.gif) no-repeat;}
.tel-area .column-set4 p {
	line-height: 1.4;
	font-size: 90%;
}

/* ------ コールセンター / 下層 ------ */
.lower .tel-area .column-set4 .column4 {
	min-height: inherit;
}
section .third {
	margin-right: 0;
}
.column1 .icon-l {
	margin-bottom: 20px;
	text-align: center;
	font-size: 80px;
	line-height: 80px;
	color: #000;
}
.column1 h3 {
	margin-bottom: 10px;
	font-size: 100%;
	font-weight: bold;
	line-height: 140%;
	color: #000;
	-webkit-text-shadow: 0px 1px 0px #fff;
	text-shadow: 0px 1px 0px #fff;
}
.column1 p {
	font-size: 90%;
}
.camp-area .title,.info-area .title {
	float: left;
	width: 200px;
}
.camp-area .title h2 {
	text-indent: -9999px;
	padding: 0 0 15px;
	background: url(../img/top/ti_camp.gif) no-repeat;
}
.camp-area .title p a {
	color: #fff;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	padding: 5px 15px;
	background: #e60012;
}
.camp-area .title p a:hover {
	text-decoration: none;
	background: #b2000e;
}
.camp-area .list,.info-area .list {
	float: right;
	width: 695px;
}
.info-area .title h2 {
	text-indent: -9999px;
	padding: 0 0 15px;
	background: url(../img/top/ti_info.gif) no-repeat;
}
.info-area .title p a {
	color: #fff;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	padding: 5px 15px;
	background: #575555;
}
.info-area .title p a:hover {
	text-decoration: none;
	background: #000;
}

.news-box {
	font-size: 90%;
	color: #555;
	line-height: 160%;
	padding: 0 0 5px;
	margin: 0 0 5px;
	border-bottom: 1px dotted #eee;
}
.news-box dt {
	float: left;
	width: 13em;
}
.news-box dd {
	margin-left: 13em;
}
.news-box .new {
    background: #E60012;
    color: #fff;
    font-size: 73%;
    font-weight: normal;
    margin: 0 0 0 10px;
    padding: 3px 8px;
	border: 1px solid #BC000F;
}
.news-box .end {
    background: #333;
    color: #fff;
    font-size: 73%;
    font-weight: normal;
    margin: 0 0 0 10px;
    padding: 3px 10px;
	border: 1px solid #000;
	width: 30px;
}
.caution {
	background: #fff;
	border-radius: 6px;
	border: 3px solid #e60012;
	padding: 10px;
}

/* ------ Right Column ------ */
#right-column {
	float: right;
	width: 225px;
	padding-bottom: 20px;
}
#right-column .box {
	margin-bottom: 20px;
	padding: 0 15px 15px;
}
#right-column .box h2 {
	padding: 20px 0 10px;
	font-weight: bold;
	color: #000;
}
#right-column .box p {
	font-size: 76%;
	line-height: 160%;
	color: #555;
}
#right-column .box .tel {
	margin-top: 10px;
	font-size: 120%;
	font-weight: bold;
	color: #c00;
	text-align: center;
	line-height: 100%;
}

/* ------ Footer ------ */
footer {
	width: 100%;
	background: #fff;
}
footer .bgc1 { background: #e60012;}
footer .bgc2 { background: #fff;}
.footer-inner1 ul li,
.footer-inner2 ul.subnav li{
	display: inline-block;
	*display: inline;
	*margin-bottom: 12px;
	padding: 0 10px 0 15px;
	line-height: 100%;
	font-size: 76%;
	color: #999;
	*zoom: 1;
}
.footer-inner1 {
	width: 960px;
	margin: 0 auto;
	padding: 5px 0;
}
.footer-inner2 {
	width: 960px;
	margin: 0 auto;
	padding: 20px 0;
	overflow: hidden;
}
.footer-inner1 ul li a {
	color: #fff;
}
.footer-inner1 ul {
	margin-left: -15px;
}
.footer-inner1 ul li {
	border-left: solid 1px #99000c;
}
.footer-inner2 ul.subnav {
	float: left;
	width: 725px;
	margin-left: -15px;
	padding: 0 0 10px;
}
.footer-inner2 ul.subnav li {
	border-left: solid 1px #ccc;
}
.footer-inner2 ul.copyright {
	float: left;
	width: 300px;
}
.footer-inner2 ul.copyright li {
	font-size: 76%;
	line-height: 1.6;
}
.footer-inner2 ul.copyright li:first-child { color: #000;}
.footer-inner2 ul.copyright li:last-child { color: #ccc;}
.footer-inner2 p { float: right;}
.footer-inner2 p a {
	display: block;
	padding: 5px 10px;
	border: 1px solid #ccc;
}
.footer-inner2 p a:hover {
	border: 1px solid #ff0033;
}
footer ul li:first-child,.footer-inner2 ul.subnav li:first-child {
	border-left: none;
}

.tomatogroup {
	margin-bottom: 15px;
}

@media screen and (max-width: 979px) {
.tomatogroup {
	margin: 10px 0;
	padding: 0 10px;
}
}

/* ------ 下層 ------ */
#cont-title {
	padding: 5px 0 25px;
}
#cont-title h2 {
	color: #e60012;
	font-weight: bold;
	font-size: 160%;
	font-family: "ヒラギノ角ゴ ProN W6","HiraKakuProN-W6","ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";
}
#cont-title h2 span {
	color: #000;
	font-weight: bold;
	font-size: 60%;
	padding: 0 0 0 1em;
}
#cont-title p {
	margin-top: 15px;
	font-size: 100%;
}
#left-column .box { min-height: 800px;}
#left-column h3 {
	font-size:115%;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ ProN W6","HiraKakuProN-W6","ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";
	color: #fff;
	padding: 13px 15px;
	margin: 0;
	-webkit-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
	background-color: #575555;
}
#left-column h3 span {
	display: inline-block;
	background: url(../img/common/sprite_h3_icon.png) no-repeat;
	background-size: 96px 48px;
	/*
	width: 96px;
	height: 48px;*/
	overflow: hidden;
	vertical-align: middle;
}
#left-column h3 span.items1 {
    background-position: 0 0;
	background-size: 24px 24px;
}
#left-column .date {
	color: #999;
	font-size: 90%;
	padding: 0 0 1em;
}
#left-column p {
	padding: 0 0 30px;
}

/* ------ カード紹介  ------ */
/* -- 一覧 -- */
#left-column p.card-main { padding: 30px 0 50px;}
#left-column p.card-main a img:hover { opacity: 0.7;}
.card-area {
	overflow: hidden;
	padding: 0 0 30px;
}
.card-area .t-card {
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border: 3px solid #e1e1e1;
	position: relative;
	box-sizing:border-box;
}
.card-area .t-card dt {
	color: #E60012;
	font-weight: bold;
	text-indent: 1em;
	text-align: left;	
	padding: 10px 0;
	border-bottom: 3px solid #e1e1e1;
}
.card-area .t-card dd {
	text-align: center;	
	padding: 20px 0;
}
#left-column .card-area .t-card p {
	border-top: 1px dotted #ccc;
	padding: 10px;
}
#left-column .card-area .t-card p.end,
#left-column .card-area .t-card p.pickup {
	position: absolute;
	right:-13px;
	top: -13px;
	z-index: 10;
	border: none;
}
.card-area .alllink {
	position: relative;
	background: none;
}
.card-area .alllink:hover {
	position: relative;
	widows: 300px;
	background: #f9f9f9;
	border: 3px solid #E60012;
}
html > body div.linkarea a {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	text-align: left;
	text-indent: -9999px;
	background-color:none;
	filter:alpha(opacity=0);
}
* html > body div.linkarea a {
	background-color:#fff\9;
}
*+ html > body div.linkarea a {
	background-color:#fff\9;
}
/* -- 詳細 -- */
h4{
    color: #2F8463;
	font-size: 125%;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ ProN W6","HiraKakuProN-W6","ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";
    border-bottom: 1px solid #e8e4e4;
    border-left: 5px solid #2F8463;
    border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;	
	background: #fcfcf6;
	padding: 12px;
    margin-bottom: 15px;
}
.introduction .card-area { padding: 0;}
.caution-area {
	color: #E60012;
	line-height: 1.2;
	background: url(../img/common/icon_caution_big.gif) no-repeat 15px 15px;
	padding: 15px 15px 15px 65px;
	margin: 0 0 30px;
	border: 3px solid #E60012;
}
.sec1,.sec2 {
	padding: 0 0 30px;
}
.sec1 dt,.sec2 dt {
	color: #2B8561;
	font-size: 110%;
	font-weight: bold;
	padding: 0 0 10px;
	font-family: "ヒラギノ角ゴ ProN W6","HiraKakuProN-W6","ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";
}
.sec2 dt { color: #E60012;}
.sec1 dd,.sec2 dd { padding: 0 0 20px;}
.normal-list,.normal-sublist { padding: 0 0 30px;}
.normal-list li {
	background: url(../img/common/icon_dashed_01.gif) no-repeat 0 0.4em;
	padding: 0 0 0 20px;
}
.normal-sublist li {
	background: url(../img/common/icon_dashed_02.gif) no-repeat 0 0.6em;
	padding: 0 0 0 10px;
}
normal-sublist li {}

/* ボタン */
.request p input {
	color: #fff;
	font-family: "ヒラギノ角ゴ ProN W6","HiraKakuProN-W6","ヒラギノ角ゴ Pro W6","HiraKakuPro-W6";
	font-size: 130%;
	font-weight: bold;
	text-align: center;
	border-radius: 30px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding: 15px;
	border:1px solid #0154ED;
	background-color: #5993FD; background-image: -webkit-gradient(linear, left top, left bottom, from(#5993FD), to(#0456EC));
	background-image: -webkit-linear-gradient(top, #5993FD, #0456EC);
	background-image: -moz-linear-gradient(top, #5993FD, #0456EC);
	background-image: -ms-linear-gradient(top, #5993FD, #0456EC);
	background-image: -o-linear-gradient(top, #5993FD, #0456EC);
	background-image: linear-gradient(to bottom, #5993FD, #0456EC);
	filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#5993FD, endColorstr=#0456EC);
	display: block;
	margin: 0 auto;
	box-shadow: 0 10px 6px -6px #cdcdcd;
	width: 90%;
}
.request p input:hover {
	cursor: pointer;
	text-decoration: none;
	border:1px solid #0155ef;
	background-color: #2867DC; background-image: -webkit-gradient(linear, left top, left bottom, from(#2867DC), to(#063BB5));
	background-image: -webkit-linear-gradient(top, #2867DC, #063BB5);
	background-image: -moz-linear-gradient(top, #2867DC, #063BB5);
	background-image: -ms-linear-gradient(top, #2867DC, #063BB5);
	background-image: -o-linear-gradient(top, #2867DC, #063BB5);
	background-image: linear-gradient(to bottom, #2867DC, #063BB5);
	filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#2867DC, endColorstr=#063BB5);
}

.card-table {
	font-size: 90%;
	line-height: 1.4;
	margin: 0 0 20px;
}
.card-table td{
	padding: 5px;
	border: 1px solid #d3d2d2;
}

/* ------ お知らせ、キャンペーン、緊急告知 詳細  ------ */
.main-area { padding: 0 0 30px;}
.file-area {
	border-top: 2px solid #eee;
	padding: 10px 0 10px;
}
.file-area dl { padding: 0 0 20px;}
.file-area dl dt { padding: 15px 0 10px;}
.file-area dl dt span {
	color: #fff;
	font-size: 80%;
	padding: 5px 10px;
	background: #2B8561;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.file-area dl dd {
	padding: 0 0 10px;
	border-bottom: 1px dotted #eee;
}
.file-area a.pdf {
	background: url(../img/common/icon_pdf.gif) no-repeat 0 3px;
	padding: 0 0 0 35px;
}
.file-area a.url {
	background: url(../img/common/icon_url.gif) no-repeat 0 3px;
	padding: 0 0 0 35px;
}
.page-navi {
	overflow: hidden;
}
.page-navi .left { float: left;}
.page-navi .right { float: right;}
.page-navi a {
	display: inline-block;
    background: #575555;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    color: #FFFFFF;
    padding: 15px 30px;
}
.page-navi a:hover {
	text-decoration: none;
	background: #000;
}

/* 一覧 */
#left-column .list-area { margin: 0 20px 0 0;}

#left-column .list-area p {
    padding: 0;
}
.list-area ul { margin: 0 0 30px;}
.list-area li {
	border-bottom: 1px solid #eee;
	padding: 20px 10px;
	margin: 0;
}
.list-area li:first-child { padding-top: 0;}
.list-area .alllink {
	position: relative;
	width: 100%;
	background: none;
}
.list-area .alllink:hover {
	position: relative;
	widows: 650px;
	background: #f9f9f9;
}

.pagination { padding: 0;}
.pagination a {
	margin: 2px;
	padding: 10px;
	background-color: #575555;
	text-decoration: none;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.pagination a:hover, .pagination a:active {
	padding: 10px;
	margin: 2px;
	background-color: #000;
	color: #fff;
}
.pagination span.current {
	padding: 10px;
	margin: 2px;
	background-color: #cccccc;
	color: #333;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}
.pagination .disabled {
		display:none;
}
.smp { display: none;}

/* ------ FAQ ------ */
.faq-area dt,.faq-area dd {
	padding: 5px 0 0 60px;
	min-height: 50px;
}
.faq-area dt {
	cursor: pointer;
	font-weight: bold;
	margin: 0;
	padding: 20px 10px 20px 50px;
	background: url(../img/faq/icon_question.gif) no-repeat 0 15px;
}
.faq-area dt:hover { background: #f9f9f9 url(../img/faq/icon_question.gif) no-repeat 5px 15px;}
.faq-area dt.close { border-bottom: 1px dotted #f0dca0;}
.faq-area dt.open { border-bottom: none;}
.faq-area dd {
	background: url(../img/faq/icon_answer.gif) no-repeat 5px 0;
	padding-bottom: 10px;
	border-bottom: 1px dotted #f0dca0;
}
.faq-area dd.accordionBox {
    display: none;
}

/* ------ Request ------ */
.form1 input { margin: 0 5px 0 0;}
.icol2 li {
	display: inline-block;
	padding: 0 5px 0 0;
}

/* ------ Sitemap ------ */
.sitemap ul li {
	text-indent: 1em;
	line-height: 1.2;
	border-bottom: 1px dotted #ccc;
	padding: 0 0 14px;
	margin: 0 0 14px;
}
.step {
    background: #E60012;
    color: #fff;
    padding: 0.1em 0.8em;
	margin: 0 1em 0 0;
}

/* ------ Tomatobank ------ */

.tomatobank::after {
	content:"";
	display:block;
	clear:both;
}

.tomatobank a:hover img {
	filter:alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	-ms-filter:"alpha(opacity=70)";
}

.tomatobank .box-content {
	margin-bottom:30px;
	padding:0 30px 30px 30px;
	text-align:center;
	background:#FFF;
	overflow:hidden;
	border-radius:5px;
	box-shadow:0px 0px 2px 0px rgba(0, 0, 0, 0.2);
}

.tomatobank .box-content h3 {
	font-size:100%;
	line-height:1.3em;
	color:#FFF;
	margin:0 -30px 30px -30px;
	padding:13px;
	background:#575555;
}

.tomatobank .bank-left-column {
	float:left;
	width:465px;
}

.tomatobank .bank-right-column {
	float:right;
	width:465px;
}

@media screen and (max-width: 979px) {
.tomatobank .bank-left-column,
.tomatobank .bank-right-column {
	float:none;
	width:auto;
}
}

.tomatobank .btn-list {
	display:table;
	width:100%;
	margin-bottom:30px;
	padding-top:37px;
	padding-bottom:30px;
	border-bottom:1px dotted #CCC;
}

.tomatobank .btn-list:last-child {
	margin:0;
	padding:0 0 37px 0;
	border:none;
}

.tomatobank .btn-list li {
	display:table-cell;
}

@media screen and (max-width: 979px) {
.tomatobank .btn-list {
	padding-top:0;
}
.tomatobank .btn-list:last-child {
	padding:0;

}
.tomatobank .btn-list li {
	padding:0 5px;
}
}

.link-list li {
	text-indent: -1.6em;
	padding:10px 0 10px 2.2em;
	border-bottom: 1px dotted #ccc;
}

/*-----------------------------------------------------	*/
/*	for - 979px					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 979px) {
	#header-inner { width: 95%;}
	article { padding: 0 15px;}

	/* breadcrumb */	
	#breadcrumb-inner {
		padding: 0 10px;
		width: auto;
	}
	/* カードの有無 */
	.column3 {
		width: 30.28%;
		margin-bottom: 20px;
	}
	.card1 a,.card2 a,.card3 a {
		display: block;
		padding: 20px 0;
	}
	.card1 a,.card2 a,.card3 a {
		min-height: 65px;
	}
	.card1 a,.card1 a:visited { background-size: 75% auto;}
	.card2 a,.card2 a:visited { background-size: 85% auto;}
	.card3 a,.card3 a:visited { background-size: 85% auto;}
	.card1 a:hover,card1 a:active { background-size: 80% auto;}
	.card2 a:hover,card2 a:active { background-size: 90% auto;}
	.card3 a:hover,card3 a:active { background-size: 90% auto;}	
	
	/* キャンペーン、お知らせ */
	.info-area { margin: 0 0 20px;}
	.camp-area .title, .info-area .title { padding: 0 0 10px;}
	.camp-area .title h2,.info-area .title h2 {
		font-weight: bold;
		font-size: 140%;
		text-indent: inherit;
		padding: 0 0 5px;
		background: none;
		float: left;
	}
	.camp-area .title p,.info-area .title p { float: right;}
	.camp-area .title, .info-area .title,
	.camp-area .list, .info-area .list {
		float: none;
		width: auto;
		overflow: hidden;
		padding: 5px 0;
	}
	.camp-area .title p a,.info-area .title p a { padding: 10px 15px;}
	.news-box dt {
		float: none;
		width: auto;
	}
	.news-box dd {
		margin: 0 0 5px 0;
	}
	.cont-area { display: none;}
	
	/* コールセンター */
	.column4 { width: 47.3%;}

	/* コンテンツエリア */
	#contents { width: 100%;}
	#contents-title {
		font-size: 110%;
	}

	/* footer */
	.footer-inner1 {
		font-size: 115%;
		text-align: center;
		width: 100%;
		padding: 0;
	}
	footer ul li:first-child {
		border-left:1px solid #99000c;
	}
	.footer-inner1 ul {
		overflow: hidden;
		margin-left: 0;
	}
	.footer-inner1 ul li {
		display: block;
		padding: 0;
	}
	.footer-inner1 ul li:nth-child(odd) a { border-left: none; }
	.footer-inner1 ul li a {
		display: block;
		float: left;
		padding: 15px 0;
		width: 49.84%;	
		border-left: 1px solid #99000c;
		border-bottom: 1px solid #99000c;
	}
	.footer-inner1 ul li a:hover,.footer-inner1 ul li a:active {
		text-decoration: none;
		background: #99000c;
	}
	.footer-inner2 {
		width: 100%;
		padding: 10px 0;
	}
	.footer-inner2 ul.subnav {
		margin-left: 0;
	}
	.footer-inner2 ul.subnav,
	.footer-inner2 ul.copyright,.footer-inner2 p{ width: 100%;}
	.footer-inner2 ul.subnav li,.footer-inner2 ul.subnav li a {
		display: block;
	}
	.footer-inner2 ul.subnav li a {
		font-size: 115%;
		line-height: 1.3;
		padding: 15px 40px 15px 0; 
		border-bottom: 1px dotted #ccc;
	}
	.footer-inner2 p a {
		text-align: center;
		margin: 10px 10px 0;
	}
	.footer-inner2 ul.subnav li,.footer-inner2 ul.copyright li {
		border-left: none;
	}
	.footer-inner2 ul.copyright li {
		padding-left: 15px;
	}
	#left-column {
		float: none;
		padding-bottom: 0;
		width: auto;
	}
	#left-column .box { min-height: inherit;}
	
		#right-column {
			float: none;
			width: auto;
		}
		
	.lower .tel-area .column-set4 .column4 {
		min-height: 230px;
	}
}

/*-----------------------------------------------------	*/
/*	for - 767px					*/
/*-----------------------------------------------------	*/
@media screen and (max-width: 767px) {
	/* header */
	html { *overflow-x: hidden;}
	#wrapper {
		background-image: none;
		overflow: hidden;
	}
	#header-inner {
		position: relative;
		z-index: 2;
		width: 100%;
	}
	#logo { padding: 0 0 15px;}
	#logo a { margin: 15px 0 0 15px;}
	#header-inner form { margin: -55px 15px 0;}	
	.searchTextBox { min-width: 160px;}
	article { padding: 0 10px;}
	.column2 {
		width: 47.5%;
	}
	
	/* カードの有無 */
	.column-set3 { margin: 0;}
	.column3 {
		width: 98.8%;
		margin: 0 0 15px;
	}
	.card1 a,.card2 a,.card3 a { min-height: 55px;}
	.card1 a,.card1 a:visited { background-size: 30% auto;}
	.card2 a,.card2 a:visited { background-size: 40% auto;}
	.card3 a,.card3 a:visited { background-size: 40% auto;}
	.card1 a:hover,card1 a:active { background-size: 35% auto;}
	.card2 a:hover,card2 a:active { background-size: 45% auto;}
	.card3 a:hover,card3 a:active { background-size: 45% auto;}	
	
	/* コールセンター */
	.column4 { width: 46.6%;}	

	.footer-inner2 ul.subnav li {
		position: relative;
		padding: 0 10px;
	}
	.footer-inner2 ul.subnav li a:after{
	background: url(../img/common/icon_pdf_b.gif) no-repeat;
	background-size: 28px 13px;
	-moz-background-size: 28px 13px;
	-webkit-background-size: 28px 13px;
	content: "";
	position: absolute;
	right: 10px;
	width: 28px;
	height: 13px;
	}
	.footer-inner2 ul.copyright li {
		padding-left: 10px;
	}
	/* 下層 */
	.main-area img { width: 100%;}
	#cont-title {
		padding: 0px 0 15px;
	}
	/* カード紹介 */
	.card-area .t-card dt {
		font-size: 95%;
		padding: 6px 0;
	}
	.card-area .t-card dd { padding: 15px 0;}
	.card-area .t-card p { line-height: 1.3;}
	.introduction .column2 {
			min-height: inherit;
	}
	
	/* FAQ */
	.faq-area dt,.faq-area dd,.faq-area dt:hover {
		line-height: 1.3;
		background-size: 19px 15px;
		-webkit-background-size: 19px 15px;
		background-position: 0 0.1em;
	}
	.faq-area dt { margin: 10px 0 0;}
	.faq-area dt, .faq-area dd {
		min-height: inherit;
		padding: 0 0 10px 30px;
	}
	
	/* 資料請求 */
	.form1 li { font-size: 86%;}
	/* サイトマップ */
	.sitemap ul li {
		text-indent: inherit;
		line-height: 2.5;
	}
}

/*-----------------------------------------------------	*/
/*	for - 479px					*/
/*-----------------------------------------------------	*/
@media screen and (max-width: 479px) {
	.none { display: none;}
	.table {
		border-left: solid 1px #ddd;
	}
	.table .thead { display: none;}
	.table .tbody {
		display: block;
	}

	.table dl {
		display: block;
		font-size: 83%;
	}
	.table dl dt,
	.table dl dd {
		float: none;
		display: block;
		border-top: none;
		border-left: none;
	}
	.table .col1 {
		width: auto;
		padding: 8px;
		font-weight: bold;
		color: #000;
		border-bottom: solid 1px #ddd;
		background-color: #eee;
	}
	.table .col2 {
		padding: 8px;
		width: auto;
		font-weight: bold;
		color: #000;
	}
	.table .col3 {
		padding: 0 8px 8px;
		width: auto;
	}
	
	/* header */
	#logo a {
		padding: 15px 0 0;
		margin: 0 auto;
		max-width: 260px;
	}
	#header-inner form {
		margin: 0 12% 15px;
	}
	
	/* カードの有無 */
	.column3 {
		width: 97%;
		margin-bottom: 10px;
	}
	.card1 a,.card2 a,.card3 a { min-height: 45px;}
	.card1 a,.card1 a:visited { background-size: 52%;}
	.card2 a,.card2 a:visited { background-size: 60%;}
	.card3 a,.card3 a:visited { background-size: 60%;}
	.card1 a:hover,card1 a:active { background-size: 60%;}
	.card2 a:hover,card2 a:active { background-size: 70%;}
	.card3 a:hover,card3 a:active { background-size: 70%;}
	
	/* コールセンター */
	.lower .tel-area .column-set4 .column4 ,
	.tel-area .column-set4 .column4 {
		min-height: inherit;
		width: 94%;
		margin: 0 0 10px;
	}	
	.tel-area .column-set4 .column4 h3 {
		text-indent: 0.5em;
		text-align: left;
	}
	.tel-area .column-set4 .column4 dd { text-indent: inherit;}
	.tel-area .column-set4 .column4 dd.num1,
	.tel-area .column-set4 .column4 dd.num2,
	.tel-area .column-set4 .column4 dd.num3,
	.tel-area .column-set4 .column4 dd.num4,
	.tel-area .column-set4 .column4 dd.num5,
	.tel-area .column-set4 .column4 dd.num6,
	.tel-area .column-set4 .column4 dd.num7{ background: none;}
	.tel-area .column-set4 .column4 dd a {
		color: #ff0033;
		text-decoration: underline;
	}

	/* common */
	.box,.box1,.box2 {
		padding: 15px;
		margin-bottom: 10px;
	}
	.imgR {
		float: none;
		margin: 0 0 15px;
		width: 100%;
	}
	.sec1 {
		padding: 0;
	}	
	
	#cont-title h2 {
		font-size: 130%;
	}
	#cont-title h2 span {
		font-size: 50%;
	}
	/* info */
	.alllink {
		background: url(../img/common/arrow_01.png) no-repeat 50% 50%;
	}
	/* カード紹介 */
	.column-set2 { margin: 0;}
	.column2 {
		float: none;
		width:100%;
		margin: 0 0 10px;
		min-height: inherit;
	}
	#left-column p.card-main {
		padding: 10px 0 20px;
	}
	.request p a {
		font-size: 110%;
		padding: 20px 5px;
	}
	/* faq */

	/* 資料請求 */
	.icol2 li {
		display: block;
	}
	.icol2 li input { width: 95%;}

	/* 後で使うかも */
	.btn {
		width: auto;
	}
	.btn a {
		width: auto;
	}
	.column-set {
		width: 100%;
		*margin-bottom: 0;
	}
	.column1 {
		float: none;
		width: 100%;
	}
	.pagination { display: none;}
	.smp { display: block;}
}

/* Form */

input.width1 { width: 90%;}
textarea.width1{ width: 93%;}
input.width2{ width: 60%;}
input[type=text],
input[type=password],
textarea {
	background: #fafafa;
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	border: 1px solid #ddd;
	color: #888;
}
input[type=text]:focus,
textarea:focus {
	color: #373737;
}
.one-column #branding #searchform {
	right: 40px;
	top: 4em;
}

input[type=text] {
	padding: 6px;
}
input#s {
	background: url(images/search.png) no-repeat 5px 6px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	font-size: 14px;
	height: 22px;
	line-height: 1.2em;
	padding: 4px 10px 4px 28px;
}