@charset "UTF-8";

/*
======== table of content. ===============

summary:ワイヤーフレーム要素

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

/*----------------------------------------
font
------------------------------------------*/
@font-face {
	font-family:'Hannari';
	src:url('../fonts/hannari.eot');
	src:url('../fonts/hannari.eot?#iefix') format('embedded-opentype'),
		url('../fonts/hannari.woff2') format('woff2'),
		url('../fonts/hannari.woff') format('woff'),
		url('../fonts/hannari.ttf') format('truetype');
	font-display: swap;
}
@font-face {
	font-family: 'fontello';
	src: url('../fonts/fontello.eot');
	src: url('../fonts/fontello.eot#iefix') format('embedded-opentype'),
		url('../fonts/fontello.woff') format('woff'),
		url('../fonts/fontello.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}


/*----------------------------------------
img
------------------------------------------*/
img { max-width:100%; height:auto; vertical-align:middle; }

/*----------------------------------------
base link color
------------------------------------------*/
a { color:#f0611f; text-decoration:underline; -webkit-transition-property:border, background-image, background-color, color, text-decoration, opacity; transition-property:background-image, background-color, color, text-decoration, opacity; -webkit-transition-duration:0.3s; transition-duration:0.3s; -webkit-transition-timing-function:ease-in-out; transition-timing-function:ease-in-out; }

/*----------------------------------------
inline
------------------------------------------*/
a, span { display:inline-block; }

/*----------------------------------------
block
------------------------------------------*/
header, footer, article, section, nav, div, hgroup, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, th, td, a, span { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing:border-box; }

/*----------------------------------------
html
------------------------------------------*/
html { height:100%; }

/*----------------------------------------
body
------------------------------------------*/
body { position:relative; height:100%; border-top:2px solid #d1b868; background:url(../images/bg_body.png); color:#111; font-family:"游明朝", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Hannari", Hannari, serif; line-height:1.71; font-size:87.5%; -webkit-text-size-adjust:100%; }

/*body::before { content: "12月22日18時よりサーバメンテナンスのため閲覧できません。ご迷惑おかけしますがご理解のほどお願い申し上げます。"; box-sizing: border-box; display: block; width: 100%; padding: 1rem; border-bottom: 2px solid #000; background-color: #D31A1D; color: #fff; font-weight: bold; text-align: center; font-size: 100%; }

@media screen and (max-width: 767px) {
body::before { padding: 0.5rem;  text-align: left; }
}*/

/*----------------------------------------
div#wrapper
------------------------------------------*/
#wrapper { position:relative; min-width:1040px; min-height:100%; }
.inner { position:relative; max-width:1040px; margin:0 auto; padding:0 20px; }

/*----------------------------------------
header
------------------------------------------*/
header { position:relative; max-width:1040px; margin:auto; }
header .inner { position:absolute; left:30px; top:-2px; width:164px; height:226px; padding:15px; border-bottom:2px solid #d1b868; background-color:#000; color:#fff; line-height:1.28; text-align:center; z-index:100; }
header a { color:#fff; text-decoration:none; }
header img { margin-top:10px; }
header h1 { margin-top:5px; font-size:114.2%; }
header h1 span { font-size:125%; }

/* nav
------------------------------------------*/
#globalnav { position:relative; width:100%; background-color:#000; }
#globalnav a { color:#fff; text-decoration:none; }
/* button要素として記述されている gtrigger / nav_trigger をリンク同等の見た目にリセット */
/* 要素名 button を付けることで、システム側の <a id="gtrigger"> 等には一切影響しない */
button#gtrigger, #hd_sitemap button.nav_trigger { background:transparent; border:0; padding:0; margin:0; font:inherit; color:inherit; cursor:pointer; -webkit-appearance:none; appearance:none; }
button#gtrigger { color:#fff; }
button#gtrigger:focus-visible, #hd_sitemap button.nav_trigger:focus-visible { outline:2px solid #f0611f; outline-offset:2px; }

#hd_contact { position:absolute; left:30px; top:160px; width:164px; text-align:center; z-index:101; }
#hd_contact .btn_contact { padding:0 10px; }
#hd_contact .btn_contact a { display:block; position:relative; padding:2px; background:#f0611f; text-align:center; cursor:pointer; }
#hd_contact .btn_contact a:after { content:"\f105"; display:block; opacity:1; visibility:visible; position:absolute; right:10px; top:0; bottom:0; height:1em; margin:auto; }
#hd_contact .btn_phone { margin-top:5px; padding:2px; background:url(../images/bg_paper_alpha_go.png);  font-size:114.2%; line-height:1.5; letter-spacing:1px; }
#hd_contact .btn_phone a:before { content:"\e80b"; vertical-align:baseline; margin-right:5px; }
#hd_contact .btn_phone span { display:block; font-size:75%; }
#hd_sitemap { padding-right:10px; font-size:0; text-align:right; }
#hd_sitemap li { display:inline-block; position:relative; margin-left:25px; font-size:15px; }
#hd_sitemap .nav_trigger { display:none; }
#hd_sitemap > li > a { padding:10px 0; }
#hd_sitemap .current > a { color:#f0611f; }
#hd_sitemap li ul { display:none; position:absolute; left:50%; transform: translateX(-50%); margin:5px auto 0; padding:15px; background-color:#000; background-color:rgba(0,0,0,0.8); z-index:102; }
#hd_sitemap li li { display:block; margin:5px 0 0; font-size:14px; text-align:left; }
#hd_sitemap li li:first-child { margin-top:0; }
#hd_sitemap li li a { position:relative; padding-left:20px; white-space:nowrap; }
#hd_sitemap li li a:before { content:"\f105"; display:inline-block; position:absolute; left:0; top:3px; width:1em; font-family: "fontello"; line-height:1em; text-align:center; }
#hd_sitemap li li .month { height:16px; margin-right:5px; padding:0 5px; background-color:#de120b; vertical-align:baseline; color:#fff; font-size:78.5%; line-height:16px; white-space:nowrap; }

/*----------------------------------------
content
------------------------------------------*/
#promotion { position:relative; margin-top:0; background:#000 url(../images/bg_flower_bk.png) repeat; text-align:center; z-index:1; }
#promotion h1 { position:absolute; left:0; right:0; bottom:0; width:1000px; margin:auto; padding:10px; background-color:rgba(0,0,0,0.70); color:#fff; font-size:200%; line-height:1.1; }

#breadcrumb { position:relative; padding:10px 0 5px; border-top:2px solid #b9b153; background-color:#000; }
#breadcrumb:before { content:""; display:block; position:absolute; left:0; top:3px; width:100%; height:0; border-top:1px solid #b9b153; }
#breadcrumb ul { max-width:1000px; margin:auto; }
#breadcrumb li { display:inline-block; vertical-align:middle; color:#fff; }
#breadcrumb a { color:#fff; text-decoration:none; }
#breadcrumb a:after { content:">"; margin:0 5px; vertical-align:middle;  }

#content { width:1040px; margin:0 auto; padding:40px 20px 200px; }
#breadcrumb + #content { }


#main { float:right; width:710px; }
#main > *:first-child { margin-top:0; }

article h1 { position:relative; margin-bottom:35px; padding-bottom:35px; border-bottom:1px solid #b9b153; font-size:200%; text-align:center; }
article h1:after { content:""; display:block; position:absolute; left:0; bottom:5px; width:100%; height:0; border-bottom:1px solid #b9b153; }
article h1 span { font-size:75%; }
article h2 { position:relative; margin-top:35px; margin-bottom:20px; padding:30px 0 25px; border-top:1px solid #b9b153; font-size:171.4%; text-align:center; }
article h2:before { content:""; position:absolute; left:0; top:5px; width:100%; border-top:1px solid #b9b153; }
article h2:after { content:""; display:block; position:absolute; left:0; right:0; bottom:0; width:150px; height:0; margin:auto; border-bottom:1px solid #b9b153; }
article h2.bd_long:after { width:100%; }
article h2 span { font-size:75%; }
article h1 + section { margin-top:30px; }
article h1 + h2,
article h1 + section h2 { padding-top:0; border:none; }
article h1 + h2:before,
article h1 + section h2:before { display:none; }


article h3 { position:relative; margin-top:35px; margin-bottom:20px; padding-bottom:5px; border-bottom:1px solid #b9b153; font-size:128.5%; }
article h4 { margin-top:20px;; margin-bottom:20px; }
article p,
article ul,
article ol { margin-top:20px; }
article ol { counter-reset:number; position:relative; padding-left:1.5em; }
article ol li:before { counter-increment:number; content:counter(number)". "; display:block; position:absolute; left:0; }

section { margin-top:60px; }
article > section:first-child,
article > .inner > section:first-child { margin-top:0; }

section > *:first-child { margin-top:0; }
table { width:100%; margin-top:30px; table-layout:fixed; border-collapse:collapse; border-spacing:0;  }
th,
.bg_cell_wt td { padding:10px; border:1px solid #d2d2d2; background:url(../images/bg_paper_wt.png) repeat; }
td { padding:10px; border:1px solid #d2d2d2; background-color:#fff; }
.bg_cell_go th,
th.bg_cell_go,
td.bg_cell_go { background:url(../images/bg_paper_go.png) repeat; }
.table_lower { margin-top:10px; font-size:85.7%;}
.table_lower th,
.table_lower td { padding:5px 10px; }


figure { margin-top:20px; text-align:center; }
figcaption { margin-top:5px; font-size:85.7%; line-height:1.5; }
sup { margin:0 2px; color:#de120b; }

.txt_intro { font-size:114.2%; line-height:2; text-align:center; }

.box_double_top { position:relative; margin-top:60px; padding-top:40px; border-top:1px solid #b9b153; }
.box_double_top:before { content:""; display:block; position:absolute; left:0; top:5px; width:100%; height:0; border-top:1px solid #b9b153; }

.box_double_top h2:first-child,
.box_double_top h3:first-child,
.box_double_top h4:first-child,
.box_double_top p:first-child { margin-top:0; }

article nav { margin-top:60px; }
.list_index {}
.list_index li { float:left; width:230px; margin:0 10px 10px 0; }
.list_index li:nth-child(3n) { margin:0 0 10px 0; }
.list_index li:nth-child(3n+1) { clear:both; }
.list_index a { display:block; position:relative; text-align:center; text-decoration:none; }
.list_index a img { -webkit-box-sizing:border-box; box-sizing:border-box; border:1px solid #f0eeea; border-bottom:none; }
.list_index a div { padding:10px; border:1px solid #f0eeea; background:url(../images/bg_flower_bk.png); color:#fff; }
.list_index a .txt_title { position:relative; margin:0; font-size:107.1%; }
.list_index a .txt_desc:before { content:""; display:block; position:absolute; left:0; right:0; top:0; width:80px; margin:auto; border-bottom:1px solid #fff; }
.list_index a .txt_desc { position:relative; margin-top:10px; padding-top:10px; font-size:85.7%;}

.onecolumn .list_index li { width:320px; margin:0 20px 20px 0; }
.onecolumn .list_index a img { margin-bottom:-40px; }
.onecolumn .list_index a div { position:relative; /*position:absolute; left:0; bottom:0; width:100%;*/ }
.onecolumn .list_index li:nth-child(3n) { margin:0 0 20px 0; }

.sec_contact { padding:19px; border:1px solid #e43e51; background-color:#fff; }
.sec_contact h2 { margin-top:0; margin-bottom:10px; padding:0 0 5px; border-top:none; font-size:114.2%; text-align:center; }
.sec_contact h2:before { display:none; }
.sec_contact h2:after { width:200px; border-bottom:1px solid #e43e51; }
.sec_contact p { margin-top:10px; }
.sec_contact table { float:left; width:450px; margin-top:10px; }
.sec_contact th { width:33%; padding:5px 10px; }
.sec_contact td { padding:5px 10px; }
.sec_contact img { float:right; max-width:200px; margin-top:10px; }
.sec_contact .list_note { margin-top:10px; font-size:85.7%; }

#sub { float:left; width:250px; }
#localnav { margin-top:0; border-top:2px solid #b9b153; }
#localnav h3 { margin:0; padding:0; border:none; background:transparent; }
#localnav h3 a { display:block; padding:10px 20px; background-color:#000; color:#fff; text-decoration:none; }
#localnav h3:after { display:none; }
#localnav ul { margin-top:0; }
#localnav li { margin-top:1px; }
#localnav li a { display:block; position:relative; padding:10px 25px 10px 20px; border:1px solid #e0e0e0; background:url(../images/bg_paper_wt.png) repeat; color:#000; text-decoration:none; }
#localnav li a:after { font-family:"fontello"; font-style:normal; font-weight:normal; speak:none; display:inline-block; text-decoration:inherit; width:1em; height:1em; text-align:center; vertical-align:top;
	font-variant:normal; text-transform:none; line-height:1em; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
	content:"\f105"; position:absolute; right:10px; top:0; bottom:0; margin:auto; }
#localnav .current a { background-image:url(../images/bg_paper_go.png); }
#localnav li .month { height:16px; margin-right:5px; padding:0 5px; background-color:#de120b; vertical-align:baseline; color:#fff; font-size:71.4%; line-height:16px; white-space:nowrap; }

.noscr {}

.forpc { display:block; }
.forsp { display:none; }
img.forpc,
br.forpc { display:inline-block; }
img.forsp,
br.forsp { display:none; }

.nav_banners { width:1000px; margin:40px auto; text-align:center; }
.nav_banners a { padding:2px; border:1px solid #f0eeea; background-color:#fff; color:#545026; text-decoration:none; }
.nav_banners a:after { display:none; }
.nav_banners .box_table { margin:0; }
.nav_banners .cell { position:relative; padding:5px 20px 5px 5px; vertical-align:middle; line-height:1.28; }
.nav_banners .cell:after { content:"\f105"; display:inline-block; position:absolute; right:5px; top:0; bottom:0; width:1em; height:1em; margin:auto; font-family: "fontello"; line-height:1em; }
.nav_banners .link_pdf .cell:after { content:"\f1c1"; }
.nav_banners .link_doc .cell:after { content:"\f1c2"; }
.nav_banners .link_xls .cell:after { content:"\f1c3"; }
.nav_banners .link_ppt .cell:after { content:"\f1c4"; }
.nav_banners .link_mail .cell:after { content:"\f0e0"; }
.nav_banners .exlink .cell:after,
.nav_banners .external .cell:after { content:"\f08e"; }

.onecolumn #sitemap  .box_float .col { margin-top:30px; }
#sitemap ul { padding-left:1em; }
#sitemap li { margin-top:10px; border-bottom:1px dotted #ccc; }
#sitemap a { display:block; position:relative; padding-right:1rem; color:#333; text-decoration:none; }
#sitemap a:after { content:"\f105"; display:inline-block; position:absolute; right:0; top:0; bottom:0; width:1em; height:1em; margin:auto; font-family: "fontello"; line-height:1em; text-align:center; }
#sitemap a .month { height:16px; margin-right:5px; padding:0 5px; background-color:#de120b; vertical-align:baseline; color:#fff; font-size:71.4%; line-height:16px; white-space:nowrap; }

#topagetop { display:none; position:fixed; right:10px; bottom:10px; z-index:100; }
#topagetop a { display:block; position:relative; width:40px; height:40px; margin-top:10px; padding-top:25px; background-color:#d2325a; line-height:1; color:#fff; font-size:71.4%; text-align:center; text-decoration:none; cursor:pointer; }
#topagetop a:after { content:"\f106"; position:absolute; left:0; right:0; top:5px; width:1em; height:1em; margin:auto; font-size:240%; text-indent:0; }
#topagetop .btn_historyback:after { content:"\e806"; font-size:175%; }
#topagetop .btn_topagetop:after { content:"\f106"; top:0; }



/*----------------------------------------
footer
------------------------------------------*/
footer { position:absolute; left:0; bottom:0; width:100%; height:140px; padding-top:40px; background:url(../images/bg_flower_bk.png) repeat; color:#fff; font-size:85.7%; line-height:1.67; text-align:center; }
footer p { margin-top:5px; }
footer p:first-child { margin-top:0; }
footer a { color:#fff; text-decoration:none; }

@media print { }

/* for manual */
code { word-wrap:break-word; }
pre { display:block; margin-top:10px; padding:10px; background-color:#f0f0f0; word-wrap:break-word; overflow-x:scroll; }
