@charset "utf-8";

/* common (basic)
-------------------------------------------------------------- */

/*
 * clearfix
 */
header#pagetop ul::after,
body > nav ul::after,
.clearfix::after,
.clear::after {
	clear:both;
	display:block;
	content:"";
	height:0;
	visibility:hidden;
}

/*
 * general
 */
html {
	font-size:62.5%;
}
body {
	background-color:#F2EFE4;
	background-image:url(/img/bg_body.gif);
	background-repeat:repeat;
	background-position:0 0;
	font-family:arial,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic","Osaka",sans-serif;
	text-align:justify;
	-ms-text-justify:inter-ideograph;
	text-justify:inter-ideograph;
	font-size:1.4em;
	color:#333333;
}
a {
	color:#10A9D6;
	text-decoration:underline;
}
a:active, a:hover {
	text-decoration:none;
}
img,
iframe {
	max-width:100%;
}
table {
	width:100%;
	margin-bottom:5px;
	border-collapse:separate;
	background-color:#F0F0F0;
}
table tbody th,
table tbody td {
	padding:0 10px 5px 10px;
	vertical-align:top;
	font-size:1.4rem;
}
table tbody tr:first-child th,
table tbody tr:first-child td {
	padding-top:10px;
}
table tbody tr:last-child th,
table tbody tr:last-child td {
	padding-bottom:10px;
}
table tbody td {
	line-height:1.5;
}
table tbody td.number {
	text-align:right;
}
table.summary {
	background-color:#FFFFCC;
}
table.summary th,
table.summary td {
	font-weight:bold;
}

/*
 * header
 */
header#pagetop {
	position: relative;
	padding: 5px 0 5px 0;
}
header#pagetop #logo {
	width: 100%;
	padding: 5px 0;
	text-align:center;
}
header#pagetop p {
	margin:15px 10px 0 10px;
	font-size:1.2rem;
}
header#pagetop #hnavi {
	display: none;
}
header#pagetop #hnavi ul {
	margin:10px 10px 0 10px;
	font-size:1.4rem;
	text-align:left;
}
header#pagetop #hnavi ul li {
	display:inline-block;
	margin:0 10px 5px 0;
}
header#pagetop #hnavi ul li a {
	display:block;
	padding:7px 0 7px 20px;
	background-image:url(/img/icon_hnavi.png);
	background-repeat:no-repeat;
	background-position:left center;
	text-decoration:none;
	color:#555555;
}
header#pagetop #hnavi ul li a:hover {
	text-decoration:underline;
}
header#pagetop .menu {
	display: inline-block;
	float: right;
	margin: 10px 8px 0 15px;
	padding: 8px 10px;
	border-radius: 5px;
	border: 1px solid #37718E;
	background-color: transparent;
	font-size: 1.2rem;
	color: #37718E;
	box-shadow:0 0 2px 2px rgba(96,96,96,0.1);
}
header#pagetop .menu::before {
	content: 'v';
	display: inline-block;
	position: relative;
	top: -1px;
	margin-right: 5px;
	text-align: center;
	font-size: 1.0rem;
}
header#pagetop .menu.opened {
	background-color: #37718E;
	color: #FFFFFF;
}
header#pagetop .menu.opened::before {
	top: -3px;
	transform: rotate(180deg);
}

/*
 * global navigation
 */
body > nav {
	display: none;
	margin-top:10px;
}
body > nav ul {
	padding:0 5px;
	background-image:url(/img/bg_gnavi.png);
	background-repeat:repeat;
	background-position:left top;
	background-size:auto 68px;
}
body > nav ul li {
	position:relative;
	float:left;
	height:67px;
	margin-top:-4px;
	margin-bottom:4px;
}
body > nav ul li::after {
	content:'';
	display:block;
	position:absolute;
	top:20px;
	right:0;
	bottom:15px;
	width:2px;
	background-image:url(/img/line_gnavi.png);
	background-repeat:repeat-y;
	background-position:right top;
}
body > nav ul li:last-child::after {
	display:none;
}
body > nav ul li.current {
	left:-2px;
	border-radius:5px;
	background-color:#02ACD7;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#08BEEC), to(#00A4CD));
	background:-webkit-linear-gradient(#08BEEC, #00A4CD);
	background:-moz-linear-gradient(#08BEEC, #00A4CD);
	background:-o-linear-gradient(#08BEEC, #00A4CD);
	background:linear-gradient(#08BEEC, #00A4CD);
}
body > nav ul li.current::before {
	content:'';
	display:block;
	position:absolute;
	left:10px;
	right:-2px;
	bottom:0;
	height:5px;
	background-color:#007EB0;
	transform:skew(-30deg);
}
body > nav ul li.current::after {
	content:'';
	display:block;
	position:absolute;
	top:auto;
	left:0;
	right:0;
	bottom:0;
	width:auto;
	height:6px;
	background-image:none;
	background-color:#02ACD7;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#01A7D1), to(#00A4CD));
	background:-webkit-linear-gradient(#01A7D1, #00A4CD);
	background:-moz-linear-gradient(#01A7D1, #00A4CD);
	background:-o-linear-gradient(#01A7D1, #00A4CD);
	background:linear-gradient(#01A7D1, #00A4CD);
}
body > nav ul li a {
	display:block;
	padding:20px 10px 50px 5px;
	text-align:center;
	text-decoration:none;
	font-size:1.3rem;
	color:#7F7F7F;
}
body > nav ul li a:hover {
	color:#00B9EF;
}
body > nav ul li:last-child a {
	padding-right:0;
}
body > nav ul li:nth-child(2) a {
	letter-spacing:-1px;
}
body > nav ul li:nth-child(3) a {
	padding-left:25px;
	padding-right:25px;
}
body > nav ul li:nth-child(6) a {
	padding-left:30px;
	background-image:url(/img/icon_contact.png);
	background-repeat:no-repeat;
	background-position:5px 15px;
	color:#E75522;
}
body > nav ul li.current a {
	color:#FFFFFF;
	text-shadow:-1px -1px 0 rgba(0,0,0,0.2);
}
body > nav ul li:last-child.current a {
	padding-right:10px;
}
body > nav ul li:nth-child(6).current a {
	padding-left:10px;
	background:none;
}
body > nav ul li.current a::before {
	content:'';
	display:block;
	position:absolute;
	top:15px;
	right:5px;
	width:10px;
	height:40px;
	box-shadow:10px -5px 10px rgba(0,0,0,0.1);
	transform:rotate(10deg);
}
body > nav ul li.current a::after {
	content:'';
	display:block;
	position:absolute;
	top:10px;
	right:0;
	bottom:10px;
	width:10px;
	background-color:#02ACD7;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#07B8E4), to(#01A7D1));
	background:-webkit-linear-gradient(#07B8E4, #01A7D1);
	background:-moz-linear-gradient(#07B8E4, #01A7D1);
	background:-o-linear-gradient(#07B8E4, #01A7D1);
	background:linear-gradient(#07B8E4, #01A7D1);
}
body > nav ul li:nth-child(2) a span {
	letter-spacing:0;
}
body > nav ul li a span {
	display:block;
	position:absolute;
	top:40px;
	left:0;
	right:0;
	font-size:1rem;
}


/*
 * contents
 */
#contents {
}

#path {
	margin:10px 10px 20px 10px;
	line-height: 1.5;
	font-size:1.2rem;
}
#path ul li {
	display:inline;
}
#path ul li::after {
	content:'>';
	margin-right:0;
}

article strong {
	font-weight:normal;
	color:#CC0000;
}
article strong.more {
	font-weight:bold;
}
article strong.most {
	font-size: 120%;
	font-weight:bold;
}

article > header {
	margin:0 10px 30px 10px;
}
article > header h1 {
	font-size:2.4rem;
	line-height:1.2;
	color:#444444;
}
article > header p {
	margin-top:20px;
	line-height:1.8;
	font-size:1.4rem;
}
article > header p.lead {
	margin-top:5px;
	line-height:1.2;
	font-size:1.2rem;
}
article > header ul {
	margin:15px 0 0 20px;
	list-style-type:disc;
}
article > header ol {
	margin:15px 0 0 20px;
	list-style-type:decimal;
}
article > header ul li,
article > header ol li {
	margin-bottom:10px;
}
article > .actions {
	margin:20px 10px;
}

/* blog */
section.post .title {
	line-height: 1.2;
}
section.post .body p {
	line-height: 1.5;
}
section.post .body .post-categories {
	margin-bottom: 20px;
}
article nav.post-navigation {
	position:static;
	margin:30px 0;
}
article nav.post-navigation h1 {
	display:none;
}
article nav.post-navigation .nav-links a {
	position:relative;
	display:block;
	margin:10px;
	padding-left:5em;
}
article nav.post-navigation .nav-links a span {
	display:block;
	position:absolute;
	left:0;
}
article nav.post-navigation .nav-links a span::after {
	content:' : ';
}


/* layout common */
section,
.block {
	position:relative;
	margin:15px 10px 10px 10px;
	padding:20px;
	-webkit-border-radius:11px;
	-moz-border-radius:11px;
	border-radius:11px;
	background-color:#FFFFFF;
	box-shadow:0 0 2px 2px rgba(96,96,96,0.1);
	line-height:1.5;
	font-size:1.6rem;
}
section .subject,
.block .subject {
	position: relative;
	z-index: 0;
	margin-top: 30px;
	padding-top: 12px;
	padding-bottom: 10px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #FFF;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.4);
	text-align:center;
	background-color: #5CA6CE;
	box-shadow: 0 0 2px 2px rgba(96, 96, 96, 0.1);
}
section .subject::before,
.block .subject::before {
	content:'';
	display: block;
	position: absolute;
	z-index: 2;
	top: 3px;
	width: 100%;
	height: 0;
	border-top: 1px solid #4493BD;
	border-bottom: 1px solid #62ACCD;
}
section .subject::after,
.block .subject::after {
	content:'';
	display: block;
	position: absolute;
	z-index: 2;
	bottom: 2px;
	width: 100%;
	height: 0;
	border-top: 1px solid #4493BD;
	border-bottom: 1px solid #62ACCD;
}
section .title,
.block .title {
	margin-bottom:10px;
	font-size:2.4rem;
}
section .subtitle,
.block .subtitle {
	margin-top: 30px;
	margin-bottom:10px;
	font-size:2rem;
}

section header .icon,
.block header .icon {
	margin-top:0;
	text-align:center;
}
section header .point,
.block header .point {
	padding-top:75px;
	background-image:url(/img/icon_point.png);
	background-repeat:no-repeat;
	background-position:center top;
	text-align:center;
	font-size:1.8rem;
	color:#5F6D7C;
}
section header .point span,
.block header .point span {
	display:block;
	text-align:center;
	font-size:1.2rem;
}

section .link a,
.block .link a {
	padding-left:20px;
	background-image:url(/img/icon_link.png);
	background-repeat:no-repeat;
	background-position:left center;
	color:#56544D;
}
section .link a:hover,
.block .link a:hover {
	color:#10A9D6;
}

section .body p,
.block .body p {
	margin-top:15px;
	line-height:2;
	text-shadow:-1px -1px 0 #FFFFFF;
}
section .body p.important,
.block .body p.important {
	margin-bottom: 1em;
	font-weight:bold;
}
section .body ul,
.block .body ul {
	list-style-type:disc;
	margin:15px 0 0 0;
}
section .body ul.hasIcon,
.block .body ul.hasIcon {
	list-style-type:none;
	margin-left:0;
}
section .body ul li,
.block .body ul li {
	margin-left:20px;
	margin-bottom:10px;
}
section .body ul.compactList li,
.block .body ul.compactList li {
	margin-bottom:0;
	line-height:1.2;
}

section .body ul.checklist,
.block .body ul.checklist {
	list-style-type:none;
}
section .body ul.checklist li,
.block .body ul.checklist li {
	margin:0 0 15px 0;
	padding:0 0 10px 35px;
	background-image:url(/img/icon_check.png);
	background-repeat:no-repeat;
	background-position:left top;
}

section .body ol.serial,
.block .body ol.serial {
    counter-reset:li;
	list-style-type:none;
	margin-left:0;
}
section .body ol.serial li,
.block .body ol.serial li {
	position:relative;
	margin:0 0 15px 0;
}
section .body ol.serial li::before,
.block .body ol.serial li::before {
	content:counter(li);
	counter-increment:li;
	position:absolute;
	top:-0.1em;
	/*left:-1.0em;*/
	width:1.3em;
	height:1.2em;
	padding:0.1em 0 0 0;
	background:#3FCAF3;
	text-align:center;
	line-height:1.1;
	font-weight:bold;
	font-size:2.0rem;
	color:#FFFFFF;
}
section .body ol.serial li dl,
.block .body ol.serial li dl {
}
section .body ol.serial li dl dt,
.block .body ol.serial li dl dt {
	margin:0.1em 0 1em 2.5em;
	font-weight:bold;
}
section .body ol.serial li dl dt strong,
.block .body ol.serial li dl dt strong {
	font-weight:bold;
}
section .body ol.serial li dl dd,
.block .body ol.serial li dl dd {
	margin-bottom:2.5em;
}

section .body ol.flow,
.block .body ol.flow {
	margin:0;
	list-style-type:none;
}
section .body ol.flow li,
.block .body ol.flow li {
}
section .body ol.flow li::after,
.block .body ol.flow li::after {
	content:'';
	transform:rotate(45deg);
	display:block;
	clear:both;
	width:20px;
	height:20px;
	margin:0 auto;
	border-right:2px solid #00B9EF;
	border-bottom:2px solid #00B9EF;
}
section .body ol.flow li:last-child::after,
.block .body ol.flow li:last-child::after {
	display:none;
}
section .body ol.flow li dl,
.block .body ol.flow li dl {
}
section .body ol.flow li dl dt,
.block .body ol.flow li dl dt {
	position:relative;
	float:left;
	width:95px;
	height:50px;
	margin:0 15px 15px 0;
	padding:40px 0 0 0;
	border:8px solid #00B9EF;
	border-radius:50%;
	text-align:center;
	line-height:1.2;
	font-size:1.1rem;
}
section .body ol.flow li dl dt span,
.block .body ol.flow li dl dt span {
	display:block;
	width:95px;
	height:95px;
	position:absolute;
	top:15px;
	text-align:center;
	font-size:1.7rem;
	color:#00B9EF;
}
section .body ol.flow li dl dd,
.block .body ol.flow li dl dd {
}

section .body ul.relation,
.block .body ul.relation {
	list-style-type:none;
}
section .body ul.relation li,
.block .body ul.relation li {
	margin:0;
	padding:0 0 15px 30px;
	background-image:url(/img/icon_content_relation.png);
	background-repeat:no-repeat;
	background-position:left top;
}

section .body ul.thumblist,
.block .body ul.thumblist {
	list-style-type:none;
	margin-left:0;
}
section .body ul.thumblist li,
.block .body ul.thumblist li {
	position:relative;
	min-height:80px;
	margin:0 0 25px 0;
}
section .body ul.thumblist li::after,
.block .body ul.thumblist li::after {
	margin-bottom:0;
}
section .body ul.thumblist a,
.block .body ul.thumblist a {
	text-decoration:none;
	color:#333333;
}
section .body ul.thumblist a:hover,
.block .body ul.thumblist a:hover {
	text-decoration:underline;
}
section .body ul.thumblist li a .thumb,
.block .body ul.thumblist li a .thumb {
	float:left;
	width:80px;
	height:80px;
	margin:0 10px 10px 0;

}
section .body ul.thumblist li a .thumb img,
.block .body ul.thumblist li a .thumb img {
	display:block;
}
section .body ul.thumblist li a dl,
.block .body ul.thumblist li a dl {
}
section .body ul.thumblist li a dl dt,
.block .body ul.thumblist li a dl dt {
	font-weight:bold;
}
section .body ul.thumblist li a dl dt strong,
.block .body ul.thumblist li a dl dt strong {
	display:inline-block;
	margin-right:5px;
	padding:1px 5px;
	border-radius:20%;
	background-color:#F8B718;
	text-align:center;
	font-size:1rem;
	color:#FFFFFF;
}
section .body ul.thumblist li a dl dt br,
.block .body ul.thumblist li a dl dt br {
	display:none;
}
section .body ul.thumblist li a dl dd,
.block .body ul.thumblist li a dl dd {
	color:#666666;
}
section .body ul.thumblist li a dl dd.pubDate,
.block .body ul.thumblist li a dl dd.pubDate {
	display:none;
}

section .body ul.figurelist,
.block .body ul.figurelist {
	list-style-type:none;
	margin-left:0;
}
section .body ul.figurelist li,
.block .body ul.figurelist li {
	margin:0;
}

section ul li.link,
.block ul li.link {
	margin-left:0;
	list-style-type:none;
}

section .body ol,
.block .body ol {
	list-style-type:decimal;
	margin:15px 0 0 20px;
}
section .body ol.hasIcon,
.block .body ol.hasIcon {
	list-style-type:none;
	margin-left:0;
}
section .body ol li,
.block .body ol li {
	margin-bottom:10px;
}

section .body dl.faq,
.block .body dl.faq {
	list-style-type:none;
}
section .body dl.faq dt,
.block .body dl.faq dt {
	margin:0 0 5px 0;
	padding:0 0 10px 35px;
	background-image:url(/img/icon_question.png);
	background-repeat:no-repeat;
	background-position:left top;
	font-weight:bold;
}
section .body dl.faq dd,
.block .body dl.faq dd {
	margin:0 0 40px 0;
	padding:10px;
	background-color:#F0F0F0;
}

section .body figure,
.block .body figure {
	margin-bottom:30px;
}
section .body figure img,
.block .body figure img {
	display:block;
}
section .body figure ul,
section .body figure ol,
.block .body figure ul,
.block .body figure ol {
	list-style-type:none;
}
section .body figure li,
.block .body figure li {
	margin-left:0;
}
section .body figure figcaption strong,
.block .body figure li figcaption strong {
	font-weight: bold;
	color: #333333;
}

section .body .text h3, section .body .text h4, section .body .text h5, section .body .text h6,
.block .body .text h3, .block .body .text h4, .block .body .text h5, .block .body .text h6 {
	margin-top:15px;
	font-weight: bold !important;
}
section .body .text h3,
.block .body .text h3 {
	font-size: 120%;
}
section .body .image,
.block .body .image {
	text-align:center;
}

section .body .note,
.block .body .note {
	margin-top: 1.5em;
	padding-top: 1em;
	border-top: 1px solid #CCCCCC;
	font-size:1.2rem;
}
section .body .note p,
.block .body .note p {
	margin-top: 0.5rem;
}

section .actions .button,
.block .actions .button {
	margin-top: 10px;
	text-align:right;
}
section .actions .button a,
.block .actions .button a {
	display:inline-block;
	padding:5px 20px;
	border-radius:5px;
	background-color:#F56D22;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#FA772E), to(#F06517));
	background:-webkit-linear-gradient(#FA772E, #F06517);
	background:-moz-linear-gradient(#FA772E, #F06517);
	background:-o-linear-gradient(#FA772E, #F06517);
	background:linear-gradient(#FA772E, #F06517);
	box-shadow:0 0 3px 2px rgba(0,0,0,0.1);
	font-size:1.4rem;
	color:#FFFFFF;
	text-decoration:none;
}
section .actions .button a:hover,
.block .actions .button a:hover {
}
section .actions ul li,
.block .actions ul li {
	margin-bottom:10px;
}

section .require strong,
.block .require strong {
	color:#CC0000;
}
section .error,
.block .error {
	color:#CC0000;
}

section.noContainer,
.block.noContainer {
	margin:0 10px 15px 10px;
	padding:0;
	border-radius:0;
	background:none;
	box-shadow:none;
}
.noContainer section,
.noContainer .block {
	margin-left:0;
	margin-right:0;
}
section.noContainer > header,
.block.noContainer > header {
	margin-bottom:20px;
}
section.noContainer > header p,
.block.noContainer > header p {
	margin:15px 10px 0 10px;
	line-height:1.8em;
	font-size:1.4rem;
}

section.noContainer .body p,
.block.noContainer .body p {
	text-shadow:none;
}

/* layout basic */
.layout.basic section,
.layout.basic .block {
}
.layout.basic section .body .image,
.layout.basic .block .body .image {
	text-align:center;
}

/* layout panel */
.layout.panel section,
.layout.panel .block {
	position:relative;
}
.layout.panel section > a,
.layout.panel .block > a {
	text-decoration:none;
	color:#56544D;
}
.layout.panel section .title,
.layout.panel .block .title {
	position:relative;
	z-index:5;
	margin:100px 0 0 0;
	text-align:center;
	line-height:1.5;
	font-size:1.6rem;
}
.layout.panel section p.image,
.layout.panel .block p.image {
	position:absolute;
	z-index:3;
	top:10px;
	left:0;
	right:0;
	margin-top:0;
	text-align:center;
}
.layout.panel section p.image img,
.layout.panel .block p.image img {
	max-height:100px;
}
.layout.panel section p.more,
.layout.panel .block p.more {
	position:absolute;
	z-index:1;
	right:0;
	bottom:0;
}
.layout.panel section p.more img,
.layout.panel .block p.more img {
	display:block;
}
.layout.panel section > p,
.layout.panel .block > p {
	position:relative;
	z-index:2;
	margin:10px 0 30px 0;
}
.layout.panel section > p a,
.layout.panel .block > p a {
	text-decoration:underline;
}
.layout.panel section > p a:hover,
.layout.panel .block > p a:hover {
	text-decoration:none;
}

.layout.panel section.hasNotImage .title,
.layout.panel .block.hasNotImage .title {
	margin-top:0;
	text-align:left;
}

section.noContainer .layout.panel section,
section.noContainer .layout.panel .block {
	margin:0;
	padding-left:10px;
	padding-right:10px;
	border-radius:0;
	background:none;
	box-shadow:none;
}
section.noContainer .layout.panel section:last-child,
section.noContainer .layout.panel .block:last-child {
	margin-bottom: 20px;
}
section.noContainer .layout.panel section::after,
section.noContainer .layout.panel .block::after {
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:10px;
	right:10px;
	height:2px;
	background-image:url(/img/line_panel_h.png);
	background-repeat:repeat-x;
	background-position:left top;
}
section.noContainer .layout.panel section:first-child::after,
section.noContainer .layout.panel .block:first-child::after {
	display:none;
}

/* layout table */
.layout.table section,
.layout.table .block {
}
.layout.table section table,
.layout.table .block table {
	border-top:1px solid #D8D2C1;
	border-bottom:1px solid #FFFFFF;
	background-color:transparent;
}
.layout.table section table th,
.layout.table .block table th {
	padding:5px 10px 5px 0;
	border-top:1px solid #FFFFFF;
	border-right:1px solid #D8D2C1;
	border-bottom:1px solid #D8D2C1;
}
.layout.table section table td,
.layout.table .block table td {
	padding:5px 10px 5px 10px;
	border-top:1px solid #FFFFFF;
	border-left:1px solid #FFFFFF;
	border-right:1px solid #D8D2C1;
	border-bottom:1px solid #D8D2C1;
}
.layout.table section table thead th,
.layout.table .block table thead th {
	padding-left:0;
	padding-right:0;
	background-color:#FFFFFF;
	text-align:center;
}
.layout.table section table tbody th,
.layout.table .block table tbody th {
	white-space:nowrap;
}
.layout.table section table tr > :last-child,
.layout.table .block table tr > :last-child {
	padding-right:0;
	border-right:none;
}
.layout.table section table td > :first-child,
.layout.table .block table td > :first-child {
	margin-top:0;
}
.layout.table section table td > :last-child,
.layout.table .block table td > :last-child {
	margin-bottom:0;
}
.layout.table section table.plain,
.layout.table .block table.plain {
	background-color:#FFFFFF;
	border-left:1px solid #D8D2C1;
	border-bottom:none;
}
.layout.table section table.plain th,
.layout.table .block table.plain th {
	padding-left:10px;
	border-top:none;
}
.layout.table section table.plain td,
.layout.table .block table.plain td {
	padding-right:10px;
	border-top:none;
	border-left:none;
	border-right:1px solid #D8D2C1;
}
.layout.table section table.plain thead th,
.layout.table .block table.plain thead th {
	border-right:1px solid #D8D2C1;
	font-weight: bold;
}

@media (max-width:480px){
	.layout.table table.contact,
	.layout.table table.contact tbody,
	.layout.table table.contact tr,
	.layout.table table.contact th,
	.layout.table table.contact td{
		display: block;
	}
	.layout.table .block table.contact tr > :last-child{
		padding-right: 10px;
	}
	.layout.table table.contact th{
		padding: 5px 10px;
		border-right: none;
		font-weight: bold;
	}
	.layout.table table.contact td{
		padding: 10px 10px 20px;
		border-left: none;
	}
	.layout.table table.contact input{
		max-width: 100%;
	}
	.layout.table table.contact textarea{
		max-width: 100%;
	}
}

/* layout letter */
.layout.letter section,
.layout.letter .block {
}
.layout.letter section .title,
.layout.letter .block .title {
	margin-top:15px;
	text-align:center;
}
.layout.letter section .body p,
.layout.letter .block .body p {
	margin-top:2em;
	padding-top:1px;
	background-image:url(/img/line_letter.png);
	background-repeat:repeat-x;
	background-position:left top;
}
.layout.letter section .body p .line,
.layout.letter .block .body p .line {
	padding:5px 0 8px 0;
	background-image:url(/img/line_letter.png);
	background-repeat:repeat-x;
	background-position:left bottom;
	line-height:2.2em;
}
.layout.letter section .signature,
.layout.letter .block .signature {
	margin-top:15px;
	text-align:right;
}


/*
 * form
 */
#main form {
}
#main form #rowName label {
	display:inline-block;
	width:2em;
	text-align:right;
}
#main form input,
#main form textarea,
#main form select {
	border:1px solid #D8D2C1;
	background-color:#FFFFFF;
	font-size:1.4rem;
}
#main form .actions {
	margin-top:30px;
	text-align:center;
}
#main form .actions dl {
	margin-bottom:20px;
	text-align:left;
}
#main form .actions dl dt {
	font-weight:bold;
}
#main form .actions dl dd {
	margin-top:10px;
}
#main form .actions .button {
	display:inline-block;
	margin:0 5px;
	padding:18px 35px;
	border-radius:8px;
	background-color:#F56D22;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#FA772E), to(#F06517));
	background:-webkit-linear-gradient(#FA772E, #F06517);
	background:-moz-linear-gradient(#FA772E, #F06517);
	background:-o-linear-gradient(#FA772E, #F06517);
	background:linear-gradient(#FA772E, #F06517);
	box-shadow:0 0 5px 3px rgba(0,0,0,0.1);
	font-size:1.8rem;
	font-weight:bold;
	color:#FFFFFF;
	cursor:pointer;
}
#main form .actions .button#back {
	background-color:#888888;
	background:-webkit-gradient(linear, 0 0, 0 100%, from(#99958A), to(#8F8B7E));
	background:-webkit-linear-gradient(#99958A, #8F8B7E);
	background:-moz-linear-gradient(#99958A, #8F8B7E);
	background:-o-linear-gradient(#99958A, #8F8B7E);
	background:linear-gradient(#99958A, #8F8B7E);
}


/*
 * lnavi
 */
#lnavi {
	padding:20px;
}
#lnavi h1 {
	font-size:2rem;
}
#lnavi a,
#lnavi span {
	display:block;
	padding:5px 0px;
	color:#56544D;
	text-decoration:none;
}
#lnavi li.current > p a,
#lnavi li.current > a,
#lnavi li.current > p span,
#lnavi li.current > span {
	color:#00A3CC;
}
#lnavi a:hover {
	text-decoration:underline;
}
#lnavi > ul > li {
	margin-bottom:15px;
}
#lnavi > ul > li:last-child {
	margin-bottom:0;
}
#lnavi > ul > li > a,
#lnavi > ul > li > p a,
#lnavi > ul > li > span,
#lnavi > ul > li > p span {
	font-size:1.6rem;
}
#lnavi > ul > li.current > a,
#lnavi > ul > li.current > p a,
#lnavi > ul > li.current > span,
#lnavi > ul > li.current > p span {
	position:relative;
	left:-20px;
	margin:0 -40px 10px 0;
	padding:5px 20px 5px 20px;
	background-color:#00B9EF;
	color:#FFFFFF;
}
#lnavi > ul > li > ul {
	margin-top:10px;
}
#lnavi > ul > li.current > ul {
	margin-top:10px;
}
#lnavi > ul > li > ul > li {
	margin-bottom:8px;
	line-height:1.2;
	font-size:1.4rem;
}
#lnavi > ul > li > ul > li > p {
	padding-left:25px;
}
#lnavi > ul > li > ul li.current > p {
	background-image:url(/img/icon_lnavi.png);
	background-repeat:no-repeat;
	background-position:left center;
}
#lnavi > ul > li > ul > li > ul > li {
	display:none;
	padding-left:40px;
	font-size:1.2rem;
}
#lnavi > ul > li > ul > li.current > ul > li {
	display:block;
}
#lnavi > ul > li.widget .search-form {
	display:block;
	margin-left:25px;
}
#lnavi > ul > li.widget .screen-reader-text {
	display:none;
}
#lnavi > ul > li.widget.widget_archive ul li p,
#lnavi > ul > li.widget.widget_archive ul li a,
#lnavi > ul > li.widget.widget_archive ul li span,
#lnavi > ul > li.widget.widget_categories ul li p,
#lnavi > ul > li.widget.widget_categories ul li a,
#lnavi > ul > li.widget.widget_categories ul li span {
	display:inline;
}

.pagetop {
	display:inline-block;
	position:relative;
	left:50%;
	margin:15px 0 0 -32px;
	padding:5px;
	border-radius:50%;
	background-image:url(/img/bg_pagetop.png);
	background-repeat:repeat;
	background-position:left top;
}
.pagetop a {
	display:block;
	width:58px;
	height:43px;
	padding-top:15px;
	background-color:#99958A;
	border-radius:50%;
	text-align:center;
	color:#FFFFFF;
	text-decoration:none;
	font-size: 1.3rem;
}
.pagetop a::before {
	content:'';
	transform:rotate(45deg);
	display:block;
	width:7px;
	height:7px;
	margin:0 auto 7px auto;
	border-top:1px solid #FFFFFF;
	border-left:1px solid #FFFFFF;
}

/*
 * feedContent
 */
 #sub .feedContent {
	min-height:200px;
	padding:0;
	border-radius:0;
	background:none;
	box-shadow:none;
}
#sub .feedContent h1 {
	position: relative;
	z-index: 0;
	margin-top: 30px;
	padding-top: 12px;
	padding-bottom: 10px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #FFF;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.4);
	text-align:center;
	background-color: #5CA6CE;
	box-shadow: 0 0 2px 2px rgba(96, 96, 96, 0.1);
}
#sub .feedContent h1::before {
	content:'';
	display: block;
	position: absolute;
	z-index:2;
	top: 3px;
	width: 100%;
	height: 0;
	border-top: 1px solid #4493BD;
	border-bottom: 1px solid #62ACCD;
}
#sub .feedContent h1::after {
	content:'';
	display: block;
	position: absolute;
	z-index:2;
	bottom: 2px;
	width: 100%;
	height: 0;
	border-top: 1px solid #4493BD;
	border-bottom: 1px solid #62ACCD;
}
#sub .feedContent li {
	margin-top:10px;
	padding-bottom:15px;
	background-image:url(/img/line_news.png);
	background-repeat:repeat-x;
	background-position:left bottom;
}
#sub .feedContent li a {
	text-decoration:none;
	color:#56544D;
}
#sub .feedContent li dt {
	font-weight:bold;
}
#sub .feedContent li a dt {
	text-decoration:underline;
}
#sub .feedContent li a:hover dt {
	text-decoration:none;
}
#sub .feedContent li dd {
	margin-top:3px;
}
#sub .feedContent .link {
	margin-top: 0.5em;
	text-align: right;
}

/*
 * contact
 */
#contact section {
	margin:0 10px 10px 10px;
	background-image:url(/img/bg_contact.png);
	background-size:250px auto;
	background-repeat:no-repeat;
	background-position:90% 70%;
}
#contact a {
	text-decoration:none;
	color:#56544D;
}
#contact a:hover {
}
#contact .title {
	font-size:2.2rem;
}
#contact ul {
	margin:10px 0 10px 30px;
}
#contact ul li {
	list-style-type:disc;
	text-shadow:-1px -1px 0 #FFFFFF;
}
#contact .action {
	width:50%;
	min-width:180px;
	margin-top:120px;
	padding:10px;
	background-color:rgba(240,240,240,0.7);
	border-radius:5px;
	border:1px solid #FFFFFF;
	box-shadow:0 0 0 1px #E8E8E8;
}
#contact .action .subtitle {
	margin-top: 0;
	margin-bottom:0;
	font-size:1.6rem;
}
#contact .action .subtitle:first-child {
	margin-bottom:10px;
}
#contact .action .subtitle:first-child + p {
	text-align:center;
	line-height:1.2;
	font-size:1.2rem;
}
#contact .action .subtitle:first-child + p strong {
	color:#00ACDE;
}
#contact .action .subtitle:first-child + p strong strong {
	font-size:2.2rem;
}
#contact .action .subtitle:last-child {
	text-align:center;
}

/*
 * recommend
 */
#recommend {
	margin-top:15px;
}
#recommend ul {
	padding-bottom:2px;
	background-image:url(/img/banner_bg_bottom.gif);
	background-repeat:no-repeat;
	background-position:center bottom;
}
#recommend ul li {
}
#recommend ul li img {
	display:block;
	margin:0 auto;
}

/*
 * footer
 */
body > footer {
	margin-top:15px;
}
body > footer #footerInfo {
	margin:10px;
	color:#636152;
}
body > footer #footerInfo h1 {
	margin-bottom:10px;
	font-size:1.4rem;
}
body > footer #footerInfo h1 img {
	display:block;
	margin-bottom:10px;
}
body > footer #footerInfo address {
	line-height:1.5;
	font-style:normal;
	font-size:1.2rem;
}
body > footer #footerInfo address a img {
	display:block;
	margin-top:5px;
}
body > footer dl {
	margin:0 10px;
	text-align:left;
}
body > footer dl dt {
	display:inline-block;
	margin:0 10px 5px 0;
}
body > footer dl dd {
	display:none;
}
body > footer dl a {
	display:block;
	padding:5px 0 5px 12px;
	background-image:url(/img/icon_fnavi.png);
	background-repeat:no-repeat;
	background-position:left center;
	text-decoration:none;
	color:#636152;
}
body > footer dl a:hover {
	text-decoration:underline;
}
body > footer dl a br {
	display:none;
}
body > footer #copyright {
	margin-top:5px;
	border-top:1px solid #D7D2C0;
	color:#504E3C;
}
body > footer #copyright small {
	display:block;
	padding:20px;
	border-top:1px solid #FFFFFF;
	text-align:center;
}
