@charset "utf-8";

/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }

/* base */
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { -webkit-font-smoothing: auto; -webkit-font-feature-settings: 'palt'; font-feature-settings: 'palt'; word-wrap: break-word; overflow-wrap: break-word; font-kerning: normal; -webkit-font-kerning: normal; font-size: 16px; font-family: YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Helvetica, Arial; text-align: center; letter-spacing: 0.04em; margin: 0px; box-sizing: border-box; background-color: #176F3C; color: #333; padding: 0em; }
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: #176F3C; color: #FFF; }
::-moz-selection {background: #176F3C; }

/* link */
a:link, a:visited, a:active { color: #176F3C; text-decoration: none; }
a:hover { color: #176F3C; text-decoration: none; padding-bottom: 0.1em; -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease; }
a:hover img { }

/* clear */
.clear { clear: both; }
.cbox { zoom: 100%; }
.cbox:after { content: " "; clear: both; height: 0; display: block; visibility: hidden; }

/* options */
.r { border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

/* wordpress */
#contents .wp-caption.alignleft { float: left; }
#contents .wp-caption.alignleft img { }
#contents .wp-caption.alignleft .wp-caption-text { font-size: 0.8em; }
#contents .wp-caption.alignright { float: right; }
#contents .wp-caption.alignright img { }
img.centered { display: block; margin-left: auto; margin-right: auto; }
img.alignright { padding: 0px; margin: 0 0 20px 2%; display: inline; max-width: 47%; }
img.alignleft { padding: 0px; margin: 0 20px 2% 0; display: inline; max-width: 47%; }
.aligncenter { margin-top: 15px; margin-bottom: 15px; margin-right: auto; margin-left: auto; }
.alignright { float: right; margin-bottom: 20px; margin-left: 20px; }
.alignleft { float: left; margin-bottom: 20px; margin-right: 20px; }
img.aligncenter { display: block; }

/* youtube */
.youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

/* wrapper */
#wrapper { background-color: #FFF; min-width: 1000px; }
#wrapper.other { padding-top: 6.5em; }
#wrapper.home { padding-top: 6em; }
#wrapper.company, #wrapper.works, #wrapper.csr, #wrapper.service { padding-top: 10.5em; }

/* common */
#contents i { margin-right: 0.4em; }
.in, #footer footer { display: block; margin: auto; width: 75%; overflow: hidden; position: relative; text-align: left; }
#main .gj { padding-left: 30%; }
.margin_2 { margin-bottom: 3em; }
#main h3.mark { padding-left: 1em; border-left-width: 5px; border-left-style: solid; border-left-color: #176F3C; }
#main p { line-height: 2em; margin-bottom: 1.5em; }
#main ol li { margin-bottom: 1em; list-style-position: outside; list-style-type: decimal; line-height: 2em; }
#main strong { font-weight: bold; color: #176F3C; }
#main .att { float: right; width: 60%; margin-bottom: 1em; margin-left: 2em; font-size: 0.8em; }
#main .att img { margin-bottom: 1em; }
#main .att.att_s { width: 15%; }
#main .att.att_m { width: 30%; }
#main .att.att_mm { width: 50%; }
.csr_mark { width:7%; margin:0 0 0 1em; }

/* bn */
#bn { clear: both; overflow: hidden; width: 80%; padding:5em 0; margin:0 auto 0 auto; margin:auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#bn .bn_box { }
#bn .bn_box h4 { padding:0.75em 0 0 0; margin:0 0 1.25em 0; color: #176F3C; font-size: 1em; font-weight: bold; position: relative; display:block; border-top:solid 1px #176F3C; border-left:solid 1px #176F3C; border-right:solid 1px #176F3C; }
#bn .bn_box.bn_group { width:100%; margin:0 0 3em 0; }
#bn .bn_box.bn_teikei { width:19%; }
#bn .bn_box.bn_booth { width:19%; }
#bn .bn_box.bn_support { width:39.25%; }
#bn ul { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: center; }
#bn .bn_box.bn_group ul li { width: 19%; margin-bottom:1em; margin-right:1.25%; }
#bn .bn_box.bn_group ul li:nth-child(5n) { margin-right:0; }
#bn .bn_box.bn_teikei ul li { width: 100%; }
#bn .bn_box.bn_booth ul li { width: 100%; }
#bn .bn_box.bn_support ul { justify-content: space-between; }
#bn .bn_box.bn_support ul li:nth-child(1) { width: 48.5%; }
#bn .bn_box.bn_support ul li:nth-child(2) { width: 48.5%; }

/* header */
#header { background-color: #176F3C; overflow: hidden; position: fixed; left: 0px; top: 0px; width: 100%; z-index: 99998; min-width: 1280px; }
#header header { margin: auto; width: 90%; position: relative; text-align: left; clear: both; }
#header header h1 { float: left; width: 30%; padding-top: 1.5em; line-height: 1em; margin-right: 4em; }
#header header ul { overflow: hidden; }
#header header li a { color: #FFF; float: left; line-height: 1em; font-size: 1em; font-weight: bold; display: block; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-top: 2.75em; padding-bottom: 2.75em; position: relative; }
#header header li a:hover, .service #header header li:nth-child(1) a, .works #header header li:nth-child(2) a, .company #header header li:nth-child(3) a, .csr #header header li:nth-child(4) a, .recruit #header header li:nth-child(5) a, .inquiry #header header li:nth-child(7) a { color: #176F3C; background-color: #FFF; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-top: 2.75em; padding-bottom: 2.75em; }
#header header li a .line { border-right-width: 1px; border-right-style: solid; border-right-color: #FFF; padding-right: 1.3em; padding-left: 1.3em; }
#header header li a .line_cover { display: block; position: absolute; left: -2px; z-index: 9999; top: 0px; width: 100%; height: 6.5em; border-left-width: 2px; border-left-style: solid; border-left-color: transparent; }
#header header li a .line_cover:hover, .service #header header li:nth-child(1) a .line_cover, .works #header header li:nth-child(2) a .line_cover, .company #header header li:nth-child(3) a .line_cover, .csr #header header li:nth-child(4) a .line_cover, .recruit #header header li:nth-child(5) a .line_cover, .inquiry #header header li:nth-child(7) a .line_cover { z-index: 9999; border-top-color: #FFF; border-right-color: #FFF; border-bottom-color: #FFF; border-left-color: #FFF; }

/* subnavi */
#subnavi { position: fixed; width: 100%; min-width: 1280px; left: 0px; top: 6.5em; z-index: 9999; background-color: #FFF; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; }
#subnavi ul { text-align: center; width: 75%; margin: auto; display:flex; justify-content: center; }
#subnavi ul li {  }
#subnavi ul li a { white-space: nowrap; display:block; padding-right: 0em; line-height: 1em; font-weight: bold; padding-top: 1.5em; padding-bottom: 1.5em; padding-left: 0em; margin: 0px; position: relative; }
#subnavi ul li a .line { border-right: solid 1px #176F3C; padding-right: 1.3em; padding-left: 1.3em; margin: 0px; }
#subnavi ul li:last-child a .line { border-right: none; }
#subnavi ul li a .line_cover { position: absolute; left: -1px; top: 0px; width: 100%; border-left-width: 1px; border-left-style: solid; border-left-color: transparent; z-index: 9999; height: 4em; }
#subnavi ul li a:hover, .service_01 #subnavi ul li:nth-child(1) a, .service_02 #subnavi ul li:nth-child(2) a, .service_03 #subnavi ul li:nth-child(3) a, .service_04 #subnavi ul li:nth-child(4) a, .service_05 #subnavi ul li:nth-child(5) a, .service_06 #subnavi ul li:nth-child(6) a, .service_07 #subnavi ul li:nth-child(7) a, .service_08 #subnavi ul li:nth-child(8) a, .company_01 #subnavi ul li:nth-child(1) a, .company_02 #subnavi ul li:nth-child(2) a, .company_03 #subnavi ul li:nth-child(3) a, .company_04 #subnavi ul li:nth-child(4) a, .company_05 #subnavi ul li:nth-child(5) a, .csr_01 #subnavi ul li:nth-child(1) a, .csr_02 #subnavi ul li:nth-child(2) a, .csr_03 #subnavi ul li:nth-child(3) a, .works_01 #subnavi ul li:nth-child(1) a, .works_02 #subnavi ul li:nth-child(2) a, .works_03 #subnavi ul li:nth-child(3) a, .works_04 #subnavi ul li:nth-child(4) a, .works_05 #subnavi ul li:nth-child(5) a, .works_06 #subnavi ul li:nth-child(6) a, .works_07 #subnavi ul li:nth-child(7) a, .works_08 #subnavi ul li:nth-child(8) a { margin: 0px; padding-right: 0px; padding-left: 0px; color: #FFF; background-color: #176E3C; }
#subnavi ul li a .line_cover:hover, .service_01 #subnavi ul li:nth-child(1) a .line_cover, .service_02 #subnavi ul li:nth-child(2) a .line_cover, .service_03 #subnavi ul li:nth-child(3) a .line_cover, .service_04 #subnavi ul li:nth-child(4) a .line_cover, .service_05 #subnavi ul li:nth-child(5) a .line_cover, .service_06 #subnavi ul li:nth-child(6) a .line_cover, .service_07 #subnavi ul li:nth-child(7) a .line_cover, .service_08 #subnavi ul li:nth-child(8) a .line_cover, .company_01 #subnavi ul li:nth-child(1) a .line_cover, .company_02 #subnavi ul li:nth-child(2) a .line_cover, .company_03 #subnavi ul li:nth-child(3) a .line_cover, .company_04 #subnavi ul li:nth-child(4) a .line_cover, .company_05 #subnavi ul li:nth-child(5) a .line_cover, .csr_01 #subnavi ul li:nth-child(1) a .line_cover, .csr_02 #subnavi ul li:nth-child(2) a .line_cover, .csr_03 #subnavi ul li:nth-child(3) a .line_cover, .works_01 #subnavi ul li:nth-child(1) a .line_cover, .works_02 #subnavi ul li:nth-child(2) a .line_cover, .works_03 #subnavi ul li:nth-child(3) a .line_cover, .works_04 #subnavi ul li:nth-child(4) a .line_cover, .works_05 #subnavi ul li:nth-child(5) a .line_cover, .works_06 #subnavi ul li:nth-child(6) a .line_cover, .works_07 #subnavi ul li:nth-child(7) a .line_cover, .works_08 #subnavi ul li:nth-child(8) a .line_cover { border-left-color: #176F3C; color: #FFF; }

/* lang */
#header .lang { color: #FFF; float: right; position: absolute; top: 2.2em; right: 0px; }
#header .lang div { float: left; font-size: 1em; line-height: 1em; }
#header .lang a { color: #FFF; float: left; font-size: 0.8em; line-height: 1em; display: block; border: 1px solid #FFF; padding-top: 0.3em; padding-right: 0.6em; padding-bottom: 0.3em; padding-left: 0.6em; }
#header .lang div.jp a { border-right-style: none; }
#header .lang a:hover { padding-top: 0.3em; padding-right: 0.6em; padding-bottom: 0.3em; padding-left: 0.6em; color: #16713D; background-color: #FFF; }
#header .lang .jp a { color: #16713D; background-color: #FFF; }

/* slide */
#slide { overflow: hidden; position: relative; background-color: #16703C; clear: both; }

/* pankuzu */
#pankuzu { list-style: none; overflow: hidden; color: white; font: 1em; margin: 0; background-color: #F0F0F0; clear: both; }
#pankuzu ul { text-align: left; margin: auto; width: 75%; overflow: hidden; padding: 0px; }
#pankuzu li { float: left; padding: 0px; background-color: #fff; }
#pankuzu li:last-child { background-color: #F0F0F0; }
#pankuzu li a { display: block; padding-right: 1em; margin-right: 3.1em; position: relative; text-decoration: none; color: #0F703A; line-height: 3em; font-weight: bold; background-color: #F0F0F0; }
#pankuzu li a:last-of-type { margin-right: 3.1em; }
#pankuzu li a:before { content: ""; display: block; width: 0; height: 0; position: absolute; top: 0; left: -3em; border: 1.5em solid transparent; border-color: #F0F0F0; border-left-color: transparent; }
#pankuzu li a:after { content: ""; display: block; width: 0; height: 0; position: absolute; top: 0; right: -3em; border: 1.5em solid transparent; border-left-color: #F0F0F0; }
#pankuzu li:first-child a { padding-left: 1em; }
#pankuzu li:first-child a:before { display: none; }
#pankuzu li:last-child a { background-color: #FFF; }
#pankuzu li a:hover { color: #FFFFFF; text-decoration: none; padding-bottom: 0px; background-color: #0F703A; }
#pankuzu li:last-child a:hover:before,#pankuzu li a:hover:before { border-left-color: transparent; border-top-color: #0F703A; border-right-color: #0F703A; border-bottom-color: #0F703A; }
#pankuzu li:last-child a:hover:after,#pankuzu li a:hover:after { border-left-color: #0F703A }
#pankuzu li:last-child a:before { border-right-color: #FFF; border-bottom-color: #FFF; border-left-color: transparent; border-top-color: #FFF; }
#pankuzu li:last-child a:after { border-left-color: #FFF; }

/* footer */
#footer { background-color: #176F3C; padding-bottom: 2em; color: #FFF; }
#footer footer a { color: #FFF; }
#footer footer ul { margin-bottom: 4em; overflow: hidden; padding-top: 3em; }
#footer footer li { margin-right: 3em; float: left; line-height: 1.6em; white-space: nowrap; }
#footer footer li:last-child { margin-right: 0px; }
#footer footer li dt { font-size: 1.2em; font-weight: bold; margin-bottom: 0.5em; }
#footer footer li dd { font-size: 0.9em; line-height: 1.8em;  }
#footer footer .flogo { float: left; width: 30%; margin-right: 3em; }
#footer footer .flogo_cp { display: flex; align-items: center; line-height: 1em; padding-top: 0.2em; }
#footer footer .flogo_cp .instagram { font-size: 2.5em; line-height: 1em; margin:0 0 0 1em;  }
#footer footer .flogo_cp .youtubeicon { font-size: 2.4em; line-height: 1em; margin:0 0 0 0.75em;  }
#footer footer .pagetop a { font-size: 1.5em; line-height: 3em; background-color: #176F3C; height: 3em; width: 3em; color: #FFFFFF; right: 0px; display: block; text-align: center; position: fixed; bottom: 0px; }
#footer footer .copyright { font-size: 0.7em; }

/* top */
#contents .service { padding-bottom: 2.5em; overflow: hidden; text-align: left; }
#contents .service ul.pc { margin: auto; width: 75%; }
#contents .service li { float: left; width: 25%; margin-bottom: 1px; overflow: hidden; position: relative; height: 16em; }
#contents .service li .thumb { height:10em; object-fit: cover; font-family: 'object-fit: cover;' border-right-width: 1px; border-right-style: solid; border-right-color: #FFF; }
#contents .service li .thumb img { width:100%; height:100%; }
#contents .service li .box { position: absolute; left: 0px; top: 10em; transition:all 0.5s; }
#contents .service li a:hover .box { top: 2em; }
#contents .service li .title { background-color: #176F3C; color: #FFF; font-size: 1.4em; height: 4.5em; padding-top: 1em; padding-right: 1em; padding-left: 1em; line-height: 1.2em; border-right-width: 1px; border-right-style: solid; border-right-color: #FFF; display: block; }
#contents .service li .ex { display: block; background-color: #FFF; padding: 1em; }
#wrapper #contents .service section .service_list { display: none; }

/* l4 */
#contents .l4 { padding-bottom: 2em; overflow: hidden; width: 76%; margin: auto; text-align: left; }
#contents .l4 li { width:22.75%; margin:0 3% 2em 0; float:left; }
#contents .l4 li:nth-child(4n) { margin:0 0 2em 0; }
#contents .l4 li:nth-child(4n+1) { clear:both; }
#contents .l4 li .thumb { margin-bottom: 0.75em; }
#contents .l4 li .date { font-size: 1em; margin-bottom: 0.5em; vertical-align: middle; }
#contents .l4 li .date span { border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; font-size: 0.8em; color: #FFF; background-color: #176F3C; margin-left: 1em; padding-top: 0.3em; padding-right: 1em; padding-bottom: 0.3em; padding-left: 1em; vertical-align: middle; line-height: 1em; }
#contents .l4 li .title { font-size: 1em; font-weight: bold; margin-bottom: 0.5em; }
#contents .l4 li .ex { font-size: 0.8em; }
#contents .l4 li .tags { display:100%; }
#contents .l4 li .tags ul { overflow: hidden; }
#contents .l4 li .tags li { float:left; width:auto; margin:0.25em 0.5em 0 0; }
#contents .l4 li .tags li a { font-size: 0.7em; line-height: 1.6em; padding:0 0.4em; display:block; border:solid 1px #176F3C; background-color: #fff; }
#contents .l4 li .tags li a:hover { background-color:#176F3C; color:#fff; }

/* open-btn */
.open-btn { cursor:pointer; display:inline-block; background-color:#176F3C; color:#fff; font-weight: bold; padding:1em 2em; margin:0 auto 6em auto; }
.open-btn:hover { display:inline-block; background-color:#fff; color:#176F3C; padding:1em 2em; margin:0 auto 6em auto; }

/* index */
#main .index.other { padding-top: 2em; clear: both; }
#main .index li { float: left; width: 23.125%; margin-right: 2.5%; margin-bottom: 2em; }
#main .index li:nth-child(4n) { margin-right: 0px; }
#main .index li a:hover dd.title { background-color: #176F3C; color: #FFF; }
#main .index li dd.title { content: "\f054"; background-color: #F0F0F0; font-size: 0.9em; letter-spacing: 0em; font-weight: bold; padding-right: 0.2em; overflow: hidden; line-height: 3em; }
#main .index li dd.title i { color: #FFF; background-color: #176F3C; margin-right: 0.9em; text-align: center; padding-top: 1em; padding-right: 0.8em; padding-bottom: 1em; padding-left: 1em; float: left; }
#main .index li dd.ex { color: #000; padding-top: 1em; padding-left: 4em; font-size: 0.9em; line-height: 1.6em; }
#main .index li dd.title.title_2 { line-height: 1.6em; }

/* works */
#contents .works { background-color: #F2F2F2; }
#contents .lead { font-size: 1.5em; text-align: center; padding-top: 0.5em; padding-bottom: 0.5em; border: 1px solid #15703D; color: #15703D; margin-bottom: 1.5em; }
#contents .works .works--banner { display:flex; justify-content: space-between; }
#contents .works .works--banner a { display:block; width:49%; }
#contents .works .works--banner a:hover { padding:0; }
#contents .works span.link { font-family: Helvetica, Arial, YuGothic, "Yu Gothic", 游ゴシック, 游ゴシック体, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.1em; line-height: 1em; font-weight: 700; margin: 3em auto 1.5em auto; }
#contents .works_header {  }
#contents .works #tag_cloud { position: fixed; top:15em; right:0; width:10%; }
#contents .works #tag_cloud h2 { font-size: 1em; line-height: 1em; padding:0 1em; margin:0 0 1em 0; border-left:solid 1px #15703D; border-right:solid 1px #15703D; display: inline-block; }
#contents .works #tag_cloud li { width:auto; margin:0 0 0.2em 0; }
#contents .works #tag_cloud li a { font-size: 0.7em; line-height: 1.6em; padding:0 0.4em; display:inline-block; border:solid 1px #176F3C; background-color: #fff; }
#contents .works #tag_cloud li a:hover { background-color:#176F3C; color:#fff; }

/* drop */
#contents ul.drop { border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#contents ul.drop li { margin-bottom: 2em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; padding: 0em; margin-top: 0px; margin-right: 0px; margin-left: 0px; }
#contents ul.drop li h4 { overflow: hidden; color: #176F3C; margin: 0px; padding: 0em; }
#contents ul.drop li p { margin-top: 0px; margin-bottom: 0px; padding: 2em; }
#contents ul.drop a { font-weight: bold; }
#contents ul.drop span { display: block; background-repeat: no-repeat; font-weight: bold; cursor: pointer; width: auto; float: left; padding: 1em; }
#contents ul.drop p { display: none; }
#contents ul.drop > li { list-style: none; margin: 0; position: relative; padding: 0px; }
#contents ul.drop > li > h4 span:after { content: "＋"; color: #FFF; background-color: #176F3C; padding: 0.5em; font-size: 0.9em; line-height: 1em; position: absolute; top: 1em; right: 1em; }
#contents ul.drop > li > h4 span.open:after { content: "−"; float: right; }
#contents ul.drop > li > p { border: none; font-size: 0.9em; line-height: 2em; }

/* contents_sample */
#contents_sample { margin:auto; width:75%; }

/* main */
#main { margin-bottom: 3em; }
#main .l1 { float: left; width: 25%; }
#main .l1 h2 { font-weight: normal; margin: 0px; padding: 0px; }
#main .l1 h3 { color: #176F3C; font-size: 1.3em; font-weight: bold; }
#main .l1 .archiveNav { margin:2rem 0; }
#main .l1 .archiveNav select { width:80%; display:block; }
#main .l1 .archiveNav h3 { width:80%; background-color: #eee; font-size: 1.2em; line-height: 1em; margin:3em 0 1.5em 0; padding:0.75em 1em; }

#main .l2_left { float: left; width: 48%; }
#main .l2_right { float: right; width: 42%; }
#main .l3 { float: right; width: 75%; }
#main .l3 h3 { font-size: 1.4em; line-height: 1em; font-weight: bold; color: #176F3C; margin-bottom: 1.5em; margin-top: 3em; clear: both; }
#main .l3 h3.first { margin-top: 0.5em; }
#main .l3 h3 .date { float: right; font-size: 0.7em; color: #000; font-weight: normal; }
#main .l3 h4 { font-weight: bold; color: #176F3C; margin-bottom: 1em; font-size: 1.2em; }
#main .l3.faq_l3 { width: 70%; }
#main .l3.faq_l4 { width: 35%; }
#main .l3 .date { font-size: 0.9em; margin-bottom: 2em; }
#main .l3 .wp-pagenavi { padding-top: 2em; padding-bottom: 2em; }
#main .l3 .wp-pagenavi i { margin: 0px; padding-top: 0px; padding-right: 0.5em; padding-bottom: 0px; padding-left: 0.5em; }
#main .l3 .entrybody p { margin-bottom: 1.5em; }
#main .l3 .entrybody p img { margin-top: 1em; margin-bottom: 1em; }
.entrybody img { max-width:100%; height:auto; }
#main .l3 .news_archive dl { margin: 0px; padding: 0px; }
#main .l3 .news_archive li { border-top: solid 1px #CCC; padding: 1em 0; }
#main .l3 .news_archive li dl { display:flex; justify-content: space-between; align-items: flex-start; }
#main .l3 .news_archive li dl dt { width: 70%; margin: 0; padding: 0; font-weight: bold; }
#main .l3 .news_archive li dl dd { width: auto; line-height: 1em; display:flex; justify-content: space-between; align-items: center; }
#main .l3 .news_archive li dl dd .date { border-left:solid 1px #CCC; margin: 0 0 0 1em; padding: 0 0 0 1em; }
#main .l3 .news_archive li dl dd .cat { background-color: #176F3C; color: #FFF; margin: 0 0 0 1em; padding: 0.4em; width:8em; font-size: 0.9em; line-height: 1em; text-align: center; }
#wrapper.news #main .l3 img { height: auto; width: auto; }

/* contents_header */
#contents #contents_header { position: relative; }
#contents #contents_header h2 { background-color: #176F3C; position: absolute; z-index: 999; color: #FFF; padding-top: 1em; padding-right: 2em; padding-bottom: 1em; padding-left: 2em; bottom: 0px; right: 12.5%; }
#contents h2 { padding-top: 1.5em; padding-bottom: 0.8em; overflow: hidden; font-size: 1.8em; color: #176F3C; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: bold; vertical-align: middle; }
#contents .service h2.in.top { padding-top: 1em; }
#contents h2 a { float: left; vertical-align: middle; white-space: nowrap; display: block; }
#contents h2 span.jp { font-size: 0.7em; font-weight: normal; white-space: nowrap; margin: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0.2em; vertical-align: middle; }
#contents h2 span.link { float: right; font-size: 0.6em; line-height: 1em; margin-top: 0.3em; }

/* box */
#main .box { background-color: #EFEFEF; padding: 3em; overflow: hidden; display: block; clear: both; }
#main .box .left { float: left; width: 45%; }
#main .box .right { float: right; width: 50%; }

/* links */
#main .links a { border-radius: 2em; -webkit-border-radius: 2em; -moz-border-radius: 2em; color: #FFF; background-color: #176F3C; display: inline-block; margin-bottom: 1.5em; padding-top: 1em; padding-right: 2em; padding-bottom: 1em; padding-left: 2em; font-size: 1em; line-height: 1em; font-weight: bold; }
#main .links a:hover { color: #176F3C; background-color: #FFF; }
#main .links.links_s a { font-size: 0.8em; padding-right: 0px; padding-left: 0px; }

/* service */
#main .service_sec .cap { font-size: 0.8em; display: block; margin-top: 1em; }
#main .service_sec .links a { display: block; text-align: center; margin-top: 0.5em; margin-bottom: 0px; }
#main .service_sec .links a:hover { background-color: #F0F0F0; }
#main .service_sec .links a i { margin-right: 1em; }
#main .service_sec .service_list_01 { clear: both; margin-bottom: 2em; overflow: hidden; }
#main .service_sec .service_list_01.service_list_01_line { margin-top: 2em; padding-top: 2em; padding-bottom: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; }
#main .service_sec .service_list_01 li { float: left; width: 23%; margin-right: 3%; padding-right: 3%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; }
#main .service_sec .service_list_01 li.none { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_01 li:nth-child(4n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-right: 0px; width: 22%; }
#main .service_sec .service_list_01 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_01 li dt { margin-bottom: 1em; }
#main .service_sec .service_list_01 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .service_list_01 li .cap_back { background-color: #DFEED4; padding: 2em; margin-top: 2em; font-size: 0.8em; }
#main .service_sec .service_list_01 li .strage_ex { font-size: 1.3em; line-height: 1.5em; color: #176F3C; text-align: center; }
#main .service_sec .service_list_01 .l2_left { float: left; width: 48%; margin-right: 4%; padding-right: 4%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; }
#main .service_sec .service_list_01 .l2_right { float: right; width: 48%; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-right: 0px; }
#main .service_sec .service_list_01 .sunpartner_1 { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-right: 0px; padding-right: 0px; }
#main .service_sec .service_list_01 .sunpartner_2 { margin: 0px; padding: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; width: 46%; float: right; }
#main .service_sec .service_list_02 { clear: both; margin-bottom: 2em; }
#main .service_sec .service_list_02 li { float: left; width: 22%; margin-right: 3%; position: relative; background-color: #F1F1F1; }
#main .service_sec .service_list_02 li:nth-child(4n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_02 li dt { margin-bottom: 1em; padding-top: 3em; padding-bottom: 3px; }
#main .service_sec .service_list_02 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .service_list_02 li dd.title { line-height: 1.5em; color: #FFF; background-color: #176F3C; position: absolute; left: 0px; top: 0px; font-weight: bold; padding-top: 0.3em; padding-right: 0.5em; padding-bottom: 0.3em; padding-left: 0.5em; }
#main .service_sec .service_list_02 li dd.ex { padding-bottom: 1em; }
#main .service_sec .service_list_03 { clear: both; overflow: hidden; margin-bottom: 2em; }
#main .service_sec .service_list_03 li { float: left; width: 30%; margin-right: 5%; position: relative; margin-bottom: 2em; }
#main .service_sec .service_list_03 li:nth-child(3n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_03 li:nth-child(3n+1) { clear: both; }
#main .service_sec .service_list_03 li dt { position: relative; margin-bottom: 1em; }
#main .service_sec .service_list_03 li dd { font-size: 0.9em; }
#main .service_sec .service_list_03 li .title { line-height: 1.5em; color: #FFF; background-color: #176F3C; position: absolute; left: 0px; font-weight: bold; padding-top: 0.3em; padding-right: 0.5em; padding-bottom: 0.3em; padding-left: 0.5em; bottom: 0px; font-size: 1.2em; }
#main .service_sec .service_list_03 li dd.ex { padding-bottom: 1em; }
#main .service_sec .service_list_03 li .cap_back_2 li { float: left; width: 50%; margin-bottom: 0.3em; padding: 0px; margin-top: 0px; margin-right: 0px; margin-left: 0px; }
#main .service_sec .service_list_04 li { margin-bottom: 2em; padding-bottom: 2em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; clear: both; overflow: hidden; }
#main .service_sec .service_list_04 li:last-child { margin-bottom: 0px; padding-bottom: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_04 li dt { float: left; width: 22%; margin-right: 3%; }
#main .service_sec .service_list_04 li dd.ex { width: 22%; margin-right: 3%; float: left; margin-bottom: 3em; }
#main .service_sec .service_list_04 li dd.photo { float: left; width: 47%; margin-bottom: 3em; }
#main .service_sec .service_list_05 { margin-top: 2em; padding-top: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#main .service_sec .service_list_05 li { width: 48.5%; padding-right: 4%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; float: left; }
#main .service_sec .service_list_05 li:last-child { margin: 0px; float: right; padding: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; width: 48%; }
#main .service_sec .service_list_05 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_05 li h4 { line-height: 1em; font-weight: bold; color: #FFF; background-color: #176F3C; text-align: center; padding: 1em; }
#main .service_sec .service_list_03 li .truck_title { font-size: 1.1em; font-weight: bold; color: #176F3C; margin-bottom: 0.5em; }
#main .service_sec .service_list_03 li .truck_eq { margin-bottom: 0.5em; color: #666; }
#main .service_sec .service_list_06 { clear: both; margin-bottom: 2em; overflow: hidden; }
#main .service_sec .service_list_06.service_list_06_line { margin-top: 2em; padding-top: 2em; padding-bottom: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; }
#main .service_sec .service_list_06 li { float: left; width: 30%; margin-right: 2.5%; padding-right: 2.5%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; }
#main .service_sec .service_list_06 li.none { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_06 li:nth-child(3n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-right: 0px; width: 30%; }
#main .service_sec .service_list_06 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_06 li dt { margin-bottom: 1em; }
#main .service_sec .service_list_06 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .box .paperboard_left { width: 27%; padding-right: 3%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; float: left; }
#main .service_sec .box .paperboard_right { float: right; width: 70%; }
#main .service_sec .box h3 { font-size: 1.3em; }
#main .service_sec .flow_ex { float: right; width: 65%; }
#main .service_sec .faq_list li { background-color: #F2F2F2; padding: 2em; margin-bottom: 2em; }
#main .service_sec .out_bn { margin-bottom: 3em; overflow: hidden; clear: both; }
#main .service_sec .out_bn li { float: left; width: 65%; }
#main .service_sec .out_bn li:last-child { float: right; width: 30%; }
#main .service_sec h3 { font-size: 1.6em; line-height: 2em; font-weight: bold; color: #176F3C; margin-bottom: 1em; }
#main .service_sec h4 { font-weight: bold; color: #176F3C; clear: both; margin-bottom: 1em; font-size: 1.2em; display: block; }
#main .cap_back_2 { background-color: #F2F2F2; margin-top: 1em; display: block; padding: 1em; overflow: hidden; font-size: 0.8em; letter-spacing: 0em; }
#main .attention_title { font-size: 2em; line-height: 1em; color: #176F3C; text-align: center; padding: 1.5em; border: 1px solid #176F3C; margin-top: 1em; margin-bottom: 1em; overflow: hidden; }
#main .works_category { margin-bottom: 3em; overflow: hidden; }
#main .works_category dt { float: left; font-weight: bold; color: #FFF; background-color: #176F3C; border: 1px solid #176F3C; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; margin-right: 1em; }
#main .works_category dd a { float: left; margin-right: 1em;border: 1px solid #176F3C; display: block; font-weight: bold; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; }
#main .works_category dd a:hover { color: #FFF; background-color: #176F3C; }
#main .service_sec .faq_list li dt { font-size: 1.5em; line-height: 7em; font-weight: bold; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; color: #176F3C; float: left; margin-right: 1em; padding-right: 1em; }
#main .service_sec .faq_list li { overflow: hidden; }
#main .service_sec .faq_list li strong { display: block; margin-bottom: 0.5em; }
#contents .bn_inquiry { padding-top: 3em; padding-bottom: 3em; }
#contents .bn_inquiry a { border: 1px solid #176F3C; width: 100%; display: block; margin: 0px; padding: 0px; font-size: 1.4em; line-height: 1em; font-weight: bold; }
#contents .bn_inquiry a i { border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; padding: 1em; font-size: 1.5em; line-height: 1em; }
#contents .bn_inquiry a:hover { color: #FFF; background-color: #176F3C; }
#contents .bn_inquiry a span { padding: 2em; }
#main .in .bn_inquiry a span.cap { font-size: 0.7em; }

/* contact */
#main .contact_ul { margin-bottom: 3em; overflow: hidden; }
#main .contact_ul li { float: left; width: 30%; margin-right: 5%; }
#main .contact_ul.office li { width: 48%; margin-right: 4%; }
#main .contact_ul li:last-child { margin-right: 0px; }
#main .contact_ul a { border-radius: 3em; -webkit-border-radius: 3em; -moz-border-radius: 3em; font-weight: bold; color: #FFF; background-color: #176F3C; padding: 1.5em; text-align: center; display: block; vertical-align: middle; line-height: 2em; }
#main .contact_ul a:hover { color: #176F3C; background-color: #F0F0F0; }
#main .contact_ul a i { font-size: 2em; vertical-align: middle; line-height: 1em; margin-right: 1em; }
#main .sec_contact { padding-top: 3em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; overflow: hidden; padding-bottom: 3em; }
#main .sec_contact h3 { font-size: 1.5em; font-weight: bold; margin-bottom: 1em; color: #176F3C; clear: both; }
#main .sec_contact h4 { font-size: 1.2em; color: #176F3C; font-weight: bold; margin-bottom: 1em; }
#main .contact_list li { float: left; width: 48%; margin-right: 4%; background-color: #F0F0F0; padding: 2em; margin-bottom: 2em; }
#main .contact_list li:nth-child(2n) { margin-right: 0px; }
#main .contact_list .contact_list_ex li { padding: 0px; margin-top: 1em; margin-right: 4%; margin-bottom: 0em; margin-left: 0px; float: left; width: 48%; line-height: 1.4em; }
#main .contact_list .contact_list_ex li:nth-child(2n) { margin-right: 0px; }
#main .contact_list .contact_list_ex.contact_list_ex_02 li { width: 100%; margin-right: 0px; }
#main .contact_list .contact_list_ex li dt { float: left; width: 55%; font-size: 0.9em; letter-spacing: 0em; }
#main .contact_list .contact_list_ex li dd { font-weight: bold; color: #176F3C; float: left; width: 45%; }
#main .contact_list .list .contact_list_ex li .isesaki { padding-left: 12em; }
#main .privacy { background-color: #FFF; border: 2px solid #176F3C; padding-top: 2em; padding-right: 2em; padding-bottom: 0em; padding-left: 2em; margin-bottom: 2em; }
#main .privacy h4 { font-weight: bold; color: #176F3C; }
#main .privacy_bn { text-align: center; margin-bottom: 2em; font-weight: bold; color: #333; }
#main .privacy_bn input { margin-right: 1em; }
#main .submit_bn { text-align: center; }
#main .submit_bn input { border-radius: 2em; -webkit-border-radius: 2em; -moz-border-radius: 2em; color: #FFF; background-color: #176F3C; font-weight: bold; padding-top: 1em; padding-right: 5em; padding-bottom: 1em; padding-left: 5em; font-size: 1.2em; line-height: 1em; border: 1px solid #176F3C; }
.contact_flow { margin-bottom: 2em; overflow: hidden; }
.contact_flow li { color: #176F3C; background-color: #B8D4C4; padding: 1em; float: left; width: 33.3333%; border-right-width: 1px; border-right-style: solid; border-right-color: #F0F0F0; font-weight: bold; text-align: center; }
.contact_flow li.current { color: #FFF; background-color: #176F3C; }

/* safety */
#main .safety_ul { float: right; width: 50%; border-left-width: 2px; border-left-style: solid; border-left-color: #176F3C; position: absolute; top: 3em; right: 0px; }
#main .safety_ul a { font-size: 1.2em; line-height: 1em; padding: 1em; width: 33.3333%; border-top-width: 2px; border-right-width: 2px; border-top-style: solid; border-right-style: solid; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; float: left; text-align: center; color: #FFF; background-color: #176F3C; }
#main .safety_ul a:hover, #main .safety_ul a.current { color: #176F3C; background-color: #FFFFFF; }
#main .mission { border: 1px solid #176F3C; margin-top: 3em; overflow: hidden; padding-top: 2em; padding-right: 3em; padding-bottom: 1em; padding-left: 3em; }
#main .mission_left { float: left; width: 50%; }
#main .mission_left strong { font-size: 1.5em; font-weight: bold; margin-bottom: 1em; display: block; line-height: 2em; }
#main .mission_right { float: left; width: 50%; }
#main .mission_right strong { font-size: 2em; line-height: 2em; }
#main .l1 .title .number { font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 3em; float: left; margin-right: 0.4em; font-weight: 100; line-height: 1em; margin-bottom: 1em; }

/* table */
#main .table_00 { width: 100%; margin-bottom: 3em; }
#main .table_00 th { padding-top: 0.5em; padding-bottom: 0.5em; vertical-align: top; font-weight: bold; color: #176F3C; white-space: nowrap; padding-right: 1em; }
#main .table_00 td { padding-top: 0.5em; padding-bottom: 0.5em; }
#main .table_01 { border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; width: 100%; margin-bottom: 3em; }
#main .table_01 th { border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; padding-top: 1em; padding-bottom: 1em; font-weight: bold; color: #176F3C; white-space: nowrap; padding-right: 1em; width: 30%; }
#main .table_01 td { border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; padding-top: 1em; padding-bottom: 1em; }
#main .license_table { width: 100%; border-top-width: 1px; border-left-width: 1px; border-top-style: solid; border-left-style: solid; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; }
#main .license_table th { text-align: center; padding: 1em; color: #176F3C; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; }
#main .license_table tr th:nth-child(1) { width: 25%; }
#main .license_table tr th:nth-child(2) { width: 45%; }
#main .license_table tr th:nth-child(3) { width: 30%; }
#main .license_table td { color: #176F3C; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; text-align: center; font-size: 1em; padding-top: 0.2em; padding-right: 1em; padding-bottom: 0.2em; padding-left: 1em; vertical-align: middle; }
#main .license_table td.ex { color: #000; font-size: 1em; text-align: left; vertical-align: top; padding: 2em; }
#main .service_sec .truck_list { clear: both; width: 100%; border-top-width: 1px; border-left-width: 1px; border-top-style: solid; border-left-style: solid; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; }
#main .service_sec .truck_list th, #main .service_sec .truck_list td { border-right-width: 1px; border-bottom-width: 1px; border-right-style: solid; border-bottom-style: solid; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; padding: 1em; }
#main .service_sec .truck_list th { background-color: #DFEED4; width: 40%; }
#main .service_sec .truck_list td { color: #176F3C; text-align: center; width: 10%; }
#main .contact_table { width: 100%; margin-bottom: 2em; }
#main .contact_table th { font-weight: bold; color: #176F3C; text-align: right; width: 20%; padding-top: 0.7em; padding-right: 0.5em; padding-bottom: 0.7em; }
#main .contact_table td { padding-top: 0.7em; padding-bottom: 0.7em; padding-left: 0.5em; width: 70%; }
#main .contact_table tr td:nth-child(2) { width: 10%; text-align: center; padding: 0px; }
#main .contact_table .nes { border-radius: 2em; -webkit-border-radius: 2em; -moz-border-radius: 2em; color: #FFF; background-color: #F5A43E; padding: 0.3em; font-size: 0.8em; font-weight: bold; }
#main .contact_table td input, #main .contact_table td textarea { width: 100%; padding: 0.4em; border: 1px solid #FFF; font-size: 1em; line-height: 1.5em; }
#main .contact_table td textarea { height: 10em; }
#main .office_table { width: 100%; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; margin-bottom: 3em; }
#main .office_table tr:first-child td { text-align: center; font-size: 1em; font-weight: bold; color: #176F3C; padding: 1em; background-color: #F0EFF0; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; }
#main .office_table tr:first-child td:first-child { border-left-style: none; }
#main .office_table tr th{ color: #176F3C; text-align: center; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; }
#main .office_table tr td{ padding: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; }
#main .office_table tr td:nth-child(1) { width: 15%; }
#main .office_table tr td:nth-child(2) { width: 40%; }
#main .office_table tr td:nth-child(3) { width: 15%; }
#main .office_table tr td:nth-child(4) { width: 20%; padding-right: 0px; }
#main .office_table iframe { margin-top: 1em; }

/* sec */
#main .tag { color: #176F3C; display: block; text-align: left; clear: both; margin-bottom: 3em; }
#main .tag.tag_other { margin-top: 3em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#main .tag.tag_ex { margin-bottom: 0px; }
#main .tag .tag_box { border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; text-align: left; display: inline-block; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: bold; line-height: 1em; font-size: 1.4em; padding-top: 0.6em; padding-right: 1em; padding-bottom: 0.6em; padding-left: 1em; }
#main .tag .tag_box .jp { font-weight: normal; margin-left: 0.7em; padding-left: 0.7em; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; font-size: 0.8em; line-height: 1em; }
#main .tag_works { background-color: #EFEFEF; overflow: hidden; display: inline-block; margin-top: 3em; margin-bottom: 3em; }
#main .tag_works .tag_box { background-color: #EFEFEF; color: #176F3C; float: left; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: bold; font-size: 1.2em; line-height: 1.4em; padding-top: 0.8em; padding-right: 1em; padding-bottom: 0.8em; padding-left: 1em; }
#main .tag_works .tag_box .jp { font-weight: normal; }
#main .tag_works .title { font-size: 1.4em; line-height: 1em; color: #FFF; background-color: #16703C; float: left; font-weight: bold; padding:0.75em !important; }
/* sec */
#main .sec { overflow: hidden; margin-bottom: 5em; position: relative; }
#main .sec.sec_line { padding-top: 3em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#main .sec .left { float: left; width: 20%; }
#main .sec .right { float: right; width: 75%; }
#main .sec .right h3 { font-size: 1.5em; line-height: 1.5em; font-weight: bold; color: #176F3C; margin-top: 2em; margin-bottom: 0.5em; overflow: hidden; }
#main .sec .right h4 .a { float: left; background-color: #C9E3D9; display: block; width: 8%; text-align: right; }
#main .sec .right h4 .b { float: left; background-color: #C9E3D9; width: 35%; font-weight: normal; }
#main .sec .right h4 .c { float: left; }
#main .service_sec { padding-bottom: 1em; overflow: hidden; }
#main .sec_office { padding-top: 3em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#main .sec_office h3 { margin-top: 0.5em; }
#main .works_sec { padding-bottom: 3em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #16703C; overflow: hidden; margin-bottom: 6em; }
#main .works_sec h2 { margin-bottom: 2em; border-top-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-bottom-style: solid; border-top-color: #16703C; border-bottom-color: #16703C; padding-top: 0.6em; padding-right: 1em; padding-bottom: 0.6em; padding-left: 1em; font-size: 1.5em; }
#main .works_sec h2 i { margin-right: 1em; font-size: 1.3em; }
#main .works_sec .tags { display:100%; }
#main .works_sec .tags ul { overflow: hidden; }
#main .works_sec .tags li { float:left; width:auto; margin:0.25em 0.5em 0 0; }
#main .works_sec .tags li a { font-size: 1em; line-height: 1.6em; padding:0 0.4em; display:block; border:solid 1px #176F3C; background-color: #fff; }
#main .works_sec .tags li a:hover { background-color:#176F3C; color:#fff; }

/* company */
#main .concept { color: #176F3C; border: 1px solid #176F3C; overflow: hidden; clear: both; }
#main .concept dt { font-size: 1.6em; padding: 1em; width: 25%; float: left; text-align: center; line-height: 4em; }
#main .concept dd { float: left; width: 75%; font-size: 1.4em; line-height: 1.8em; padding-top: 1em; padding-right: 1em; padding-left: 2em; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; padding-bottom: 1em; }
#main .president { float: left; width: 30%; }
#main .president img { margin-bottom: 1em; }
#main .president span { display: block; font-size: 0.8em; margin-bottom: 0.5em; }
#main .message { float: right; width: 65%; margin-bottom: 2em; }
#wrapper.recruit #main { margin-bottom: 0px; }
#special li { float: left; width: 50%; }

/* works */
#main .works_sec .works_ex { width: 70%; padding-right: 4em; border-right-width: 1px; border-right-style: solid; border-right-color: #16703C; float: left; }
#main .works_sec .works_ex h3 { background-color: #EDEDED; margin-bottom: 1.5em; font-size: 1.4em; line-height: 1.4em; color: #176F3C; font-weight: bold; padding-top: 0.6em; padding-right: 1em; padding-bottom: 0.6em; padding-left: 1em; margin-top: 0em; clear: both; }
#main .works_sec .works_ex h4 { font-weight: bold; color: #176F3C; padding-left: 1em; border-left-width: 0.5em; border-left-style: solid; font-size: 1.1em; line-height: 1.5em; margin-bottom: 1em; }
#main .works_sec .works_ex p+h3 { margin-top: 3em; }
#main .works_sec .works_data { float: right; width: 25%; }
#main .works_sec .works_data h3 { font-size: 1.2em; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; color: #FFF; background-color: #176C3A; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
#main .works_sec .works_data dl { padding: 2em; margin:0 0 3em 0; background-color: #EFEFEF; }
#main .works_sec .works_data dl dt { color: #176F3C; padding: 0.5em; border: 1px solid #176F3C; margin-bottom: 1em; font-size: 1em; line-height: 1em; font-weight: bold; display: inline-block; }
#main .works_sec .works_data dl dd { line-height: 1.6em; margin-bottom: 2em; }
#main .works_sec .works_data .tags h2 { font-size: 1.2em; margin:0 0 1em 0; }
#main .works_sec .works_data .tags li { float:left; width:auto; margin:0.5em 0.5em 0 0; }

/* netdepot */
#main .netdepot_box { padding: 4em; border: 1px solid #176F3C; margin-bottom: 3em; }
#main .bn_inquiry.netdepot_bn { overflow: hidden; float: left; width: 60%; margin-top: 0px; padding-top: 0px; }
#main .bn_inquiry.netdepot_bn a { display: block; overflow: hidden; }
#main .bn_inquiry.netdepot_bn a i { float: left; }
#main .bn_inquiry.netdepot_bn a .title { float: left; margin-right: 0.2em; padding-bottom: 0px; padding-top: 1.8em; }
#main .bn_inquiry.netdepot_bn a .cap { line-height: 1.2em; margin: 0px; float: left; padding-top: 2.2em; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 0.8em; font-weight: normal; }
#main .bn_inquiry.netdepot_bn a .bn { float: right; width: 15%; margin-left: 0%; margin-top: 0px; margin-right: 2%; margin-bottom: 0px; line-height: 1em; padding-top: 10px; padding-right: 0px; padding-bottom: 10px; padding-left: 0px; }
#main .netdepot_bn_other { float: right; width: 40%; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: none; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; }
#main .netdepot_bn_other li { float: left; width: 50%; padding-top: 0.5em; padding-right: 2em; padding-bottom: 0.5em; padding-left: 2em; }

/* next */
#contents #contents_header.contents_header_next { width:75%; padding:5em 0 0 0; margin:0 auto 7em auto; overflow: hidden; }
#contents #contents_header.contents_header_next .ex { text-align: left; position: absolute; bottom:0; right:0; }
#contents #contents_header.contents_header_next .ex h2 { font-size:2em; line-height: 1.5em; color: #176F3C; position:static; padding:0 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_next .ex p { font-size:1em; line-height: 2em; color: #176F3C; }
#contents #contents_header.contents_header_sangaku { width:55%; padding:5em 0 0 0; margin:0 auto 7em auto; overflow: hidden; }
#contents #contents_header.contents_header_sangaku h2 { float:left; position:static; padding:0; background-color: transparent; width:35%; margin:3em 0 0 0; }
#contents #contents_header.contents_header_sangaku p { font-size:1.3em; line-height: 1.8em; float:right; color: #176F3C; line-height: 2em; text-align: left; }
#contents #contents_header.contents_header_internship { width:75%; padding: 0; margin:0 auto 3em auto; overflow: hidden; }
#contents #contents_header.contents_header_internship h2 { position:static; padding:0; background-color: transparent;}
#contents #contents_header.contents_header_report { width:75%; padding: 0; margin:0 auto 3em auto; overflow: hidden; }
#contents #contents_header.contents_header_report h2 { border-top:solid 1em #176F3C; border-bottom:solid 1em #176F3C; font-size:2em; line-height: 1.5em; color: #176F3C; position:static; padding:1em 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_report h3 { border-top:solid 1em #176F3C; border-bottom:solid 1em #176F3C; font-size:2em; line-height: 1.5em; color: #176F3C; position:static; padding:1em 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_report h3 img { height:1.5em; width:auto; margin:0 1em 0 1em; line-height:3em; }
#main .next_list { clear:both; overflow: hidden; margin:0 auto 3em auto; }
#main .next_list li { width:30%; margin:0 5% 0 0; float:left; }
#main .next_list li:nth-child(3n) { margin:0 0 0 0; }
#main.intern_2018 { background-color: #fefef4; padding:5em 0 3em 0; margin:0 !important;}
#main .internship_sec { position: relative;  color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 3em 0; margin:0 0 0 0; overflow: hidden;; }
#main .internship_sec .left { width:25%; float:left; }
#main .internship_sec .right { width:75%; float:right; }
#main .internship_sec .flow { padding:5em 0 0 0; }
#main .internship_sec .next_list { padding:3em 0 0 0; }
#main .internship_sec .movie_title { font-size:2em !important; line-height: 2em; position: absolute; left:0; bottom:1em; }
#main .internship_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; }
#main .internship_sec h4 { font-size:1.4em !important; font-weight:bold; line-height: 1.5em; }
#main .internship_sec p { color: #333; }
#main .internship_sec .internship_point.osusume { float:left; width:45%; }
#main .internship_sec .internship_point.minitsuku { float:right; width:52%; }
#main .internship_sec .internship_point li { font-size:1em !important; font-weight:bold; line-height: 1.5em; margin:0 0 0.5em 0; background-color: #dce9e2; padding:0.8em 0.5em 0.8em 2em; background-size: auto 70%; background-position: left center; background-image: url("../next/arrow.svg"); background-repeat: no-repeat; }
#main .internship_sec .internship_point h4 { font-size:1.2em !important; font-weight:bold; line-height: 1.5em; margin:0 0 1em 0; }
#main .report_sec { position: relative; color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 3em 0; margin:0 0 0 0; overflow: hidden; }
#main .report_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; }
#main .report_sec h4 { font-size:1.4em !important; font-weight:bold; line-height: 2.5em; text-align: right;}
#main .report_sec h4.voice_h4 { font-size:1.6em !important; margin:0 0 1em 0; font-weight:bold; line-height: 1.5em; text-align: left;}
#main .report_sec p { color: #333; }
#main .report_sec .left { width:25%; float:left; }
#main .report_sec .left h3 img { height:1.5em; width:auto; margin:0 1em 0 0; line-height:3em;  }
#main .report_sec .right { width:75%; float:right; }
#main .report_sec .right ul { width:50%; float:left; }
#main .report_sec .right ul li { font-size:1.2em !important; font-weight:bold; line-height: 1.5em; margin:0 0 1em 0; border-left:solid 0.3em #176F3C; padding:0 0 0 1em; }
#main .report_sec .right .photo { width:50%; float:right; }
#main .report_sec .right .photo p.cap { margin:0.5em 0 0 0; }
#main .report_sec .report_point { clear:both; padding:3em 0 0 0; }
#main .report_sec .report_point table { width:100%; background-color: #eee; border-radius: 1em; -webkit-border-radius: 1em; -moz-border-radius: 1em; overflow: hidden; }
#main .report_sec .report_point table th { padding:1em; background-color: #176F3C; color:#fff; text-align: center; font-size:2em !important; font-weight:bold; }
#main .report_sec .report_point table td { padding:1em; font-size:1.2em !important; text-align: left; }
#main .report_ex { padding:3em; margin:0 0 3em 0; color: #176F3C; background-color: #fff8a1; border-radius: 1em; -webkit-border-radius: 1em; -moz-border-radius: 1em; overflow: hidden; }
#main .report_ex h3 { font-size:2em !important; font-weight:bold; line-height: 1em; text-align: center; padding:1em 0 1.5em 0; }
#main .report_ex h3 img { height:1.5em; width:auto; margin:0 1em 0 0; line-height:3em;  }
#main .report_ex .left { float:left; width:45%; }
#main .report_ex .left ul { overflow: hidden; }
#main .report_ex .left li { float:left; width:48%; }
#main .report_ex .left li:last-child { float:right; width:48%; }
#main .report_ex .left .cap { text-align: right; padding:1em 0 0 0; }
#main .report_ex .right { float:right; width:50%; }
#main .report_ex .right table { border-spacing: 0 2em !important; border-collapse: separate; border-spacing: 0; }
#main .report_ex .right th { font-size:1.6em !important; font-weight:bold; border-left:solid 1px #176F3C; border-right:solid 1px #176F3C; vertical-align: middle; padding:0 0.5em 0 0.5em; }
#main .report_ex .right td { padding:0 0 0 2em; line-height: 1.8em; }
#main .kodomo_sec { position: relative;  color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 3em 0; margin:3em auto 0 auto; overflow: hidden;; }
#main .kodomo_sec .left { width:25%; float:left; }
#main .kodomo_sec .right { width:75%; float:right; }
#main .kodomo_sec .next_list { padding:3em 0 0 0; }
#main .kodomo_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; }


/* sp */
.sp { display: none; }
.pc { display: block; }
.spbr { display: block; }

/* sep */
body { }
body { }
body { }
body { }
body { }
body { }
body { }

/* sp */
@media screen and (max-width:470px) {
body { font-size: 12px; }

/* device */
#wrapper { min-width: 0px; }
#header { min-width: 0px; }
#subnavi { min-width: 0px; }

/* wrapper */
.in, #header header, #footer footer { width: 90%; }
#footer footer { margin-right: 0px; }

/* wrapper */
#wrapper.home, #wrapper.other, #wrapper.company, #wrapper.works, #wrapper.csr, #wrapper.service { padding-top: 5.8em; }

/* header */
#header { background-color: #176F3C; }
#header header h1 { width: 70%; padding-top: 1.5em; padding-bottom: 1.6em; line-height: 1em; margin-right: 0em; }
#header header ul { padding-top: 2.8em; display: none; }
#sp_navi { position: fixed; top: 0px; right: 0px; background-color: #176F3C; z-index: 999999; padding-top: 0.65em; padding-right: 0.5em; padding-bottom: 0.5em; padding-left: 0.5em; }
#sp_navi li { width: 3em; float: left; padding: 0.4em; display: block; font-size: 1.4em; }

/* subnavi */
#subnavi ul { text-align: center; width: 75%; margin: auto; padding-top: 1.5em; padding-bottom: 1.5em; overflow: hidden; }
#subnavi ul li { display: inline-block; }
#subnavi ul li a { display: block; margin-right: 1em; padding-right: 1em; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; line-height: 1em; font-weight: bold; }
#subnavi ul li:first-child a { padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; }

/* lang */
#header .lang { display:none; }

/* top */
#contents .service { padding-bottom: 0.5em; overflow: hidden; }
#contents .service li { float: left; width: 25%; margin-bottom: 2em; overflow: hidden; position: relative; height: 19em; }
#contents .service li .thumb { border-right-width: 1px; border-right-style: solid; border-right-color: #FFF; }
#contents .service li .box { position: absolute; left: 0px; top: 13em; }
#contents .service li a:hover .box { top: 5em; }
#contents .service li .title { background-color: #176F3C; color: #FFF; font-size: 1.4em; height: 4.5em; padding-top: 1em; padding-right: 1em; padding-left: 1em; line-height: 1.2em; border-right-width: 1px; border-right-style: solid; border-right-color: #FFF; display: block; }
#contents .service li .ex { display: block; background-color: #FFF; padding: 1em; }
#contents .service_list_sp { margin-bottom: 2em; }
#contents .service_list_sp li { float: left; width: 48%; text-align: left; margin-right: 4%; line-height: 1.5em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; padding-top: 1em; padding-bottom: 1em; font-size: 1.2em; display: block; }
#contents .service_list_sp li a { display: block; margin: 0px; padding: 0px; }
#contents .service_list_sp li a:after { content: "›"; float: right; }
#contents .service_list_sp li:nth-child(2n) { margin-right: 0px; }
#contents .service_list_sp li:nth-child(1), #contents .service_list_sp li:nth-child(2) { border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#contents .service_list_sp li:nth-child(7) { padding-top: 0.4em; padding-bottom: 0.4em; line-height: 1.3em; }
#contents .l4 { padding-bottom: 2em; overflow: hidden; width: 90%; margin: auto; }
#contents .l4 li { width:48%; margin:0 4% 2em 0; float:left; }
#contents .l4 li:nth-child(4n) { margin:0 4% 2em 0; }
#contents .l4 li:nth-child(4n+1) { clear:none; }
#contents .l4 li:nth-child(2n) { margin:0 0 2em 0; }
#contents .l4 li:nth-child(2n+1) { clear:both; }
#contents .l4 li .thumb { margin-bottom: 0.75em; }
#contents .l4 li .date { font-size: 1em; margin-bottom: 0.5em; vertical-align: middle; }
#contents .l4 li .date span { border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; font-size: 0.8em; color: #FFF; background-color: #176F3C; margin-left: 1em; padding-top: 0.3em; padding-right: 1em; padding-bottom: 0.3em; padding-left: 1em; vertical-align: middle; line-height: 1em; }
#contents .l4 li .title { font-size: 1.2em; font-weight: bold; margin-bottom: 0.5em; }
#contents .l4 li .ex { font-size: 0.9em; }
#contents .l4 li .tags { display:100%; }
#contents .l4 li .tags ul { overflow: hidden; }
#contents .l4 li .tags li { float:left; width:auto; margin:0.25em 0.5em 0 0; }
#contents .l4 li .tags li a { font-size: 0.7em; line-height: 1.6em; padding:0 0.4em; display:block; border:solid 1px #176F3C; background-color: #fff; }
#contents .l4 li .tags li a:hover { background-color:#176F3C; color:#fff; }

/* works */
#contents .works { background-color: #F2F2F2; }
#contents .lead { font-size: 0.9em; text-align: center; padding-top: 0.5em; padding-bottom: 0.5em; border: 1px solid #15703D; color: #15703D; margin-bottom: 1.5em; letter-spacing: 0em; }
#contents .works .works--banner { flex-direction: column; }
#contents .works .works--banner a { width:100%; margin:0 0 1.5em 0; }
#contents .works .works--banner a:hover { padding:0; }
#contents .works #tag_cloud { position: static; width:90%; }
#contents .works #tag_cloud h2 { font-size: 1.2em; line-height: 1em; padding:0 1em; margin:0 0 1em 0; border-left:solid 1px #15703D; border-right:solid 1px #15703D; display: inline-block; }
#contents .works #tag_cloud ul { overflow: hidden; margin:0 0 2em 0; }
#contents .works #tag_cloud li { width:auto; margin:0 0.5em 0.5em 0; float: left; }
#contents .works #tag_cloud li a { font-size: 1em; line-height: 1.6em; padding:0 0.4em; display:inline-block; border:solid 1px #176F3C; background-color: #fff; }
#contents .works #tag_cloud li a:hover { background-color:#176F3C; color:#fff; }

/* special */
#special { overflow: hidden; }
#special li { float: none; width: 100%; margin-bottom: 2em; }

/* bn */
#bn { clear: both; overflow: hidden; width: 80%; padding:5em 0; margin:0 auto 0 auto; margin:auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
#bn .bn_box { width:100%; margin:0 0 3em 0; }
#bn .bn_box h4 { padding:0.75em 0 0 0; margin:0 0 1.25em 0; color: #176F3C; font-size: 1em; font-weight: bold; position: relative; display:block; border-top:solid 1px #176F3C; border-left:solid 1px #176F3C; border-right:solid 1px #176F3C; }
#bn .bn_box.bn_group { width:100%; margin:0 0 2em 0; }
#bn .bn_box.bn_teikei { width:48%; margin:0 0 2em 0; }
#bn .bn_box.bn_booth { width:48%; margin:0 0 2em 0; }
#bn .bn_box.bn_support { width:100%; margin:0 0 0 0; }
#bn ul { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
#bn .bn_box.bn_group ul li { width: 48%; margin:0 0 1em 0; }
#bn .bn_box.bn_teikei ul li { width: 100%; margin:0 0 1em 0; }
#bn .bn_box.bn_booth ul li { width: 100%; margin:0 0 1em 0; }
#bn .bn_box.bn_support ul li:nth-child(1) { width: 48%; }
#bn .bn_box.bn_support ul li:nth-child(2) { width: 48%; }

/* contents */
#contents h2 { padding-top: 2em; padding-bottom: 0.5em; overflow: hidden; font-size: 1.4em; color: #176F3C; }
#contents h2 span { float: right; font-size: 0.6em; line-height: 2.5em; }
#contents .bn_inquiry { padding-top: 3em; padding-bottom: 3em; }

/* footer */
#footer footer { position: relative; }
#footer footer ul { margin-bottom: 4em; overflow: hidden; padding-top: 3em; }
#footer footer li { margin-right: 0em; float: none; line-height: 1.6em; margin-bottom: 1em; }
#footer footer li:last-child { margin-right: 0px; float: right; position: absolute; top: 3em; right: 6em; }
#footer footer li dt { font-size: 1.45em; font-weight: bold; margin-bottom: 0.5em; }
#footer footer .pagetop a { font-size: 1.5em; line-height: 3em; background-color: #FFF; height: 3em; width: 3em; color: #176F3C; top: 0px; right: 0px; display: block; text-align: center; position: absolute; }
#footer footer li dd { display: none; font-size: 1.1em; }
#footer footer li:last-child dd { display: block; }
#footer footer .flogo { float: none; width: 60%; margin-right: 0em; }
#footer footer .flogo_cp { display: block; align-items: center; line-height: 1em; padding-top: 0.2em; }
#footer footer .flogo_cp .instagram { position: absolute; bottom:0.6em; right:22%; font-size: 3em; line-height: 1em; margin:0 0 0 0; }
#footer footer .flogo_cp .youtubeicon { position: absolute; bottom:0.6em; right:5%; font-size: 3em; line-height: 1em; margin:0 0 0 0; }
#footer footer .copyright { font-size: 0.6em; padding-top: 1em; }

/* index */
#main .index.other { padding-top: 2em; clear: both; }
#main .index li { float: left; width: 48%; margin-right: 4%; margin-bottom: 2em; }
#main .index li:nth-child(4n) { margin-right: 4%; }
#main .index li:nth-child(2n) { margin-right: 0%; }
#main .index li a:hover dd.title { background-color: #176F3C; color: #FFF; }
#main .index li dd.title { content: "\f054"; background-color: #F0F0F0; font-weight: bold; padding-right: 1em; overflow: hidden; line-height: 3em; }
#main .index li dd.title i { color: #FFF; background-color: #176F3C; margin-right: 0.9em; text-align: center; padding-top: 1em; padding-right: 0.8em; padding-bottom: 1em; padding-left: 1em; float: left; }
#main .index li dd.ex { color: #000; padding-top: 1em; padding-left: 0em; font-size: 0.9em; line-height: 1.6em; }
#main .index li dd.title.title_2 { line-height: 1.6em; }

/* contents_header */
#contents #contents_header { position: relative; }
#contents #contents_header h2 { background-color: #176F3C; position: absolute; z-index: 999; color: #FFF; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.3em; padding-left: 1em; bottom: 0px; right: 0%; }
#contents h2 { padding-top: 1em; padding-bottom: 0.5em; overflow: hidden; font-size: 1.2em; color: #176F3C; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: bold; vertical-align: middle; }
#contents .service h2.in.top { padding-top: 1em; }
#contents h2 a { float: left; vertical-align: middle; white-space: nowrap; display: block; }
#contents h2 span.jp { font-size: 0.7em; font-weight: normal; white-space: nowrap; margin: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0.2em; vertical-align: middle; }
#contents h2 span.link { float: right; font-size: 0.6em; line-height: 1em; margin-top: 0.3em; }

/* main */
#main { margin-bottom: 3em; }
#main .l1 { float: none; width: 100%; margin-bottom: 2em; }
#main .l1 h2 { font-weight: normal; margin: 0px; padding: 0px; }
#main .l1 h3 { color: #176F3C; font-size: 1.3em; font-weight: bold; }
#main .l1 .archiveNav { display:flex; justify-content: space-between; margin: 0 0; }
#main .l1 .archiveNav h3 { width:100%; font-size: 1em; }
#main .l1 .archiveNav .archiveNav--category { width: 48%; }
#main .l1 .archiveNav .archiveNav--monthly { width: 48%; }

#main .l2_left { float: none; width: 100%; margin-bottom: 2em; }
#main .l2_right { float: none; width: 100%; }
#main .l3 { float: none; width: 100%; }
#main .l3 h3 { font-size: 1.4em; line-height: 1em; font-weight: bold; color: #176F3C; margin-bottom: 1.5em; margin-top: 3em; clear: both; }
#main .l3 h3.first { margin-top: 0.5em; }
#main .l3 h3 .date { float: right; font-size: 0.7em; color: #000; font-weight: normal; }
#main .l3 h4 { font-weight: bold; color: #176F3C; margin-bottom: 1em; font-size: 1.2em; }
#main .l3.faq_l3 { width: 100%; }
#main .box { padding: 2em; }
#main .l3 .news_archive dl { margin: 0px; padding: 0px; }
#main .l3 .news_archive li dl { display:flex; flex-direction: column; }
#main .l3 .news_archive li dl dt { width: 100%; margin: 0 0 0.5em 0; padding: 0; font-weight: bold; }
#main .l3 .news_archive li dl dd { width: 100%; line-height: 1em; display:flex; justify-content: flex-start; align-items: center; }
#main .l3 .news_archive li dl dd .date { border-left:solid 1px #CCC; margin: 0 0 0 1em; padding: 0 0 0 1em; }
#main .l3 .news_archive li dl dd .cat { background-color: #176F3C; color: #FFF; margin: 0 0 0 0; padding: 0.4em; width:6em; font-size: 0.9em; line-height: 1em; text-align: center; }
#wrapper.news #main .l3 img { height: auto; width: auto; }

/* contact */
#main .contact_ul { margin-bottom: 3em; overflow: hidden; }
#main .contact_ul li { float: none; width: 100%; margin-right: 0%; margin-bottom: 1em; }
#main .contact_ul.office li { width: 100%; margin-right: 0%; }
#main .contact_ul li:last-child { margin-right: 0px; }
#main .contact_ul a { border-radius: 3em; -webkit-border-radius: 3em; -moz-border-radius: 3em; font-weight: bold; color: #FFF; background-color: #176F3C; padding: 1.5em; text-align: center; display: block; vertical-align: middle; line-height: 2em; }
#main .contact_ul a:hover { color: #176F3C; background-color: #F0F0F0; }
#main .contact_ul a i { font-size: 2em; vertical-align: middle; line-height: 1em; margin-right: 1em; }
#main .sec_contact { padding-top: 3em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; overflow: hidden; padding-bottom: 3em; }
#main .sec_contact h3 { font-size: 1.5em; font-weight: bold; margin-bottom: 1em; color: #176F3C; clear: both; }
#main .sec_contact h4 { font-size: 1.2em; color: #176F3C; font-weight: bold; margin-bottom: 1em; }
#main .contact_list li:nth-child(2n) { overflow: hidden; }
#main .contact_list li { float: none; width: 100%; margin-right: 0%; background-color: #F0F0F0; padding: 2em; margin-bottom: 2em; }
#main .contact_list li:nth-child(2n) { margin-right: 0px; }
#main .contact_list .contact_list_ex li { padding: 0px; margin-top: 0em; margin-right: 0%; margin-bottom: 0em; margin-left: 0px; float: none; width: 100%; line-height: 1.5em; }
#main .contact_list .contact_list_ex li:nth-child(2n) { margin-right: 0px; }
#main .contact_list .contact_list_ex.contact_list_ex_02 li { width: 100%; margin-right: 0px; }
#main .contact_list .contact_list_ex li dt { float: left; width: 65%; font-size: 0.9em; letter-spacing: 0em; }
#main .contact_list .contact_list_ex li dd { font-weight: bold; color: #176F3C; float: left; width: 35%; }
#main .contact_list .list .contact_list_ex li .isesaki { padding-left: 12em; }
#main .privacy { background-color: #FFF; border: 2px solid #176F3C; padding-top: 2em; padding-right: 2em; padding-bottom: 0em; padding-left: 2em; margin-bottom: 2em; }
#main .privacy h4 { font-weight: bold; color: #176F3C; }
#main .privacy_bn { text-align: center; margin-bottom: 2em; font-weight: bold; color: #333; }
#main .privacy_bn input { margin-right: 1em; }
#main .submit_bn { text-align: center; }
#main .submit_bn input { border-radius: 2em; -webkit-border-radius: 2em; -moz-border-radius: 2em; color: #FFF; background-color: #176F3C; font-weight: bold; padding-top: 1em; padding-right: 5em; padding-bottom: 1em; padding-left: 5em; font-size: 1.2em; line-height: 1em; border: 1px solid #176F3C; }
.contact_flow { margin-bottom: 2em; overflow: hidden; }
.contact_flow li { color: #176F3C; background-color: #B8D4C4; padding: 0.5em; float: left; width: 33.3333%; border-right-width: 1px; border-right-style: solid; border-right-color: #F0F0F0; font-weight: bold; text-align: center; }
.contact_flow li.current { color: #FFF; background-color: #176F3C; }

/* pankuzu */
#pankuzu { list-style: none; overflow: hidden; color: white; font: 1em; margin: 0; background-color: #F0F0F0; clear: both; }
#pankuzu ul { text-align: left; margin: auto; width: 100%; overflow: hidden; padding: 0px; }
#pankuzu li { float: left; padding: 0px; background-color: #fff; }
#pankuzu li:last-child { background-color: #F0F0F0; }
#pankuzu li a { display: block; padding-right: 1em; margin-right: 3.1em; position: relative; text-decoration: none; color: #0F703A; line-height: 3em; font-weight: bold; background-color: #F0F0F0; }
#pankuzu li a:last-of-type { margin-right: 3.1em; }
#pankuzu li a:before { content: ""; display: block; width: 0; height: 0; position: absolute; top: 0; left: -3em; border: 1.5em solid transparent; border-color: #F0F0F0; border-left-color: transparent; }
#pankuzu li a:after { content: ""; display: block; width: 0; height: 0; position: absolute; top: 0; right: -3em; border: 1.5em solid transparent; border-left-color: #F0F0F0; }
#pankuzu li:first-child a { padding-left: 1em; }
#pankuzu li:first-child a:before { display: none; }
#pankuzu li:last-child a { background-color: #FFF; }
#pankuzu li a:hover { color: #FFFFFF; text-decoration: none; padding-bottom: 0px; background-color: #0F703A; }
#pankuzu li:last-child a:hover:before,#pankuzu li a:hover:before { border-left-color: transparent; border-top-color: #0F703A; border-right-color: #0F703A; border-bottom-color: #0F703A; }
#pankuzu li:last-child a:hover:after,#pankuzu li a:hover:after { border-left-color: #0F703A }
#pankuzu li:last-child a:before { border-right-color: #FFF; border-bottom-color: #FFF; border-left-color: transparent; border-top-color: #FFF; }
#pankuzu li:last-child a:after { border-left-color: #FFF; }/* safety */
#main .safety_ul { float: none; width: 100%; border-left-width: 1px; border-left-style: solid; border-left-color: #176F3C; position: static; top: 0em; right: 0px; }
#main .safety_ul a { font-size: 1.2em; line-height: 1em; padding: 1em; width: 33.3333%; border-top-width: 1px; border-right-width: 1px; border-top-style: solid; border-right-style: solid; border-top-color: #176F3C; border-right-color: #176F3C; border-bottom-color: #176F3C; border-left-color: #176F3C; float: left; text-align: center; color: #FFF; background-color: #176F3C; }
#main .safety_ul a:hover, #main .safety_ul a.current { color: #176F3C; background-color: #FFFFFF; }
#main .mission { border: 1px solid #176F3C; margin-top: 3em; overflow: hidden; padding-top: 2em; padding-right: 3em; padding-bottom: 1em; padding-left: 3em; }
#main .mission_left { float: none; width: 100%; }
#main .mission_left strong { font-size: 1.5em; font-weight: bold; margin-bottom: 1em; display: block; line-height: 2em; }
#main .mission_right { float: none; width: 100%; }
#main .mission_right strong { font-size: 1.6em; line-height: 2em; }
#main .l1 .title .number { font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 3em; float: left; margin-right: 0.4em; font-weight: 100; line-height: 1em; margin-bottom: 0em; }

/* works */
#main .works_sec .works_ex { width: 100%; padding-right: 0em; border-right-width: 1px; border-right-style: none; border-right-color: #16703C; float: none; margin-bottom: 4em; }
#main .works_sec .works_ex h3 { background-color: #EDEDED; margin-bottom: 1.5em; font-size: 1.4em; line-height: 1.4em; color: #176F3C; font-weight: bold; padding-top: 0.6em; padding-right: 1em; padding-bottom: 0.6em; padding-left: 1em; margin-top: 3em; clear: both; }
#main .works_sec .works_ex h3.first { margin-top: 0px; }
#main .works_sec .works_ex h4 { font-weight: bold; color: #176F3C; padding-left: 1em; border-left-width: 0.5em; border-left-style: solid; font-size: 1.1em; line-height: 1.5em; margin-bottom: 1em; }
#main .works_sec .works_data { float: none; width: 100%; }
#main .works_sec .works_data h3 { font-size: 1.2em; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; color: #FFF; background-color: #176C3A; font-family: Helvetica, Arial, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
#main .works_sec .works_data dl { padding: 2em; background-color: #EFEFEF; }
#main .works_sec .works_data dl dt { color: #176F3C; padding: 0.5em; border: 1px solid #176F3C; margin-bottom: 1em; font-size: 1em; line-height: 1em; font-weight: bold; display: inline-block; }
#main .works_sec .works_data dl dd { line-height: 1.6em; margin-bottom: 2em; }

/* service */
#main .service_sec .cap { font-size: 0.8em; display: block; margin-top: 1em; }
#main .service_sec .links a { display: block; text-align: center; margin-top: 1em; margin-bottom: 0px; }
#main .service_sec .links a:hover { background-color: #F0F0F0; }
#main .service_sec .links a i { margin-right: 1em; }
#main .service_sec .service_list_01 { clear: both; margin-bottom: 2em; overflow: hidden; }
#main .service_sec .service_list_01.service_list_01_line { margin-top: 2em; padding-top: 2em; padding-bottom: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; }
#main .service_sec .service_list_01 li { float: left; width: 48%; margin-right: 2%; padding-right: 2%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; }
#main .service_sec .service_list_01 li.none { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_01 li:nth-child(2n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-right: 0px; width: 48%; }
#main .service_sec .service_list_01 li:nth-child(4n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-right: 0px; width: 48%; }
#main .service_sec .service_list_01 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_01 li dt { margin-bottom: 1em; }
#main .service_sec .service_list_01 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .service_list_01 li .cap_back { background-color: #DFEED4; padding: 2em; margin-top: 2em; font-size: 0.8em; }
#main .service_sec .service_list_01 li .strage_ex { font-size: 1.3em; line-height: 1.5em; color: #176F3C; text-align: center; }
#main .service_sec .service_list_01 .l2_left { float: left; width: 48%; margin-right: 4%; padding-right: 4%; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; }
#main .service_sec .service_list_01 .l2_right { float: right; width: 48%; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-right: 0px; }
#main .service_sec .service_list_01 .sunpartner_1 { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-right: 0px; padding-right: 0px; }
#main .service_sec .service_list_01 .sunpartner_2 { margin: 0px; padding: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; width: 100%; float: right; }
#main .service_sec .service_list_02 { clear: both; margin-bottom: 2em; }
#main .service_sec .service_list_02 li { float: left; width: 48%; margin-right: 4%; position: relative; background-color: #F1F1F1; margin-bottom: 2em; }
#main .service_sec .service_list_02 li:nth-child(4n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_02 li:nth-child(2n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_02 li dt { margin-bottom: 1em; padding-top: 3em; padding-bottom: 3px; }
#main .service_sec .service_list_02 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .service_list_02 li dd.title { line-height: 1.5em; color: #FFF; background-color: #176F3C; position: absolute; left: 0px; top: 0px; font-weight: bold; padding-top: 0.3em; padding-right: 0.5em; padding-bottom: 0.3em; padding-left: 0.5em; }
#main .service_sec .service_list_02 li dd.ex { padding-bottom: 1em; }
#main .service_sec .service_list_03 { clear: both; overflow: hidden; margin-bottom: 2em; }
#main .service_sec .service_list_03 li { float: left; width: 100%; margin-right: 0%; position: relative; margin-bottom: 2em; }
#main .service_sec .service_list_03 li:nth-child(3n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_03 li:nth-child(3n+1) { clear: both; }
#main .service_sec .service_list_03 li dt { position: relative; margin-bottom: 1em; }
#main .service_sec .service_list_03 li dd { font-size: 0.9em; }
#main .service_sec .service_list_03 li .title { line-height: 1.5em; color: #FFF; background-color: #176F3C; position: absolute; left: 0px; font-weight: bold; padding-top: 0.3em; padding-right: 0.5em; padding-bottom: 0.3em; padding-left: 0.5em; bottom: 0px; font-size: 1.2em; }
#main .service_sec .service_list_03 li dd.ex { padding-bottom: 1em; }
#main .service_sec .service_list_03 li .cap_back_2 li { float: left; width: 50%; margin-bottom: 0.3em; padding: 0px; margin-top: 0px; margin-right: 0px; margin-left: 0px; }
#main .service_sec .service_list_04 li { margin-bottom: 2em; padding-bottom: 2em; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #176F3C; clear: both; overflow: hidden; }
#main .service_sec .service_list_04 li:last-child { margin-bottom: 0px; padding-bottom: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_04 li dt { float: left; width: 48%; margin-right: 4%; }
#main .service_sec .service_list_04 li dd.ex { width: 48%; margin-right: 0%; float: left; margin-bottom: 3em; }
#main .service_sec .service_list_04 li dd.photo { float: none; width: 100%; margin-bottom: 3em; }
#main .service_sec .service_list_05 { margin-top: 2em; padding-top: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; }
#main .service_sec .service_list_05 li { width: 100%; padding-right: 0; border-right-width: 0px; border-right-style: solid; border-right-color: #176F3C; float: none; margin-bottom: 2em; }
#main .service_sec .service_list_05 li:last-child { margin: 0px; float: none; padding: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; width: 100%; }
#main .service_sec .service_list_05 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_05 li h4 { line-height: 1em; font-weight: bold; color: #FFF; background-color: #176F3C; text-align: center; padding: 1em; }
#main .service_sec .service_list_03 li .truck_title { font-size: 1.1em; font-weight: bold; color: #176F3C; margin-bottom: 0.5em; }
#main .service_sec .service_list_03 li .truck_eq { margin-bottom: 0.5em; color: #666; }
#main .service_sec .service_list_06 { clear: both; margin-bottom: 2em; overflow: hidden; }
#main .service_sec .service_list_06.service_list_06_line { margin-top: 2em; padding-top: 2em; padding-bottom: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #176F3C; clear: both; }
#main .service_sec .service_list_06 li { float: none; width: 100%; margin-right: 0%; padding-right: 0%; border-right-width: 0px; border-right-style: solid; border-right-color: #176F3C; margin-bottom: 2em; }
#main .service_sec .service_list_06 li.none { border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; }
#main .service_sec .service_list_06 li:nth-child(3n) { margin-right: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; padding-right: 0px; width: 100%; }
#main .service_sec .service_list_06 li h3 { font-size: 1.4em; }
#main .service_sec .service_list_06 li dt { margin-bottom: 1em; }
#main .service_sec .service_list_06 li dd { font-size: 0.9em; padding-top: 1em; padding-right: 1em; padding-bottom: 0em; padding-left: 1em; margin: 0px; }
#main .service_sec .box .paperboard_left { width: 100%; padding-right: 0%; border-right-width: 0px; border-right-style: solid; border-right-color: #176F3C; float: none; }
#main .service_sec .box .paperboard_right { float: none; width: 100%; }
#main .service_sec .box h3 { font-size: 1.3em; }
#main .service_sec .flow_ex { float: none; width: 100%; }
#main .service_sec .faq_list li { background-color: #F2F2F2; padding: 2em; margin-bottom: 2em; }
#main .service_sec .out_bn { margin-bottom: 3em; overflow: hidden; clear: both; }
#main .service_sec .out_bn li { float: none; width: 100%; margin-bottom: 2em; }
#main .service_sec .out_bn li:last-child { float: none; width: 100%; }
#main .service_sec h3 { font-size: 1.6em; line-height: 2em; font-weight: bold; color: #176F3C; margin-bottom: 1em; }
#main .service_sec h4 { font-weight: bold; color: #176F3C; clear: both; margin-bottom: 1em; font-size: 1.2em; display: block; }
#main .cap_back_2 { background-color: #F2F2F2; margin-top: 1em; display: block; padding: 1em; overflow: hidden; font-size: 0.8em; letter-spacing: 0em; }
#main .attention_title { font-size: 2em; line-height: 1em; color: #176F3C; text-align: center; padding: 1.5em; border: 1px solid #176F3C; margin-top: 1em; margin-bottom: 1em; overflow: hidden; }
#main .works_category { margin-bottom: 3em; overflow: hidden; }
#main .works_category dt { float: left; font-weight: bold; color: #FFF; background-color: #176F3C; border: 1px solid #176F3C; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; margin-right: 1em; }
#main .works_category dd { float: left; margin-right: 1em; }
#main .works_category dd a { border: 1px solid #176F3C; display: block; font-weight: bold; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; padding-left: 1em; }
#main .works_category dd a:hover { color: #FFF; background-color: #176F3C; }
#main .service_sec .faq_list li dt { font-size: 1.5em; line-height: 7em; font-weight: bold; border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; color: #176F3C; float: left; margin-right: 1em; padding-right: 1em; }
#main .service_sec .faq_list li { overflow: hidden; }
#main .service_sec .faq_list li strong { display: block; margin-bottom: 0.5em; }
#contents .bn_inquiry { padding-top: 3em; padding-bottom: 3em; }
#contents .bn_inquiry a { border: 1px solid #176F3C; width: 100%; display: block; margin: 0px; padding: 0px; font-size: 1em; line-height: 1em; font-weight: bold; }
#contents .bn_inquiry a i { border-right-width: 1px; border-right-style: solid; border-right-color: #176F3C; padding: 1em; font-size: 1.5em; line-height: 1em; }
#contents .bn_inquiry a:hover { color: #FFF; background-color: #176F3C; }
#contents .bn_inquiry a span { padding: 1em; }
#main .in .bn_inquiry a span.cap { font-size: 0.7em; }
#main .contact_table th { font-size: 0.8em; text-align: left; width: 20%; padding-top: 0.7em; padding-right: 0.5em; padding-bottom: 0.7em; }
#main .office_table { font-size: 0.7em; }

/* next */
#contents #contents_header.contents_header_next { width:100%; padding:5em 0 0 0; margin:0 auto 3em auto; overflow: hidden; }
#contents #contents_header.contents_header_next .ex { width:74%; margin:auto; text-align: left; position: static; bottom:0; right:0; }
#contents #contents_header.contents_header_next .ex h2 { font-size: 1.8em; line-height: 1.5em; color: #176F3C; position:static; padding:3em 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_next .ex p { font-size: 1.2em; line-height: 1.8em; color: #176F3C; text-align: justify; }
#contents #contents_header.contents_header_next .ex p br { display:none; }
#contents #contents_header.contents_header_sangaku { width:70%; padding:5em 0 0 0; margin:0 auto 7em auto; overflow: hidden; }
#contents #contents_header.contents_header_sangaku h2 { font-size: 1.8em; line-height: 1.5em; float:none; position:static; padding:0; background-color: transparent; width:65%; margin:2em 0 2em 0; }
#contents #contents_header.contents_header_sangaku p { font-size: 1.2em; float:none; color: #176F3C; line-height: 2em; text-align: left; }
#contents #contents_header.contents_header_sangaku p br { display:none; }
#contents #contents_header.contents_header_internship { width:100%; padding: 0; margin:0 auto 3em auto; overflow: hidden; }
#contents #contents_header.contents_header_internship h2 { position:static; padding:0; background-color: transparent;}
#contents #contents_header.contents_header_report { width:100%; padding: 0; margin:0 auto 3em auto; overflow: hidden; }
#contents #contents_header.contents_header_report h2 { text-align: center; border-top:solid 1em #176F3C; border-bottom:solid 1em #176F3C; font-size:1.4em; line-height: 1.5em; color: #176F3C; position:static; padding:1em 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_report h2 span { display:block; float:none; }
#contents #contents_header.contents_header_report h3 { border-top:solid 1em #176F3C; border-bottom:solid 1em #176F3C; font-size:1.2em; line-height: 1.5em; color: #176F3C; position:static; padding:1em 0 1em 0; background-color: transparent; }
#contents #contents_header.contents_header_report h3 img { height:1.5em; width:auto; margin:0 1em 0 1em; line-height:3em; }
#main .next_list { overflow: hidden; margin:0 auto 3em auto; }
#main .next_list li { width:84%; margin:0 auto 3em auto; float:none; }
#main .next_list li:nth-child(3n) { margin:0 auto 0 auto; }

#main .internship_sec { position: relative; color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 2em 0; margin:0 0 0 0; overflow: hidden;; }
#main .internship_sec .left { width:100%; float:none; margin:0 0 2em 0; }
#main .internship_sec .right { width:100%; float:none; }
#main .internship_sec .flow { padding:2em 0 0 0; }
#main .internship_sec .next_list { padding:3em 0 0 0; }
#main .internship_sec .movie_title { font-size:2em !important; line-height: 2em; position: absolute; left:0; bottom:1em; }
#main .internship_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; }
#main .internship_sec h4 { font-size:1.4em !important; font-weight:bold; line-height: 1.5em; }
#main .internship_sec .internship_point.osusume { float:none; width:100%; margin:0 0 3em 0; }
#main .internship_sec .internship_point.minitsuku { float:none; width:100%; }
#main .internship_sec .internship_point li { font-size:1em !important; font-weight:bold; line-height: 1.5em; margin:0 0 0.5em 0; background-color: #dce9e2; padding:0.8em 0.5em 0.8em 2em; background-size: auto 70%; background-position: left center; background-image: url("../next/arrow.svg"); background-repeat: no-repeat; }
#main .internship_sec .internship_point h4 { font-size:1.2em !important; font-weight:bold; line-height: 1.5em; margin:0 0 1em 0; }

#main .report_sec { position: relative; color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 3em 0; margin:0 0 0 0; overflow: hidden; }
#main .report_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; text-align: center; }
#main .report_sec h4 { font-size:1.2em !important; font-weight:bold; line-height: 2.5em; text-align: center; }
#main .report_sec .left { width:100%; float:none; margin:0 0 1.5em 0; }
#main .report_sec .left h3 img { height:1.5em; width:auto; margin:0 1em 0 0; line-height:3em;  }
#main .report_sec .right { width:100%; float:none; }
#main .report_sec .right ul { width:100%; float:none; margin:0 0 2em 0; }
#main .report_sec .right ul li { font-size:1.2em !important; font-weight:bold; line-height: 1.5em; margin:0 0 1em 0; border-left:solid 0.3em #176F3C; padding:0 0 0 1em; }
#main .report_sec .right img { width:100%; float:none; }
#main .report_sec .report_point { clear:both; padding:1em 0 0 0; }
#main .report_sec .report_point table { width:100%; background-color: #eee; border-radius: 1em; -webkit-border-radius: 1em; -moz-border-radius: 1em; overflow: hidden; }
#main .report_sec .report_point table th { padding:0.4em; background-color: #176F3C; color:#fff; text-align: center; font-size:1em !important; font-weight:bold; }
#main .report_sec .report_point table td { padding:0.8em; font-size:1em !important; text-align: left; }
#main .report_sec .report_point table td:nth-child(2) { width:20%; }
#main .report_sec .report_point table td:nth-child(4) { width:40%; }
#main .report_sec .report_point table td:nth-child(5) { width:30%; }
#main .report_sec .report_point table td br { display:none; }

#main .report_ex { padding:3em; margin:0 0 3em 0; color: #176F3C; background-color: #fff8a1; border-radius: 1em; -webkit-border-radius: 1em; -moz-border-radius: 1em; overflow: hidden; }
#main .report_ex h3 { font-size:2em !important; font-weight:bold; line-height: 1em; text-align: center; padding:1em 0 1.5em 0; }
#main .report_ex h3 img { height:1.5em; width:auto; margin:0 1em 0 0; line-height:3em;  }
#main .report_ex .left { float:none; width:100%; }
#main .report_ex .left ul { overflow: hidden; }
#main .report_ex .left li { float:left; width:48%; }
#main .report_ex .left li:last-child { float:right; width:48%; }
#main .report_ex .left .cap { text-align: right; padding:1em 0 0 0; }
#main .report_ex .right { float:none; width:100%; }
#main .report_ex .right table { border-spacing: 0 2em !important; border-collapse: separate; border-spacing: 0; }
#main .report_ex .right th { font-size:1.6em !important; font-weight:bold; border-left:solid 1px #176F3C; border-right:solid 1px #176F3C; vertical-align: middle; padding:0 0.5em 0 0.5em; }
#main .report_ex .right td { padding:0 0 0 2em; line-height: 1.8em; }

#main .kodomo_sec { position: relative; color: #176F3C; border-top:solid 1px #176F3C; padding:3em 0 2em 0; margin:3em auto 0 auto; overflow: hidden;; }
#main .kodomo_sec .left { width:100%; float:none; margin:0 0 2em 0; }
#main .kodomo_sec .right { width:100%; float:none; }
#main .kodomo_sec .next_list { padding:3em 0 0 0; }
#main .kodomo_sec h3 { font-size:2em !important; font-weight:bold; line-height: 1em; }


/* sp */
.sp { display: block; }
.pc { display: none; }
.spbr { display: inline; }

}
@media screen and (max-width:375px) {
body { font-size: 11px; }
}
@media screen and (min-width:471px) and (max-width:1280px) {
body { font-size: 12px; }
}
@media screen and (min-width:1281px) and (max-width:1350px) {
body { font-size: 13px; }
}
@media screen and (min-width:1351px) and (max-width:1450px) {
body { font-size: 14px; }
}
@media screen and (min-width:1451px) and (max-width:1550px) {
body { font-size: 15px; }
}
