@charset "Shift_JIS";


/* 初期設定
-------------------------------------------------- */
/* 00. Reset
-------------------------------------------------- */
body { height: 100%; }
html { height: 100%; overflow-y: scroll; }

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; font-size: 100%; }

body, div, p, address,
dl, dt, dd, ul, ol, li,
form, fieldset, input, textarea,
pre, blockquote, th, td { margin: 0; padding: 0; }

img { border: 0; } 

caption { text-align: left; }
table { border-collapse: collapse; border: none; border-spacing: 0; }

fieldset { border: 0; }
input { line-height: 100%; }

ol, ul { list-style-type: none; }

label { cursor: pointer; }
address { font-style: normal; }

hr { display: none; visibility: hidden; height: 0; border: 0; }

/* ----------------------------------------------- */
/* 00. All
-------------------------------------------------- */
body {
	color: #333333;
	line-height: 1.5;
	font-family: "ヒラギノ角ゴ Pro W4","Hiragino Kaku Gothic Pro","メイリオ",Meriyo,"ＭＳ Ｐゴシック",sans-serif;
	background: #EAFBE7 url(/img/common/bg_body_01.gif) repeat-x;
}

/* Link */
a { text-decoration: underline; }
a:link    { color: #006699; }
a:visited { color: #8AB29F; }
a:hover   { color: #5E91DB; }
a:active  { color: #5E91DB; }

/* ----------------------------------------------- */


/* レイアウト
-------------------------------------------------- */
/* 00. Header
-------------------------------------------------- */
#header {
	position: relative;
	width: 940px;
	height: 93px;
	margin: 0 auto;
}
#header .primary {
	position: absolute;
	top: 24px;
	left: 510px;
	width: 410px;
	height: 43px;
	background: url(/img/common/bg_primary_01.gif) no-repeat;
}
#header .primary .navi { margin-top: 14px; }
#header .primary .navi li {
	float: left;
	height: 15px;
	display: inline;
	margin-left: 10px;
	overflow: hidden;
}
#header .primary .navi img { vertical-align: top; }
#header .primary .search {
	width: 170px;
	margin-top: -17px;
	margin-left: auto;
	margin-right: 10px;
	background: url(/img/common/bg_search_01.gif) no-repeat;
}
#header .primary .search .iptTxt {
	width: 149px;
	padding: 2px 0 0 0;
	border: 0;
	background: transparent;
	text-indent: 2px;
}
#header .primary .search input { vertical-align: top; }

#logo {
	position: absolute;
	top: 10px;
	left: 20px;
	width: 150px;
	height: 83px;
}
#logo img { display: block; }

/* ----------------------------------------------- */
/* 00. Navigation
-------------------------------------------------- */
/* global */
#globalNavi {
	width: 940px;
	margin: 20px auto 0 auto;
	padding-bottom: 3px;
	background: url(/img/common/bg_container_01_top.gif) no-repeat left bottom;
}
#globalNavi ul { padding: 0 10px; }
#globalNavi li {
	position: relative;
	float: left;
	height: 35px;
	display: inline;
	margin-left: 10px;
	overflow:hidden;
}
#globalNavi a {
	display: block;
	height: 35px;
	background: url(/img/common/spr_gnavi_01.png) no-repeat;
}
#globalNavi span {
	position: absolute;
	z-index: -1;
}
#globalNavi .li01 { width: 75px; }
#globalNavi .li02 { width: 215px; }
#globalNavi .li03 { width: 165px; }
#globalNavi .li04 { width: 185px; }
#globalNavi .li05 { width: 90px; }
#globalNavi .li06 { width: 120px; }
#globalNavi .li01 a { background-position:    0   0; }
#globalNavi .li02 a { background-position:  -75px 0; }
#globalNavi .li03 a { background-position: -290px 0; }
#globalNavi .li04 a { background-position: -455px 0; }
#globalNavi .li05 a { background-position: -640px 0; }
#globalNavi .li06 a { background-position: -730px 0; }
#globalNavi .li01 a:hover { background-position:    0   50%; }
#globalNavi .li02 a:hover { background-position:  -75px 50%; }
#globalNavi .li03 a:hover { background-position: -290px 50%; }
#globalNavi .li04 a:hover { background-position: -455px 50%; }
#globalNavi .li05 a:hover { background-position: -640px 50%; }
#globalNavi .li06 a:hover { background-position: -730px 50%; }
#globalNavi .li01 a.current { background-position:    0   100%; }
#globalNavi .li02 a.current { background-position:  -75px 100%; }
#globalNavi .li03 a.current { background-position: -290px 100%; }
#globalNavi .li04 a.current { background-position: -455px 100%; }
#globalNavi .li05 a.current { background-position: -640px 100%; }
#globalNavi .li06 a.current { background-position: -730px 100%; }

/* topic */
#topicPath {
	width: 900px;
	margin: 0 auto;
	padding-top: 15px;
}
#topicPath li { display: inline; }

/* local */
.localNavi {
	background: url(/img/common/bg_lnavi_01_mdl.gif) repeat-y;
}
.localNavi dl {
	padding-bottom: 2px;
	background: url(/img/common/bg_lnavi_01_btm.gif) no-repeat left bottom;
}
.localNavi dt img{ vertical-align: bottom; }
.localNavi li {
	padding: 0px 1px;
	border-top: 1px solid #D4D4D4;
}
.localNavi li a {
	display: block;
	padding: 11px 9px 10px 25px;
	border: 1px solid #FFFFFF;
	border-bottom: 0;
	background: #F0EFEC url(/img/common/icn_lnavi_01.gif) no-repeat 10px 1.2em;
	text-decoration: none;
}
.localNavi li a:hover { background-color: #FFFFFF; }
.localNavi li.current a {
	background: #FFFFFF url(/img/common/icn_lnavi_01_cur.gif) no-repeat 10px 1.2em;
	color: #333333!important;
	font-weight: bold;
}
.localNavi li.current a.not-current {
	font-weight: normal;
}
.localNavi li.current a.not-current:hover {
	background-color: #f9f9f9;
}
.localNavi .nav-child {}
.localNavi .nav-child .nav-child-list {}
.localNavi .nav-child .nav-child-list-item {}
.localNavi .nav-child .nav-child-list-item-link {
	display: flex;
	flex-flow: row nowrap;
	padding-left: 5px;
	background: none;
	font-weight: normal;
}
.localNavi .nav-child .nav-child-list-item-link::before {
	content: '└';
	display: block;
	margin-right: 5px;
}
.localNavi .nav-child .nav-child-list-item-link:hover {
	background-color: #f9f9f9;
}
.localNavi .nav-child .nav-child-list-item-link.current {
	background-color: #ffffff;
	font-weight: bold;
}

/* ----------------------------------------------- */
/* 00. Footer
-------------------------------------------------- */
#footer {
	width: 940px;
	height: 73px;
	margin: 30px auto 0 auto;
	background: url(/img/common/bg_footer_01.gif) no-repeat;
}
#footer .navi { padding-top: 13px; }
#footer .navi li {
	float: left;
	height: 15px;
	display: inline;
	margin-left: 10px;
	overflow: hidden;
}
#footer .copyright {
	margin-top: -12px;
	text-align: right;
}
#footer .copyright img {
	display: block;
	margin-left: auto;
	margin-right: 10px;
}

/* ----------------------------------------------- */
/* 00. Container
-------------------------------------------------- */
#container {
	width: 940px;
	margin: 0 auto;
	background: url(/img/common/bg_container_01_mdl.gif) repeat-y;
}
#container .inB {
	padding-bottom: 20px;
	background: url(/img/common/bg_container_01_btm.gif) no-repeat left bottom;
}

.pagetop {
	margin: 0 20px;
	padding-top: 50px;
	text-align: right;
}
.pagetop span {
	display: -moz-inline-box;
	display: inline-block;
	padding-left: 15px;
	background: url(/img/common/icn_up_01.gif) no-repeat 0 50%;
}

/* ----------------------------------------------- */
/* 00. Layout Type
-------------------------------------------------- */
/* type A */
.layoutTypeA #contents {
	float: right;
	width: 670px;
	display: inline;
	margin-top: 15px;
	margin-right: 20px;
}
.layoutTypeA #subs {
	float: left;
	width: 200px;
	display: inline;
	margin-top: 15px;
	margin-left: 20px;
}

/* type Full */
.layoutTypeFull #contents {
	width: 900px;
	margin: 15px 20px 0 20px;
}

/* type Popup */
.layoutTypePopup { background: none; }
.layoutTypePopup #header {
	width: 670px;
	margin: 0 auto;
}
.layoutTypePopup #contents {
	width: 670px;
	margin: 20px auto 0 auto;
}
.layoutTypePopup #footer {
	width: 670px;
	height: auto;
	margin: 50px auto 0 auto;
	padding: 20px 0;
	border-top: 1px solid #D4D4D4;
	background: none;
}
.layoutTypePopup #footer .copyright {
	margin: 0;
	text-align: center;
}
.layoutTypePopup #footer .copyright img { margin: 0 auto; }

/* ----------------------------------------------- */


/* モジュール
-------------------------------------------------- */
/* 00. Font Size & Line Break
-------------------------------------------------- */
/* Font Size */
.fxx { font-size: 125.0%!important; }
.fxl { font-size: 112.5%!important; }
.fx  { font-size: 100.0%!important; }
.fl  { font-size:  87.5%!important; }
.fm  { font-size:  75.0%!important; }
.fs  { font-size:  62.5%!important; }

p,
ul,
ol,
dl,
th,
td { font-size: 87.5%; }

ul li,
ol li,
dl dt,
dl dd,
li p,
li ul,
li ol,
li dl,
dt p,
dt ul,
dt ol,
dt dl,
dd p,
dd ul,
dd ol,
dd dl,
th p,
th ul,
th ol,
th dl,
td p,
td ul,
td ol,
td dl,
td th,
td td { font-size: 100%; }

/* Line Break */
.lb00 { margin-top:  0px!important; }
.lb03 { margin-top:  3px!important; }
.lb05 { margin-top:  5px!important; }
.lb10 { margin-top: 10px!important; }
.lb15 { margin-top: 15px!important; }
.lb20 { margin-top: 20px!important; }
.lb30 { margin-top: 30px!important; }
.lb40 { margin-top: 40px!important; }
.lb50 { margin-top: 50px!important; }

/* ----------------------------------------------- */
/* 00. Text
-------------------------------------------------- */
/* weight */
.accent { font-weight: bold; }
.normal { font-weight: normal; }

/* indent */
.idtKome {
	margin-left: 1em;
	text-indent: -1em;
}
.idtKomeNum dt {
	width: 2.0em;
	line-height: 1.5em;
}
.idtKomeNum dd {
	margin-top: -1.5em;
	padding-left: 2.0em;
	line-height: 1.5em;
}
.idtAst dt {
	width: 1em;
	line-height: 1.5em;
}
.idtAst dd {
	margin-top: -1.5em;
	padding-left: 1em;
	line-height: 1.5em;
}
.idtAstNum dt {
	width: 1.5em;
	line-height: 1.5em;
}
.idtAstNum dd{
	margin-top: -1.5em;
	padding-left: 1.5em;
	line-height: 1.5em;
}
.idtKakkoNum dt {
	width: 2.0em;
	line-height: 1.5em;
}
.idtKakkoNum dd {
	margin-top: -1.5em;
	padding-left: 2.0em;
	line-height: 1.5em;
}

/* color */
.tcRed01 { color: #FF3333; }
.tcAsh01 { color: #666666; }

/* ----------------------------------------------- */
/* 00. Margin
-------------------------------------------------- */
.mgl05 { margin-left:  5px!important; }
.mgl10 { margin-left: 10px; }
.mgl15 { margin-left: 15px; }
.mgl20 { margin-left: 20px; }

.mgr05 { margin-right:  5px; }
.mgr10 { margin-right: 10px; }
.mgr15 { margin-right: 15px; }
.mgr20 { margin-right: 20px; }

/* ----------------------------------------------- */
/* 00. Module Set
-------------------------------------------------- */
.modSet .msL {
	float: left;
	display: inline;
}
.modSet .msR {
	float: right;
	display: inline;
}
.modSet .msN { overflow: hidden; }

.modSet .imgL {
	float: left;
	display: inline;
	margin: 0 10px 10px 0;
}
.modSet .imgR {
	float: right;
	display: inline;
	margin: 0 0 10px 10px;
}

/* grid */
.grid120 { width: 120px!important; }
.grid180 { width: 180px!important; }
.grid200 { width: 200px!important; }
.grid325 { width: 325px!important; }
.grid450 { width: 450px!important; }

/* ----------------------------------------------- */
/* 00. List & Icon
-------------------------------------------------- */
/* Margin */
.liLb03,
.liLb05,
.liLb10 { overflow: hidden; }
.liLb03 ul { margin-top: -3px; }
.liLb03 li { margin-top: 3px; }
.liLb05 ul { margin-top: -5px; }
.liLb05 li { margin-top: 5px; }
.liLb10 ul { margin-top: -10px; }
.liLb10 li { margin-top: 10px; }

/* Arrow */
.liArr01 li,
.iArr01 {
	padding-left: 9px;
	background: url(/img/common/icn_arrow_01.gif) no-repeat 0 0.5em;
}
.liArr02 li,
.iArr02 {
	padding-left: 15px;
	background: url(/img/common/icn_arrow_02.gif) no-repeat 0 0.45em;
}
.iPrev01 {
	padding-left: 15px;
	background: url(/img/common/icn_prev_01.gif) no-repeat 0 0.45em;
}

/* Dot */
.liDot01 li {
	padding-left: 12px;
	background: url(/img/common/icn_dot_01.gif) no-repeat 4px 0.55em;
}

/* Decimal */
.decimal { list-style-type:decimal; }
.decimal li {
	margin-left: 2em;
	padding: 0;
	background: none;
}

/* inline */
.inlineList li { display: inline; }

/* inline block */
.iBlk {
	display: -moz-inline-box;
	display: inline-block;
}

/* date list */
.datelist dt { line-height: 1.5em; }
.datelist dd {
	margin-top: -1.5em;
	padding-left: 9.0em;
	line-height: 1.5em;
}

/* officer list */
.officerList dt {
	width: 9em;
	line-height: 1.5em;
}
.officerList dd {
	margin-top: -1.5em;
	padding-left: 9.0em;
	line-height: 1.5em;
}

/* ----------------------------------------------- */
/* 00. Table
-------------------------------------------------- */
/* basic */
.basicTbl01 { width: 100%; }
.basicTbl01 table {
	width: 100%;
	border-collapse: separate;
    border-spacing: 0;
	border-top: 1px solid #D4D4D4;
	border-left: 1px solid #D4D4D4;
}
.basicTbl01 table thead th,
.basicTbl01 table tbody th,
.basicTbl01 table tbody td {
	border-bottom: 1px solid #D4D4D4;
	border-right: 1px solid #D4D4D4;
}
.basicTbl01 table thead th {
	background-color: #F0EBDF;
	text-align: center;
}
.basicTbl01 table tbody th {
	background-color: #F9F7F2;
	text-align: left;
	font-weight: normal;
}
.basicTbl01 table tbody td {
	background-color: #FFFFFF;
	text-align: left;
}
.basicTbl01 table .tm { padding: 6px 7px 5px 7px; }

/* basic1 */
.basicTbl011 { width: 100%; }
.basicTbl011 table {
	width: 100%;
	border-collapse: separate;
    border-spacing: 0;
	border-top: 0px solid #D4D4D4;
	border-left: 0px solid #D4D4D4;
}
.basicTbl011 table thead th,
.basicTbl011 table tbody th,
.basicTbl011 table tbody td {
	border-bottom: 0px solid #D4D4D4;
	border-right: 0px solid #D4D4D4;
}
.basicTbl011 table thead th {
	background-color: #F0EBDF;
	text-align: center;
}
.basicTbl011 table tbody th {
	background-color: #F9F7F2;
	text-align: left;
	font-weight: normal;
}
.basicTbl011 table tbody td {
	background-color: #FFFFFF;
	text-align: left;
}
.basicTbl011 table .tm { padding: 6px 7px 5px 7px; }


/* - width */
.per1a { width: 1%; }
.per10 { width: 10%; }
.per12 { width: 12%; }
.per15 { width: 15%; }
.per20 { width: 20%; }
.per24 { width: 24%; }
.per25 { width: 25%; }
.per30 { width: 30%; }
.per33 { width: 33.3%; }
.per40 { width: 40%; }
.per45 { width: 45%; }
.per50 { width: 50%; }
.per60 { width: 60%; }
.per70 { width: 70%; }
.per80 { width: 80%; }
.per90 { width: 90%; }
.wAuto { width: auto; }

/* ----------------------------------------------- */
/* 00. Form
-------------------------------------------------- */
.imeA { ime-mode: active; }
.imeD { ime-mode: disabled; }

.iptTxt {
	height: 16px;
	padding: 1px;
	border: 1px solid #BCBCBC;
	font-size: 12px;
	line-height: 1.2;
}
textarea.iptTxt { height: auto; }

/* ----------------------------------------------- */
/* 00. Align
-------------------------------------------------- */
.alL { text-align: left!important; }
.alR { text-align: right!important; }
.alC { text-align: center!important; }
.vaT { vertical-align: top!important; }
.vaB { vertical-align: bottom!important; }
.vaM { vertical-align: middle!important; }

.alC a { margin: 0 auto; }
.alC img {
	margin: 0 auto;
	vertical-align: bottom;
}
.alC a img { margin: 0; }

/* ----------------------------------------------- */
/* 00. Box
-------------------------------------------------- */
/* Rect */
.boxRect01 {
	padding: 8px;
	border: 2px solid #D4D4D4;
	background: #FFFFFF;
}
.boxRect02 {
	padding: 8px;
	border: 2px solid #FF6666;
	background: #FFCC99;
}

.bgRect01 {
	padding: 15px;
	background: #F0F0F0;
}

/* ----------------------------------------------- */
/* 00. section
-------------------------------------------------- */
.leadtxt {
	margin-top: 30px;
	padding-left: 10px;
	padding-right: 10px;
}

.section { margin-top: 30px; }
.section .section { margin-top: 20px; }
.section .lower {
	margin-top: 15px;
	padding-left: 10px;
	padding-right: 10px;
}

/* ----------------------------------------------- */
/* 00. title
-------------------------------------------------- */
.ttlPage {
	position: relative;
	z-index: 1;
	display: block;
	padding: 30px;
	border: 1px solid #cdcdcd;
	border-radius: 5px;
	box-sizing: border-box;
	letter-spacing: 0.05em;
	line-height: 1.2;
	font-weight: bold;
	font-size: 24px;
}
.ttlPage::after {
	content: "";
	position: absolute;
	top: 4px;
	left: 4px;
	bottom: 4px;
	z-index: 1;
	display: block;
	width: 5px;
	background-color: #399977;
}

.ttlMod01 {
	padding: 7px 10px 6px 10px;
	border-top: 2px solid #4A997D;
	border-bottom: 1px solid #4A997D;
	background: url(/img/common/bg_ttl_01.gif) repeat-x left bottom;
}
.ttlMod02 {
	padding: 0 5px 5px 5px;
	background: url(/img/common/bg_ttl_02_btm.gif) repeat-x left bottom;
}
.ttlMod02 .ttl {
	padding-left: 10px;
	background: url(/img/common/bg_ttl_02_icn.gif) no-repeat 0 0.1em;
}

/* ----------------------------------------------- */
/* 00. img
-------------------------------------------------- */
.img-border {
	padding: 1px;
	border: 1px solid #dcdcdc;
	background-color: #ffffff;
	box-sizing: border-box;
}
.img-border img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
.img-border.w100 {
	width:100px;
}
.img-border.w120 {
	width:120px;
}
.img-border.w150 {
	width:150px;
}

/* ----------------------------------------------- */
/* 10. 個別箇所
-------------------------------------------------- */
/* 環境保護と紙のリサイクル */
.environment01 { text-align: center; }
.environment01 .mapping {
	position: relative;
	width: 576px;
	height: 359px;
	margin: 0 auto;
}
.environment01 .mapping li { position: absolute; }
.environment01 .mapping .li01 {
	top: 110px;
	left: 112px;
	width: 133px;
}
.environment01 .mapping .li02 {
	top: 110px;
	left: 350px;
	width: 101px;
}
.environment01 .mapping .li03 {
	top: 260px;
	left: 448px;
	width: 117px;
}
.environment01 .mapping .li04 {
	top: 315px;
	left: 224px;
	width: 133px;
}
.environment01 .mapping .li05 {
	top: 260px;
	left: 2px;
	width: 146px;
}

/* 機密書類処理 */
.secret01 { text-align: center; }
.secret01 ul {
	margin-left: -50px;
	overflow: hidden;
}
.secret01 li {
	display: -moz-inline-block;
	display: inline-block;
	width: 140px;
	margin-left: 50px;
	text-align: left;
	vertical-align: top;
}


/* お知らせ */
.information01 .datelist { margin: 30px 10px 0 10px; }
.information01 .datelist dl {
	margin-top: -10px;
	overflow: hidden;
}
.information01 .datelist dt {
	margin-top: 10px;
	font-weight: bold;
}
.information01 .datelist dd {
	padding-bottom: 11px;
	background: url(/img/common/line_dot_01.gif) repeat-x left bottom;
}
.information01 .datelist dd img { vertical-align: top; }
.information01 .datelist .msR { margin-left: 10px; }


/* 特定商取引法について */
.tokusyo01 dt {
	width: 8em;
	line-height: 1.5em;
}
.tokusyo01 dd {
	margin: -1.5em 0 0 8em;
	line-height: 1.5em;
}


/* サイトマップ */
.sitemap .column {
	margin-left: -15px;
	overflow: hidden;
}
.sitemap .column .col {
	float: left;
	width: 290px;
	display: inline;
	margin-left: 15px;
}


/* SDGsへの取り組み */
.company-sdgs-introduction {
	margin: 30px 0 50px 0;
}
.company-sdgs-introduction::after {
	content: "";
	display: block;
	clear: both;
}
.company-sdgs-introduction__content {
	float: left;
	width: 385px;
}
.company-sdgs-introduction__image {
	float: right;
	width: 254px;
	margin-top: 8px;
	margin-right: 10px;
}
.company-sdgs-introduction-text-main {
	font-weight: bold;
	font-size: 24px;
	line-height: 1.75;
}
.company-sdgs-introduction-text-sub {
	margin-top: 28px;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.7;
}

/* SDGs 貢献・取り組みの事例 */
.company-sdgs-case-goal-list {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
}
.company-sdgs-case-goal-list-item {
	width: calc(600px / 6);
	margin-left: 10px;
}
.company-sdgs-case-goal-list-item:nth-child(6n + 1) {
	margin-left: 0;
}
.company-sdgs-case-goal-list-item-image {
	display: block;
	width: 100px;
	height: auto;
}


/* ----------------------------------------------- */
/* 99. Clearfix
-------------------------------------------------- */
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* ----------------------------------------------- */