@charset "utf-8";
@import url(http://fonts.googleapis.com/css?family=Great+Vibes);

body {
	margin: 0;
	padding: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 62.5%;
	text-align: center;
	color: rgba(0,0,0,0.8);
	background-image: url(../img/background.jpg);
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
}

strong {
	color: #000;
}

*::-moz-selection {
	background-color: rgba(0,0,0,0.1);
	color: #000;
}
*::selection {
	background-color: rgba(0,0,0,0.1);
	color: #000;
}



/* ========================================================================== */
/* global-header                                                              */
/* ========================================================================== */

#global-header {
	width: 940px;
	height: 100px;
	margin: 0 auto;
	z-index: 10;
	position: relative;
}

#global-header h1 {
	line-height: 0;
	font-size: 0;
	position: absolute;
	overflow: hidden;
	left: 26%;
	right:26%;
	margin: 0 auto;
	text-align: center;
	z-index: 2;
	
	-webkit-perspective: 400px;
	   -moz-perspective: 200px;
	        perspective: 100px;
}

#global-header h1 a {
	margin-top: -10px;
	display: block;
}


/* navigation --------------------------------------------------------------- */

#global-nav {
	position: relative;
	z-index: 1;
	padding-top: 30px;
	display: table-cell;
	line-height: 0;
	font-size: 0;
}

#global-nav li {
	display: inline-block;
	vertical-align: middle;
	margin-right: 35px;
	font-size: 12px;
}

#global-nav {
	line-height: 0 !important;
}

#global-nav li:nth-child(4) {
	margin-right: 209px;
}

#global-nav li:last-child {
	margin-right: 0;
}

#global-nav a {
	padding-bottom: 5px;
	background: url(../img/header_nav_onmouse_bg.gif) no-repeat left 120%;
	opacity: 0.7;
	-webkit-transition: all 0.25s ease;
	   -moz-transition: all 0.25s ease;
	        transition: all 0.25s ease;
}

#global-nav a.current,
#global-nav a:hover {
	opacity: 1;
	background-position: left bottom;
}

#global-nav li:last-child a {
	background: none;
	display: block;
}


/* ========================================================================== */
/* contents                                                                   */
/* ========================================================================== */

#contents-wrapper {
	background-image: url(../img/footer_top_image.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding-bottom: 180px;
}

#contents {
	width: 940px;
	margin: 0 auto;
	background: url(../img/footer_dotted_line_horizontal.png) repeat-x center top;
	text-align: left;
	text-justify: distribute;
	font-size: 1.2em;
	line-height: 2.0em;
}

#doc-title {
	display: table-cell;
	width: 940px;
	height: 173px;
	background: url(../img/contents_dotted_line_ornament_horizontal.png) repeat-x center bottom;
	text-align: center;
	vertical-align: middle;
	line-height: 0;
}

#doc-title img {
	padding: 18px 0 0;
}

#doc-title.detail {
	text-align: left;
	margin: 0;
	padding: 0 0 3px;
	height: 65px;
	line-height: 0;
	font-size: 18px;
}

#doc-title.detail a {
	background: no-repeat 30px center;
	-webkit-transition: background,padding 0.25s ease;
	   -moz-transition: background,padding 0.25s ease;
	    -ms-transition: background,padding 0.25s ease;
	     -o-transition: background,padding 0.25s ease;
	        transition: background,padding 0.25s ease;
}

#doc-title.detail a:hover {
	background: url(../img/icon_arrow_small_left.png) no-repeat 0 10px;
	padding: 0 0 0 15px;
}

#doc-title.detail img {
	padding: 0;
}

.ie7 #doc-title img {
	padding-top: 70px;
}

.ie7 #doc-title.detail img {
	padding-top: 25px;
}

.container {
	margin: 40px auto 20px auto;
}

/* ========================================================================== */
/* global-footer                                                              */
/* ========================================================================== */

#global-footer {
	text-align: left;
	width: 100%;
	padding-top: 25px;
	padding-bottom: 30px;
	clear: both;
	background-image: url(../img/footer_body_top_pattern.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}

#footer-wrapper {
	background-image: url(../img/footer_body_base_pattern.jpg);
	background-position: center top;
}

/* ---------------------------------- */

#global-footer .container {
	width: 940px;
	margin: 0 auto;
}

/* ---------------------------------- */

#topicpath {
	background: url(../img/footer_dotted_line_horizontal.png) repeat-x center bottom;
	width: 940px;
}

#topicpath ul {
	background: url(../img/footer_dotted_line_horizontal.png) repeat-x left top;
	padding-top: 20px;
	padding-bottom: 30px;
	margin-top: 15px;
	margin-bottom: 30px;
	font-size: 0;
}

#topicpath ul li {
	color:#FFFFFF;
	display: inline-block;
	float: left;
	font-size: 11px;
	line-height: 11px;
	margin-right: 1px;
}

#topicpath a {
	color: rgba(255,255,255,0.7);
	background: url(../img/icon_nest.png) no-repeat right center;
	padding-right: 25px;
	margin-right: 5px;
	letter-spacing: 0.1em;
	text-decoration: none;
	-webkit-transition: color 0.2s ease;
	   -moz-transition: color 0.2s ease;
	        transition: color 0.2s ease;
}

#topicpath li:nth-child(even) a {
	background-image: url(../img/icon_nest_even.png);
}

#topicpath ul li:first-child a {
	border-radius: 3px 0 0 3px;
	behavior: url(../PIE/PIE.htc); /* IE6,7,8 */
	position:relative; /* IE6,7,8 */
}

#topicpath ul li:last-child a {
	padding: 0;
	background-image: none;
	border-radius: 0 3px 3px 0;
	behavior: url(../PIE/PIE.htc); /* IE6,7,8 */
	position:relative; /* IE6,7,8 */
}

#topicpath ul li:only-child a {
	padding: 0;
	background-image: none;
	border-radius: 3px;
	behavior: url(../PIE/PIE.htc); /* IE6,7,8 */
	position:relative; /* IE6,7,8 */
}

#topicpath a:hover {
	color: rgba(0,0,0,1);
}


/* ---------------------------------- */

#news {
	width: 440px;
	float: left;
	overflow: hidden;
}

#news h1 {
	margin-bottom: 20px;
}
#news h1 a {
	overflow: hidden;
	display: block;
}
#news h1 a:after {
	content: url(../img/button_more.png);
	float: right;
	margin-top: 10px;
	opacity: 0.5;
	-webkit-transition: opacity 0.2s ease-out;
	   -moz-transition: opacity 0.2s ease-out;
	        transition: opacity 0.2s ease-out;
}

#news h1 a:hover,
#news h1 a:hover:after {
	opacity: 1;
}

#news #headline,
#news #headline li {
	background: url(../img/footer_dotted_line_horizontal.png) repeat-x;
}

#news #headline {
	background-position: left top;
}

#news #headline li {
	background-position: left bottom;
	font-size: 1.2em;
}

#news #headline a {
	display: block;
	width: 440px;
	padding: 14px 0;
	color: #5b564d;
	vertical-align: middle;
	overflow: hidden;
	white-space: nowrap;
	text-decoration: none;
	text-overflow: ellipsis;
	
	-webkit-transition: padding 0.1s ease-in-out, color 0.1s ease-in-out;
	   -moz-transition: padding 0.1s ease-in-out, color 0.1s ease-in-out;
	        transition: padding 0.1s ease-in-out, color 0.1s ease-in-out;
}

#news #headline a:hover {
	color: #000;
	padding-left: 3px;
}

#news #headline a span {
	display: inline-block;
	width: 6.3em;
	font-family: Arial, Helvetica, sans-serif;
}


/* ---------------------------------- */


#shortcuts {
	width: 470px;
	float: right;
	overflow: hidden;
	background: url(../img/footer_dotted_line_vertical.png) repeat-y left top;
	margin-bottom: 35px;
}

#shortcuts ul {
	background: url(../img/footer_dotted_line_horizontal.png) repeat-x left top;
	margin-left: 30px;
	padding-top: 20px;
	font-size: 0;
}

#shortcuts ul:first-child {
	background-image: none;
	padding-top: 0;
}

#shortcuts li {
	display: inline-block;
	width: 200px;
	margin-bottom: 20px;
	margin-right: 40px;
	overflow: hidden;
}

#shortcuts li:nth-child(2n) {
	margin-right: 0;
}

#shortcuts a {
	background: url(../img/icon_arrow_small.png) no-repeat right center;
	display: block;
	min-height: 40px;
	border-radius: 5px;
	opacity: 0.8;
	
	-webkit-transition: opacity, padding 0.1s ease-out;
	   -moz-transition: opacity, padding 0.1s ease-out;
	        transition: opacity, padding 0.1s ease-out;
}

#shortcuts a:hover {
	padding-left: 3px;
	opacity: 1;
}

#shortcuts a[target="_blank"] {
	background: url(../img/icon_blank.png) no-repeat right center;
}

.ie8 #shortcuts a:hover {
	behavior: url(../PIE/PIE.htc); /* IE6,7,8 */
	position:relative; /* IE6,7,8 */
}


/* ---------------------------------- */


#other-nav {
	position: relative;
	background: url(../img/footer_bottom_bg.png) no-repeat left top;
	clear: both;
	height: 55px;
	margin-top: 30px;
}

#other-nav nav {
	font-size: 0;
	line-height: 0;
	position: absolute;
	right: 0;
}

#other-nav nav ul {
	clear: both;
	display: inline-block;
	background: url(../img/footer_dotted_line_vertical.png) repeat-y left top;
	padding-top: 11px;
	padding-left: 15px;
	padding-bottom: 11px;
	overflow: hidden;
}

#other-nav nav #inside-nav {
	margin-right: 50px;
}

#other-nav nav li {
	display: inline-block;
	position: relative;
	margin-right: 15px;
}

#other-nav nav a {
	display: table-cell;
	vertical-align: middle;
	height: 30px;
	
	background-position: left 120%;
	background-image: url(../img/footer_nav_onmouse_bg.gif);
	background-repeat: no-repeat;
	opacity: 0.7;
	-webkit-transition: all 0.25s ease;
	   -moz-transition: all 0.25s ease;
	        transition: all 0.25s ease;
}

#other-nav nav a:hover {
	opacity: 1;
	background-position: left bottom;
}

#sns {
	position: relative;
	float: left;
	top: -4px;
	left: 123px;
	margin-top: 4px;
	/*width: 750px;*/
}
#sns #share-button {
	position: relative;
	display: block;
	padding: 20px 0;
	float: left;
}

#sns #share-button #sharebuttonbadge {
	content: url(../img/footer_share_badge.png);
	position: absolute;
	display: block;
	top: -5px;
	left: -75px;
	
	-webkit-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	        transform: rotate(0deg);
	
	-webkit-transition: -webkit-transform 0.5s ease;
	   -moz-transition:    -moz-transform 0.5s ease;
	        transition:         transform 0.5s ease;
	
}

#sns #share-button #sharebuttonbadge {
	-webkit-transform-origin: 50% 0;
	   -moz-transform-origin: 50% 0;
	        transform-origin: 50% 0;
	
	-webkit-animation-duration: 1.5s;
	   -moz-animation-duration: 1.5s;
	        animation-duration: 1.5s;
}

#sns #share-button:hover #sharebuttonbadge {
	-webkit-animation-name: rotation-obverse;
	   -moz-animation-name: rotation-obverse;
	        animation-name: rotation-obverse;
}

#sns ul {
	float: right;
	width: 605px;
	display: none;
	background: url(../img/footer_dotted_line_vertical.png) repeat-y left top;
	margin-top: 2px;
	padding: 8px  0 12px 15px;
	overflow: hidden;
}

#sns li {
	display: inline-block;
	position: relative;
	margin-top: 5px;
}

#sns iframe {
	display: inline !important;
}

/* Twitter */
iframe.twitter-share-button {
	width: 94px !important;
}

/* Google+ */
#___plusone_0 {
	width: 69px !important;
}

/* Hatena */
#hatena {
	margin-right: 10px;
}

/* mixi */
#mixi {
	margin-right: 10px;
}


/* ---------------------------------- */


#credit {
	text-align: center;
	margin: 20px auto 0;
	clear: both;
}

#credit small {
	display: block;
	margin: 0px auto 0;
	font: italic 11px Georgia, serif;
}

#credit figure {
	margin: 20px auto 0;
}


/* ---------------------------------- */

#global-footer #topOfPageBottom {
	display: block;
	position: fixed;
	color: #000;
	line-height: 0;
	font-size: 0;
	vertical-align: top;
	overflow: hidden;
	padding: 0;
	margin: 0;
	cursor: pointer;
	z-index: 2;
	right: 20px;
	bottom: -2px;
	
	-webkit-transition: bottom 0.25s ease;
	   -moz-transition: bottom 0.25s ease;
	        transition: bottom 0.25s ease;
}

#global-footer #topOfPageBottom:hover {
	bottom: 0px !important;
}



/* ========================================================================== */
/* Animation                                                                  */
/* ========================================================================== */



@keyframes rotation-obverse {
	0%   {transform: rotate(0deg);}
	5%   {transform: rotate(-5deg);}
	15%  {transform: rotate(5deg);}
	30%  {transform: rotate(-2.5deg);}
	45%  {transform: rotate(1.25deg);}
	60%  {transform: rotate(-0.625deg);}
	75%  {transform: rotate(0.8125deg);}
	90%  {transform: rotate(-0.40625deg);}
	100% {transform: rotate(0deg);}
}

@-webkit-keyframes rotation-obverse {
	0%   {-webkit-transform: rotate(0deg);}
	5%   {-webkit-transform: rotate(-5deg);}
	15%  {-webkit-transform: rotate(5deg);}
	30%  {-webkit-transform: rotate(-2.5deg);}
	45%  {-webkit-transform: rotate(1.25deg);}
	60%  {-webkit-transform: rotate(-0.625deg);}
	75%  {-webkit-transform: rotate(0.8125deg);}
	90%  {-webkit-transform: rotate(-0.40625deg);}
	100% {-webkit-transform: rotate(0deg);}
}

@-moz-keyframes rotation-obverse {
	0%   {-moz-transform: rotate(0deg);}
	5%   {-moz-transform: rotate(-5deg);}
	15%  {-moz-transform: rotate(5deg);}
	30%  {-moz-transform: rotate(-2.5deg);}
	45%  {-moz-transform: rotate(1.25deg);}
	60%  {-moz-transform: rotate(-0.625deg);}
	75%  {-moz-transform: rotate(0.8125deg);}
	90%  {-moz-transform: rotate(-0.40625deg);}
	100% {-moz-transform: rotate(0deg);}
}



/* ========================================================================== */
/* Anchor                                                                     */
/* ========================================================================== */



a {
	color: #332316;
	color: rgba(0,0,0,0.8);
}

a:hover {
	color: #000;
}



/* ========================================================================== */
/* clearfix                                                                   */
/* ========================================================================== */
/*
 A new micro clearfix hack
 http://nicolasgallagher.com
*/
.clearfix:before,.clearfix:after {content:"";display:table;}
.clearfix:after {clear:both;}
.clearfix {zoom:1;}/* For IE 6/7 (trigger hasLayout) */





/* ========================================================================== */
/* underIE9                                                                   */
/* ========================================================================== */


/* ------------------------------ */
.ie6 #global-nav {
	text-align: left;
}
.ie6 #global-nav li,
.ie7 #global-nav li {
	display: inline;
}

.ie7 a {
	color: #332316;
}
.ie6 #topicpath ul,
.ie7 #topicpath ul {
	padding-bottom: 0px;
	margin-bottom: 20px;
}

.ie6 #topicpath a,
.ie7 #topicpath a {
	line-height: 25px;
}

.ie7 #shortcuts,
.ie7 #news h1 {
	margin-top: 30px;
}

.ie6 #sns li,
.ie6 #other-nav nav li,
.ie6 #other-nav nav ul,
.ie6 #shortcuts li,
.ie7 #sns li,
.ie7 #other-nav nav li,
.ie7 #other-nav nav ul,
.ie7 #shortcuts li {
	display: inline;
	zoom: 1;
}

.ie6 #other-nav,
.ie6 #other-nav nav,
.ie7 #other-nav,
.ie7 #other-nav nav {
	margin: 8px auto 0;
	position: static;
	text-align: center;
}

.ie6 #other-nav nav ul,
.ie7 #other-nav nav ul {
	display: inline;
	background-image: none;
}

.ie6 #sns,
.ie7 #sns {
	display: none;
}

.ie7 #topicpath ul li,
.ie6 #topicpath ul li {
	display: line;
}
