@charset "utf-8";

/* -----------------------------------------------------------------
Station CSS
--------------------------------------------------------------------*/

/* -----------------------------------------------------------------
common
--------------------------------------------------------------------*/
.stationSearch .result{ display: none;}
.result .lead{ margin: -5px 0 20px; }
.stationSearch .result .lead{ display: none;}
.searchSection .linkList01{ overflow: hidden; margin: 0 0 20px; padding-top:12px;}
.searchSection .linkList01 li,
.keywordArea.new .linkList01 li{ float: left; margin: 0 16px 16px 0; }

.slRead{ margin: -13px 0 26px; }

.blk{ color: #000 !important; }

.backTop{  width: 256px; margin: 60px auto 40px; }
.backTop a{ display: block; border: solid 1px #004097; text-align: center; padding: 5px 0px;}
.backTop a span{ padding: 0 0 0 20px; background: url(/images/common/icon_arrow_grn_r_01.png) no-repeat left center; font-weight: bold; }
.backTop a:hover{color: #6d5c11; background: #ffde00;}
.backTop a:hover span{background: url(/images/common/icon_local_child_01.png) no-repeat left center;}

.uLinelink { font-size: 1.6rem; color: #004097; margin: -15px 0 30px; padding: 0; text-decoration: underline; border: none; background: none; }
.uLinelink:hover{color: #857200; text-decoration: none; cursor: pointer; }

option[selected]{ color:#000 !important; }

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.result .lead{ margin: 10px 0 21px; }

.searchSection .linkList01{ margin: 0;}

.backTop{ width: 192px; margin: 42px auto 30px; }
.backTop a{ padding: 5px 0;}
.backTop a span{ padding: 0 0 0 15px; background-size: auto 7px; }
.backTop a:hover span{ background-size: auto 7px; }
.uLinelink { margin: -10px 0 30px; }
}

/* -----------------------------------------------------------------
Tab
--------------------------------------------------------------------*/
.searchTab{ margin: 69px 0 0; padding: 0; width: 100%; height: 59px; }
.searchTab ul{ padding-right: 2px; }
.searchTab ul li{ float: left; width: 50%; font-size: 1.8rem;}
.searchTab ul li a{ position: relative; display: block; padding: 15px 15px 15px 23px; border-radius: 5px 5px 0 0; background: #999; color: #fff; text-decoration: none;}
.searchTab ul li a span{ padding-left: 22px; background: url(/images/common/icon_arrow_red_r_01.png) no-repeat 0 50%; background-size: 7px 9px; font-weight: bold; }
.searchTab ul li.pSearch{ margin: 0 2px 0 0; }
.searchTab ul li.cSearch{ 
	margin: 0 -2px 0 0;
	top:-2px;
	position:relative;
}
.searchTab ul li a:after,
.searchTab ul li > span:after{ content:""; position: absolute; top:-29px; right: 14px; display: block; }
.searchTab ul li.pSearch a:after,
.searchTab ul li.pSearch span:after{ width: 195px; height: 72px; }
.searchTab ul li.cSearch a:after,
.searchTab ul li.cSearch span:after{ width: 195px; height: 72px; }

.searchTab ul li.cur{ margin-top: -8px; }
.searchTab ul li.cur > span{ position: relative;  display: block; border-radius: 5px 5px 0 0; background: #004097; padding:24px 15px 18px 23px;}
.searchTab ul li.cur span span{ padding: 0 0 0 22px; background: url(/images/common/icon_arrow_white_d_01.png) no-repeat 0 50%; background-size: 9px 7px; color: #fff; font-weight: bold; }
.searchTab ul li.cur span:after{ top:-21px;}


@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.searchTab{ margin: 53px 0 0; height: 46px; }
.searchTab ul li a{ padding: 15px 0 10px; font-size: 1.4rem; text-align: center;  }
.searchTab ul li a span{ padding-left: 16px; background-size: 6px auto; }
.searchTab ul li a:hover{ margin-top: 0 !important; padding: 35px 0 10px;}
.searchTab ul li a:hover span{ background-size: 6px auto; }
.searchTab ul li a:hover:after{ top:-27px;}
.searchTab ul li.cur a:hover:after{ top:-21px;}
.searchTab ul li.cur{ margin-top: -6px;}
.searchTab ul li.cur:hover{ margin-top: -6px !important;}
.searchTab ul li.cur > span{ padding:17px 0 10px; text-align: center;}
.searchTab ul li.cur span span{ padding-left: 16px; font-size: 1.4rem; background-size: auto 6px;}
.searchTab ul li a:after,
.searchTab ul li > span:after{ content:""; position: absolute; top:-27px; right: 50%; margin-right: -73px; display: block; }
.searchTab ul li.pSearch a:after,
.searchTab ul li.pSearch span:after{ width: 146px; height: 59px; background:url(/images/common/tab_pict_01.png) no-repeat; background-size: 146px 59px; }
.searchTab ul li.cSearch a:after,
.searchTab ul li.cSearch span:after{ width: 146px; height: 59px; background:url(/images/common/tab_pict_02.png) no-repeat; background-size: 146px 59px; }

}


/* -----------------------------------------------------------------
基本設定
--------------------------------------------------------------------*/
.searchSection{ border-top: solid 6px #004097; padding: 60px 0 0; }
.searchSection.type{ padding: 0 0; }
.searchSection.type .attention{ margin: 16px 0; }
.searchSection.result{ padding: 0; }
.cityList{ padding: 60px 0 0; }
.cityList h2 a{ text-decoration:none;}
@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.searchSection{ border-top: solid 4px #004097; padding: 30px 15px 0; }
.searchSection.type{ padding: 0 15px 0; }
.searchSection.type .attention{ margin: 14px 0 13px; }
.searchSection.result{ padding: 0 15px; }
.cityList{ padding: 45px 15px 0; }
}

/* -----------------------------------------------------------------
フォームパーツ
--------------------------------------------------------------------*/
.searchArea01{ position: relative; }
.searchArea01 input[type="text"]{ width: 100%; height: 40px; padding: 0 119px 0 15px; background: #f7f7f7; border: #d1d1d1 solid 1px; border-radius: 0 ; box-sizing: border-box; font-size: 1.6rem; }
.searchArea01 .searchBtn { float: none; position: absolute; top: 0; right: 0; }

.searchBtn{ overflow: hidden; }
.searchBtn button{ float: right; display: block; box-sizing: border-box; width: 112px; height: 40px; font-size: 1.8rem; color: #FFF; background: #004097; font-weight: bold; border: none; border-radius: 0; text-align: left;}
.searchBtn button:hover{ background: #002d6c; cursor: pointer;}
.searchBtn button img{vertical-align: middle; margin: -4px 10px 0;}

.searchSection select{ width: 100%; height: 40px; border-radius: 5px; padding: 7px 15px; background:url(/images/common/icon_arrow_pulldown.png) no-repeat right center #f7f7f7; border: #d1d1d1 solid 1px; box-sizing: border-box; font-size: 1.6rem; -moz-appearance: none; text-indent: 0.01px;}
.searchSection select::-ms-expand { display: none;}
.searchSection select + select{ margin-top: 16px; }
.searchSection select + select + .searchBtn{ margin: 16px 0; }
.searchSection select + select + .searchBtn button{ margin-right: 1px;}

.searchBtn01{ width: 384px; margin: 60px auto 30px; }
.searchBtn01 button{ width: 100%; background: #004097; border: none; box-sizing: border-box; color: #fff; font-size: 1.6rem; font-weight: bold; line-height: 54px; }
.searchBtn01 button:hover{ background: #002d6c; cursor: pointer;}
.searchBtn01 button img{ vertical-align: middle; margin: 0 14px 0 0;}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.searchArea01{ margin-bottom: 25px; }

.searchArea01 input[type="text"]{ height: 30px; padding: 0 89px 0 15px; }
.searchBtn button{ width: 84px; height: 30px; font-size: 1.4rem;}
.searchBtn button img{ width: 15px; height: 15px; vertical-align: middle; margin: -3px 5px 0;}

.searchSection select{ height: 30px; padding: 0 18px; }
.searchSection select + select{ margin-top: 12px; }

.searchBtn01{ width: 100%; margin: 25px auto 30px; }
}

/* -----------------------------------------------------------------
ステーション一覧(簡易版)
--------------------------------------------------------------------*/
.stationList01{}
.stationList01 li{ position: relative; border-bottom: solid 1px #cccccc; padding: 21px 0; }
.stationList01 li:first-child{ border-top: solid 1px #cccccc;}
.stationList01 li:after{ content:""; position: absolute; bottom: -1px; left: 0; display: block; width: 32px; height: 0; border-top: solid 1px #004097; }

.stationList01 li dl{ display: table; }
.stationList01 li dl dt,
.stationList01 li dl dd{ display: table-cell; padding-right: 10px; vertical-align: middle; }
.stationList01 li dl dt{ width: 260px; padding-right: 21px;}
.stationList01 li dl dt img{ vertical-align: middle; width: 33px; height: 33px; margin-right: 20px; }
.stationList01 li dl dt .date{ border-radius: 15px; padding: 5px 15px; background: #004098; font-size: 1.4rem; font-weight: bold; color: #fff; display: inline-block; width:175px; text-align:center;}
.stationList01 li dl dd.link{ width: 234px; font-size: 1.8rem; }
.stationList01 li dl dd.link a{ font-weight: bold; }
.stationList01 li dl dd.addless{ width: 389px; border-left: dashed 1px #cccccc; padding-left: 24px; }
.stationList01 + .moreBtn{ width: 394px; margin: 30px auto; }
.stationList01 + .moreBtn a{ display: block; padding: 5px 5px 5px 24px; border: solid 1px #004097; background: url(/images/common/icon_arrow_grn_r_01.png) no-repeat 18px 50% #fff; text-align: center; font-weight: bold;}
@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/

}

/* -----------------------------------------------------------------
ステーション一覧(詳細版)
--------------------------------------------------------------------*/
.stationSearch .pagerWrap { display: none;}
.pageNum{ overflow: hidden; margin: 30px 0; }
.stationSearch .pageNum{ display: none;}
.pageNum li{ float: left; }
.pageNum li span{ font-weight: bold; color: #004097; }
.pageNum .num{ margin-left: 20px;}
#stationZero{ display:none;}

.stationList02{ margin-bottom: 47px; }
.stationList02 li{ position: relative; border-top: solid 1px #cccccc; padding: 22px 0; }
.stationList02 li:after{ content:""; position: absolute; top: -1px; left: 0; display: block; width: 32px; height: 0; border-top: solid 1px #004097; }

.stationList02 li dl{ display: block; }
.stationList02 li dl dt,
.stationList02 li dl dd{ display: table-cell; vertical-align: middle; }
.stationList02 li dl dt img{ vertical-align: middle; width: 33px; height: 33px; margin-right: 14px; }
.stationList02 li dl dt .date{ display: inline-block; border-radius: 15px; padding: 5px 15px; margin-right: 20px; background: #004098; font-size: 1.4rem; font-weight: bold; color: #fff; display: inline-block; width:165px; text-align:center;}
.stationList02 li dl dt .link{ width: 216px; font-size: 1.8rem; vertical-align: middle; }
.stationList02 li dl dt .link a{ font-weight: bold; }

.stationList02 li dl dd.addlessGroup{ display: block; margin: 20px 0 0 54px; width: 796px; border-top: dashed 1px #cccccc; }
.stationList02 li dl dd.addlessGroup dl{ display: table; margin-top: 11px; }
.stationList02 li dl dd.addlessGroup dl:first-child{ display: table; margin-top: 20px; }
.stationList02 li dl dd.addlessGroup dl dt{ display: table-cell; width: 130px; vertical-align: top; padding: 2px 5px 0 30px; }

.stationList02 li dl dd.addlessGroup dl.addless dt{ background: url(/images/common/icon_place_01.png)no-repeat 0 4px; background-size: 14px 18px; }
.stationList02 li dl dd.addlessGroup dl.access dt{ background: url(/images/common/icon_access_01.png)no-repeat 0 4px; background-size: 14px 18px; }
.stationList02 li dl dd.addlessGroup dl.car dt{ background: url(/images/common/icon_car_01.png)no-repeat 0 6px; background-size: 16px 14px; }
.stationList02 li dl dd.addlessGroup dl.equipment dt{ background: url(/images/common/icon_equipment_01.png)no-repeat 0 4px; background-size: 17px 17px; }

.stationList02 li dl dd.addlessGroup dl dt:after{ content:"\ff1a";  display: block; margin: 1px 3px 0 0; float: right;}
.stationList02 li dl dd.addlessGroup dl dd{ display: table-cell; width: 654px; vertical-align: top; line-height: 1.75;}

.stationList02 + .moreBtn{ width: 394px; margin: 30px auto; }
.stationList02 + .moreBtn a{ display: block; padding: 5px 5px 5px 24px; border: solid 1px #004097; background: url(/images/common/icon_arrow_grn_r_01.png) no-repeat 18px 50% #fff; text-align: center; font-weight: bold;}
@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.pageNum{ margin: 20px 0; }

.stationList02{ margin-bottom: 20px; }
.stationList02 li{ padding: 14px 0 20px; }
.stationList02 li dl{ display: block; width:100%; }
.stationList02 li dl dt,
.stationList02 li dl dd{ display: block; padding: 0; vertical-align: middle; }
.stationList02 li dl dt{ overflow: hidden; padding: 0 0 12px;}
.stationList02 li dl dt img{ float: left; width: 23px; height: 23px; margin: 0 4px 0 5px;}
.stationList02 li dl dt .date{ font-size: 10px; padding: 4px 13px; margin-bottom: 12px; }
.stationList02 li dl dt .link{ display: block; width: 100%; margin-left: 32px;}
.stationList02 li dl dt .link{ font-size: 1.4rem; line-height: 2.3rem; }
.stationList02 li dl dd.addlessGroup{ width: auto; padding: 0; margin: 0 0 0 32px; border: none; border-top: dashed 1px #cccccc; }

.stationList02 li dl dd.addlessGroup dl{ margin-top: 15px; }

.stationList02 li dl dd.addlessGroup dl dt,
.stationList02 li dl dd.addlessGroup dl dd{ display: block; width: 100%; padding-left: 2px; }

.stationList02 li dl dd.addlessGroup dl dt{ font-weight: bold; margin-bottom: 4px; padding-left: 20px; }
.stationList02 li dl dd.addlessGroup dl dt:after{ content: none;}

.stationList02 li dl dd.addlessGroup dl.addless dt{ background: url(/images/common/icon_place_01.png)no-repeat 2px 2px; background-size: auto 13px; }
.stationList02 li dl dd.addlessGroup dl.access dt{ background: url(/images/common/icon_access_01.png)no-repeat 2px 2px; background-size: auto 14px; }
.stationList02 li dl dd.addlessGroup dl.car dt{ background: url(/images/common/icon_car_01.png)no-repeat 2px 4px; background-size: auto 11px; }
.stationList02 li dl dd.addlessGroup dl.equipment dt{ background: url(/images/common/icon_equipment_01.png)no-repeat 2px 2px; background-size: auto 13px; }

.stationList02 li dl dd.addlessGroup dl dd{ line-height: 1.5; }

}



/* -----------------------------------------------------------------
絞り込み検索(チェックボックス)
--------------------------------------------------------------------*/
.checkList01 { overflow: hidden; margin:0 0 45px 8px; padding-top: 6px;}
.checkList01.innerList { margin:0 0 25px 8px; }

.checkBox02,
.checkList01 li{ display: inline-block; vertical-align: top; }
.checkList01 li{ width: 276px; margin: 0 -3px 13px 0px;}
.checkList01.wide li{ float: none; width: 100%; }
.checkBox02{ padding: 0 0 0 8px; }
.checkBox02 input[type="checkbox"],
.checkList01 li input[type="checkbox"]{ position:absolute; left:-1000px; width:1px; height:1px; border:0; margin:-1px; padding:0; z-index:-1000; overflow: hidden; clip: rect(0 0 0 0); }
.checkBox02 input[type="checkbox"] + label,
.checkList01 li input[type="checkbox"] + label{ display:inline-block; padding-left:34px; background-repeat:no-repeat; background-position: 0 0; font-size:1.6rem; line-height:1.4; vertical-align:middle; cursor:pointer;}
.checkBox02 input[type="checkbox"]:checked + label,
.checkList01 li input[type="checkbox"]:checked + label { background-image:url(/images/common/icon_check_02_on.png); }
.checkBox02 label,
.checkList01 li label{ display: table-cell; background-image:url(/images/common/icon_check_02.png); -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; color: #004097;}

.checkBox02 label span,
.checkList01 li label span{ font-weight: bold;}

.checkBox02 label:hover .labelName,
.checkList01 li label:hover .labelName{ text-decoration: none;}

.checkBox02 label .num,
.checkList01 li label .num{ font-size: 1.2rem; color: #999999; text-decoration: none; padding-left: 5px; }
.makerName	{ width: 100%; margin: 20px 0 14px; padding: 8px 8px; background: #dae7f5; }

.bgGry02{ padding: 32px; background: #d5e3f2; }
section > .bgGry02{ margin: 25px 0; }
section > form > .bgGry02{ margin: 25px 0; }
section > .bgGry02 + h3{ margin-top: 35px; }
.searchSection + .bgGry02{ margin-top: 40px; }
@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.checkList01{ padding: 0; margin:0 0 25px 8px; }
.checkList01 li{ width: 212px; margin: 0 0 13px;}
.checkList01.innerList { margin: 17px 0 17px 17px; }

.checkBox02{ padding-bottom: 10px; margin: 5px 0; }
.checkList01 li input[type="checkbox"],
.checkBox02 input[type=checkbox] { position:absolute; z-index:-1000; left:-1000px; overflow: hidden; clip: rect(0 0 0 0); height:1px; width:1px; margin:-1px; padding:0; border:0; }
.checkList01 li input[type="checkbox"] + label,
.checkBox02 input[type=checkbox] + label { padding-left:28px;  display:inline-block; line-height:1.4; background-repeat:no-repeat; background-position: 0 0; font-size:1.2rem; vertical-align:middle; cursor:pointer;}
.checkList01 li input[type="checkbox"]:checked + label,
.checkBox02 input[type=checkbox]:checked + label {background-image:url(/images/common/icon_check_02_on.png);}
.checkList01 li label,
.checkBox02 label { background-image:url(/images/common/icon_check_02.png); background-size: 16px; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}

.bgGry02{ padding: 18px;}
}

/* -----------------------------------------------------------------
リンク一覧
--------------------------------------------------------------------*/
.linkList02{ overflow: hidden; margin-bottom: 40px; }
h2 + .linkList02{ margin-top: -4px;}
h2 + .cityWrap{ margin-top: -2px;}
.linkList02 li{ float: left; width: 170px; margin: 0 0 13px; height: 22px;}
.linkList02 li a{ font-weight: bold; text-decoration: none; }
.linkList02 li a span{ font-weight: bold;}
.linkList02 li a .link{ text-decoration: underline; }
.linkList02 li a .num{ font-size: 1.2rem; color: #999999; text-decoration: none; padding-left: 5px; }
.linkList02 li a:hover .link{ text-decoration: none; }

.cityWrap{ position: relative; border-top: solid 1px #cccccc; padding-top: 20px; }
.cityWrap .linkList02{ margin-bottom: 27px; }
.cityWrap:after{ content:""; position: absolute; top: -1px; left: 0; display: block; width: 32px; height: 0; border-top: solid 1px #004097; }
.cityWrap h3{ margin-bottom: 15px; }

.cityWrap + h2{ margin-top: 41px;}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.linkList02{ margin-bottom: 35px;}
.linkList02 li{ width: 118px; margin: 0 0 11px; }
.cityWrap{ padding-top: 12px; }
.cityWrap h3{ font-size: 1.4rem; margin-bottom: 10px; }
}
/* -----------------------------------------------------------------
アコーディオンコンテンツ
--------------------------------------------------------------------*/
.slideFormbtn{ padding: 9px; margin: 0; border: solid 1px #82a5fa; text-align: center; color: #fff; font-weight: bold; background: url(/images/common/form_toggle_icon_white_plus.png) no-repeat 100% 50% #0d3689 ; background-size: auto 12px; }
.slideFormbtn.cur{ color: #004097; background: url(/images/common/form_toggle_icon_minus.png) no-repeat 100% 50% #ebebeb; background-size: auto 12px; }

.slideFormbtn + .slideForm{ display: none; padding: 26px 32px; border: solid 1px #82a5fa; border-top: none; background: #fff; }
.stationFrom{ padding: 26px 32px; background: #fff; }
.slideFormbtn + .slideForm p{ margin: 31px auto 30px; }
.makerName{ margin: 14px 0 22px; padding: 0; }
.makerName.checkBox02 input[type="checkbox"] + label{ display: block; padding: 12px 8px 10px 41px; background-position: 8px 13px;}
.slideFormbtn + .slideForm h3{ padding-top: 30px; margin-bottom: 21px; border-top: solid 1px #d9d9d9; }
.slideFormbtn + .slideForm h3.bdNone{ padding-top: 0; border: none; } 
.slideFormbtn + .slideForm .checkList01{ margin: 0 0 16px 7px; padding: 4px 0 0;}
.slideFormbtn + .slideForm .checkList01 li{ width: 237px;}
.slideFormbtn + .slideForm .checkList01.wide li{ width: 100%; }
.slideFormbtn + .slideForm .searchArea01 input[type="text"]{ width: 350px; padding: 7px 24px; }
.slideFormbtn + .slideForm select{ width: 352px; border-radius: 5px; padding: 7px 24px; background:url(/images/common/icon_arrow_pulldown.png) no-repeat right center #f7f7f7; border: #d1d1d1 solid 1px; box-sizing: border-box; font-size: 1.6rem; -moz-appearance: none; text-indent: 0.01px; }
.slideFormbtn + .slideForm select + select{ margin: 0 0 0 10px; }
.slideFormbtn + .slideForm select::-ms-expand { display: none;}

.slideFormbtn + .slideForm .searchBtnarea{ overflow: hidden; margin-bottom: 0; }
.slideFormbtn + .slideForm .searchBtnarea .addCarselect{ float: left; margin: 0; padding-right: 28px; background: url(/images/common/icon_plus_03.png) no-repeat right center; background-size: 16px; color: #000; font-size: 1.6rem; font-weight: bold; text-decoration:none;}
.slideFormbtn + .slideForm .searchBtnarea .addCarselect.cur{ background: url(/images/common/icon_minus_03.png) no-repeat right center; background-size: 16px; color: #000; }
.slideFormbtn + .slideForm .searchBtnarea .addCarselect:hover{ cursor: pointer; text-decoration: underline;}
.slideFormbtn + .slideForm .searchBtnarea .borderBox{border-top: 1px solid #d9d9d9; margin:50px 0 20px 0; padding-top: 25px;}

.slideFormbtn + .slideForm .carList{ display: none; }

.slideFormbtn + .slideForm .carList + h3{ margin-top: 20px; }

.slideFormbtn + .slideForm .checkList01.innerList{ margin-left: 7px; padding: 0; }
.slideFormbtn + .slideForm .checkList01.innerList li{ width: 237px; }

.slideFormbtn + .slideForm .optReset{ margin: 0; }
.slideFormbtn + .slideForm .optReset input[type="reset"]{ float: right; padding: 0 0 0 20px; background:url(/images/common/icon_close_01.png) no-repeat left center ; background-size: 10px 10px; border: none; color: #004097; font-size: 1.6rem; font-weight: bold; outline:none;}
.slideFormbtn + .slideForm .optReset input[type="reset"]:hover{ cursor: pointer; text-decoration: underline; }
.slideFormbtn + .slideForm .optReset input[type="reset"]:focus{ outline: none; }

.slideForm .keywordArea{ overflow:hidden;}
.slideForm .keywordArea .searchArea01{ overflow:hidden; float:left; margin-top: 10px;}
.slideForm .keywordArea .searchArea01 input[type="text"]{ float:left;}
.slideForm .keywordArea .linkList01{ float:left; margin: 17px 0 26px 20px;}
.slideForm .keywordArea .linkList01 li{ float: left; margin: 0 16px 16px 0; }
.stationFrom .keywordArea .searchArea01{ float:none;}
.stationFrom .keywordArea .searchArea01 input[type="text"]{ padding:0 15px;}
.stationFrom .searchBtn01{margin: 40px auto 30px;}
.slideFormbtn + .slideForm .gArrowbtn02{ margin-top: 60px; }
.slideFormbtn + .slideForm .gArrowbtn02 span{ font-weight: normal; }

.slideFormbtn + .slideForm .searchBtn01{ margin-top: 47px; }

.slideForm .sojournArea{overflow:hidden;}
.slideForm .sojournArea input[type="text"]{ width: 80px; height: 40px; padding: 0 15px; background: #f7f7f7; border: #d1d1d1 solid 1px; border-radius: 0 ; box-sizing: border-box; font-size: 1.6rem; }
.slideForm .sojournArea .cap01{margin:0 10px;}
.slideForm .sojournArea p{float:left; margin: 10px 0;}
.slideForm .sojournArea .checkList01{float:left; margin: 15px 0 15px 10px;}
.stationFrom .keywordArea p{ margin:10px 0 15px;}

#carSearch .slideForm{ margin-bottom: 45px; }
#carSearch .slideForm .searchBtnarea{ overflow: hidden; margin-bottom: 0; }
#carSearch .slideForm .searchBtnarea .addCarselect{ float: left; margin: 0; padding-right: 28px; background: url(/images/common/icon_plus_03.png) no-repeat right center; background-size: 16px; color: #000; font-size: 1.6rem; font-weight: bold; text-decoration:none;}
#carSearch .slideForm .searchBtnarea .addCarselect.cur{ background: url(/images/common/icon_minus_03.png) no-repeat right center; background-size: 16px; color: #000; }
#carSearch .slideForm .searchBtnarea .addCarselect:hover{ cursor: pointer; text-decoration: underline; background: url(/images/common/icon_plus_04.png) no-repeat right center; background-size: 16px; color: #6d5c11; }
#carSearch .slideForm .carList{ display:none;}

#carSearch .slideForm .searchBtnarea .addCarselect.lev02{ font-size: 2rem; color: #004097;}
#carSearch .slideForm .searchBtnarea .addCarselect.lev02.cur{ background: url(/images/common/icon_minus_03.png) no-repeat right center; background-size: 16px; color: #6d5c11;}
#carSearch .slideForm .searchBtnarea .addCarselect.lev02:hover{ color: #6d5c11; }

.result .slideFormbtn + .slideForm + .arrowLink01{ text-align: right; margin-top: 20px;}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.slideFormbtn{ padding: 7px 28px 7px 12px; font-size: 1.2rem; background-size: 18px 9px; }
.slideFormbtn:hover{ background-size: 18px 9px; }
.slideFormbtn.cur{ background-size: 18px 9px; }
.slideFormbtn + .slideForm,
.stationFrom{ padding: 18px; }
.slideFormbtn + .slideForm section{ padding: 0; }
.slideFormbtn + .slideForm p{ margin: 5px 0 20px; }
.makerName{ margin: 14px 0 18px; padding: 0; }
.makerName.checkBox02 input[type="checkbox"] + label { padding: 6px 6px 7px 30px; background-position: 7px 7px;}
.slideFormbtn + .slideForm h3{ padding-top: 20px; }
.stationFrom h3{ margin-bottom: 10px; padding-top: 10px;}
.slideFormbtn + .slideForm .searchArea01 input[type="text"]{ width: 100%; padding: 5px 14px; }
.slideFormbtn + .slideForm select{ width: 100%; height: 30px; padding: 0 14px; margin: 0;}
.slideFormbtn + .slideForm select + select{ margin: 12px 0 0;}

.slideFormbtn + .slideForm .checkList01.innerList{ margin: 0 0 12px 17px;}
.slideFormbtn + .slideForm .checkList01.innerList li{ margin-bottom: 10px; }
.slideFormbtn + .slideForm .checkList01.carList{ margin-left: 7px; }
.slideFormbtn + .slideForm .checkList01 li{ width: 100%;}

.slideFormbtn + .slideForm .optReset{ text-align: center; }
.slideFormbtn + .slideForm .optReset input[type="reset"]{ float: none; font-size: 1.4rem;}

.slideFormbtn + .slideForm .searchBtnarea .addCarselect{margin: 15px 0 0; padding-right: 21px; background: url(/images/common/icon_plus_03.png) no-repeat right center; background-size: 12px; font-size: 1.2rem; font-weight: bold; }
.slideFormbtn + .slideForm .searchBtnarea .addCarselect.cur{ background: url(/images/common/icon_minus_03.png) no-repeat right center; background-size: 12px;}

#carSearch .slideForm .searchBtnarea .addCarselect.lev02{ font-size: 1.6rem; color: #004097;}
#carSearch .slideForm .searchBtnarea .addCarselect.lev02.cur{ background: url(/images/common/icon_minus_03.png) no-repeat right center; background-size: 16px; color: #6d5c11;}
#carSearch .slideForm .searchBtnarea .addCarselect.lev02:hover{ color: #6d5c11; }

.slideFormbtn + .slideForm .searchBtnarea .borderBox{ margin:20px 0 10px 0; padding-top: 15px;}

.slideFormbtn + .slideForm .gArrowbtn02{ margin: 45px auto 25px; }

.slideForm .keywordArea{ overflow:hidden;}
.slideForm .keywordArea .searchArea01{ overflow:hidden; float:none; margin-top: 0;}
.slideForm .keywordArea .searchArea01 input[type="text"]{ float:none;}
.slideForm .keywordArea .linkList01{ float:none; margin: 5px 0 10px;}


.slideFormbtn + .slideForm .searchBtn01{ margin-top: 31px; }
.stationFrom .searchBtn01{ margin-top: 31px; }
.slideFormbtn + .slideForm .searchBtn01 button,
.stationFrom .searchBtn01 button{ line-height: 42px; }

.slideForm .sojournArea p{ margin: 0;}
.slideForm .sojournArea input[type="text"]{ height: 30px; padding: 0 15px; }
.slideForm .sojournArea .cap01{margin:0 5px;}
.slideForm .sojournArea .checkList01{float:left; margin:16px 0 0 10px;}
}

/* -----------------------------------------------------------------
2並びボタン
--------------------------------------------------------------------*/
.btnList01{ overflow: hidden; margin-top: 40px; }
.btnList01 li{ float: left; width: 404px; margin: 0 0 32px 40px; }
.btnList01 li:first-child,
.btnList01 li:first-child + * + *{ margin-left: 0; }

.btnList01 li a{ display: block; border: solid 1px #004097; text-align: center; padding: 22px 0px; text-decoration: none;}
.btnList01 li a span{ padding: 0 0 0 20px; background: url(/images/common/icon_arrow_grn_r_01.png) no-repeat left center; font-weight: bold; }
.btnList01 li a:hover{ color: #004097; background: #f2fff7;}
.btnList01 li a:hover span{}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.btnList01{ margin: 30px 0 30px; padding-right: 16px; }
.btnList01 li{ width: 50%; height: 48px; margin: 0 16px 16px 0; }
.btnList01 li a{ display: table; width: 100%; height: 48px; padding: 0 15px 0 20px; text-align: left;}
.btnList01 li a span{ display: table-cell; vertical-align: middle; padding: 0 0 0 14px; background-size: auto 7px; }
.btnList01 li a:hover span{ background-size: auto 7px; }
.btnList01 li:first-child + *,
.btnList01 li:first-child + * + * + *{ margin: 0 -16px 16px 0;}
}

/* -----------------------------------------------------------------
MAP
--------------------------------------------------------------------*/
#map{ width: 100%; height: 524px; position:relative; overflow:hidden;}

#DriveRoute th,
#DriveRoute td { border: 1px solid #ccc; padding: 3px 7px; text-align: left; vertical-align: top;}
.adp-summary span { font-weight:bold;}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
#map { width: 100%; height: 348px;}

#map { position: relative; padding-bottom: 348px; height: 0; overflow: hidden;}

#map iframe,
#map object,
#map embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

}

.drivePoint ol{ margin:20px 0 60px 0;}
.drivePoint ol li{ margin:10px 0 0; text-indent: -2.7em; padding-left: 2.7em;}
.drivePoint ol li span{ height: 18px; margin: 0 0 0 0; text-align: center;}
.drivePoint ol li:last-child span{ margin: 5px 0 0 0;}
.drivePoint ol li:last-child span.imgMid img{ vertical-align:middle;}

.priceArea{ margin: 20px 0 40px; display: none;}
.drivePoint + .arrowLink01{ margin-bottom: 40px; display:none;}

.priceArea .total{ font-size: 2.9rem; font-weight:bold;}
.priceArea .total .totalPrice{ font-weight:bold;}
.adp-summary{ font-size: 2.4rem;}


.stationName{ font-weight:bold;}
.stationName span{ font-weight:bold;}

.text-center { text-align: center; padding:30px 0;}
.text-center .btn-w140{ width: 120px;}
.text-center .btn-primary { background-color: #fff; border: 2px solid #004097; border-radius: 0; color: #004097; padding: 6px 10px; margin:0 10px 0 0; text-decoration:none;}
.text-center .btn-danger { background-color: #ebe5db; color: #624c40; text-decoration:none;}
.btn { -moz-user-select: none; background-image: none; cursor: pointer; display: inline-block; font-size: 15px; font-weight: 700; line-height: 1.42857; margin-bottom: 0; text-align: center; vertical-align: middle; white-space: nowrap; min-width: 106px; padding: 6px 10px;border-radius: 3px; font-size:1.2rem;}

.btn-primary:hover{ background-color: #004097; border-color: #004097; color: #fff;}
.btn-danger:hover{ background-color: #ebebeb; color: #004097;}

.toolTip.toolTip .gm-style-iw { position: relative !important; top: 4px !important; left: 4px !important; overflow: visible !important;}
.toolTip .gm-style-iw > div:first-child{ max-width:none !important;}
.toolTip .gm-style-iw > div:first-child > div:first-child{ /*max-width:none !important;*/ overflow:hidden !important;}

/*.gm-style > div > div:first-child + * + * + * > div > div {  background: #000; }*/
.toolTip .gm-style-iw + div { display: none;}
.toolTip .gm-style-iw table{ width: 100%; min-width:200px; position:relative; z-index:2;}
.toolTip .gm-style-iw table tr td{ border: none;}
.toolTip .gm-style-iw table tr:first-child{ padding: 9px; background: #fff;  height:54px;}
.toolTip .gm-style-iw table tr:first-child th{ width: 36px; padding: 9px;}
.toolTip .gm-style-iw table tr:first-child td{ padding: 9px 0 9px 9px; color: #004098; vertical-align: middle; font-size: 1.6rem; font-weight: bold; }
.toolTip .gm-style-iw table tr:first-child + tr{ background: #004097; height:32px;}
.toolTip .gm-style-iw table tr:first-child + tr td { padding: 7px; }
.toolTip .gm-style-iw table tr:first-child + tr td a{ color: #fff; background: url(/images/common/icon_arrow_brown_r_01.png) no-repeat left center; font-weight: bold; padding-left: 18px; left: 50%; margin-left:-60px; position:absolute; font-size: 1.4rem;}

.toolTip{ height:97px !important; margin-top:28px; box-shadow:none !important; background:none !important;}
.toolTip > div > div:nth-child(2){ box-shadow:none !important; background:none !important;}

.toolTip > div:nth-child(1) > div:nth-child(1){ background:none !important;  box-shadow:none !important; border :none !important;}

.toolTip > div:nth-child(1) > div:nth-child(3){ top:91px !important; z-index:100; box-shadow:none !important;}
.toolTip > div:nth-child(1) > div:nth-child(3) > div > div{ background: #ffde00 !important; box-shadow:none !important;}
.toolTip > div:nth-child(1) > div:nth-child(3) > div:nth-child(1) > div{ border-left: 4px solid #fff !important; transform:skewX(32.6deg) !important;}
.toolTip > div:nth-child(1) > div:nth-child(3) > div:nth-child(2) > div{ border-right: 4px solid #fff !important; transform:skewX(-32.6deg) !important;}

.toolTip > div:nth-child(1) > div:nth-child(4){ height:92px !important;}

.mapPadding01{ position:absolute; width:45px; height:54px; top:0; right:-22px}
.mapPadding02{ position:absolute; width:45px; height:32px; background:#004098; top:54px; right:-22px}

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
.toolTip .gm-style-iw table tr:first-child{ padding: 0 0 0 9px; background: #fff;  height:45px;}
.toolTip .gm-style-iw table tr:first-child td{ padding: 0; font-size: 1.2rem;}
.toolTip .gm-style-iw table tr th img{ width:27px; height:auto; }

/*.drivePoint ol li:last-child span{ margin: 10px 0 0 -43px;}*/

.toolTip > div:nth-child(1) > div:nth-child(3){ top:82px !important;}
.toolTip > div:nth-child(1) > div:nth-child(4){ height:83px !important;}

.mapPadding01{ height:45px; top:0; z-index:1; background:#004098;}
.mapPadding02{ height:32px; top:inherit; z-index:1;}

.drivePoint ol{ margin:20px 0 10px 0px;}
.text-center .btn-primary {display:none;}

.drivePoint + .arrowLink01{ margin:20px 0 20px;}

.priceArea .total{ font-size: 2rem;}
.adp-summary{ font-size: 2rem;}

}



/* index_parts */
.areaLink{ margin: 35px 0; }
.areaLink .linkList02{ margin: 0; }
.areaLink .linkList02 li{ width: auto; overflow: hidden; }
.areaLink .linkList02 li:after{ content: "\ff5c"; display: block; float: right; padding: 2px 5px 0 5px; font-size: 1.4rem; color: #cfcfcf; }
.areaLink .linkList02 li:last-child:after{ content: none;}

.areaLink.foot{ margin: -18px 0 20px; }
.areaLink.foot p{ padding: 18px; border: solid 1px #cccccc; }

@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/
	.areaLink .linkList02 li{ margin-right: 10px;}
	.areaLink .linkList02 li:after{ content: none; }
}

@media print{
header,
#side,
.ttlSection,
#main .result .buttonArea,
footer{display:none;}
}

#mapLoadingLayer{ display:none; width:100%; height:100%; background: url(/images/common/loader.gif) no-repeat center rgba(0,0,0,0.4); position:absolute; z-index:10;}



.stationFaqList {
	margin-top:40px;
	padding-top:20px;
	border-top:1px solid #cccccc;
}
.stationFaqList li {
	border-top:1px dotted #cccccc;
}
.stationFaqList li:first-child {
	border-top:none;
}
.stationFaqList li dl {
	margin:0;
}
.stationFaqList li dl dt {
	background: url(/images/common/icon_answerbox_dt.png) no-repeat 0 0;
}
.stationFaqList li dl dd {
	margin-top:5px;
	background: url(/images/common/icon_answerbox_dd.png) no-repeat 0 0;
}

@media screen and (min-width: 769px){ /* 769px以上用（PC用）の記述 ----------------------------------------------------*/

.stationFaqList li {
	padding:10px;
}
.stationFaqList li dl dt {
	min-height:30px;
	font-size: 1.4rem;
	line-height:1.6em;
	padding: 1px 0 0 40px;
	background-size: 30px auto;
}
.stationFaqList li dl dd {
	min-height:30px;
	font-size: 1.4rem;
	line-height:1.6em;
	padding: 1px 0 0 40px;
	background-size: 30px auto;
}

}
@media screen and (max-width: 768px){ /* 768px以下用（タブレット／スマートフォン用）の記述 ----------------------------------------------------*/

.stationFaqList li {
	padding:10px 5px;
}
.stationFaqList li dl dt {
	min-height:30px;
	font-size: 1.2rem;
	line-height:1.6em;
	padding: 1px 0 0 42px;
	background-size: 30px auto;
}
.stationFaqList li dl dd {
	min-height:30px;
	font-size: 1.2rem;
	line-height:1.6em;
	padding: 1px 0 0 40px;
	background-size: 30px auto;
}

}
