@charset 'utf-8';

/* ==========================================================================
   common
   ========================================================================== */

/* reset
   ========================================================================== */

html { height: 100%; font-size: 62.5%; -webkit-text-size-adjust: 100%; margin: 0; padding: 0; border: none; outline: none; vertical-align: baseline; background: transparent; }
body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, main, menu, nav, section, summary,
time, mark, audio, video { margin: 0; padding: 0; border: none; outline: none; vertical-align: baseline; background: transparent; }
body { height: 100%; color: #333; font-family: 'Hiragino Kaku Gothic ProN', '游ゴシック', 'メイリオ', sans-serif; font-size: 1.4rem; line-height: 1.6; background: #fff; position: relative; }
input, textarea, legend { color: #333; }
h1, h2, h3, h4, h5, h6 { font-weight: bold; }
input, select, textarea { padding: 0; margin: 0; }
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section { display: block; }
nav ul { list-style: none; }
li { list-style-position: outside; }
ul li { list-style-type: none; }
blockquote, q { quotes: none; }
blockquote::before, blockquote::after,
q::before, q::after { content: ''; }
a { margin: 0; padding: 0; vertical-align: baseline; background: transparent; }
a, label { cursor: pointer; }
address, optgroup, cite { font-style: normal; }
abbr { border-bottom: .1em dotted; cursor: help; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
th, td { text-align: left; vertical-align: top; border: 1px solid #000; }
caption { text-align: left; }
input, select { vertical-align: middle; }
em { font-style: normal; }
pre { overflow-x: auto; }
textarea { width: 99%; overflow: auto; }
iframe { display: block; width: 100%; overflow: hidden; }
sup { font-size: 1rem; vertical-align: baseline; position: relative; bottom: .7em; }
sub { font-size: 1rem; vertical-align: baseline; position: relative; top: .1em; }
img { vertical-align : middle; }

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

/* preference
   ========================================================================== */

/* link */
a, a img { border: none;}
a:link { color: #333; text-decoration: underline; }
a:visited { color: #333; text-decoration: none; }
a:hover { color: #bd3e27; text-decoration: none; }
a:active { color: #bd3e27; text-decoration: none; }
a:focus { outline: none; }
a img { transition: opacity .25s ease 0s; }
a:hover img { opacity: .75; }

/*nav a, a img { border: none; }
nav a:link { color: #333; text-decoration: none; }
nav a:visited { color: #333; text-decoration: none; }
nav a:hover { color: #333; text-decoration: underline; }
nav a:active { color: #333; text-decoration: none; }*/

.cn{text-align: center;}


/* utilities
   ========================================================================== */

/* replace text */
.replace { display: block; color: rgba(0, 0, 0, 0); text-align: center; overflow: hidden; position: relative; }
a.replace:link, a.replace:visited, a.replace:hover, a.replace:active, a.replace:focus { color: rgba(0, 0, 0, 0); }
.replace::after { content: ''; display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-color: transparent; background-position: 0 0; background-size: contain; position: absolute; left: 0; top: 0; z-index: 1; }



/* outline
   ========================================================================== */

/*header > .inner,
.billboard > .inner,
footer > .inner { width: 960px; margin: 0 auto; }*/

main { width: 960px; padding-top: 10px; padding-bottom: 100px; margin: 0 auto; }



/* ==========================================================================
   basic format
   ========================================================================== */

p { font-size: 1.5rem; line-height: 2; margin-bottom: 1em; }

/* heading */
h1 { clear: both; font-family: 'Hiragino Mincho ProN', '游明朝', serif; font-size: 2.4rem; font-weight: normal; text-align: center; letter-spacing: .25em; background: url(../images/bg/bg_h2.png) no-repeat center bottom; padding-bottom: 20px; margin: 60px 0; }
h2 { clear: both; font-size: 2.1rem; font-weight: normal; letter-spacing: .22em; margin: 40px 0; }
main > h1:first-child,
main > h2:first-child { margin-top: 0; }
h1 a,
h2 a { text-decoration: none !important; }
h3 { clear: both; font-size: 1.8rem; font-weight: normal; line-height: 1.3; border-left: 10px solid #f4bf9f; padding: 18px 0 10px 15px; margin: 40px 0 30px; }
h4,
h5 { font-size: 1.6rem; margin-bottom: 1em; }
h6 { font-size: 1.4rem; }

/* table */
table th, table td { border: none; border-bottom: 1px solid #ccc; padding: 20px 20px 20px 0; }
table caption { font-size: 1.6rem; font-weight: bold; margin-bottom: 10px; }

/* list */
/*ul li { font-size: 1.4rem; list-style-type: square; margin-left: 1em; margin-bottom: 1em; }*/

ul.inline { margin-bottom: 40px; }
ul.inline::after { content: ''; display: block; clear: both; }
ul.inline li { display: block; float: left; width: 220px; font-size: 1.4rem; list-style-type: none; border-bottom: 1px solid #ccc; padding: 0 0 20px; margin: 0 20px 30px 0; }
ul.inline li:nth-child(4),
ul.inline li:nth-child(8),
ul.inline li:nth-child(12),
ul.inline li:nth-child(16),
ul.inline li:nth-child(20),
ul.inline li:nth-child(24),
ul.inline li:nth-child(28),
ul.inline li:nth-child(32),
ul.inline li:nth-child(36),
ul.inline li:nth-child(40),
ul.inline li:nth-child(44),
ul.inline li:nth-child(48),
ul.inline li:nth-child(52),
ul.inline li:nth-child(56),
ul.inline li:nth-child(60) { margin-right: 0; }



/* ==========================================================================
   parts
   ========================================================================== */

/* header
   ========================================================================== */

header { border-top: 4px solid #e35e0f; border-bottom: 2px solid #eceff1; padding: 8px 0 24px; margin-bottom: 60px; }
header .logo a:hover img { opacity: 1; }

/* urgent */
.urgent { background: url(../images/home/bg/bg_urgent.png) 0 0; padding: 10px; margin: 24px 0 6px; }
.urgent .inner { background: #fff; padding: 20px 42px; }
.urgent .inner h3 { color: #dd2c00; font-size: 2.4rem; font-weight: normal; line-height: 1.5; border-left: none; padding: 0; margin: 0; }
.urgent .inner p { font-size: 1.6rem; margin-bottom: 0; }

header {
	/*border-top: 3px solid #e35e0f;
	border-bottom: 2px solid #eceff1;*/
	padding: 8px 0 24px;
	margin-bottom: 60px;
}
header h1{
	float: left;
}
header nav{
	float: left;
}

header .logo a:hover img {
	opacity: 1;
}



/* home
   ========================================================================== */

body.home header { border-bottom: none; margin-bottom: 0; }
body.home main { width: 960px;}
body.home ul li { list-style-type: none; margin-left: 0; }
body.home p { margin-bottom: 0; }

/* billboard */
.billboard { background-color: #eceff1; margin-bottom: 40px; }

/* nav01 */
.nav01 { margin-bottom: 50px; }
.nav01::after { content: ''; display: block; clear: both; }
.nav01 ul li { display: block; float: left; width: 310px; height: 200px; margin-right: 15px; margin-bottom: 10px;}
.nav01 ul li:nth-child(3n) { margin-right: 0; }
.nav01 ul li:nth-child(6n) { margin-right: 0; }

/* nav02 */
.nav02 { width: 940px; margin: 0 auto 20px; }
.nav02::after { content: ''; display: block; clear: both; }
.nav02 ul li { display: block; float: left; margin-right: 20px; }
.nav02 ul li:last-child { margin-right: 0; }
.nav02 ul li a { display: block; width: 300px; height: 168px; box-sizing: border-box; background: url(../images/home/bg/bg_nav02.png) no-repeat 0 0; position: relative; padding: 35px 20px 0; }
.nav02 ul li:last-child a { background-position: 0 -168px; }
.nav02 ul li a:hover { text-decoration: none; }
.nav02 ul li a::before { content: ''; display: block; width: 300px; height: 168px; position: absolute; left: 0; top: 0; z-index: 1; background: url(../images/home/bg/bg_nav02.png) no-repeat 0 -336px; opacity: 0; transition: opacity .25s ease 0s; }
.nav02 ul li a:hover::before { opacity: 1; }
.nav02 ul li a h4,
.nav02 ul li a p { position: relative; z-index: 2; }
.nav02 ul li a h4 { font-family: 'Hiragino Mincho ProN', '游明朝', serif; font-size: 2rem; font-weight: normal; text-align: center; border-bottom: 1px solid #8d8d8d; padding-bottom: 10px; margin-bottom: 14px; }
.nav02 ul li a:hover h4 { color: #fff; border-bottom-color: #fff; }
.nav02 ul li a:hover p { color: #fff; }

/* nav03 */
.nav03 { width: 940px; margin: 0 auto 20px; }
.nav03::after { content: ''; display: block; clear: both; }
.nav03 ul li { display: block; float: left; margin-right: 20px; }
.nav03 ul li:last-child { margin-right: 0; }
.nav03 ul li a { display: block; width: 300px; height: 168px; box-sizing: border-box; background: url(../images/home/bg/bg_nav02.png) no-repeat 0 0; position: relative; padding: 35px 20px 0; }
.nav03 ul li a:hover { text-decoration: none; }
.nav03 ul li a::before { content: ''; display: block; width: 300px; height: 168px; position: absolute; left: 0; top: 0; z-index: 1; background: url(../images/home/bg/bg_nav02.png) no-repeat 0 -336px; opacity: 0; transition: opacity .25s ease 0s; }
.nav03 ul li a:hover::before { opacity: 1; }
.nav03 ul li a h4,
.nav03 ul li a p { position: relative; z-index: 2; }
.nav03 ul li a h4 { font-family: 'Hiragino Mincho ProN', '游明朝', serif; font-size: 2rem; font-weight: normal; text-align: center; border-bottom: 1px solid #8d8d8d; padding-bottom: 10px; margin-bottom: 14px; }
.nav03 ul li a:hover h4 { color: #fff; border-bottom-color: #fff; }
.nav03 ul li a:hover p { color: #fff; }

/* about */
.about { width: 300px; height: 168px; box-sizing: border-box; background: url(../images/home/bg/bg_about.png) no-repeat 0 0; padding: 35px 20px 0; margin: 0 auto 78px; }
.about h4 { font-family: 'Hiragino Mincho ProN', '游明朝', serif; font-size: 2rem; font-weight: normal; text-align: center; border-bottom: 1px solid #8d8d8d; padding-bottom: 10px; margin-bottom: 14px; }





/* ==========================================================================
   BxSlider
   ========================================================================== */
/**
 * BxSlider v4.1.2 - Fully loaded, responsive content slider
 * http://bxslider.com
 *
 * Written by: Steven Wanderski, 2014
 * http://stevenwanderski.com
 * (while drinking Belgian ales and listening to jazz)
 *
 * CEO and founder of bxCreative, LTD
 * http://bxcreative.com
 */


/** RESET AND LAYOUT
===================================*/

.bx-wrapper {
	position: relative;
	margin: 0 auto 60px;
	padding: 0;
	*zoom: 1;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

/** THEME
===================================*/

.bx-wrapper .bx-viewport {
	/*fix other elements on the page moving (on Chrome)*/
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
	-ms-transform: translatez(0);
	-o-transform: translatez(0);
	transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
}

/* LOADER */

.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(../images/home/bxslider/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
}

/* PAGER */

.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #666;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #000;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
	left: 0;
	background: url(../images/home/bxslider/prev.png) no-repeat 0 0;
}

.bx-wrapper .bx-next {
	right: 0;
	background: url(../images/home/bxslider/next.png) no-repeat 0 0;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -16px;
	outline: 0;
	width: 48px;
	height: 70px;
	text-indent: -9999px;
	z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
	text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 10px;
	height: 11px;
	outline: 0;
	background: url(../images/home/bxslider/controls.png) -86px -11px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
	background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 9px;
	height: 11px;
	outline: 0;
	background: url(../images/controls.png) -86px -44px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
	background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
	text-align: left;
	width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
	right: 0;
	width: 35px;
}

/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	background: #666\9;
	background: rgba(80, 80, 80, 0.75);
	width: 100%;
}

.bx-wrapper .bx-caption span {
	color: #fff;
	font-family: Arial;
	display: block;
	font-size: .85em;
	padding: 10px;
}

/* old contents style */
.uline {font-size: 1.8rem; font-weight: bold; line-height: 1.3; margin: 2em 0 1em;}





/*--------------------------------------
  2016.12
---------------------------------------*/

/*--------------------------------------
  #wrapper
---------------------------------------*/
#wrapper{
	padding: 0;
	margin: 0 auto;
	border-top: 3px solid #9A3F2F;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color: #333;
	font-size: 15px;
	line-height: 1.9em;
}

/*--------------------------------------
  header
---------------------------------------*/
header {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	border: none;
}

header p.h-logo{
	margin: 0!important;
}

header p.h-logo a {
	margin: 15px auto 0 auto!important;
	text-align: center;
	display: block;
	clear: both;
	background: none!important;
}

header nav{
	width: 100%;
	overflow: hidden;
	clear: both;
}

header nav ul{
	margin: 0;
	/*border: 1px solid #999;*/
}

header nav ul:after{
	content: "";
	display: block;
	clear: both;
}

header nav ul li{
	list-style: none;
	float: left;
	width: 20%;
	height: 60px;
	padding: 5px 0;
	border-right: 1px solid #bbb8b1;
	/*border-bottom: 1px solid #999;*/
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 0;
	text-align: center;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	display: block;
	cursor: pointer;
	display: table;
}

header nav ul li p{
	display: table-cell;
	margin: 0;
	text-align: center;
	vertical-align: middle;
	line-height: 1.3em;
	letter-spacing: 0.1em;
}

header nav ul li:nth-child(5){
	border-right: none;
}

header nav ul li:nth-child(10){
	border-right: none;
}

header nav ul li:nth-child(1),header nav ul li:nth-child(2),header nav ul li:nth-child(3),header nav ul li:nth-child(4),header nav ul li:nth-child(5){
	border-bottom: 1px solid #bbb8b1;
}

header nav ul li p a:link{
	text-decoration: none;
}
header nav ul li p a:hover,
header nav ul li p a:visited,
header nav ul li p a:active{
	color: #333;
	text-decoration: none;
	background: #F0EDE7;
}


/*--------------------------------------
  .boxContainer
---------------------------------------*/
.boxContainer {
	overflow: hidden;
	width: 960px;
	clear: both;
}

.boxContainer .box-b a,
.boxContainer .box-s a{
	width: 31.3%;
	margin: 1%;
	border: 5px solid #F0EDE7;
	cursor : pointer;
	float: left;
	display: block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	color: #333;
	/*background: #F0EDE7;*/
}

.boxContainer .box-b-y a{
	width: 31.3%;
	margin: 1%;
	border: 5px solid #F0EDE7;
	cursor : pointer;
	float: left;
	display: block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	color: #333;
	background: linear-gradient(to bottom, #ffffff, #FFFBCD);
}

.boxContainer .box-b-y-crowd a{
	width: 31.3%;
	margin: 1%;
	border: 5px solid #F0EDE7;
	cursor : pointer;
	float: left;
	display: block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	color: #333;
	background: linear-gradient(to bottom, #ffffff, #FFFBCD);
}

.boxContainer .box-b a,
.boxContainer .box-b-y a{
	min-height: 240px;
	padding: 20px 20px 20px 20px;
}

.boxContainer .box-b-y-crowd a{
	min-height: 160px;
	padding: 20px 20px 20px 20px;
}

.boxContainer .box-s a{
	min-height: 160px;
	padding: 30px 20px 10px 20px;
}

.boxContainer .box-b a:hover,
.boxContainer .box-s a:hover{
	background: #bd3e27;
	color: #fff;
}

.boxContainer .box-b-y a:hover{
	background: linear-gradient(to bottom, #FFFBCD, #FFF35A);
	color: #333;
}

.boxContainer .box-b h4,
.boxContainer .box-s h4,
.boxContainer .box-b-y h4{
	text-align: center;
	padding: 0;
	font-size: 21px;
	letter-spacing: 0.1em;
	font-weight: normal;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.boxContainer .box-b-y-crowd h4{
	text-align: center;
	padding: 0;
	font-size: 20px;
	letter-spacing: 0.1em;
	font-weight: normal;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.boxContainer .box-b h4:after,
.boxContainer .box-s h4:after,
.boxContainer .box-b-y h4:after{
	content:"";
	display: block;
	width: 50px;
	height: 2px;
	background: #bd3e27;
	margin: 10px auto 5px auto;
}

.boxContainer .box-b-y-crowd h4:after{
	content:"";
	display: block;
	width: 50px;
	height: 2px;
	background: #bd3e27;
	margin: 10px auto 5px auto;
}

.boxContainer .box-b a:hover h4:after,
.boxContainer .box-s a:hover h4:after{
	background: #fff;
}

.boxContainer .box-b-y a:hover h4:after{
	background: #bd3e27;
}

.boxContainer .box-b-y-crowd a:hover h4:after{
	background: #bd3e27;
}


/*--------------------------------------
  .subtitle
---------------------------------------*/

.subtitle{
	text-align: center;
	margin-bottom: 30px;
}
.subtitle h2 {
	position: relative;
	text-align: center;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	margin: 0 0 10px 0!important;
	letter-spacing: 0.3em;
}
.subtitle h2 span {
	position: relative;
	z-index: 2;
	display: inline-block;
	margin: 0 2.5em;
	padding: 0 1em;
	background-color: #fff;
	text-align: left;
}
.subtitle h2:before {
	position: absolute;
	top: 50%;
	z-index: 1;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #bbb8b1;
}

.subtitle p{
	letter-spacing: 0.2em;
	font-size: 16px;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}


/*--------------------------------------
  .topics
---------------------------------------*/
.topics {padding: 50px 0 0 0; margin-bottom: 20px; }

.topics .t-box{
	padding: 30px 30px 10px 30px;
	border: 5px solid #F0EDE7;
	clear: both;
	margin-bottom: 30px;
}

.topics .t-box h3.t-title {
	margin: 0 0 20px 0;
	padding: 0;
	letter-spacing: 0.2em;
	font-size: 18px;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	border-bottom: 1px solid #F0EDE7;
	border-left: 0;
	padding: 0 0 20px 0;
}

.topics .t-box h4.t-title-nav {
	margin: 0 0 20px 0;
	letter-spacing: 0.2em;
	font-size: 16px;
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	border: none;
	padding: 10px;
	background: #F0EDE7;
}

.topics ul li {
	font-size: 1.6rem;
	border-bottom: 1px solid #F0EDE7;
	padding-bottom: 20px;
	margin-bottom: 24px;
}
.topics ul li a:hover span {
	text-decoration: underline;
}
.topics ul li a span {
	display: inline-block;
}
.topics ul li span.date {
	/*margin-right: 3em;*/
	/*float: left;*/
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.2px;
	color: #bd3e27;
	display: block;
	}
.topics ul li span.heading {
	/*max-width: 640px;*/
}

/*--------------------------------------
  .slider
---------------------------------------*/

.slider{
	clear: both;
	width: 100%;
	max-height: 500px;
	height: auto;
	background: #F0EDE7;
	margin-bottom: 20px;
}

.flexslider{
	margin: 0 auto!important;
	max-width: 960px;
	max-height: 500px;
	width: 100%;
	height: auto;
	line-height: 0;
}

.flex-control-nav{
	display: none;
}

.flexslider ul.slides{
	overflow: visible;
}

/*--------------------------------------
  #sub
---------------------------------------*/

body#sub main{
	background: url(../images/bg/main_bg.png) no-repeat center top;
}

body#sub h1 {
	clear: both;
	font-family: 'Hiragino Mincho ProN', '游明朝', serif;
	font-size: 2.1rem;
	font-weight: normal;
	text-align: center;
	letter-spacing: .25em;
	background: #F3F0ED;
	padding: 10px 0;
	margin: 30px 0;
}

body#sub h2 {
	clear: both;
	font-size: 2.1rem;
	font-weight: normal;
	letter-spacing: .22em;
	margin: 30px 0;
	font-family: 'Hiragino Mincho ProN', '游明朝', serif;
}

body#sub h2:after{
	content:"";
	display: block;
	width: 50px;
	height: 2px;
	background: #bd3e27;
	margin: 10px 0 0 0;
}

body#sub h2.h2-cn {
	clear: both;
	font-size: 2.1rem;
	font-weight: normal;
	letter-spacing: .22em;
	margin: 30px 0;
	text-align: center;
	font-family: 'Hiragino Mincho ProN', '游明朝', serif;
}

body#sub h2.h2-cn:after{
	content:"";
	display: block;
	width: 50px;
	height: 2px;
	background: #bd3e27;
	margin: 10px auto 0 auto;
}


body#sub h3 {
	clear: both;
	font-family: 'Hiragino Mincho ProN', '游明朝', serif;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: .25em;
	background: none;
	padding: 10px 0;
	margin: 0 0 10px 0;
	border: 0;
}

body#sub h3:before{
	content:"●";
	color: #bd3e27;
	margin-right: 5px;
}

body#sub h3 span {
	clear: both;
	font-size: 1.4rem;
	letter-spacing: .1em;
	margin-left: 10px;
}


ul.bullet {
	margin-bottom: 100px;
}
ul.bullet li {
	font-size: 1.6rem;
	list-style-type: none;
	background: url(../images/icon/bullet.png) no-repeat 0 center;
	border-bottom: 1px solid #F0EDE7;
	padding: 20px 0 20px 40px;
	margin-left: 0;
	margin-bottom: 1px;
}

ul.bullet li a{
	padding-right: 30px;
}

.txt-box01{
	padding: 20px;
	border:5px solid #F0EDE7;
	margin-bottom: 40px;
	clear: both;
}

.txt-box02{
	padding: 0;
	margin-bottom: 40px;
	clear: both;
}

.txt-box02 p{
	padding-left: 20px;
	padding-bottom: 20px;
}

.txt-box03{
	padding: 20px;
	background: #F0EDE7;
	margin-bottom: 40px;
	clear: both;
}


/* pdf要素
----------------------------------------------------------- */
a[href$=".pdf"]	{
	background: url(../images/icon/pdficon16px.gif) no-repeat 100% 50%;
}
* html a.pdf{
	background: url(../images/icon/pdficon16px.gif) no-repeat 100% 50%;
}

.pdf{
	padding-right: 20px;
}

/*--------------------------------------
  footer
---------------------------------------*/

/*footer { background-color: #eceff1; }*/
footer { background-color: #F0EDE7; }

footer > .inner { text-align: center; padding: 34px 0 24px; }
footer p {
	font-size: 1.8rem;
	margin-bottom: 0;
}
footer p.f-ttl {
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
	margin-bottom: 10px;
}
footer p.sub { font-size: 1.4rem; }
footer p.copy { font-size: 1.2rem; }
footer nav { padding: 30px; }
footer nav ul li { display: inline-block; font-size: 1.4rem; }
footer nav ul li:first-child { margin-right: 40px; }

/* pagetop */
#pagetop { display: block; width: 70px; height: 48px; margin: 0 auto; }
#pagetop::after { background-image: url(../images/icon/pagetop.png); }