@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }

q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/*font*/
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }

@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }

@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }

@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }

@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }

@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }

@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }

/*! based on html5doctor.com Reset Stylesheet v1.6.1 Author: Richard Clark - http://richclarkdesign.com */
html { box-sizing: border-box; }

*, ::before, ::after { box-sizing: inherit; }

body { background: transparent; color: #000; line-height: 1; -webkit-text-size-adjust: 100%; }

html[lang="ja"] body { font-family: FFTransitStdRegular, -apple-system, "M PLUS 1p", BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, sans-serif; }

/* main elements group */
audio, canvas, progress, video { display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; vertical-align: baseline; }

audio:not([controls]) { display: none; height: 0; }

/* a */
* { box-sizing: border-box; }

html, body { width: 100%; height: 100%; }

body { -webkit-text-size-adjust: 100%; -webkit-appearance: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

::-moz-selection { background: rgba(204, 204, 204, 0.8); /* Safari */ color: #fff; }

::selection { background: rgba(204, 204, 204, 0.8); /* Safari */ color: #fff; }

::-moz-selection { background: rgba(204, 204, 204, 0.8); /* Firefox */ color: #fff; }

img { vertical-align: bottom; -ms-interpolation-mode: bicubic; }

/** ---------------- font/_default.scss - */
@font-face { font-family: 'Damion'; font-style: normal; font-weight: 500; src: url("../fonts/damion/Damion-Regular.eot"); src: url("../fonts/damion/Damion-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/damion/Damion-Regular.woff") format("woff"), url("../fonts/damion/Damion-Regular.ttf") format("truetype"); }

@font-face { font-family: 'Bebas'; font-style: normal; font-weight: 100; src: url("../fonts/bebas/bebasneuethin.eot"); src: url("../fonts/bebas/bebasneuethin.eot?#iefix") format("embedded-opentype"), url("../fonts/bebas/bebasneuethin.woff") format("woff"), url("../fonts/bebas/bebasneuethin.ttf") format("truetype"); }

@font-face { font-family: 'Bebas'; font-style: normal; font-weight: 300; src: url("../fonts/bebas/bebasneueregular.eot"); src: url("../fonts/bebas/bebasneueregular.eot?#iefix") format("embedded-opentype"), url("../fonts/bebas/bebasneueregular.woff") format("woff"), url("../fonts/bebas/bebasneueregular.ttf") format("truetype"); }

@font-face { font-family: 'Bebas'; font-style: normal; font-weight: normal; src: url("../fonts/bebas/bebasneuebook.eot"); src: url("../fonts/bebas/bebasneuebook.eot?#iefix") format("embedded-opentype"), url("../fonts/bebas/bebasneuebook.woff") format("woff"), url("../fonts/bebas/bebasneuebook.ttf") format("truetype"); }

@font-face { font-family: 'Bebas'; font-style: normal; font-weight: bold; src: url("../fonts/bebas/bebasneuebold.eot"); src: url("../fonts/bebas/bebasneuebold.eot?#iefix") format("embedded-opentype"), url("../fonts/bebas/bebasneuebold.woff") format("woff"), url("../fonts/bebas/bebasneuebold.ttf") format("truetype"); }

@font-face { font-family: 'icomoon'; src: url("../fonts/icomoon.eot?485l2u"); src: url("../fonts/icomoon.eot?485l2u#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?485l2u") format("truetype"), url("../fonts/icomoon.woff?485l2u") format("woff"), url("../fonts/icomoon.svg?485l2u#icomoon") format("svg"); font-weight: normal; font-style: normal; }

[class^="icon-"], [class*=" icon-"] { /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'icomoon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.icon-gear:before { content: "\f02f"; }

.icon-home:before { content: "\e900"; }

.icon-home02:before { content: "\e901"; }

.icon-office:before { content: "\e902"; }

.icon-newspaper:before { content: "\e903"; }

.icon-image:before { content: "\e904"; }

.icon-images:before { content: "\e905"; }

.icon-camera:before { content: "\e906"; }

.icon-headphones:before { content: "\e907"; }

.icon-play:before { content: "\e908"; }

.icon-film:before { content: "\e909"; }

.icon-connection:before { content: "\e90a"; }

.icon-mic:before { content: "\e90b"; }

.icon-book:before { content: "\e90c"; }

.icon-file-text:before { content: "\e90d"; }

.icon-profile:before { content: "\e90e"; }

.icon-file-empty:before { content: "\e90f"; }

.icon-files-empty:before { content: "\e910"; }

.icon-file-text2:before { content: "\e911"; }

.icon-file-picture:before { content: "\e912"; }

.icon-file-music:before { content: "\e913"; }

.icon-file-play:before { content: "\e914"; }

.icon-file-video:before { content: "\e915"; }

.icon-file-zip:before { content: "\e916"; }

.icon-copy:before { content: "\e917"; }

.icon-folder:before { content: "\e918"; }

.icon-folder-open:before { content: "\e919"; }

.icon-price-tag:before { content: "\e91a"; }

.icon-price-tags:before { content: "\e91b"; }

.icon-cart:before { content: "\e91c"; }

.icon-phone:before { content: "\e91d"; }

.icon-phone-hang-up:before { content: "\e91e"; }

.icon-envelop:before { content: "\e91f"; }

.icon-pushpin:before { content: "\e920"; }

.icon-location:before { content: "\e921"; }

.icon-location2:before { content: "\e922"; }

.icon-clock:before { content: "\e923"; }

.icon-clock2:before { content: "\e924"; }

.icon-stopwatch:before { content: "\e925"; }

.icon-display:before { content: "\e926"; }

.icon-tablet:before { content: "\e927"; }

.icon-tv:before { content: "\e928"; }

.icon-bubble:before { content: "\e929"; }

.icon-bubbles:before { content: "\e92a"; }

.icon-bubbles2:before { content: "\e92b"; }

.icon-bubble2:before { content: "\e92c"; }

.icon-bubbles3:before { content: "\e92d"; }

.icon-bubbles4:before { content: "\e92e"; }

.icon-spinner:before { content: "\e92f"; }

.icon-spinner2:before { content: "\e930"; }

.icon-spinner3:before { content: "\e931"; }

.icon-spinner4:before { content: "\e932"; }

.icon-spinner5:before { content: "\e933"; }

.icon-spinner6:before { content: "\e934"; }

.icon-spinner7:before { content: "\e935"; }

.icon-spinner8:before { content: "\e936"; }

.icon-spinner9:before { content: "\e937"; }

.icon-spinner10:before { content: "\e938"; }

.icon-spinner11:before { content: "\e939"; }

.icon-search:before { content: "\e93a"; }

.icon-zoom-in:before { content: "\e93b"; }

.icon-zoom-out:before { content: "\e93c"; }

.icon-aid-kit:before { content: "\e93d"; }

.icon-rocket:before { content: "\e93e"; }

.icon-power:before { content: "\e93f"; }

.icon-switch:before { content: "\e940"; }

.icon-tree:before { content: "\e941"; }

.icon-menu:before { content: "\e942"; }

.icon-cloud-check:before { content: "\e943"; }

.icon-sphere:before { content: "\e944"; }

.icon-earth:before { content: "\e945"; }

.icon-link:before { content: "\e946"; }

.icon-attachment:before { content: "\e947"; }

.icon-bookmark:before { content: "\e948"; }

.icon-bookmarks:before { content: "\e949"; }

.icon-star-empty:before { content: "\e94a"; }

.icon-star-full:before { content: "\e94b"; }

.icon-heart:before { content: "\e94c"; }

.icon-man:before { content: "\e94d"; }

.icon-woman:before { content: "\e94e"; }

.icon-man-woman:before { content: "\e94f"; }

.icon-plus:before { content: "\e950"; }

.icon-minus:before { content: "\e951"; }

.icon-cross:before { content: "\e952"; }

.icon-checkmark:before { content: "\e953"; }

.icon-checkmark2:before { content: "\e954"; }

.icon-play3:before { content: "\e955"; }

.icon-stop2:before { content: "\e956"; }

.icon-volume-high:before { content: "\e957"; }

.icon-volume-medium:before { content: "\e958"; }

.icon-volume-low:before { content: "\e959"; }

.icon-volume-mute:before { content: "\e95a"; }

.icon-volume-mute2:before { content: "\e95b"; }

.icon-circle-up:before { content: "\e95c"; }

.icon-circle-right:before { content: "\e95d"; }

.icon-circle-down:before { content: "\e95e"; }

.icon-circle-left:before { content: "\e95f"; }

.icon-ctrl:before { content: "\e960"; }

.icon-share2:before { content: "\e961"; }

.icon-mail:before { content: "\e962"; }

.icon-mail2:before { content: "\e963"; }

.icon-mail3:before { content: "\e964"; }

.icon-mail4:before { content: "\e965"; }

.icon-google:before { content: "\e966"; }

.icon-google-plus:before { content: "\e967"; }

.icon-google-plus2:before { content: "\e968"; }

.icon-google-plus3:before { content: "\e969"; }

.icon-facebook:before { content: "\e96a"; }

.icon-facebook2:before { content: "\e96b"; }

.icon-facebook3:before { content: "\e96c"; }

.icon-instagram:before { content: "\e96d"; }

.icon-twitter:before { content: "\e96e"; }

.icon-twitter2:before { content: "\e96f"; }

.icon-twitter3:before { content: "\e970"; }

.icon-feed2:before { content: "\e971"; }

.icon-feed3:before { content: "\e972"; }

.icon-feed4:before { content: "\e973"; }

.icon-youtube:before { content: "\e974"; }

.icon-youtube2:before { content: "\e975"; }

.icon-youtube3:before { content: "\e976"; }

.icon-vimeo:before { content: "\e977"; }

.icon-vimeo2:before { content: "\e978"; }

.icon-vimeo3:before { content: "\e979"; }

.icon-dropbox:before { content: "\e97a"; }

.icon-onedrive:before { content: "\e97b"; }

.icon-github4:before { content: "\e97c"; }

.icon-github5:before { content: "\e97d"; }

.icon-wordpress:before { content: "\e97e"; }

.icon-tumblr:before { content: "\e97f"; }

.icon-tumblr2:before { content: "\e980"; }

.icon-apple:before { content: "\e981"; }

.icon-android:before { content: "\e982"; }

.icon-windows8:before { content: "\e983"; }

.icon-skype:before { content: "\e984"; }

.icon-pinterest:before { content: "\e985"; }

.icon-pinterest2:before { content: "\e986"; }

.icon-file-pdf:before { content: "\e987"; }

.icon-file-openoffice:before { content: "\e988"; }

.icon-file-word:before { content: "\e989"; }

.icon-file-excel:before { content: "\e98a"; }

.icon-libreoffice:before { content: "\e98b"; }

.icon-git:before { content: "\e98c"; }

.icon-chrome:before { content: "\e98d"; }

.icon-firefox:before { content: "\e98e"; }

.icon-IE:before { content: "\e98f"; }

.icon-opera:before { content: "\e990"; }

.icon-safari:before { content: "\e991"; }

/*default_comp*/
.center { text-align: center !important; }

.left { text-align: left !important; }

.right { text-align: right !important; }

.top0 { margin-top: 0 !important; }

.top5 { margin-top: 0.35714rem !important; }

.top10 { margin-top: 0.71429rem !important; }

.top15 { margin-top: 1.07143rem !important; }

.top20 { margin-top: 1.42857rem !important; }

.top25 { margin-top: 1.78571rem !important; }

.top30 { margin-top: 2.14286rem !important; }

.top35 { margin-top: 2.5rem !important; }

.top40 { margin-top: 2.85714rem !important; }

.btm0 { margin-bottom: 0 !important; }

.btm5 { margin-bottom: 0.35714rem !important; }

.btm10 { margin-bottom: 0.71429rem !important; }

.btm15 { margin-bottom: 1.07143rem !important; }

.btm20 { margin-bottom: 1.42857rem !important; }

.btm25 { margin-bottom: 1.78571rem !important; }

.btm30 { margin-bottom: 2.14286rem !important; }

.btm35 { margin-bottom: 2.5rem !important; }

.btm40 { margin-bottom: 2.85714rem !important; }

.btm45 { margin-bottom: 3.21429rem !important; }

.btm50 { margin-bottom: 3.57143rem !important; }

.btm55 { margin-bottom: 3.92857rem !important; }

.btm60 { margin-bottom: 4.28571rem !important; }

.btm65 { margin-bottom: 4.64286rem !important; }

.btm70 { margin-bottom: 5rem !important; }

.btm75 { margin-bottom: 5.35714rem !important; }

.btm80 { margin-bottom: 5.71429rem !important; }

.btm85 { margin-bottom: 6.07143rem !important; }

.btm90 { margin-bottom: 6.42857rem !important; }

.btm95 { margin-bottom: 6.78571rem !important; }

.pT0 { padding-top: 0 !important; }

.pT5 { padding-top: 0.35714rem !important; }

.pT10 { padding-top: 0.71429rem !important; }

.pT15 { padding-top: 1.07143rem !important; }

.pT20 { padding-top: 1.42857rem !important; }

.pT25 { padding-top: 1.78571rem !important; }

.pT30 { padding-top: 2.14286rem !important; }

.pT35 { padding-top: 2.5rem !important; }

.pT40 { padding-top: 2.85714rem !important; }

.pT45 { padding-top: 3.21429rem !important; }

.pT80 { padding-top: 5.71429rem !important; }

.pT90 { padding-top: 6.42857rem !important; }

.pT100 { padding-top: 7.14286rem !important; }

.pB0 { padding-bottom: 0 !important; }

.pB5 { padding-bottom: 0.35714rem !important; }

.pB10 { padding-bottom: 0.71429rem !important; }

.pB15 { padding-bottom: 1.07143rem !important; }

.pB20 { padding-bottom: 1.42857rem !important; }

.pL10 { padding-left: 0.71429rem !important; }

.lm5 { margin-left: 0.35714rem !important; }

.lm10 { margin-left: 0.71429rem !important; }

.lm15 { margin-left: 1.07143rem !important; }

.lm20 { margin-left: 1.42857rem !important; }

.lm50 { margin-left: 3.57143rem !important; }

.lm60 { margin-left: 4.28571rem !important; }

.lm70 { margin-left: 5rem !important; }

.rm5 { margin-right: 0.35714rem !important; }

.rm10 { margin-right: 0.71429rem !important; }

.rm15 { margin-right: 1.07143rem !important; }

.rm20 { margin-right: 1.42857rem !important; }

.vAT { vertical-align: top !important; }

.vAM { vertical-align: middle !important; }

.vAB { vertical-align: bottom !important; }

.size10 { font-size: 57% !important; line-height: 1.3 !important; }

.size11 { font-size: 65% !important; line-height: 1.3 !important; }

.size12 { font-size: 70% !important; line-height: 1.3 !important; }

.size13 { font-size: 77% !important; line-height: 1.3 !important; }

.size14 { font-size: 85% !important; }

.size15 { font-size: 93% !important; }

.size16 { font-size: 100% !important; }

.size17 { font-size: 116% !important; }

.size18 { font-size: 123.1% !important; }

.size19 { font-size: 131% !important; }

.size20 { font-size: 138.5% !important; }

.size21 { font-size: 146.5% !important; }

.size22 { font-size: 153.9% !important; }

.size23 { font-size: 161.6% !important; }

.size24 { font-size: 167% !important; }

.w10 { width: 10% !important; }

.w20 { width: 20% !important; }

.w30 { width: 30% !important; }

.w40 { width: 40% !important; }

.w50 { width: 50% !important; }

.w60 { width: 60% !important; }

.w70 { width: 70% !important; }

.w80 { width: 80% !important; }

.w100 { width: 100% !important; }

.red { color: #ce3838 !important; }

.pink { color: #e3365f !important; }

.bold { font-weight: bold; }

.normal { font-weight: normal; }

.icon { margin-right: 0.21429rem; vertical-align: middle; margin-top: -0.07143rem; }

.f_l { float: left !important; }

.f_r { float: right !important; }

.mr { margin-right: 2.14286rem !important; }

.ml { margin-left: 2.14286rem !important; }

.clearfix:after { content: "."; height: 0; clear: both; display: block; font-size: 0.1em; line-height: 0; visibility: hidden; }

.clearfix { display: inline-block; min-height: 1%; clear: both; }

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }

a { text-decoration: none; color: #000; }

a.link01 { background: url(../image/sub_yajirushi02.gif) no-repeat left 0.35714rem; text-decoration: underline; padding-left: 0.85714rem; }

a.link01:hover { text-decoration: none; }

ol.num01 { margin-bottom: 0.5rem; }

ol.num01 li { list-style: inside decimal; text-indent: -1em; padding-left: 1em; line-height: 150%; margin-bottom: 0.21429rem; }

ol.num01 li.last { margin-bottom: 0; }

ol.num01 li p { text-indent: 0; }

/*num01*/
ul.num01 { margin-bottom: 0.5rem; }

ul.num01 li { list-style: inside disc; text-indent: -1em; padding-left: 1em; line-height: 150%; margin-bottom: 0.21429rem; }

ul.num01 li.last { margin-bottom: 0; }

ul.num02 { margin-bottom: 0.5rem; }

ul.num02 li { list-style: inside square; text-indent: -1em; padding-left: 1em; line-height: 150%; margin-bottom: 0.21429rem; }

ul.num02 li.last { margin-bottom: 0; }

ul.num03 { margin-bottom: 0.5rem; }

ul.num04 { margin-bottom: 0; }

ul.num04 li { margin-bottom: 0.21429rem; }

ul.num04 li.last { margin-bottom: 0; }

ul.num05 { margin-bottom: 0px; }

ul.num05 li { margin-bottom: 0.42857rem; text-indent: -1em; padding-left: 1em; }

ul.num05 li.last { margin-bottom: 0; }

ul.num05 li a { text-decoration: underline; }

ul.num05 li a:hover { text-decoration: none; }

a.pdf:hover { text-decoration: underline; }

a.pdf::after { content: url(/common/image/icon01.png); padding-left: 0.35714rem; }

a.exl:hover { text-decoration: underline; }

a.exl::after { content: url(/common/image/icon02.png); padding-left: 0.35714rem; }

a.word:hover { text-decoration: underline; }

a.word::after { content: url(/common/image/icon03.png); padding-left: 0.35714rem; }

a.bra::after { content: url(/common/image/icon04.png); padding-left: 0.35714rem; }

a.bra:hover { text-decoration: underline; }

.ta01 { width: 100%; margin-bottom: 2.14286rem; }

.ta01 table { border-left: solid 0.07143rem #ccc; border-top: solid 0.07143rem #ccc; width: 100%; }

.ta01 table th, .ta01 table td { border-bottom: solid 0.07143rem #ccc; border-right: solid 0.07143rem #ccc; padding: 1.07143rem; }

.ta01 table th { text-align: center; font-weight: bold; background: #eee; color: #000; }

.ta01 table th.md05 { text-align: left; background: #fff; padding: 4.28571rem 1.07143rem 1.07143rem; }

.ta01 table th.md04 { background: #00a99d; color: #000; }

.ta01 table th.md03 { background: #eee; color: #000; }

.ta01 table th.md02 { background: #000; color: #fff; }

.ta01 table th.md01 { background: #FFF000; color: #fff; }

.ta02 { margin-bottom: 2.14286rem; }

.ta02 table { border-left: solid 0.14286rem #ccc; border-top: solid 0.14286rem #ccc; width: 100%; }

.ta02 table th, .ta02 table td { border-bottom: solid 0.14286rem #ccc; border-right: solid 0.14286rem #ccc; padding: 1.42857rem 0.71429rem; }

.ta02 table td { color: #fff; }

.ta02 table td.nai001 { background: #fff; color: #000; }

.ta02 table td.nai002 { background: #0b2a59; color: #fff; }

.ta02 table th { text-align: center; font-weight: bold; background: #eee; }

.ta02 table th.md04 { background: #00a99d; color: #fff; padding: 0.64286rem 0.71429rem; }

.ta02 table th.md03 { background: none; color: #fff; }

.ta02 table th.md02 { background: #000; color: #fff; padding: 0.64286rem 0.71429rem; }

.ta02 table th.md01 { background: #FFF000; color: #000; }

.dis001 { display: none !important; }

.dis002 { display: inline !important; }

.hide { display: none; }

hr.map_link01 { position: absolute; top: -5rem; border: none; font-size: 0; }

input.f001 { vertical-align: top; }

input.textFocus { color: #333; }

input.long, input.wSS, input.wS, input.wM, input.wL, input.wLL { background-color: #f2f2f2; border: 0.07143rem solid #ddd; font-size: 1.14286rem; line-height: 140%; padding: 1.42857rem 1.85714rem; }

input { vertical-align: middle; }

.long { width: 100%; }

.wSS { width: 6.07143rem; }

.wS { width: 12.14286rem; }

.wM { width: 19.28571rem; }

.wL { width: 33.57143rem; }

.wLL { width: 40rem; }

.imeOn { ime-mode: active; }

.imeOff { ime-mode: disabled; }

textarea { background-color: #f2f2f2; border: 0.07143rem solid #ddd; /*height: myFuncRem(100);*/ padding: 0.71429rem; width: 100%; }

option { font-size: 1rem !important; }

label { cursor: pointer; }

label:hover { color: #999; }

input[type="checkbox"], input[type="radio"] { margin-right: 0.21429rem; }

.formErr { color: #e54e52; font-weight: bold; }

input.inputErr, textarea.inputErr { background-color: #fadfde; }

input:focus, textarea:focus, select:focus { background-color: #fff; border: 0.07143rem solid #ddd; }

/*************************** setting end */
body, html { height: 100%; }

body { overflow-x: hidden; }

.box { max-width: 100%; width: 94%; margin: 0 auto 100px; }

.box.project { margin-bottom: 5vw; }

.box_news { max-width: 1400px; width: 94%; margin: 0 auto; }

/**************************************** header */
#h_title { position: fixed; top: 10px; left: 30px; font-weight: bold; font-size: 2.14286rem; z-index: 10; }

#h_title a { display: block; }

#h_title a img { max-width: 70%; }

#side-menu-all { display: block; position: fixed; top: 0; right: 0; width: 50px; height: 50px; z-index: 11; background: #000; }

#side-menu-all .side-menu-btn-area { display: flex; align-items: center; justify-content: center; height: 100%; }

#side-menu-all .side-menu-btn-area .side-menu-btn { position: relative; z-index: 13; cursor: pointer; width: 30px; height: 24px; }

.overlay { content: ""; visibility: hidden; position: fixed; top: 0; left: 0; display: block; width: 100%; height: 100%; background: rgba(0, 0, 0, 0); transition: all 0.5s ease; z-index: 10; }

.side-open .overlay { visibility: visible; cursor: pointer; }

.side-open .overlay::after { visibility: visible; }

.side-open .side-menu { transform: translate3d(0, 100vh, 0); }

.side-menu { position: fixed; top: -100vh; left: 0; width: 100%; height: 100vh; text-align: left; background: rgba(0, 0, 0, 0.9); z-index: 12; transition: all 0.5s ease; /*@include transition(.8s cubic-bezier(.36, .82, .7, .11));*/ transition: 0.8s cubic-bezier(0.7, 0.02, 0.31, 0.96); }

.side-menu a { color: #fff; }

.side-menu_scroll { height: 100vh; padding: 70px 0; }

.side-menu_scroll .side-menu_scroll_in { height: 100%; overflow-x: hidden; -webkit-overflow-scrolling: touch; }

.side-menu_nav { max-width: 800px; width: 94%; height: 100%; margin: 0 auto; }

.side-menu_nav .side-menu_main { display: flex; align-items: center; justify-content: center; height: 100%; }

.side-menu_nav .side-menu_main .side-menu_list li { margin-bottom: 20px; }

.side-menu_nav .side-menu_main .side-menu_list li:last-child { margin-bottom: 0; }

.side-menu_nav .side-menu_main .side-menu_list li a { position: relative; display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; color: #fff; font-size: 1.57143rem; }

.side-menu_nav .side-menu_main .side-menu_list li a::before { position: absolute; bottom: -2px; left: 0; content: ""; background: #fff; width: 0; height: 1px; transition: 0.3s ease-in-out; }

.side-menu_nav .side-menu_main .side-menu_list li a:hover::before { width: 100%; }

.side-menu_works span { display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; color: #fff; font-size: 1.57143rem; margin-bottom: 10px; }

.side-menu_works .side-menu_works_in { padding-left: 25px; border-left: 1px solid #555; }

.side-menu_works .side-menu_works_in .side-menu_works_em { display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i { width: 32%; margin-right: 2%; margin-bottom: 20px; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i:nth-child(3n) { margin-right: 0; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i a { display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; position: relative; line-height: 1.2; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i a::before { position: absolute; bottom: -1px; left: 0; content: ""; background: #fff000; width: 0; height: 1px; transition: 0.3s ease-in-out; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i a:hover::before { width: 100%; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i a em { display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; color: #fff; font-size: 0.92857rem; line-height: 1.2; }

.side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i a em span { display: block; font-size: 0.78571rem; margin-bottom: 0; }

.h_sns { padding-top: 30px; }

.h_sns a { display: block; }

.h_sns a .insta_sns { display: block; position: relative; background-image: url(/common/image/insta_wc.png); background-size: contain; background-position: center center; background-repeat: no-repeat; width: 30px; height: 30px; margin: 0 auto 20px; }

.h_sns a .insta_sns::before { display: block; content: ""; background-image: url(/common/image/insta_bc.png); background-size: contain; background-position: center center; background-repeat: no-repeat; width: 30px; height: 30px; margin: 0 auto; transition: 0.3s ease-in-out; opacity: 0; }

.h_sns a .insta_sns.see::before { opacity: 1; }

.h_sns a .twitter_sns { display: block; position: relative; background-image: url(/common/image/twitter_wc.png); background-size: contain; background-position: center center; background-repeat: no-repeat; width: 30px; height: 30px; margin: 0 auto; }

.h_sns a .twitter_sns::before { display: block; content: ""; background-image: url(/common/image/twitter_bc.png); background-size: contain; background-position: center center; background-repeat: no-repeat; width: 30px; height: 30px; margin: 0 auto; transition: 0.3s ease-in-out; opacity: 0; }

.h_sns a .twitter_sns.see::before { opacity: 1; }

.menu-trigger, .menu-trigger span { display: inline-block; transition: all 0.4s; box-sizing: border-box; }

.menu-trigger { position: relative; width: 100%; height: 100%; }

.menu-trigger span { position: absolute; left: 0; width: 100%; background-color: #fff; height: 2px; border-radius: 2px; }

.menu-trigger span:nth-of-type(1) { top: 0; }

.menu-trigger span:nth-of-type(2) { top: 11px; }

.menu-trigger span:nth-of-type(3) { bottom: 0; }

/*action*/
.menu-trigger.active span:nth-of-type(1) { background-color: #fff000; transform: translateY(11px) rotate(-45deg); }

.menu-trigger.active span:nth-of-type(2) { left: 50%; opacity: 0; -webkit-animation: active-menu-bar02 0.8s forwards; animation: active-menu-bar02 0.8s forwards; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

@-webkit-keyframes active-menu-bar02 { 100% { height: 0; } }

@keyframes active-menu-bar02 { 100% { height: 0; } }

.menu-trigger.active span:nth-of-type(3) { background-color: #fff000; transform: translateY(-11px) rotate(45deg); }

/**************************************** header end */
/**************************************** footer */
footer { padding: 30px 0; }

footer p { text-align: center; }

footer p small { font-size: 0.92857rem; color: #666; }

/**************************************** footer end */
#news_project { font-size: 1.5rem; font-weight: bold; }

#news_project.news { padding-top: 50px; }

.news_list { margin-top: 20px; }

.news_list li { border-bottom: 1px solid #f0f0f0; }

.news_list li:last-child { border-bottom: none; }

.news_list li a { display: flex; align-items: flex-start; justify-content: flex-start; padding: 20px 20px 20px 0; }

.news_list li a.news { display: block !important; }

.news_list li a .news_left { display: flex; align-items: flex-start; justify-content: flex-start; }

.news_list li a .news_left .news_time { color: #999; font-size: 1rem; }

.news_list li a .news_left .news_tag { font-size: 1rem; font-weight: bold; margin-left: 15px; min-width: 70px; }

.news_list li a .news_right.news { margin-left: 0; }

.news_list li a .news_right .news_txt { display: block; font-size: 1.14286rem; line-height: 1.5; }

.news_list li a .news_right .news_txt.news { margin-top: 10px; }

.news_list li a .news_right .news_txt em { background-image: linear-gradient(90deg, #fff000, #fff000); /* 線の色 */ background-repeat: no-repeat; background-position: left bottom; /* 線の起点を左・下に設定 */ background-size: 0 3px; /* 線の横幅を0、縦幅を1pxに */ transition: background-size 0.3s; /* 線を伸ばすアニメーション実行時間を指定 */ }

.news_list li a:hover .news_right .news_txt em { background-size: 100% 3px; /* 線の横幅を100%にする */ }

.view_all_area { text-align: right; }

.view_all_area.rev { text-align: left; }

.view_all_area .view_all { display: -moz-inline-stack; display: inline-block; vertical-align: middle; *vertical-align: auto; zoom: 1; *display: inline; font-size: 1rem; line-height: 1.5; margin-top: 20px; margin-bottom: 60px; position: relative; z-index: 0; background: #000; color: #fff; transition: 0.3s ease-in-out; padding: 5px 15px; }

.view_all_area .view_all::before { position: absolute; top: 0; left: 0; content: ""; background: #fff000; width: 0; height: 100%; transition: 0.3s ease-in-out; z-index: -1; }

.view_all_area .view_all span { margin-right: 20px; }

.view_all_area .view_all span::before { position: absolute; content: ""; top: 50%; right: 10px; width: 10px; height: 1px; background: #fff; z-index: 0; transition: 0.3s ease-in-out; }

.view_all_area .view_all span::after { position: absolute; content: ""; top: 50%; right: 10px; margin-top: -2px; width: 5px; height: 1px; background: #fff; z-index: 0; transform: rotate(45deg); transition: 0.3s ease-in-out; }

.view_all_area .view_all span.rev { margin-right: 0; margin-left: 20px; }

.view_all_area .view_all span.rev::before { position: absolute; content: ""; top: 50%; left: 0; width: 10px; height: 1px; background: #000; z-index: 0; }

.view_all_area .view_all span.rev::after { position: absolute; content: ""; top: 50%; left: 0; margin-top: -2px; width: 5px; height: 1px; background: #000; z-index: 0; transform: rotate(-45deg); }

.view_all_area .view_all:hover { color: #000; }

.view_all_area .view_all:hover::before { width: 100%; }

.view_all_area .view_all:hover span::before, .view_all_area .view_all:hover span::after { background: #000; right: 5px; }

.pvn_nav { max-width: 600px; width: 100%; margin: 0 auto; }

.pvn_nav .pvn_list { display: table; width: 100%; }

.pvn_nav .pvn_list li { display: table-cell; width: calc(100% / 3); }

.pvn_nav .pvn_list li a { font-size: 1rem; line-height: 1.5; text-align: center; padding: 15px 0; display: block; margin: 0 10px; transition: 0.3s ease-in-out; }

.pvn_nav .pvn_list li a.prev_btn { position: relative; z-index: 0; }

.pvn_nav .pvn_list li a.prev_btn::before { position: absolute; content: ""; top: 50%; left: 25px; width: 20px; height: 1px; background: #000; z-index: 0; transition: 0.3s ease-in-out; }

.pvn_nav .pvn_list li a.prev_btn::after { position: absolute; content: ""; top: 50%; left: 25px; margin-top: -2px; width: 7px; height: 1px; background: #000; z-index: 0; transform: rotate(-45deg); transition: 0.3s ease-in-out; }

.pvn_nav .pvn_list li a.view_btn { background: #000; color: #fff; }

.pvn_nav .pvn_list li a.next_btn { position: relative; z-index: 0; }

.pvn_nav .pvn_list li a.next_btn::before { position: absolute; content: ""; top: 50%; right: 25px; width: 20px; height: 1px; background: #000; z-index: 0; transition: 0.3s ease-in-out; }

.pvn_nav .pvn_list li a.next_btn::after { position: absolute; content: ""; top: 50%; right: 25px; margin-top: -2px; width: 7px; height: 1px; background: #000; z-index: 0; transform: rotate(45deg); transition: 0.3s ease-in-out; }

.pvn_nav .pvn_list li a:hover { color: #000; background: #fff000; }

.pvn_nav .pvn_list li a:hover.prev_btn::before { left: 20px; }

.pvn_nav .pvn_list li a:hover.prev_btn::after { left: 20px; }

.pvn_nav .pvn_list li a:hover.next_btn::before { right: 20px; }

.pvn_nav .pvn_list li a:hover.next_btn::after { right: 20px; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { /*line-height: normal;*/ line-height: 1.7; box-sizing: border-box; }

@media all and (-ms-high-contrast: none) { body { font-family: Verdana, Meiryo, sans-serif; } }

@media screen and (max-width: 768px) { .f_l { float: none !important; margin-bottom: 0.71429rem; }
  .f_r { float: none !important; margin-bottom: 0.71429rem; }
  .mr { margin-right: 0 !important; }
  .ml { margin-left: 0 !important; }
  table .w10 { width: 100% !important; }
  table .w20 { width: 100% !important; }
  table .w30 { width: 100% !important; }
  table .w40 { width: 100% !important; }
  table .w50 { width: 100% !important; }
  table .w60 { width: 100% !important; }
  table .w70 { width: 100% !important; }
  table .w80 { width: 100% !important; } .dis001 { display: inline !important; }
  .dis002 { display: none !important; }
  .ta01 table th, .ta01 table td { display: block; width: 100%; }
  .ta01 table th { padding: 0.71429rem 1.07143rem; }
  .ta02 { /* overflow-x: scroll;*/ }
  .ta02 table { display: table; position: relative; }
  .ta02 table thead { /* display: block; float: left;*/ }
  .ta02 table tbody { /* display: block; position: relative; width: auto; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch;*/ }
  .ta02 table tbody.acc { white-space: inherit !important; }
  .ta01.lon01 { overflow-x: scroll; }
  .ta01.lon01 table th, .ta01.lon01 table td { display: table-cell; width: 100%; }
  .ta01.lon01 table { display: table; position: relative; }
  .ta01.lon01 thead { display: block; float: left; }
  .ta01.lon01 tbody { display: block; position: relative; width: auto; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
  .ta01.lon01 tbody.acc { white-space: inherit !important; } hr.map_link01 { position: absolute; top: -4.28571rem; border: none; font-size: 0; }
  #sixth_area hr.map_link01 { position: absolute; top: -8.57143rem; border: none; font-size: 0; } }

@media screen and (max-width: 1000px) { .wL { width: 100%; } .wLL { width: 100%; } .imeOff { me-mode: auto; } .box { margin: 0 auto 40px; } #h_title a img { max-width: 50%; } #h_title { left: 20px; } .side-menu_scroll .side-menu_scroll_in { overflow-y: scroll; } .side-menu_nav .side-menu_main .side-menu_list { height: 100%; } .side-menu_works .side-menu_works_in .side-menu_works_em .side-menu_works_i { width: 100%; margin-right: 0; margin-bottom: 15px; } .side-menu_works .side-menu_works_in .side-menu_works_em { flex-direction: column; } footer p small { font-size: 0.64286rem; } footer { padding: 20px 0; clear: both; overflow: hidden; } #news_project { display: block; font-size: 1.14286rem; text-align: center; margin-bottom: 50px; font-weight: bold; padding-top: 70px; } #news_project.news { padding-top: 40px; margin-bottom: 0; } .news_list li a .news_left .news_time { font-size: 0.92857rem; } .news_list li a .news_left .news_tag { font-size: 0.92857rem; margin-left: 0; min-width: 0; } .news_list li a .news_left { flex-direction: column; min-width: 85px; } .news_list li a .news_right .news_txt { font-size: 0.92857rem; } .news_list { margin-top: 10px; } .view_all_area .view_all { margin-bottom: 0; } .view_all_area .view_all.news { margin-bottom: 60px; } .pvn_nav .pvn_list li a { font-size: 0.92857rem; padding: 10px 0; margin: 10px 0; } .pvn_nav .pvn_list li { display: block; width: 100%; } .pvn_nav .pvn_list { display: flex; align-items: center; justify-content: center; flex-direction: column; } .pvn_nav { max-width: 300px; } }

@media screen and (max-width: 320px) { html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-size: 92.85714%; } }

@media (min-width: 321px) and (max-width: 1000px) { html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-size: calc(92.85714% + 1 * (100vw - 321px) / 680); } }

@media all and (min-width: 321px) and (max-width: 1000px) and (-ms-high-contrast: none) { html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-size: calc(13px + 1 * (100vw - 321px) / 680); } }

@media screen and (min-width: 1001px) { html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-size: 87.5%; } }
