@charset 'utf-8';

/* ------------------------------------------------------------

  SP | Preset

------------------------------------------------------------ */

/*
 variable
----------------------------------------*/
:root {
  /* font-size */
  --font-size-L: 2.6rem;
  --font-size-M: 1.6rem;
  --font-size-S: 1.4rem;

  /* global header height */
  --global-header-height: 68px;
}


/*
 fonts -[import]-
----------------------------------------*/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Roboto);


/*
 swiper -[js]-
----------------------------------------*/
.swiper-pagination {
  margin-top: 12px;
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
}


/*
 viewer -[js]-
----------------------------------------*/

.leaflet-container {
  border: none!important;
  background-color: #fff!important;
}
.leaflet-container .leaflet-control {
  border-radius: 8px;
  margin: 0!important;
  padding: 4px;
  box-shadow: 0px 1px 4px rgb(0 0 0 / 30%)!important;
  background-color: #fff;
}
.leaflet-container .leaflet-top {
  top: auto;
  bottom: 16px;
}
.csr_policy_wrap .leaflet-container .leaflet-top {
  bottom: auto;
  top: 16px;
}
.leaflet-container .leaflet-left {
  left: auto;
  right: 16px;
}
.leaflet-container .leaflet-control-zoom-in,
.leaflet-container .leaflet-control-zoom-out {
  font-size: 20px!important;
  color: #5b5b5b!important;
  line-height: 22px!important;
  border-bottom-color: #e2e2e2!important;
  width: 22px!important;
  height: 22px!important;
}
.leaflet-container .leaflet-bar {
  border: none!important;
}
.leaflet-container a.leaflet-disabled {
  color: #cbcbcb!important;
  background-color: transparent!important;
}


/*
 drawer -[js]-
----------------------------------------*/
/* button */
#drawerButton {
  line-height: 2;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 2;
  order: 2;
  width: 24px;
  height: 0;
  margin-left: 16px;
  padding-top: 24px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225%22%20height%3D%2225%22%20viewBox%3D%220%200%2025%2025%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_99%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2099%22%3E%20%3Crect%20id%3D%22Boundary%22%20width%3D%2225%22%20height%3D%2225%22%20fill%3D%22none%22%2F%3E%20%3C%2Fg%3E%20%3Cpath%20id%3D%22_Color%22%20data-name%3D%22%20%E2%86%B3Color%22%20d%3D%22M19%2C12H0V10H19v2Zm0-5H0V5H19V7Zm0-5H0V0H19V2Z%22%20transform%3D%22translate(3%206)%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E');
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
  cursor: pointer;
  overflow: hidden;
}

/* menu */
#globalMenu {
  display: none;
}
html #globalMenu2[data-is-active="true"] {
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

/* overlay */
html[data-is-fixed="true"] #overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 8999;
  width: 100%;
  height: 100%;
/*background-color: rgba(0,0,0,0.2);*/
}

/*
 showmore -[js]-
----------------------------------------*/
/* article */
#article .content {
  -webkit-transition: opacity 0.5s cubic-bezier(1, 0, 0, 1);
  transition: opacity 0.5s cubic-bezier(1, 0, 0, 1);
}
#article .content[data-is-active="false"] {
  position: absolute;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
}
#article .content[data-is-active="true"] {
  visibility: visible;
  opacity: 1;
}
#article [data-left] {
  display: none;
}


/*
 back to top -[js]-
----------------------------------------*/
#backToTopButton {
  line-height: 2;
  border-radius: 22px;
  width: 44px;
  height: 0;
  padding-top: 44px;
  background-color: #007871;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cpath%20d%3D%22M18%2015l-6-6-6%206%22%2F%3E%3C%2Fsvg%3E');
  background-position: center 32%;
  background-repeat: no-repeat;
  -webkit-background-size: 80% 80%;
  background-size: 80% 80%;
  overflow: hidden;
}


/*
 html -[module]-
----------------------------------------*/
html {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}


/*
 body -[module]-
----------------------------------------*/
body {
  font-family: Roboto, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ ProN W3', 'Noto Sans JP', sans-serif;
  font-feature-settings: 'palt';
  letter-spacing: .04em;
}


/*
 anchor -[module]-
----------------------------------------*/
a[href] {
  font-size: 1.4rem;
  -webkit-tap-highlight-color: rgba(0, 120, 113, 0.32);
  tap-highlight-color: rgba(0, 120, 113, 0.32);
}


/*
 font-size -[module]-
----------------------------------------*/
.fsL {font-size: 2.6rem}
.fsM {font-size: 1.6rem}
.fsS {font-size: 1.4rem}


/*
 container -[module]-
----------------------------------------*/
#container {
  font-size: 1.60rem;
  overflow: hidden;
  overflow-x: hidden;
}


/*
 header -[module]-
----------------------------------------*/
#header {
  margin-bottom: 40px;
}

/* global_header */
#globalHeader {
  position: relative;
  height: var(--global-header-height);
}
#globalHeaderInner {
  box-sizing: border-box;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  height: var(--global-header-height);
  padding: 16px;
}
#globalHeader .navigation {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
#globalMenu2 {
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 80%;
  max-width: 414px;
  height: 100%;
  padding: 32px 16px;
  background-color: #f2f2f2;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  transition: -webkit-transform .2s linear;
  transition: transform .2s linear;
  transition: transform .2s linear, -webkit-transform .2s linear;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
}
#globalMenu2::-webkit-scrollbar {
  display: none;
}
#globalMenu2 #globalMenuList > li {
  position: relative;
  height: 100%;
}
#globalMenu2 #globalMenuList > li + li {
  margin-top: 20px;
}
#globalMenu2 li[data-is-active]::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23707070%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cline%20x1%3D%2212%22%20y1%3D%225%22%20x2%3D%2212%22%20y2%3D%2219%22%3E%3C%2Fline%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#globalMenu2 li[data-is-active="true"]::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23707070%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
}
#globalMenu2 li > .link {
  font-size: 1.6rem;
  font-weight: bold;
  color: #333;
  line-height: 1.25;
  position: relative;
  display: block;
  padding-left: 16px;
}
#globalMenu2 li > .link::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  margin-top: -4px;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent;
  border-left-color: #007871;
}
#globalMenu2 li[data-is-active] > .link {
  text-decoration: none!important;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}
#globalMenu2 li[data-is-active="true"] > .link::before {
/*transform: rotate(90deg);*/
}
#globalMenu2 [data-menu] {
  max-height: 0vh;
  opacity: 0;
  visibility: hidden;
}
#globalMenu2 [data-is-active="true"] [data-menu] {
  max-height: 100%;
  opacity: 1;
  visibility: visible;
}
#globalMenu2 [data-menu] .inner {
  padding-top: 16px;
  padding-left: 16px;
}
#globalMenu2 [data-menu] .heading {
  font-size: 1.4rem;
  color: #333;
  position: relative;
  padding-left: 16px;
}
#globalMenu2 [data-menu] .heading::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  margin-top: -4px;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent;
  border-left-color: #007871;
}
#globalMenu2 [data-menu] .heading a {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

#globalMenu2 [data-menu] .subHeading a {
  display: block;
  margin: 20px 0 0 0;
  font-size: 1.4rem;
  font-weight: bold;
}

#globalMenuList [data-menu] .list > li {
  margin-top: 12px;
}
#globalMenuList [data-menu] .list a {
  color: #333;
  position: relative;
  display: block;
  padding-left: 16px;
}
#globalMenuList [data-menu] .list a::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  margin-top: -4px;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent;
  border-left-color: #007871;
}
#globalFunction {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 1;
  order: 1;
}

/* logo */
#nttcom .logo {
  width: 11.6rem;
}
#nttcom .logo > span {
  line-height: 2;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 31.89%;
  background-image: url(/_cmn/img/globalHeader_logo.png);
  background-position: center top;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#nttcom {
  -webkit-box-flex: 1;
  flex: 1;
}

/*global function*/
#globalFunction {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}

/* language */
#globalFunction1 {
  display: none;
}

/* contact */
#globalFunction2 {
  display: none;
}

/* search */
#globalFunction3 {
  outline: none;
  border: none;
  padding: 0;
  background-color: transparent;
  appearance: none;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 120, 113, 0.32);
  tap-highlight-color: rgba(0, 120, 113, 0.32);
}
#globalFunction3 > span {
  line-height: 2;
  display: block;
  width: 1.6rem;
  height: 0;
  padding-top: 1.6rem;
  overflow: hidden;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.207%22%20height%3D%2217.207%22%20viewBox%3D%220%200%2017.207%2017.207%22%3E%20%3Cg%20id%3D%22search%22%20transform%3D%22translate(-3.5%20-3.5)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_203%22%20data-name%3D%22%E3%83%91%E3%82%B9%20203%22%20d%3D%22M14.412%2C14.412%2C20%2C20%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_1%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%201%22%20cx%3D%226%22%20cy%3D%226%22%20r%3D%226%22%20transform%3D%22translate(4%204)%22%20fill%3D%22none%22%20stroke%3D%22%237f7f7f%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
  background-position: left top;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}

/* searchbox */
#headSearch {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#headSearch[data-is-active="true"] {
  visibility: visible;
  z-index: 2;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
}
#headSearch[data-is-active="false"] {
  visibility: hidden;
  z-index: -1;
}
#headSearch form[name="hdSearch"] {
  display: block;
  padding: 16px;
  background-color: #f2f2f2;
}
#headSearch form[name="hdSearch"] input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
#headSearch form[name="hdSearch"] fieldset {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
}
#headSearch form[name="hdSearch"] fieldset input[type="text"] {
  font-family: inherit;
  font-size: 1.6rem;
  box-sizing: border-box;
  -webkit-box-flex: 1;
  flex: 1;
  padding: 4px 8px;
  background-color: #fff;
}
#headSearch form[name="hdSearch"] fieldset input[type="submit"] {
  line-height: 2;
  display: block;
  width: 32px;
  height: 0;
  padding-top: 32px;
  overflow: hidden;
  background-color: #007871;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.207%22%20height%3D%2217.207%22%20viewBox%3D%220%200%2017.207%2017.207%22%3E%20%3Cg%20id%3D%22search%22%20transform%3D%22translate(-3.5%20-3.5)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_5%22%20data-name%3D%22%E3%83%91%E3%82%B9%205%22%20d%3D%22M14.412%2C14.412%2C20%2C20%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_1%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%201%22%20cx%3D%226%22%20cy%3D%226%22%20r%3D%226%22%20transform%3D%22translate(4%204)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 50% 50%;
  background-size: 50% 50%;
}

/* sign */
#sign > img.image,
#sign > a img.image {
  display: block;
  width: 100%;
  height: auto;
}

/* breadcrumbs */
#breadcrumbs {
  box-sizing: border-box;
  width: 100%;
  padding: 16px;
}
#breadcrumbs .list {
  display: none;
}
#breadcrumbs .list > li + li::before {
  letter-spacing: -.4em;
  margin: 0 4px;
}


/*
 navigation -[module]-
----------------------------------------*/
/* component- */
.navigation[component="01"] {
  margin-bottom: 40px;
}
.navigation[component="01"] .list {
  letter-spacing: -.5em;
  margin: -8px 0 0 -8px;
}
.navigation[component="01"] .list > li {
  letter-spacing: normal;
  display: inline-block;
  margin: 8px 0 0 8px;
}
.navigation[component="01"] .list > li > .button {
  font-size: 1.4rem;
  font-weight: bold;
  color: #333;
  outline: none;
  border-radius: 4px;
  border: none;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  min-height: 48px;
  padding: 0 16px;
  background-color: #f2f2f2;
}
.navigation[component="01"] .list > li:hover > .button,
.navigation[component="01"] .list > li.is-active > .button {
  color: #fff;
  outline: none;
  border: none;
  background-color: #007871;
}


/*
 main -[module]-
----------------------------------------*/
#main {
  margin-bottom: 40px;
}
#main > * {
  margin-right: 16px;
  margin-left: 16px;
}

/* lead */
#lead {
  margin-bottom: 40px;
}


/*
 footer -[module]-
----------------------------------------*/
#footer::before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #707070;
  margin-bottom: 48px;
}
#footer > * {
  padding-left: 16px;
  padding-right: 16px;
}
#footer > .aside {
  position: relative;
  height: 100%;
}
#footer > .aside + .aside {
  margin-top: 48px;
}

/* navigation */
#footer .navigation[component="footer"] .definition[data-is-active] .team {
  position: relative;
}
#footer .navigation[component="footer"] .definition[data-is-active] .team::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 8px;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#footer .navigation[component="footer"] .definition[data-is-active="false"] .team::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cline%20x1%3D%2212%22%20y1%3D%225%22%20x2%3D%2212%22%20y2%3D%2219%22%3E%3C%2Fline%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
}
#footer .navigation[component="footer"] .definition[data-is-active="true"] .team::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cline%20x1%3D%225%22%20y1%3D%2212%22%20x2%3D%2219%22%20y2%3D%2212%22%3E%3C%2Fline%3E%3C%2Fsvg%3E');
}
#footer .navigation[component="footer"] .definition[data-is-active] .team > .link {
  pointer-events:none;
}
#footer .navigation[component="footer"] .definition[data-is-active] .description {
  padding-left: 16px;
}
#footer .navigation[component="footer"] .definition[data-is-active="false"] .description {
  max-height: 0vh;
  opacity: 0;
  visibility: hidden;
  transition: .2s;
}
#footer .navigation[component="footer"] .definition[data-is-active="true"] .description {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
/*max-height: 100vh;*/
  opacity: 1;
  visibility: visible;
}
#footer .navigation[component="footer"] .definition[data-is-active] .description .paragraph {
  margin-top: 0;
}
#footer .navigation[component="footer"] .definition[data-is-active] .description .paragraph .link {
  color: #707070;
}
#footer .navigation[component="footer"] .definition[data-is-active] .description .paragraph + .paragraph::before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}


/*
 heading -[module]-
----------------------------------------*/
/* component-lv1 */
.heading[component="lv1"] {
  font-size: 2.6rem;
  font-weight: bold;
  color: #333;
  padding: 16px;
}

/* component-lv2 */
.heading[component="lv2"] {
  font-size: 2.6rem;
  color: #333;
  line-height: 1.25;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  margin-bottom: 24px;
}
.heading[component="lv2"] > span {
  -webkit-box-flex: 1;
  flex: 1;
}
.heading[component="lv2"] + .paragraph {
  margin-bottom: 24px;
}

/* component-lv3 */
.heading[component="lv3"] {
  font-size: 1.6rem;
  font-weight: bold;
}


/*
 article -[module]-
----------------------------------------*/
.article + .article {
  margin-top: 48px;
}
.article .section + .section {
  margin-top: 48px;
}
.article > .inner > * + * {
  margin-top: 48px;
}


/*
 aside -[module]-
----------------------------------------*/
/* comwareplus */
.aside[component="comwareplus"] {
  color: #707070;
  margin-bottom: 32px;
}
.aside[component="comwareplus"] .image {
  content: '';
  display: block;
  width: 312px;
  margin-bottom: 16px;
}
@media screen and (max-width:767px) {
.aside[component="comwareplus"] .image {
  width: 100%;
}
}

.aside[component="comwareplus"] a {
  display: block;
}


/*
 definition -[module]-
----------------------------------------*/
.definition[component] .team {
  font-size: 1.6rem;
  line-height: 1.5;
}
.definition[component] .description {
  font-size: 1.4rem;
}

/* component-01 */
.definition[component="01"] > .list {
  position: relative;
  height: 100%;
}
.definition[component="01"] > .list::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
  margin-top: 8px;
}
.definition[component="01"] > .list + .list {
  margin-top: 16px;
}
.definition[component="01"] .description {
  color: #707070;
  margin-top: 4px;
}
.definition[component="01"] .description .link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.definition[component="01"] .description .link:hover ~ p {
  text-decoration: underline;
}

/* component-02 */
.definition[component="02"] .list {
}
.definition[component="02"] .team {
  font-size: 1.4rem;
}
.definition[component="02"] .team:after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}
.definition[component="02"] .link {
  color: #333;
  text-decoration: none;
  display: block;
  padding: 12px 0;
}
.definition[component="02"] .description .paragraph + .paragraph {
  margin-top: 12px;
}

/* component-03 */
.definition[component="03"] > * + * {
  margin-top: 16px;
}
.definition[component="03"] > .list {
  position: relative;
  height: 100%;
}
.definition[component="03"] > .list::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
  margin-top: 16px;
}
.definition[component="03"] > .list + .list {
  margin-top: 16px;
}
.definition[component="03"] .team {
  font-size: 1.6rem;
  font-weight: bold;
  color: #707070;
}
.definition[component="03"] .description {
  font-size: 1.6rem;
  color: #707070;
  margin-top: 4px;
}
.definition[component="03"] .description .link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.definition[component="03"] .description .link:hover ~ p {
  text-decoration: underline;
}
.definition[component="03"] .description .image {
  margin: 8px auto;
  padding: 0 16px;
}
.definition[component="03"] .description .image > img {
  display: block;
  width: 100%;
  height: auto;
}
.definition[component="03"] .description._decimal {
  counter-reset: number;
}
.definition[component="03"] .description .paragraph {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
}
.definition[component="03"] .description._decimal .paragraph {
  list-style-type: decimal;
  position: relative;
  height: 100%;
  padding-left: 1.1em;
}
.definition[component="03"] .description._decimal .paragraph::before {
  counter-increment: number;
  content: counter(number) '\002e';
  position: absolute;
  top: 0;
  left: 0;
}
.definition[component="03"] .description._decimal .paragraph + .paragraph {
  margin-top: 4px;
}
.definition[component="03"] .description .paragraph > span {
  display: block;
  margin-left: 32px;
}
.definition[component="03"] .note {
  font-size: 1.4rem;
  color: #707070;
}
.definition[component="03"] .note::before {
  content: '\00203b';
}


/*
 item -[module]-
----------------------------------------*/
.item[component] img.image {
  display: block;
  width: 100%;
  height: auto;
}
.item[component] .data {
  position: relative;
  height: 100%;
}
.item[component] .data > .link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

/* component-banner */
.item[component="banner"] {
  margin-top: 40px;
  padding: 0 16px;
}
.item[component="banner"] .list a {
  display: block;
}
.item[component="banner"] .list + .list {
  margin-top: 24px;
}
.item[component="banner"] .list > li + li {
  margin-top: 24px;
}
.item[component="banner"] .list .image {
  display: block;
  width: 100%;
  height: auto;
}

/* component-01 */
.item[component="01"] > .list > li + li {
  margin-top: 24px;
}
.item[component="01"] .column {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
}
.item[component="01"] .column > .columnInnerEq1 {
  width: 82px;
  margin-right: 16px;
}
.item[component="01"] .column > .columnInnerEq2 {
  -webkit-box-flex: 1;
  flex: 1;
}
.item[component="01"] .icon {
  font-size: 1.2rem;
  color:#fff;
  line-height: 1;
  border-radius: 4px;
  display: inline-block;
  padding: 4px 8px;
  background-color: #707070;
}
.item[component="01"] .icon + .name {
  margin-top: 2px;
}
.item[component="01"] .name + .description {
  margin-top: 2px;
}
.item[component="01"] .description {
  font-size: 1.4rem;
  color: #707070;
}

/* component-02 */
.item[component="02"] .wrap {
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow:
    0 1px 1px 0 rgba(66, 66, 66, 0.08)
  , 0 1px 3px 1px rgba(66, 66, 66, 0.16)
  ;
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}
.item[component="02"] .wrap:hover {
  box-shadow:
    0 1px 3px 1px rgba(66, 66, 66, 0.2)
  , 0 2px 8px 4px rgba(66, 66, 66, 0.1)
  ;
}
.item[component="02"] a.link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.item[component="02"] .figure > img {
  display: block;
  width: 100%;
  height: auto;
}
.item[component="02"] .columnInnerEq2 {
  padding: 8px;
}
.item[component="02"] .description {
  font-size: 1.4rem;
  color: #707070;
}

/* component-03 */
.item[component="03"] .list > li:after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}
.item[component="03"] .name {
  font-size: 1.4rem;
  padding: 12px 0;
}

/* component-04 */
.item[component="04"] a {
  display: block;
  color: #333;
}
.item[component="04"] a:hover {
  color: #007871;
}
.item[component="04"] .list > li + li {
  margin-top: 16px;
}
.item[component="04"] .name {
  font-size: 1.4rem;
}

.item[component="04"] .list+p {
  margin-top: 16px;
}

/* component-05 */
.item[component="05"] .list > li + li {
  margin-top: 40px;
}
.item[component="05"] .wrap {
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow:
    0 1px 1px 0 rgba(66, 66, 66, 0.08)
  , 0 1px 3px 1px rgba(66, 66, 66, 0.16)
  ;
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}
.item[component="05"] .wrap {
  border-top: 6px solid #007871;
}
.item[component="05"] .wrap:hover {
  box-shadow:
    0 1px 3px 1px rgba(66, 66, 66, 0.2)
  , 0 2px 8px 4px rgba(66, 66, 66, 0.1)
  ;
}
.item[component="05"] a.link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.item[component="05"] .columnInnerEq1 {
  padding: 18px 22px 36px;
}

/* component-06 */
.item[component="06"] .list > li + li {
  margin-top: 40px;
}
.item[component="06"] .wrap {
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
  box-shadow:
    0 1px 1px 0 rgba(66, 66, 66, 0.08)
  , 0 1px 3px 1px rgba(66, 66, 66, 0.16)
  ;
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}
.item[component="06"] .wrap:hover {
  box-shadow:
    0 1px 3px 1px rgba(66, 66, 66, 0.2)
  , 0 2px 8px 4px rgba(66, 66, 66, 0.1)
  ;
}
.item[component="06"] .columnInner {
  border-top: 8px solid #007871;
}
.item[component="06"] .columnInnerEq1 {
  background-color: #fff;
  padding: 16px;
}
.item[component="06"] .columnInnerEq1 .figure {
  width: 61.8%;
}
.item[component="06"] .columnInnerEq1 .figure > img {
  display: block;
  width: 100%;
  height: auto;
}
.item[component="06"] .columnInnerEq1 .figure + * {
  margin-top: 16px;
}
.item[component="06"] .columnInnerEq2 {
  padding: 16px;
}
.item[component="06"] .columnInnerEq2 .description {
  font-size: 1.4rem;
}

/* component-07 */
.item[component="07"] .list > li + li {
  margin-top: 40px;
}
.item[component="07"] .wrap {
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
  box-shadow:
    0 1px 1px 0 rgba(66, 66, 66, 0.08)
  , 0 1px 3px 1px rgba(66, 66, 66, 0.16)
  ;
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}
.item[component="07"] .wrap:hover {
  box-shadow:
    0 1px 3px 1px rgba(66, 66, 66, 0.2)
  , 0 2px 8px 4px rgba(66, 66, 66, 0.1)
  ;
}
.item[component="07"] .columnInner {
  border-top: 8px solid #007871;
}
.item[component="07"] .columnInnerEq1 {
  background-color: #fff;
  padding: 16px;
}
.item[component="07"] .figure > img {
  display: block;
  width: 100%;
  height: auto;
}
.item[component="07"] .figure + * {
  margin-top: 16px;
}
.item[component="07"] .columnInnerEq2 {
  padding: 16px;
}
.item[component="07"] .ruby {
  font-size: 1.4rem;
  color: #707070;
  margin-top: 8px;
}
.item[component="07"] .description {
  font-size: 1.6rem;
}
.item[component="07"] .description::after {
  content: '';
  vertical-align: middle;
  display: inline-block;
  width: .8em;
  height: .8em;
  margin-left: 8px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%2214%22%20viewBox%3D%220%200%2013%2014%22%3E%20%3Cg%20id%3D%22copy%22%20transform%3D%22translate(-3.5%20-2.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_194%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20194%22%20width%3D%229%22%20height%3D%2210%22%20transform%3D%22translate(7%206)%22%20fill%3D%22none%22%20stroke%3D%22%23007871%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_199%22%20data-name%3D%22%E3%83%91%E3%82%B9%20199%22%20d%3D%22M12.918%2C3H4V13.4%22%20fill%3D%22none%22%20stroke%3D%22%23007871%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
  background-position: left top;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
.item[component="07"] .description_dl {
  font-size: 1.6rem;
}
.item[component="07"] .description_dl::before {
  content: '';
  vertical-align: middle;
  display: inline-block;
  width: 15px;
  height: 13px;
  margin-right: 8px;
  background-image: url('/_cmn/img/icon/co_ic_08.gif');
  background-position: left top;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}


/*
 table -[module]-
----------------------------------------*/
.table[component] .scrollArea {
  overflow: auto;
  scroll-behavior: smooth;
}

/* component-01 */
.table[component="01"] {
  margin-bottom: 40px;
}


/*
 button -[module]-
----------------------------------------*/
.button[component] {
  font-size: 1.4rem;
  outline: none;
  border: none;
  padding: 0;
  background-color: transparent;
  appearance: none;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 120, 113, 0.32);
  tap-highlight-color: rgba(0, 120, 113, 0.32);
}

/* function */
.button[component="function"] {
  color: #007871;
  border-radius: 4px;
  border: 1px solid #007871;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 61.80%;
  min-height: 48px;
  margin: 0 auto;
  margin-top: 24px;
  background-color: #fff;
}

/* cv */
.button[component="cv"] {
  color: #fff;
  border-radius: 4px;
  border: 1px solid #D04301;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 61.80%;
  margin: 0 auto;
  min-height: 48px;
  margin-top: 24px;
  background-color: #D04301;
}


/*
 small -[module]-
----------------------------------------*/
small {
  font-size: 1.4rem;
}

/* copyright */
#copyright {
  font-size: 1.2rem;
  display: block;
  padding: 16px;
}


/*
 background-color -[module]-
----------------------------------------*/
/* base */
[bg-color="base"] {
  margin-right: 0!important;
  margin-left: 0!important;
  padding: 40px 16px;
  background-color: #f2f2f2;
}

.text-green {
  color: #019e97 !important;
}

.backnum_link {
  padding-left: 20px;
  display: block;
  height: 40px;
  line-height: 40px;
  background: #ECF9F8;
  border: 1px solid #00b6ac;;
}


/*
 utilites
----------------------------------------*/
.is_pc {
  display: none !important;
}
.is_sp {
  display: block !important;
}