@charset "utf-8";
/*----- 各ﾍﾟｰｼﾞに共通して使われる部品 -----*/

/*----- ﾍｯﾀﾞｰ･ﾌｯﾀｰ ﾗｲﾝ -----*/
.line{
	background-color:#daba27;
	font-size:0px;
	height:4px;
	max-height:4px;
	line-height:2px;
	overflow:hidden;
	text-align:center;
	vertical-align:middle;
}
.line image{
	vertical-align:top;
}

/*----- 強調色メッセージ -----*/
#main .msg{
	color:#ff7e00;
	line-height:20px;
	text-align:center;
	padding:10px;
}
#main .msg2{
	color:#c70c27;
	line-height:20px;
	text-align:center;
	padding:10px;
}
#main .msg2 strong{
	color:#c70c27;
}

/*----- ﾎﾞﾀﾝ -----*/
p.btn, input.btn{
	background:#f0f0f0;
	background:-moz-linear-gradient(top, #ffffff, #fff 30%, #f0f0f0);
	background:-o-linear-gradient(top, #ffffff, #fff 30%, #f0f0f0);
	background:-webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.3, #fff), to(#f0f0f0));
	background:linear-gradient(top, #ffffff, #fff 30%, #f0f0f0 100%);
	border:1px solid #cfcfcf;
	border-radius:3px;
	box-shadow:1px 1px 1px #fff inset;
	-moz-box-shadow:1px 1px 1px #fff inset;
	-webkit-box-shadow:1px 1px 1px #fff inset;
	color:#1194d1;
	cursor:pointer;
	font-size:11px;
	font-weight:bold;
	height:25px;
	line-height:25px;
	overflow:hidden;
	position:absolute;
	text-align:center;
	text-shadow:0px 1px 1px #fff;
	top:7px;

	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
p.btn a, p.button a{
	color:#1194d1;
	display:block;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
p.btn .icon{
	font-size:80%;
	margin-right:2px;
}
p.btn.large{
	height:40px;
	line-height:40px;
	font-size:110%;
	top:10px;
}
p.button, input.button, li.button{
	margin:0 auto;
	background:#f0f0f0;
	background:-moz-linear-gradient(top, #ffffff, #fff 30%, #f0f0f0);
	background:-o-linear-gradient(top, #ffffff, #fff 30%, #f0f0f0);
	background:-webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.3, #fff), to(#f0f0f0));
	background:linear-gradient(top, #ffffff, #fff 30%, #f0f0f0 100%);
	border:1px solid #cfcfcf;
	border-radius:3px;
	box-shadow:1px 1px 1px #fff inset;
	-moz-box-shadow:1px 1px 1px #fff inset;
	-webkit-box-shadow:1px 1px 1px #fff inset;
	color:#1194d1;
	cursor:pointer;
	font-weight:bold;
	line-height:24px;
	overflow:hidden;
	position:relative;
	text-align:center;
	text-shadow:0px 1px 1px #fff;
}
p.button.mb, input.button.mb {
	margin-bottom:10px;
}
input.button, p.button a{
	padding:8px;
}

/* 矢印ﾎﾞﾀﾝ */
p.btn span.arrow{
	display:block;
	text-indent:-100px;
}
p.btn span.left{
	background:url(/images/s/common/arrowLeft.png) -2px -8px no-repeat;
}
p.btn span.right{
	background:url(/images/s/common/arrowRight.png) -3px -7px no-repeat;
}
p.btn span.down{
	background:url(/images/s/common/arrowDown.png) -7px -2px no-repeat;
}
p.btn span.up{
	background:url(/images/s/common/arrowUp.png) -7px -2px no-repeat;
}

/* ﾎﾞﾀﾝを配置するバー */
.btnBar{
	background:#f5f5f5;
	background: -moz-linear-gradient(top, #ffffff, #fff 30%, #f5f5f5);
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.3, #fff), to(#f5f5f5));
	background: linear-gradient(top, #ffffff, #fff 30%, #f5f5f5 100%);
	height:40px;
	position:relative;
}
.btnBar .btn{
	width:80px;
}
.btnBar .update{
	left:10px;
}
.btnBar .sort{
	right:10px;
}

/*----- 汎用テキスト -----*/
.lead,
.caution{
	line-height:1.5em;
	padding:10px;
}
.caution p{
	margin-bottom:10px;
}
.caution p:last-child{
	margin-bottom:0;
}
.caution li{
	padding-left:1.0em;
	text-indent:-1.0em;
}
.lead .img,
.requidImg{
	text-align:center;
}
.lead .img img,
.requidImg img{
	width:100%;
	max-width:600px;
}
.text{
	line-height:1.5em;
	padding:10px;
}
.text > p{
	margin-bottom:1em;
}
.text > p:last-child{
	margin-bottom:0;
}
span.small{
	font-size:85%;
}
span.em{
	font-weight:bold;
}
span.em1{
	color:#ff7e00;
}
span.em2{
	color:#c70c27;
}
span.textDf{
	color:#535353;
}
span.textR{
	color:#0049a9;
}
span.textL{
	color:#e20064;
}
span.textS{
	color:#00809c;
}


/*-------------------------
 汎用sectionと見出し
-------------------------*/
section.normal{
	position:relative;
}
section.normal h1, section.normal h2{
	background:#f5f5f5;
	background: -moz-linear-gradient(top, #ffffff, #fff 30%, #f5f5f5);
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.3, #fff), to(#f5f5f5));
	background: linear-gradient(top, #ffffff, #fff 30%, #f5f5f5 100%);
	border-top:1px solid #cfcfcf;
	line-height:24px;
	padding:8px 10px;
}
section.normal article,
section.normal ul.thum > li{
	border-top:1px solid #cfcfcf;
}
section.normal article > a,
section.normal ul.thum li > a{
	color:#535353;
	display:block;
	padding:10px 25px 10px 10px;
}
section.normal article .image,
section.normal ul.thum .image{
	float:left;
	margin:0 10px 0px 0;
}
section.normal article h2,
section.normal article h3,
section.normal li h2,
section.normal li h3{
	border:0;
	background:none;
	height:auto;
	line-height:inherit;
	margin-bottom:0.5em;
	padding:0;
}
section.normal article .textBox,
section.normal ul.thum .textBox{
	padding-left:110px;
}
section.normal h2.center,
section.normal h3.center{
	text-align:center;
}
section.normal h2 a,
section.normal h3 a{
	color:inherit;
	display:block;
}
section.normal h3{
	background-color:#f6f6f6;
	border-top:1px solid #ccc;
	line-height:24px;
	padding:8px 10px 8px 10px;
}
section.normal a > h2,
section.normal a > h3{
	padding-right:30px;
}
section.normal .photo {
	padding:10px 10px 0px;
}
section.normal .photo .img {
	padding-bottom:10px;
	text-align:center;
}
section.normal .photo .img img {
	width:100%;
	max-width:600px;
}


/* ----- 表組み ----- */
table.info{
	border-collapse:collapse;
	width:100%;
}
table.info th,
table.info td{
	border-bottom:1px solid #ccc;
	line-height:20px;
}
table.info th{
	background-color:#e6e6e6;
	border-right:1px solid #ccc;
	padding:10px;
	text-align:center;
	width:6em;
}
table.info tr:last-child > *{
	border-bottom:0px;
}
table.info td > p,
table.info td > a,
table.info td > ul{
	padding:10px;
}
table.info td > a.cell{
	background:url(/images/s/common/arrowRight.png) right 50% no-repeat;
	display:block;
	padding-right:30px;
}

/* ----- ﾘﾝｸﾘｽﾄ ----- */
ul.linkList li{
	border-top:1px solid #cfcfcf;
	overflow:hidden;
	line-height:24px;
}
ul.linkList li a {
	background:url(/images/s/common/arrowRight.png) right 50% no-repeat;
}
ul.linkList li a,
ul.linkList li .altA{
	display:block;
	padding:8px 30px 8px 10px;
}
ul.linkList li.bx a{
	padding:11px 30px 11px 10px;
	line-height:18px;
}

/*-------------------------
 背景矢印表示
 矢印の垂直方向ｾﾝﾀﾘﾝｸﾞはJSで実装
-------------------------*/
.midArw{
	background:url(/images/s/common/arrowRight.png) right 50% no-repeat;
}

/*-------------------------
 正方形ﾎﾞﾀﾝを3列に並べる
-------------------------*/
.btnArea{
	padding:5px 10px;
}
.btnArea li{
	float:left;
	padding:5px 0;
	text-align:center;
	width:33%;
}
.btnArea li.mLeft{
	width:50%;
}
.btnArea li.mRight{
	float:right;
	width:50%;
}
.btnArea li.left, .btnArea li.mLeft{
	clear:both;
}
.btnArea li p{
	height:84px;
	overflow:hidden;
	margin:0 auto;
	width:84px;
}
.btnArea li.mRight p{
	margin:0 auto 0 10%;
}
.btnArea li.mLeft p{
	margin:0 10% 0 auto;
}

.btnArea li a{
	display:block;
	height:84px;
	width:100%;
}


/*-------------------------
 menu.hiddenMenu
 隠れﾒﾆｭｰ(ｸﾞﾛｰﾊﾞﾙﾒﾆｭｰ、並び替えﾒﾆｭｰ)
-------------------------*/
.hiddenMenu{
	display:none;
	font-size:90%;
	position:absolute;
	top:0;
	width:100%;
}
.hiddenMenu .inner{
	padding:7px 10px 10px;
}
.hiddenMenu .btnBox{
	height:30px;
	position:relative;
}
.hiddenMenu .btnBox p{
	background-color:#fff;
	border:1px solid #fff;;
	border-radius:3px 3px 0 0;
	overflow:hidden;
	position:absolute;
	right:0;
}
.hiddenMenu .btnBox .btn{
	background:#fff;
	height:33px;
	top:0;
}
.hiddenMenu .btnBox p.shadow{
	-moz-box-shadow:0 0 10px #aaa;
	-webkit-box-shadow:0 0 10px #aaa;
	box-shadow:0px 0px 10px #aaa;
	height:21px;
	text-indent:-500px;
}

/*----- .innerBox -----*/
.hiddenMenu .innerBox{
	background-color:#fff;
	border-radius:5px 0px 5px 5px;
	-moz-box-shadow:0 0 10px #aaa;
	-webkit-box-shadow:0 0 10px #aaa;
	box-shadow:0px 0px 10px #aaa;
	padding:10px;
}
.innerBox .btnArea div{
	height:25px;
	margin:0 auto;
	padding-bottom:10px;
	position:relative;
	width:80px;
}
.innerBox .btnArea .btn{
	font-size:110%;
	height:30px;
	line-height:30px;
	width:80px;
}
.innerBox .btnArea input.btn{
	width:82px;
}


/*-------------------------
 .tab
 TDL,TDS切り替えﾀﾌﾞ(ﾊﾟｰｸ情報、ｶﾚﾝﾀﾞｰ、ｼｮｰｽｹｼﾞｭｰﾙ)
-------------------------*/
.tab{
	border-top:5px solid #ffffff;
	height:40px;
	margin-bottom:5px;
	position:relative;
}
.tab.tdl{
	border-color:#ef5697;
}
.tab.tds{
	border-color:#38c8d5;
}
.tab li{
	position:absolute;
	height:40px;
	text-align:center;
	top:-1px;
	width:49%;
}
.tab li a{
	display:block;
}
.tab .tdl{
	left:0;
}
.tab .tds{
	right:0;
}
.tab .tdl{
	border-color:#ef5697;
	border-bottom:2px solid #ef5697;
	border-right:2px solid #ef5697;
}
.tab .tds{
	border-color:#38c8d5;
	border-bottom:2px solid #38c8d5;
	border-left:2px solid #38c8d5;
}
.tab.tdl .tdl{
	background-color:#ef5697;
}
.tab.tds .tds{
	background-color:#38c8d5;
}

/*-------------------------
 アコーディオン
-------------------------*/
.acd .btn{
	right:10px;
	width:25px;
}

/*-------------------------
 アイコンのsectionと見出し
-------------------------*/
section.icon{
	position:relative;
}
section.icon h1, section.icon h2{
	background:#f5f5f5;
	background: -moz-linear-gradient(top, #ffffff, #fff 30%, #f5f5f5);
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.3, #fff), to(#f5f5f5));
	background: linear-gradient(top, #ffffff, #fff 30%, #f5f5f5 100%);
	border-top:1px solid #cfcfcf;
	height:40px;
	line-height:40px;
	padding:0 10px;
}
section.icon article{
	border-top:1px solid #cfcfcf;
}
section.icon article > a{
	color:#535353;
	display:block;
	padding:10px 25px 10px 10px;
}
section.icon article .image{
	float:left;
	margin:0 10px 0px 0;
}
section.icon article h2,
section.icon article .box{
	border:0;
	background:none;
	height:auto;
	line-height:inherit;
	margin-bottom:0.5em;
}
section.icon article .box{
	padding-left: 80px;
}
/*section.icon article h2,*/
section.icon article .box ul li{
	margin: 0 5px 0 0;
	float: left;
}



/* border と margin */
.mb{
	margin-bottom:10px;
}
.mt{
	margin-top:10px;
}
.mb-n{
	margin-bottom:0px;
	padding-bottom:0px;
}
.mt-n{
	margin-top:0px;
	padding-top:0px;
}
.bb{
	border-bottom:1px solid #ccc;
}
.bt{
	border-top:1px solid #ccc;
}
.bb-n{
	border-bottom:0 !important;
}
.bt-n{
	border-top:0 !important;
}
.bbR{
	border-bottom:3px solid #289fe3;
}
.bbL{
	border-bottom:3px solid #ef5798;
}
.bbS{
	border-bottom:3px solid #38c8d5;
}
.btR{
	border-top:3px solid #289fe3;
}
.btL{
	border-top:3px solid #ef5798;
}
.btS{
	border-top:3px solid #38c8d5;
}


/* 回り込み解除 */
.clearfix {
	zoom:1;
}
.clearfix:after{
	content: "";
	display: block;
	clear: both;
}


/*-------------------------
 メインビジュアルのスライド
-------------------------*/
div.photo_slide .screen {
	overflow:hidden;
	margin:0 auto;
	width:320px;
}
div.photo_slide .screen ul {
	position:relative;
	height:173px;
	-moz-transition:-moz-transform 500ms ease-in-out;
	-webkit-transition:-webkit-transform 500ms ease-in-out;
	transition:transform 500ms ease-in-out;
}
div.photo_slide .screen li {
	position:absolute;
	top:0;
	left:0;
}
div.photo_slide .screen li a {
	display:block;
}
div.photo_slide .control {
	position:relative;
	z-index:2;
	height:40px;
	background:-moz-linear-gradient(top, #fff, #f1f1f1);
	background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#f1f1f1));
	background:linear-gradient(top, #fff, #f1f1f1);
	border-bottom:1px solid #c9c9c9;
}
div.photo_slide .control a.prev,
div.photo_slide .control a.next {
	display:block;
	line-height:40px;
}
div.photo_slide .control a.prev img,
div.photo_slide .control a.next img {
	vertical-align:top;
}
div.photo_slide .control a.prev {
	float:left;
}
div.photo_slide .control a.next {
	float:right;
}
div.photo_slide .markers {
	padding-top:16px;
	margin:0 30px;
	text-align:center;
	line-height:8px;
}
div.photo_slide .markers li {
	display:inline-block;
	margin:0px 5px;
	width:8px;
	height:8px;
	background-color:#c9c9c9;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	border-radius:4px;
	cursor:pointer;
}
div.photo_slide .markers li.on {
	background-color:#1194d1;
}
div.photo_slide ul.captions {
	position:relative;
	z-index:1;
	min-height:40px;
}
div.photo_slide ul.captions li {
	position:absolute;
	visibility:hidden;
	z-index:1;
	opacity:0;
	width:100%;
	-webkit-transition:opacity 300ms linear;
	-moz-transition:opacity 300ms linear;
	transition:opacity 300ms linear;
}
div.photo_slide ul.captions li.ready {
	visibility:visible;
	opacity:1;
	z-index:2;
}
div.photo_slide ul.captions li.current {
	position:relative;
	visibility:visible;
	opacity:1;
}
div.photo_slide ul.captions li.out {
	position:relative;
	visibility:visible;
}
div.photo_slide ul.captions li.empty {
	display:none;
}