@charset "utf-8";

/* ------------------------------------------------------------

  PC | Preset

------------------------------------------------------------ */

/*
 variable
----------------------------------------*/
:root {
  /* font-size */
  --font-size-L: 3.0rem;
  --font-size-M: 1.6rem;
  --font-size-S: 1.4rem;

  /* min-width */
  --min-width: 960px;
}


/*
 fonts -[import]-
----------------------------------------*/
@import url(https://fonts.googleapis.com/css?family=Roboto);


/*
 viewer -[js]-
----------------------------------------*/
.leaflet-container {
  z-index: -1;
}


/*
 dropdown -[js]-
----------------------------------------*/
@media screen and (max-width:960px) {

  /* 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;
  }

  #globalMenu {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 80%;
    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);
  }

  #globalMenu::-webkit-scrollbar {
    display: none;
  }

  #globalMenu #globalMenuList>li {
    position: relative;
    height: 100%;
  }

  #globalMenu #globalMenuList>li+li {
    margin-top: 24px;
  }

  #globalMenu #globalMenuList>li[data-dropdown]>a {
    display: none;
  }

  #globalMenu #globalMenuList>li[data-is-active="true"]>a {
    display: block;
    width: calc(100% - 32px);
    height: 20px;
  }

  #globalMenu li>span {
    font-size: 1.6rem;
    font-weight: bold;
    color: #333;
    line-height: 1.25;
    position: relative;
    display: block;
    padding-left: 16px;
  }

  #globalMenu li>span::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;
  }

  #globalMenu li[data-is-active="true"]>span::before {
    /*transform: rotate(90deg);*/
  }

  #globalMenu li[data-is-active]>span::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    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%;
  }

  #globalMenu li[data-is-active="true"]>span::after {
    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');
  }

  #globalMenu #globalMenuList>li>a {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
  }

  #globalMenu [data-menu] {
    max-height: 0vh;
    opacity: 0;
    visibility: hidden;
    transition: .2s;
  }

  #globalMenu [data-is-active="true"] [data-menu] {
    max-height: 100vh;
    opacity: 1;
    visibility: visible;
  }

  #globalMenu [data-menu] .inner {
    padding-top: 16px;
    padding-left: 16px;
  }

  #globalMenu [data-menu] .heading {
    font-size: 1.4rem;
    color: #333;
    position: relative;
    display: inline-block;
    margin-bottom: 8px;
    padding-left: 16px;
  }

  #globalMenu [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;
  }

  #globalMenu [data-menu] .heading a {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
  }

  #globalMenuList [data-menu] .list>li {
    margin-top: 8px;
  }

  #globalMenuList [data-menu] .list a {
    color: #333;
    position: relative;
    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;
  }

  #nttcom>a {
    display: inline-block;
    padding-top: 6px;
  }

  /*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%;
  }
}

@media screen and (min-width:961px) {
  #globalHeader [data-menu] {
    font-weight: normal;
    color: #333;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    padding: 32px 0;
    background-color: #f2f2f2;
    box-shadow: 0 2px 4px rgb(0 0 0 / 16%);
    visibility: hidden;
    cursor: default;
  }

  #globalHeader [data-menu]>.inner {
    width: 960px;
    margin: 0 auto;
  }

  #globalHeader .heading {
    font-size: 3.0rem;
    font-weight: bold;
    color: #333;
    line-height: 1.25;
    position: relative;
    display: inline-block;
    margin-bottom: 32px;
    padding-left: 16px;
  }

  #globalHeader .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;
  }

  #globalHeader .heading>.link {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
  }

  #globalHeader .heading>.link:hover+* {
    text-decoration: underline;
  }

  /* 2022/08 -- */
  #globalHeader .subHeading a[href] {
    display: block;
    font-size: 2.0rem;
    font-weight: bold;
    margin: 10px 0;
    color: #333;
  }

  #globalHeader .heading+.subHeading {
    margin-top: -20px;
  }

  /* -- 2022/08 */

  /* globalMenuList */
  #globalMenuList>li.isActive {
    background-color: #f2f2f2;
  }

  #globalMenuList>li.isActive [data-menu] {
    z-index: 9999;
    visibility: visible;
  }

  #globalMenuList [data-menu] .list {
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  #globalMenuList [data-menu] .list::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    margin: 16px 0;
    background-image: linear-gradient(90deg, #007871, #007871 50%, transparent 50%, transparent 100%);
    -webkit-background-size: 3px 1px;
    -moz-background-size: 3px 1px;
    background-size: 3px 1px;
    opacity: 0.4;
  }

  #globalMenuList [data-menu] .list>li {
    width: 240px;
  }

  #globalMenuList [data-menu] .list>li.list--long {
    width: 480px;
  }

  #globalMenuList [data-menu] .list a {
    color: #333;
    position: relative;
    padding-left: 16px;
  }

  #globalMenuList [data-menu] .list a:hover {
    color: #007871;
  }

  #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;
  }
}


/*
 drawer -[js]-
----------------------------------------*/
/* button */
@media screen and (max-width:767px) {
  #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;
  }
}


/*
 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 {
  left: 50%;
  line-height: 2;
  border-radius: 22px;
  width: 44px;
  height: 0;
  margin-left: calc(960px/2 - 44px);
  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 {
  overflow: auto;
}


/*
 body -[module]-
----------------------------------------*/
body {
  font-family: Roboto, 'メイリオ', Meiryo, 'Noto Sans JP', sans-serif;
  font-feature-settings: 'palt';
  letter-spacing: .04em;
  position: relative;
  min-width: 960px;
  overflow: hidden;
}


/*
 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: 3.0rem
}

.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: 56px;
}

@media screen and (min-width:961px) {

  /* global_header */
  #globalHeader {}

  #globalHeaderInner {
    box-sizing: border-box;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    min-width: 960px;
  }

  #globalHeader .navigation {
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }

  #globalMenu {
    margin-inline: 24px;
  }

  #globalMenu2 {
    display: none;
  }

  #globalMenuList {
    box-sizing: border-box;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
  }

  #globalMenuList>li>.link {
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
    position: relative;
    box-sizing: border-box;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 108px;
    height: 88px;
    text-align: center;
    line-height: 1.3;
  }

  #globalMenuList>li>.link--solution {
    width: 120px;
  }

  #globalMenuList>li>.link:hover {
    color: #007871;
    text-decoration: underline;
  }

  #globalFunction {}

  /* logo */
  #nttcom {}

  #nttcom .logo {
    width: 17.8rem;
  }

  #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>a {
    display: inline-block;
    padding-top: 6px;
  }

  /*global function*/
  #globalFunction {
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }

  #globalFunction>[id^="globalFunction"] {
    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);
  }

  #globalFunction>[id^="globalFunction"]+* {
    margin-left: 16px;
  }

  /* language */
  #globalFunction1>span {
    line-height: 2;
    display: block;
    width: 2.0rem;
    height: 0;
    padding-top: 2.0rem;
    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%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%20%3Ctext%20id%3D%22EN%22%20transform%3D%22translate(0%2016)%22%20fill%3D%22%23333%22%20font-size%3D%2214%22%20font-family%3D%22SourceHanSansJP-Bold%2C%20Source%20Han%20Sans%20JP%22%20font-weight%3D%22700%22%3E%3Ctspan%20x%3D%220%22%20y%3D%220%22%3EEN%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fsvg%3E');
    background-position: left top;
    background-repeat: no-repeat;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
  }

  #globalFunction1:hover>span {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%20%3Ctext%20id%3D%22EN%22%20transform%3D%22translate(0%2016)%22%20fill%3D%22%2300837D%22%20font-size%3D%2214%22%20font-family%3D%22SourceHanSansJP-Bold%2C%20Source%20Han%20Sans%20JP%22%20font-weight%3D%22700%22%3E%3Ctspan%20x%3D%220%22%20y%3D%220%22%3EEN%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fsvg%3E');
  }

  /* contact */
  #globalFunction2>span {
    line-height: 2;
    display: block;
    width: 2.0rem;
    height: 0;
    padding-top: 1.4rem;
    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%2221.412%22%20height%3D%2215.412%22%20viewBox%3D%220%200%2021.412%2015.412%22%3E%20%3Cg%20id%3D%22envelope%22%20transform%3D%22translate(-1.294%20-4.294)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_195%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20195%22%20width%3D%2220%22%20height%3D%2214%22%20transform%3D%22translate(2%205)%22%20fill%3D%22none%22%20stroke%3D%22%237f7f7f%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_200%22%20data-name%3D%22%E3%83%91%E3%82%B9%20200%22%20d%3D%22M2%2C5l10%2C9L22%2C5%22%20fill%3D%22none%22%20stroke%3D%22%23333%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_201%22%20data-name%3D%22%E3%83%91%E3%82%B9%20201%22%20d%3D%22M2%2C19l6.825-7.8%22%20fill%3D%22none%22%20stroke%3D%22%237f7f7f%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_202%22%20data-name%3D%22%E3%83%91%E3%82%B9%20202%22%20d%3D%22M22%2C19l-6.844-7.822%22%20fill%3D%22none%22%20stroke%3D%22%237f7f7f%22%20stroke-linecap%3D%22round%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%;
  }

  #globalFunction1:hover>span {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%20%3Ctext%20id%3D%22EN%22%20transform%3D%22translate(0%2016)%22%20fill%3D%22%2300837D%22%20font-size%3D%2214%22%20font-family%3D%22SourceHanSansJP-Bold%2C%20Source%20Han%20Sans%20JP%22%20font-weight%3D%22700%22%3E%3Ctspan%20x%3D%220%22%20y%3D%220%22%3EEN%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fsvg%3E');
  }

  /* search */
  #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: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #f2f2f2;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
  }

  #headSearch[data-is-active="true"] {
    visibility: visible;
    z-index: 2;
  }

  #headSearch[data-is-active="false"] {
    visibility: hidden;
    z-index: -1;
  }

  #headSearch form[name="hdSearch"] {
    box-sizing: border-box;
    display: block;
    width: 960px;
    margin: 0 auto;
    padding: 16px;
  }

  #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: 8px 16px;
    background-color: #fff;
  }

  #headSearch form[name="hdSearch"] fieldset input[type="submit"] {
    line-height: 2;
    display: block;
    width: 40px;
    height: 0;
    padding-top: 40px;
    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 {
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}

#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 {
  width: 960px;
  margin: 0 auto;
}

#breadcrumbs .list>li+li::before {
  letter-spacing: -.4em;
  margin: 0 12px;
}


/*
 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;
  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 {
  display: block;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 80px;
}

/* lead */
#lead {
  margin-bottom: 56px;
}


/*
 footer -[module]-
----------------------------------------*/
#footer {
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}

#footer::before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 -500%;
  margin-bottom: 40px;
  padding: 0 500%;
  background-color: #707070;
}

#footer>.aside {
  position: relative;
  height: 100%;
  padding: 48px 0;
}

#footer>.aside+.aside {
  margin-top: 40px;
}

/* definition */
/*
.definition[component="02"] .description > .paragraph:first-child {
  display: none;
}
*/


/*
 heading -[module]-
----------------------------------------*/
/* component-lv1 */
.heading[component="lv1"] {
  font-size: 3.0rem;
  font-weight: bold;
  color: #333;
  width: 960px;
  margin: 48px auto 24px auto;
}

/* 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: 16px;
}

.heading[component="lv2"]>span {
  -webkit-box-flex: 1;
  flex: 1;
}

.heading[component="lv2"]+.paragraph {
  color: #707070;
  margin-top: -16px;
  margin-bottom: 48px;
}

/* component-lv3 */
.heading[component="lv3"] {
  font-size: 1.6rem;
  font-weight: bold;
}


/*
 navigation -[module]-
----------------------------------------*/
/* footer */
.navigation[component="footer"] {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  margin: -24px 0 0 -48px;
}

.navigation[component="footer"] .list>li {
  width: 304px;
  margin: 24px 0 0 48px;
}


/*
 article -[module]-
----------------------------------------*/
.article>* {
  letter-spacing: normal;
}

.article+.article {
  margin-top: 70px;
}

.article .section+.section {
  margin-top: 80px;
}

.article>.inner>*+* {
  margin-top: 80px;
}


/*
 aside -[module]-
----------------------------------------*/
/* comwareplus */
.aside[component="comwareplus"] {
  color: #707070;
  margin-bottom: 40px;
}

.aside[component="comwareplus"] .image {
  display: block;
  width: 288px;
  margin-bottom: 6px;
}

.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;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  height: 100%;
}

.definition[component="01"] .list::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
  margin-top: 10px;
}

.definition[component="01"] .list+.list {
  margin-top: 12px;
}

.definition[component="01"] .description {
  color: #707070;
  margin-left: 112px;
}

.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;
  font-weight: bold;
}

.definition[component="02"] .link {
  color: #333;
}

.definition[component="02"] a.link:hover {
  color: #007871;
}

.definition[component="02"] .description {
  font-size: 1.4rem;
  margin-top: 12px;
}

.definition[component="02"] .description .paragraph+.paragraph {
  margin-top: 12px;
}

/* component-03 */
.definition[component="03"]>*+* {
  margin-top: 24px;
}

.definition[component="03"] .list {
  position: relative;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  height: 100%;
}

.definition[component="03"] .list::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
  margin-top: 24px;
}

.definition[component="03"] .list+.list {
  margin-top: 24px;
}

.definition[component="03"] .team {
  font-weight: bold;
  color: #707070;
}

.definition[component="03"] .description {
  font-size: 1.6rem;
  color: #707070;
  -webkit-box-flex: 1;
  flex: 1;
  margin-left: 112px;
}

.definition[component="03"] .description._decimal {
  counter-reset: number;
}

.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;
}

.definition[component="03"] .description .image>img {
  display: block;
}

.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;
  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"] .list {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  margin: -16px 0 0 -16px;
}

.item[component="banner"] .list a {
  display: block;
}

.item[component="banner"] .list+.list {
  margin-top: 40px;
}

.item[component="banner"] .list>li {
  width: 231px;
  margin: 16px 0 0 16px;
}

.item[component="banner"] .list .image {
  display: block;
  width: 100%;
  height: auto;
}

/* component-01 */
.item[component="01"] .list {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -48px 0 0 -48px;
}

.item[component="01"] .list>li {
  width: 456px;
  margin: 48px 0 0 48px;
}

.item[component="01"] .column {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
}

.item[component="01"] .column>.columnInnerEq1 {
  width: 88px;
  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: 24px;
}

.item[component="02"] .heading+.description {
  margin-top: 24px;
}

.item[component="02"] .description {
  font-size: 1.4rem;
  color: #707070;
}

/* component-03 */
.item[component="03"] {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  margin: -32px 0 0 -48px;
}

.item[component="03"] .list>li {
  width: 304px;
  margin: 32px 0 0 48px;
}

.item[component="03"] .name {
  font-size: 1.4rem;
}

/* component-04 */
.item[component="04"] {
  /* 20231018 */
  display: flex;
}

.item[component="04"] a {
  color: #333;
}

.item[component="04"] a:hover {
  color: #007871;
}

.item[component="04"] .list {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  /* 20211216*/
  flex-direction: row;
  align-items: center;
  /* 20231018 */
  flex-wrap: wrap;
}

.item[component="04"] .list>li:hover {
  color: #007871;
  text-decoration: underline;
}

/* .item[component="04"] .list>li+li { */
/* 20231018 margin-left: 22px; */
/* 20211214  margin-left: 24px; */
/* } */

.item[component="04"] .list>li {
  /* 20231018 */
  margin-right: 22px;
}

.item[component="04"] .list li:nth-of-type(n+7) {
  /* 20231018 */
  margin-top: 16px;
}

.item[component="04"] .list>li:last-child {
  /* 20231018 */
  margin-right: 0;
}

.item[component="04"] .name {
  font-size: 1.4rem;
  font-weight: bold;
}

/* 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]-
----------------------------------------*/
/* component-01 */
.table[component="01"] {
  margin-bottom: 48px;
}


/*
 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);
}

/* component-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;
  margin: 0 auto;
  margin-top: 40px;
  padding: 8px 16px;
  background-color: #fff;
}

a.button[component="function"] {
  display: inline-block;
}

.button_wrap {
  text-align: center;
}


/* component-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: 248px;
  margin: 0 auto;
  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 0;
}


/*
 column -[module]-
----------------------------------------*/
/* 2column */
.column[data-column-pc="2"] {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -48px 0 0 -48px;
}

.column[data-column-pc="2"]>* {
  width: 456px;
  margin: 48px 0 0 48px !important;
}

/* 3column */
.column[data-column-pc="3"] {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -39px 0 0 -39px;
}

.column[data-column-pc="3"]>* {
  width: 294px;
  margin: 39px 0 0 39px !important;
}


/*
 background-color -[module]-
----------------------------------------*/
/* base */
[bg-color="base"] {
  position: relative;
  height: 100%;
  padding: 80px 0;
  background-color: #f2f2f2;
}

[bg-color="base"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  margin: 0 -500%;
  padding: 0 500%;
  background-color: #f2f2f2;
}


/*
 visibility
----------------------------------------*/
[data-pc-visibility="hidden"] {
  display: none;
}


/*
 sp_menu_delete
----------------------------------------*/
#globalMenu ul#globalMenuList li.sp_menu_eng {
  display: none;
}

/*
 utilites
----------------------------------------*/
.is_pc {
  display: block !important;
}

.is_sp {
  display: none !important;
}