@charset "utf-8";

/* template structure
======================================================================= */
html,
body { height: 100%; }
body { color: #444444; background: #ffffff; }
.sprite { display: block; background: url(../img/sprite.png) no-repeat; }

/* #hnav
----------------------------------------------------------------------- */
#hnav { background: url(../img/background-blue.png) center bottom repeat-x; color: #ffffff; font-size: 93%; text-shadow: 1px 1px 0 rgba(0,0,0,.33); box-shadow: 0 1px 3px rgba(0,0,0,.33); }
#hnav .inner { margin: 0 auto; width: 960px; }
#hnav a { color: #ffffff; text-decoration: none; }
#hnav a:hover { text-decoration: underline; }
#hnav p { float: left; }
#hnav p i { float: left; }
#hnav p.last { float: right; }
#hnav p .icon-home { margin: -1px 4px 0 0; width: 15px; height: 14px; background-position: 0 -64px; /display: none; }
#hnav .item-wrap { padding: 8px; display: block; }

/* #header
----------------------------------------------------------------------- */
#header { margin: 0 auto; width: 960px; }
#header a { color: #444444; text-decoration: none; }
#header-logo { padding: 24px 8px; float: left; }
#header-logo em { margin-top: 4px; display: block; font-size: 93%; text-align: center; }
#header .ad-wrap { padding: 15px 8px; float: right; }

/* #gnav
----------------------------------------------------------------------- */
#gnav { border-top: 1px solid #dcdccf; border-bottom: 1px solid #c5c8cc; background-color: #f6f6f2; box-shadow: inset 0 1px 0 #ffffff, inset 0 -1px 0 #ffffff; }
#gnav ul { margin: 0 auto; padding: 5px 0; width: 952px; font-weight: bold; text-shadow: 0 -1px 0 #ffffff; }
#gnav ul li { margin-right: 4px; float: left; /display: inline; }
#gnav ul .item-wrap { padding: 8px; display: block; border-radius: 5px; }
#gnav a { color: #0091d7; text-decoration: none; }
#gnav a {
	        transition: all .25s ease;
	     -o-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	-webkit-transition: all .25s ease;
}
#gnav a.item-wrap:hover,
#gnav a.item-wrap:active { color: #ffffff; background-color: #0091d7; text-shadow: 1px 1px 0 rgba(0,0,0,.33); }

/* #searchbar
----------------------------------------------------------------------- */
#searchbar-wrap { }
#searchbar-snav-wrap { }
#searchbar-snav-wrap .inner { margin: 0 auto; position: relative; width: 960px; }
#searchbar-snav { padding: 3px 8px; position: absolute; top: -37px; right: 0; z-index: 1; border-width: 1px; border-style: solid solid none solid; border-color: #c5c8cc; background-color: #f0f1f2; font-size: 93%; font-weight: bold; text-shadow: 0 -1px 0 #ffffff; border-radius: 5px 5px 0 0; box-shadow: 1px 1px 3px rgba(0,0,0,.33); }
#searchbar-snav {
	background-image:         linear-gradient(bottom, #e0e2e4 0%, #f4f4f4 10%);
	background-image:      -o-linear-gradient(bottom, #e0e2e4 0%, #f4f4f4 10%);
	background-image:     -ms-linear-gradient(bottom, #e0e2e4 0%, #f4f4f4 10%);
	background-image:    -moz-linear-gradient(bottom, #e0e2e4 0%, #f4f4f4 10%);
	background-image: -webkit-linear-gradient(bottom, #e0e2e4 0%, #f4f4f4 10%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e0e2e4), color-stop(.1, #f4f4f4));
}
#searchbar-snav li { float: left; }
#searchbar-snav .item-wrap { margin-left: 4px; padding: 8px 8px 8px 12px; display: block; position: relative; }
#searchbar-snav .icon-arrow { position: absolute; top: 7px; left: 0; width: 8px; height: 14px; background-position: 0 -80px; }
#searchbar-snav a { color: #0091d7; text-decoration: none; }
#searchbar-snav a:hover { text-decoration: underline; }
#searchbar { position: relative; z-index: 100; border-bottom: 1px solid #c5c8cc; line-height: 1.2; background-color: #f0f1f2; font-size: 13px; }
#searchbar {
	background-image:         linear-gradient(bottom, #e0e2e4 0%, #ffffff 100%);
	background-image:      -o-linear-gradient(bottom, #e0e2e4 0%, #ffffff 100%);
	background-image:     -ms-linear-gradient(bottom, #e0e2e4 0%, #ffffff 100%);
	background-image:    -moz-linear-gradient(bottom, #e0e2e4 0%, #ffffff 100%);
	background-image: -webkit-linear-gradient(bottom, #e0e2e4 0%, #ffffff 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e0e2e4), color-stop(1, #ffffff));
}
#searchbar input { line-height: 1.2; vertical-align: top; }
#searchbar input:focus { outline: none; }
#searchbar .inner { margin: 0 auto; padding: 11px 0; position:relative; width: 952px; }
#searchbar .select-button { padding: 7px 23px 7px 7px; border: solid 1px #505050; float: left; position:relative; width: 100px; vertical-align: middle; color: #ffffff; background-color:#606060; font-weight: bold; text-align: left; text-shadow: 0 -1px 0 rgba(0,0,0,.66); border-radius: 5px; box-shadow: inset 0 1px 0 #999999, 0 1px 0 #ffffff; }
#searchbar .select-button {
	background-image:         linear-gradient(bottom, #5a5a5a 0%, #808080 100%);
	background-image:      -o-linear-gradient(bottom, #5a5a5a 0%, #808080 100%);
	background-image:     -ms-linear-gradient(bottom, #5a5a5a 0%, #808080 100%);
	background-image:    -moz-linear-gradient(bottom, #5a5a5a 0%, #808080 100%);
	background-image: -webkit-linear-gradient(bottom, #5a5a5a 0%, #808080 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #5a5a5a), color-stop(1, #808080));
}
#searchbar .select-button-active,
#searchbar .select-button:active {
	background-image:         linear-gradient(bottom, #808080 0%, #5a5a5a 100%);
	background-image:      -o-linear-gradient(bottom, #808080 0%, #5a5a5a 100%);
	background-image:     -ms-linear-gradient(bottom, #808080 0%, #5a5a5a 100%);
	background-image:    -moz-linear-gradient(bottom, #808080 0%, #5a5a5a 100%);
	background-image: -webkit-linear-gradient(bottom, #808080 0%, #5a5a5a 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #808080), color-stop(1, #5a5a5a));
}
#searchbar .easy-select-box { margin: -8px -24px -8px -8px; position: relative; }
#searchbar .easy-select-box:focus { outline: none; }
#searchbar .easy-select-box .esb-displayer { padding: 8px 24px 8px 8px; cursor: pointer; }
#searchbar .easy-select-box .esb-dropdown { _background-color: #ffffff; background-color: #ffffff\9; }
#searchbar .easy-select-box .esb-dropdown { margin-left: 5px; padding: 5px 0; border-width: 0 1px 1px 1px; border-style: solid; color: #444444; border-color: #666666; display: none; position: absolute; background-color: rgba(255,255,255,.9); border-radius: 0 0 5px 5px; box-shadow: rgba(0,0,0,.33) 1px 1px 3px; font-weight: normal; text-shadow: none; cursor: default; }
#searchbar .easy-select-box .esb-dropdown .esb-item { padding: 4px 8px; }
#searchbar .easy-select-box .esb-dropdown .esb-item:hover { color: #ffffff; background-color: #0091d7; }
#searchbar .input-wrap { display: inline-block; /display: inline; /zoom: 1; vertical-align: middle; }
#searchbar .input-wrap label { padding: 0 5px 0 10px; vertical-align: middle; color: #777777; font-size: 11px; font-weight: bold; text-shadow: 0 1px 0 #ffffff; }
#searchbar .input-wrap .box { padding: 7px 6px 6px 6px; border: 1px solid #c0c0c0; display: inline-block; /display: inline; /zoom: 1; vertical-align: middle; background-color: #ffffff; border-radius: 5px; box-shadow: inset 0 1px 1px #d0d0d0, 0 1px 0 #ffffff; }
#searchbar .input-wrap input { border: none; background: none; font-size: 14px; }
#searchbar .que-wrap { float: left; }
#searchbar-que1 { width: 130px; }
#searchbar-que2 { width: 130px; }
#searchbar-que3 { width: 100px; }
#searchbar-que4 { width: 100px; }
#searchbar .input-active label { color: #444444; }	/* #0091d7 */
#searchbar .input-active .box { border-color: #0091d7; background-color: #fffff0; box-shadow: inset 0 1px 1px #d0d0d0, 0 0 5px #7fc8eb; }	/* border-color: #7fc8eb; background-color: #fafbf4;  */
#searchbar .submit-button { padding: 7px 15px; border: solid 1px #1783c0; display: inline-block; /zoom: 1; /width: 60px; position: absolute; right: 0; vertical-align: middle; color: #ffffff; background-color:#4eabe2; font-weight: bold; text-align: left; text-shadow: 1px 1px 0 rgba(0,0,0,.66); border-radius: 5px; box-shadow: inset 0 1px 0 #cce7f7, 0 1px 0 #ffffff; cursor: pointer; }
#searchbar .submit-button {
	background-image:         linear-gradient(bottom, #1d97dc 0%, #84c4eb 100%);
	background-image:      -o-linear-gradient(bottom, #1d97dc 0%, #84c4eb 100%);
	background-image:     -ms-linear-gradient(bottom, #1d97dc 0%, #84c4eb 100%);
	background-image:    -moz-linear-gradient(bottom, #1d97dc 0%, #84c4eb 100%);
	background-image: -webkit-linear-gradient(bottom, #1d97dc 0%, #84c4eb 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #1d97dc), color-stop(1, #84c4eb));
}
#searchbar .submit-button:active {
	background-image:         linear-gradient(bottom, #84c4eb 0%, #1d97dc 100%);
	background-image:      -o-linear-gradient(bottom, #84c4eb 0%, #1d97dc 100%);
	background-image:     -ms-linear-gradient(bottom, #84c4eb 0%, #1d97dc 100%);
	background-image:    -moz-linear-gradient(bottom, #84c4eb 0%, #1d97dc 100%);
	background-image: -webkit-linear-gradient(bottom, #84c4eb 0%, #1d97dc 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #84c4eb), color-stop(1, #1d97dc));
}

/* #main
----------------------------------------------------------------------- */
#main-wrap { margin: 1px 0; background-color: #f7f7f6; }
#main { margin: 0 auto; padding: 16px 16px 0; border: solid #e8e8e8; border-width: 0 2px 0 1px; position: relative; width: 928px; background-color: #ffffff; }

/* #content
----------------------------------------------------------------------- */
#content { padding-bottom: 16px; min-height: 400px; }
.main-with-aside #content { float: left; width: 600px; }

/* #aside
----------------------------------------------------------------------- */
#aside { padding-bottom: 16px; float: right; width: 300px; }

/* #main-bottom
----------------------------------------------------------------------- */
#main-bottom { padding-bottom: 16px; clear: both; width: 789px; }

/* #social-floater
----------------------------------------------------------------------- */
#social-floater-wrap { position: absolute; top: 0; left: -91px; height: 100%; }
#social-floater { border: solid #e8e8e8; border-width: 1px 0 2px 1px; position: absolute; top: 16px; background-color: #ffffff; border-radius: 5px 0 0 5px; z-index: 100; }
#social-boxes { padding: 16px 4px 16px 16px; width: 70px; min-height: 320px; text-align: center; }
#social-boxes .external { margin: 0 auto 11px; width: 70px; }
#social-boxes .external:last-child { margin-bottom: 0; }

#social-boxes .external-twitter { width: 70px; }
#social-boxes .external-twitter iframe.twitter-share-button { width: 70px !important; }
#social-boxes .external-facebook { width: 70px; text-align: left; }
#social-boxes .external-googleplus { width: 50px; }
#social-boxes .external-mixi { width: 70px; }
#social-boxes .external-hatebu { margin-left: -5px; margin-right: -5px; width: 80px; }

/* #footer
----------------------------------------------------------------------- */
#footer-gotop { margin: 0 auto; width: 960px; display: none; position: relative; right: 0; bottom: 0; left: 0; z-index: 2; }	/*	display: none;	*/
#footer-gotop a { position: absolute; right: 8px; bottom: 0; width: 134px; height: 35px; background-position: 0 -152px; }
#footer-gotop a:hover { background-position: -134px -152px; }
#footer { padding: 0 0 8px 0; position: relative; background: url(../img/background-blue.png) center top repeat-x; color: #ffffff; text-shadow: 1px 1px 0 rgba(0,0,0,.33); box-shadow: 0 1px 3px rgba(0,0,0,.33); }
#footer-eighth { width: 520px; position: absolute; top: 0; right: 6%; bottom: 0; background: url(../img/background-blue-eighth.png) center top no-repeat; }
#footer a { color: #ffffff; text-decoration: none; }
#footer a:hover { text-decoration: underline; }
#footer .inner { margin: 0 auto; position: relative; width: 928px; }
#footer .upside { padding: 8px 0 32px; position: relative; }
#footer .upside ul { margin-left: -8px; padding-top: 8px; }
#footer .upside li { display: inline-block; /display: inline; /zoom: 1; }
#footer .upside li .item-wrap { padding: 8px; }
#footer .upside .copyright { position: absolute; top: 16px; right: 0; }
#footer-license { padding: 8px 0; position: relative; background-color: rgba(0,75,165,.4); }
#footer-license ul { font-size: 85%; opacity: .9; }
#footer-license dl { margin: 1em 0 0 -8px; font-size: 85%; opacity: .9; }
#footer-license dl dt,
#footer-license dl dd { display: inline; }
#footer-license dl dt { margin-left: 8px; }
#footer-mobinfo { box-shadow: inset 0 -1px 0 #ffffff, 0 1px 3px rgba(0,0,0,.2); }
#footer-mobinfo {
	background-image:         linear-gradient(bottom, #f0f1f2 0%, #ffffff 50%);
	background-image:      -o-linear-gradient(bottom, #f0f1f2 0%, #ffffff 50%);
	background-image:     -ms-linear-gradient(bottom, #f0f1f2 0%, #ffffff 50%);
	background-image:    -moz-linear-gradient(bottom, #f0f1f2 0%, #ffffff 50%);
	background-image: -webkit-linear-gradient(bottom, #f0f1f2 0%, #ffffff 50%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f0f1f2), color-stop(.5, #ffffff));
}
#footer-mobinfo dl { margin: 0 auto; padding: 16px 0; width: 960px; text-align: center; }
#footer-mobinfo dt,
#footer-mobinfo dd { display: inline-block; /display: inline; /zoom: 1; }
#footer-mobinfo dt { color: #999999; vertical-align: middle; }
#footer-mobinfo dt b { font-size: 138.5%; font-weight: bold; }
#footer-mobinfo dt span { font-size: 93%; }
#footer-mobinfo dd { margin-left: 16px; border: 1px solid #ffffff; position: relative; width: 152px; height: 96px; vertical-align: middle; background-color: #ffffff; text-align: center; text-shadow: 0 -1px 0 #ffffff; box-shadow: 1px 1px 3px rgba(0,0,0,.5); border-radius: 8px; }
#footer-mobinfo dd b { position: absolute; top: 8px; right: 0; left: 0; width: 100%; color: #0091d7; font-size: 93%; font-weight: bold; }
#footer-mobinfo dd p { width: 121px; height: 49px; position: absolute; top: 24px; left: 16px; }
#footer-mobinfo .mob { background-color: #f0f1f2; }
#footer-mobinfo .mob {
	background-image:         linear-gradient(bottom, #ffffff 0%, #e0e2e4 100%);
	background-image:      -o-linear-gradient(bottom, #ffffff 0%, #e0e2e4 100%);
	background-image:     -ms-linear-gradient(bottom, #ffffff 0%, #e0e2e4 100%);
	background-image:    -moz-linear-gradient(bottom, #ffffff 0%, #e0e2e4 100%);
	background-image: -webkit-linear-gradient(bottom, #ffffff 0%, #e0e2e4 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ffffff), color-stop(1, #e0e2e4));
}
#footer-mobinfo .prm { background-color: #f7f7f3; }
#footer-mobinfo .prm {
	background-image:         linear-gradient(bottom, #ffffff 0%, #edede6 100%);
	background-image:      -o-linear-gradient(bottom, #ffffff 0%, #edede6 100%);
	background-image:     -ms-linear-gradient(bottom, #ffffff 0%, #edede6 100%);
	background-image:    -moz-linear-gradient(bottom, #ffffff 0%, #edede6 100%);
	background-image: -webkit-linear-gradient(bottom, #ffffff 0%, #edede6 100%);
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ffffff), color-stop(1, #edede6));
}
#footer-mobinfo .mob p { background-position: 0 -96px;  }
#footer-mobinfo .prm p { background-position: -121px -96px;  }
#footer-mobinfo dd em { position: absolute; right: 0; bottom: 4px; left: 0; width: 100%; font-size: 77%; }
