@charset "Shift_JIS";

/*===== CONTENTS ===========================================

	1: container
	2: header
	3: flash content
	4: navigation
			4-1: global navi
			4-2: sub navi
	5: topic pachi
	6: content
			6-1: main contents
			6-2: side navi
	7: page navi
	8: footer
	9: emergency

==========================================================*/


/* 1: container
==========================================================*/
#container {
	width: 980px;
	margin: 0 auto;
	font-size: 90%;
	text-align: left;
}


/* 2: header
==========================================================*/
#head {
	position: relative;
	width: 980px;
	height: 100px;
	background-position: left top;
	background-repeat: no-repeat;
}

#head.headTop {
	background-image: url(/common2018/img/head-bg.jpg);
}

#container .headTokyo {
	background-image: url(/tokyo/img/head-bg.jpg);
}

#container .headHakodate {
	background-image: url(/hakodate/img/head-bg.jpg);
}

#container .headNagoya {
	background-image: url(/nagoya/img/head-bg.jpg);
}

#container .headYokohama {
	background-image: url(/yokohama/img/head-bg.jpg);
}

#container .headOsaka {
	background-image: url(/osaka/img/head-bg.jpg);
}

#container .headKobe {
	background-image: url(/kobe/img/head-bg.jpg);
}

#container .headMoji {
	background-image: url(/moji/img/head-bg.jpg);
}

#container .headNagasaki {
	background-image: url(/nagasaki/img/head-bg.jpg);
}

#container .headOkinawa {
	background-image: url(/okinawa/img/head-bg.jpg);
}

/* head Navi
----------------------------------------------------------*/
/* blockskip */
#head .blockskip {
	position: absolute;
	top: 0;
	left: 0;
	width: 720px;
	padding-right: 10px;
	text-align: right;
}

#head .blockskip p {
	padding: 3px 10px 3px 0;
	background-color: #143C85;
	line-height: 1;
}

#head .blockskip p:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 10px;
	height: 100%;
	background-image: linear-gradient(to bottom right, #143C85 50%, transparent 51%);
}

#head .blockskip a { color: #FFFFFF; text-decoration: none; }
#head .blockskip a:hover { color: #FFFFFF; text-decoration: underline; }

/* headerSp
----------------------------------------------------------*/

/* logo */
#head .headLogo {
	position: absolute;
	top: 32px;
	left: 0;
	width: 420px;
	height: 57px;
	margin: 0 0 0 29px;
}

#head .headLogo a:nth-child(2) {
	display: none;
}

/* gNaviSp */
#head .gNaviButton,
#head .gNaviSp {
	display: none;
}

/* head Menu
----------------------------------------------------------*/
#head .headMenu {
	position: absolute;
	top: 0;
	right: 0;
	width: 250px;
	text-align: right;
}

#head .headMenu ul {
	padding: 2px 0 3px 0;
	line-height: 1;
}

#head .headMenu ul li {
	display: inline;
	margin-left: 20px;
	padding-left: 16px;
	background: url(/common2018/img/head-icon-arrow.gif) no-repeat left 0.4em;
	line-height: 1;
	list-style: none;
}

#head .headMenu ul li a:hover { color: #990000; text-decoration: underline; }

/* fontsize
----------------------------------------------------------*/
#head #fontsize {
	position: absolute;
	top: 67px;
	right: 235px;
	width: 287px;
	height: 22px;
}

#head #fontsize dl {
	width: 287px;
	height: 22px;
}

#head #fontsize dt {
	float: left;
	display: block;
	width: 68px;
	height: 22px;
}

#head #fontsize dt img {
	display: block;
}

#head #fontsize dd {
	float: left;
	width: 70px;
	height: 22px;
	margin-left: 3px;
}

#head #fontsize dd a {
	display: block;
}

/* search
----------------------------------------------------------*/
#head #headSearch {
	position: absolute;
	top: 67px;
	right: 0;
	width: 220px;
	height: 22px;
}

#head #headSearch #Search {
	position: absolute;
	top: 0;
	right: 57px;
	width: 158px;
	height: 16px;
	padding: 2px 4px;
	border: 1px solid #7E9DBA;
}

* html #head #headSearch #Search {
	height: 22px;
} /* IE6 */

#head #headSearch #searchBtn {
	position: absolute;
	top: 0;
	right: 0;
	width: 52px;
	height: 22px;
}


/* 3: flash content
==========================================================*/
#flashContent {
	clear: both;
	position: relative;
	width: 980px;
	height: 200px;
}

#flashContent img {
	display: block;
}


/* 4: navigation
==========================================================*/

/* 4-1: global navi
========================================================*/
#gNavi {
	width: 980px;
}

#gNavi.gnaviBtm {
	margin-bottom: 5px!important;
}
 
#gNavi ul {
	width: 980px;
	height: 40px;
}

#gNavi li {
	float: left;
	width: 164px;
	list-style: none;
}

#gNavi li a {
	display: block;
}

#gNavi li.naviTop {
	width: 160px;
}


/* 4-2: sub navi
========================================================*/
#sNavi {
	width: 980px;
	height: 34px;
	margin-bottom: 10px;
	padding-top: 4px;
	background: #CAE1FA url(/common2018/img/snavi-bg.gif) repeat-x left bottom;
}

* html #sNavi img {
	vertical-align: bottom;
} /* IE6 */

#sNavi dl {
	margin: 0 0 0 12px;
}

#sNavi dl dt {
	display: block;
	float: left;
	width: 137px;
	height: 34px;
	margin-right: 7px;
}

#sNavi dl dd {
	float: left;
	display: block;
	width: 810px;
	height: 30px;
	padding-top: 4px;
}

#sNavi dl dd ul {
	width: 810px;
	height: 30px;
}

#sNavi dl dd li {
	float: left;
	width: 83px;
	height: 30px;
	margin-right: 7px;
	list-style: none;
	line-height: 1;
}


/* 5: topic path
==========================================================*/
#topicPath {
	clear: both;
	width: 940px;
	padding: 5px 20px 0 20px;
}

* html #topicPath {
	width: 980px;
} /* IE6 */

#topicPath #location {
	display: inline;
	margin: 0;
	font-size: 100%;
}

#gNavi + #topicPath {
	padding-top: 15px;
}


/* 6: contents
==========================================================*/

/* style2.css
----------------------------------------------------------*/
#maincolumn #contents :last-child {
	margin-bottom: 0!important;
}

/* readBlock
----------------------------------------------------------*/
.readBlock {
	margin-top: 15px;
}

/* contentsArea
----------------------------------------------------------*/
#contentsArea {
	clear: both;
	width: 980px;
	padding: 15px 0 30px 0;
}

#contentsArea.btmLine {
	background: url(/common2018/img/parts-line-section.gif) repeat-x left bottom;
}


/* 6-1: main contents
==========================================================*/
#contentsArea #topMain {
	float: left;
	width: 700px;
}

#contentsArea #main {
	float: left;
	width: 700px;
}

body #contentsArea #main.singleLayout {
	float: none;
	width: 980px;
}


/* 6-2: side navi
========================================================*/
#sideNavi {
	float: right;
	display: inline;
	width: 260px;
	margin-left: 20px;
}


/* areaNavi
----------------------------------------------------------*/
#sideNavi .areaNavi {
	margin-bottom: 20px;
	border: 5px solid #EFEFEF;
}

#sideNavi .areaNavi h2 {
	width: 250px;
	margin-bottom: 10px;
}

#sideNavi .areaNavi ul {
	width: 228px;
	margin: 0 auto 5px auto;
	list-style: none;
}

#sideNavi .areaNavi ul li {
	display: inline;
	float: left;
	width: 70px;
	height: 30px;
	margin: 0 9px 5px 0;
}

#sideNavi .areaNavi ul li:nth-child(3n+3) {
	margin-right: 0;
}

#sideNavi .areaNavi ul li img {
	display: block;
	width: 70px;
	height: 30px;
}


/* snsNavi
----------------------------------------------------------*/
#sideNavi .snsNavi {
	width: 230px;
	margin-bottom: 20px;
	padding: 20px 15px 0 15px;
	background: url(/common2018/img/banner-bg.gif) repeat left top;
	background-size: 2px 2px;
}

#sideNavi .snsNavi h2 {
	margin-bottom: 1em;
	font-size: 100%;
}

#sideNavi .snsNavi ul {
	width: 230px;
	padding-bottom: 10px;
	list-style: none;
}

#sideNavi .snsNavi ul li {
	width: 230px;
	margin-bottom: 10px;
}

#sideNavi .snsNavi ul li img {
	max-width: 100%;
	width: auto;
	height: auto;
}

#sideNavi .snsNavi ul li .andmore {
	margin-top: 2px;
}

#sideNavi .snsNavi ul li a:hover.andmore {
	background-color: #D6D6D6!important;
}

/* subMenu
----------------------------------------------------------*/
#sideNavi .subMenu {
	margin-bottom: 20px;
	background-color: #EFEFEF;
	border: 1px solid #BDBCBD;
	border-radius: 2px;
}

#sideNavi .subMenu .subMenuTitle {
	position: relative;
	padding: 4px 0;
	border-top: 4px solid #BDBCBD;
}

#sideNavi .subMenu .subMenuTitle::after {
	content: "";
	position: absolute;
	top: -4px;
	left: 0;
	width: 40px;
	height: 4px;
	background-color: #002870;
}

#sideNavi .subMenu h2 {
	padding: 6px 0 6px 46px;
	background-position: 4px 2px;
	background-repeat: no-repeat;
	background-size: 34px 29px;
	font-size: 100%;
}

#sideNavi .subMenu h2.iconAbout {
	background-image: url(/common2018/img/subMenu-icon-about.gif);
}

#sideNavi .subMenu h2.iconPolicy {
	background-image: url(/common2018/img/subMenu-icon-policy.gif);
}

#sideNavi .subMenu h2.iconProcedure {
	background-image: url(/common2018/img/subMenu-icon-procedure.gif);
}

#sideNavi .subMenu h2.iconEtc {
	background-image: url(/common2018/img/subMenu-icon-etc.gif);
}

#sideNavi .subMenu h2.iconArea {
	background-image: url(/common2018/img/subMenu-icon-area.gif);
}

#sideNavi .subMenu h2.iconPublicity {
	background-image: url(/common2018/img/subMenu-icon-publicity.gif);
}

#sideNavi .subMenu h2.iconStatistics {
	background-image: url(/common2018/img/subMenu-icon-statistics.gif);
}

#sideNavi .subMenu h2.iconRecruitment {
	background-image: url(/common2018/img/subMenu-icon-recruitment.gif);
}

#sideNavi .subMenu h2.iconFieldtrip {
	background-image: url(/common2018/img/subMenu-icon-fieldtrip.gif);
}

#sideNavi .subMenu h2.iconContactus {
	background-image: url(/common2018/img/subMenu-icon-contactus.gif);
}

#sideNavi .subMenu h2.iconPr {
	background-image: url(/common2018/img/subMenu-icon-pr.gif);
}

#sideNavi .subMenu h2.iconWebpr {
	background-image: url(/common2018/img/subMenu-icon-webpr.gif);
}

#sideNavi .subMenu h2.iconQa {
	background-image: url(/common2018/img/subMenu-icon-qa.gif);
}

#sideNavi .subMenu h2.iconFaq {
	background-image: url(/common2018/img/subMenu-icon-faq.gif);
}

#sideNavi .subMenu .subMenuInner {
	padding: 0 6px 6px 6px;
}

#sideNavi .subMenu .subMenuInner ul {
	list-style: none;
}

#sideNavi .subMenu .subMenuInner ul li {
	position: relative;
	padding: 12px 10px 12px 32px;
	background: #FFFFFF url(/common2018/img/parts-arrow-more.gif) no-repeat 10px 1.2em;
    background-size: 12px 12px;
}

#sideNavi .subMenu .subMenuInner ul li::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: calc(100% - 20px);
	height: 1px;
	margin: 0 10px;
	border-bottom: 1px dotted #BDBCBD;
}

#sideNavi .subMenu .subMenuInner ul li:last-child::after {
	border-bottom: none;
}

#sideNavi .subMenu .subMenuInner ul li.listBtm {
	border-bottom: none;
}

#sideNavi .subMenu .subMenuInner ul li.iconNone {
	padding-left: 0!important;
	background: none!important;
}

* html #sideNavi .subMenu .subMenuInner ul li.iconNone {
	width: 230px;
} /* IE6 */

*:first-child + html #sideNavi .subMenu .subMenuInner ul li.iconNone {
	width: 230px;
} /* IE7 */

#contentsArea #sideNavi .subMenu .subMenuInner ul li.iconNone a {
	text-decoration: none!important;
}

#contentsArea #sideNavi .subMenu .subMenuInner ul li.iconNone a span {
	text-decoration: underline;
}

#contentsArea #sideNavi .subMenu .subMenuInner ul li.iconNone span {
	display: inline-block;
	padding-top: 2px;
}

#contentsArea #sideNavi .subMenu .subMenuInner ul li img {
    max-width: 100%;
    width: auto;
    height: auto;
}


/* bnrArea
----------------------------------------------------------*/
#sideNavi .bnrArea {
	margin-bottom: 10px;
}

#sideNavi .bnrArea h2 {
	margin-bottom: 5px;
	font-size: 100%;
}

#sideNavi .bnrArea ul {
	list-style: none;
}

#sideNavi .bnrArea ul li {
	margin-bottom: 10px;
}

#sideNavi .bnrArea ul li img {
	max-width: 100%;
	width: auto;
	height: auto;
}


/* 7: page navi
==========================================================*/
#pageNavitop {
	width: 980px;
}

#pageNavitop p {
	float: right;
}

#pageNavitop a {
	display: block;
	margin-top: 1em;
	padding-left: 20px;
	background: url(/common2018/img/parts-arrow-top.gif) no-repeat left 0.5em;
	background-size: 12px 12px;
}

#pageNavitop a:hover {
	background-color: #E8E8E8;
	color: #990000;
}

#pageNavitop .pcTop {
	display: block;
}

#pageNavitop .spTop {
	display: none;
}


/* 8: foot
==========================================================*/
#foot {
	clear: both;
	position: relative;
	width: 980px;
	margin-top: 10px;
	padding: 20px 0 30px 0;
	background-color: #E8E8E8;
	border-top: 4px solid #002870;
}


/* foot navi
----------------------------------------------------------*/
#foot .footNavi {
	margin: 0 20px;
}

#foot .footNavi ul {
	list-style: none;
	text-align: center;
}

#foot .footNavi li {
	display: inline;
	margin-left: 20px;
	padding-left: 16px;
	background: url(/common2018/img/foot-icon-arrow.gif) no-repeat left 0.2em;
	background-size: 7px 10px;
	line-height: 1;
	list-style: none;
}

#foot .footNavi li:first-child {
	margin-left: 0;
}

#foot .footNavi li a:hover {
	text-decoration: underline;
	color: #990000;
}


/* address & copyright
----------------------------------------------------------*/
#foot .add {
	clear: both;
	margin-bottom: 5px;
	padding: 10px 20px 0 20px;
	font-size: 90%;
	text-align: center;
}

#foot address img {
	width: 113px;
	height: auto;
	margin-left: 10px;
}

* html #foot address img {
	vertical-align: middle;
} /* IE6 */


/* 9: emergency
==========================================================*/
#emergency {
	clear: both;
	width: 700px;
	margin-bottom: 15px;
	padding-bottom: 11px;
	background: url(/common2018/img/emergency-bg-bottom.gif) no-repeat left bottom;
}

#emergency .emerBlock {
	width: 700px;
	padding-top: 11px;
	background: url(/common2018/img/emergency-bg-top.gif) no-repeat left top;
}

#emergency .emerBlock .emerInner {
	padding: 5px 20px;
	background: url(/common2018/img/emergency-bg-middle.gif) repeat-y left top;
}

* html #emergency .emerBlock .emerInner {
	width: 700px;
} /* IE6 */

#emergency .emerBlock .emerInner h2 {
	margin-bottom: 0.4em;
	padding-left: 25px;
	background: url(/common2018/img/emergency-icon-title.gif) no-repeat left center;
	background-size: 18px 18px;
	color: #990000;
	font-size: 120%!important;
}

#emergency .emerBlock .emerInner ul {
	margin-left: 1.4em!important;
}

#emergency .emerBlock .emerInner ul li {
	padding: 0.2em 0;
}

#emergency .emerBlock .emerInner a:hover {
	background-color: #FFF0F1;
}