﻿@charset "UTF-8";
/*
#styleguide
アニメーション用mixin
```
<section class="c-sect--xl is-animate">
  <div class="u-bg-chorishi u-p-xl u-txt-center u-fs-20">
    <p>.is-animateが付与されたコンテンツの表示位置まできたらフェードイン</p>
    <p class="u-color-white">@include animate--fadeIn($duration, $delay);</p>
  </div>
</section>

<section class="c-sect--xl is-animate">
  <div class="u-bg-chorishi u-p-xl u-txt-center u-fs-20">
    <p><span class="c-anime--maskTxt"><span>.is-animateが付与されたコンテンツの表示位置まできたらテキストアニメーション</span></span></p>
    <p class="u-color-white">@include animate--maskTxt($duration, $delay);</p>
  </div>
</section>

<section class="c-sect--xl is-animate">
  <div class="u-bg-chorishi u-p-xl u-txt-center u-fs-20">
    <p>.is-animateが付与されたコンテンツの表示位置まできたら画像アニメーション</p>
    <figure><span class="c-anime--maskImg"><img src="/tsuji-ac-jp/assets/images/img_none01.jpg" alt=""></span></figure>
    <p class="u-color-white">@animate--maskImg($duration, $delay, $color);</p>
  </div>
</section>
```
*/
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|Noto+Serif+JP:400,500,600,700&display=swap&subset=japanese");
/*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, font, 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, section, article, aside, hgroup, header, footer, nav, dialog, figure, menu, video, audio, mark, time, canvas, details {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	box-sizing: border-box;
	background: transparent;
}
section, article, aside, hgroup, header, footer, main, nav, dialog, figure, figcaption {
	display: block;
}
html {
	font-size: 62.5%;
}
body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	-webkit-backface-visibility: hidden;
	vertical-align: bottom;
}
h1,h2,h3,h4,h5,h6 {
	font-weight: 400;
}
b,strong {
	font-weight: inherit;
}
*/
/*.clr:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}*/
/* link */
/*a:link {
	color:#333;
	text-decoration:none;
}
a:visited {
	color:#333;
	text-decoration:none;
}
a:hover {
	color:#333;
	text-decoration:none;
}
a:active {
	color:#666;
	text-decoration:none;
}*/
html {
  font-size: 10px; }

/*body {
  background: #fff;
  color: $colorBlack;
  font-family: $fontJp;
  font-size: 1.4rem;
  font-weight: 400;
  width: 100%;
  &.is-preload {
    opacity: 0;
    * {
      transition: none !important;
    }

  }
  &.is-locked {
    @include mdMax {
      position: fixed;
      width: 100%;
      height: 100%;
    }
  }
}

body *,
body *:before,
body *:after {
  box-sizing: border-box;
}

a {
  text-decoration: none;
  color: inherit;
  transition: 0.2s ease-out;
  img,
  svg {
    transition: 0.2s ease-out;
  }
}
*/
.l-next21-contents {
  font-family: "Noto Sans JP", "HIragino Kaku Gothic Pro W3", "HIragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  line-height: 1.7;
  color: #222;
  font-size: 1.4rem;
  position: relative;
  padding-bottom: 190px;
  margin-bottom: 40px;
  background-image: url("/company/efforts/next21/assets/css/../images/contents_btm_bg.png");
  background-position: center bottom;
  background-repeat: repeat-x;
  min-width: 950px;
  overflow: hidden; }
  .l-next21-contents.page-about {
    background-image: url("/company/efforts/next21/assets/css/../images/about/contents_btm_bg.png"); }
  .l-next21-contents.page-home {
    background-image: url("/company/efforts/next21/assets/css/../images/home/contents_btm_bg.png"); }
  .l-next21-contents.page-experiment {
    background-image: url("/company/efforts/next21/assets/css/../images/experiment/contents_btm_bg.png"); }
  .l-next21-contents.page-archive {
    background-image: url("/company/efforts/next21/assets/css/../images/archive/contents_btm_bg.png"); }
  .l-next21-contents.page-explanation {
    background-image: url("/company/efforts/next21/assets/css/../images/explanation/contents_btm_bg.png"); }
  .l-next21-contents *,
  .l-next21-contents *:before,
  .l-next21-contents *:after {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    box-sizing: border-box;
    background: transparent; }
  .l-next21-contents *:before,
  .l-next21-contents *:after {
    content: "";
    visibility: inherit; }
  .l-next21-contents a {
    text-decoration: none;
    color: inherit;
    transition: all .2s ease-out;
    -webkit-transition: all .2s ease-out; }
    .l-next21-contents a img,
    .l-next21-contents a svg {
      transition: all .2s ease-out;
      -webkit-transition: all .2s ease-out; }
  .l-next21-contents img {
    max-width: 100%;
    height: auto;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    vertical-align: bottom; }
  .l-next21-contents ol, .l-next21-contents ul {
    list-style: none; }
  .l-next21-contents :focus {
    outline: 0; }
  .l-next21-contents ins {
    text-decoration: none; }
  .l-next21-contents del {
    text-decoration: line-through; }
  .l-next21-contents table {
    border-collapse: collapse;
    border-spacing: 0; }
  .l-next21-contents b, .l-next21-contents strong {
    font-weight: inherit; }
  .l-next21-contents .clr:after {
    content: '';
    display: block;
    clear: both;
    height: 0; }

.l-containar {
  position: relative;
  z-index: 2; }

.l-inner {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto; }

.l-side {
  width: 209px;
  padding-right: 30px;
  float: left;
  margin: -90px 0 90px;
  overflow: hidden; }
  .l-side .l-side-inner {
    background: #fff;
    box-shadow: 10px 0 10px rgba(0, 0, 0, 0.05); }
  .l-side .l-side-logo {
    padding: 50px 0 50px;
    margin-bottom: 10px;
    text-align: center; }
  .l-side .l-side-nav {
    line-height: 1.5; }
    .l-side .l-side-nav .l-side-nav__item {
      position: relative; }
      .l-side .l-side-nav .l-side-nav__item + .l-side-nav__item {
        margin-top: 2px; }
      .l-side .l-side-nav .l-side-nav__item .l-side-nav__head {
        padding: 0 40px 0 0;
        position: relative; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__head a {
          display: table;
          width: 100%;
          height: 55px;
          padding: 10px 5px 10px 15px;
          font-size: 1.5rem;
          font-weight: 700;
          border-left: 3px solid #d8d8d8; }
          .l-side .l-side-nav .l-side-nav__item .l-side-nav__head a span {
            display: table-cell;
            vertical-align: middle; }
          .l-side .l-side-nav .l-side-nav__item .l-side-nav__head a:hover {
            background: #efefef; }
      .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger {
        display: block;
        width: 40px;
        height: 55px;
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
        transition: all .2s ease-out;
        -webkit-transition: all .2s ease-out; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger:before, .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger:after {
          content: "";
          display: block;
          width: 12px;
          height: 2px;
          position: absolute;
          top: 50%;
          left: 50%;
          margin: -1px 0 0 -6px;
          background: #0066b3; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger:after {
          transform: rotate(90deg); }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger.is-active:before, .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger.is-active:after {
          background: #aaa; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger.is-active:after {
          opacity: 0; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__trigger:hover {
          background: #efefef; }
      .l-side .l-side-nav .l-side-nav__item .l-side-nav__body {
        padding: 20px 0;
        display: none; }
        .l-side .l-side-nav .l-side-nav__item .l-side-nav__body ul li a {
          display: block;
          padding: 10px 0px 10px 18px; }
          .l-side .l-side-nav .l-side-nav__item .l-side-nav__body ul li a span {
            display: inline-block;
            position: relative;
            padding: 0 0 0 15px; }
            .l-side .l-side-nav .l-side-nav__item .l-side-nav__body ul li a span:before {
              content: "";
              display: block;
              width: 7px;
              height: 2px;
              background: #d8d8d8;
              position: absolute;
              left: 0;
              top: 0.6em; }
          .l-side .l-side-nav .l-side-nav__item .l-side-nav__body ul li a:hover span {
            text-decoration: underline; }
          .l-side .l-side-nav .l-side-nav__item .l-side-nav__body ul li a.is-current span {
            text-decoration: underline; }
      .l-side .l-side-nav .l-side-nav__item.l-side-nav__item--about .l-side-nav__body ul li a.is-current span {
        color: #00924c; }
      .l-side .l-side-nav .l-side-nav__item.l-side-nav__item--home .l-side-nav__body ul li a.is-current span {
        color: #eda533; }
      .l-side .l-side-nav .l-side-nav__item.l-side-nav__item--experiment .l-side-nav__body ul li a.is-current span {
        color: #37a4f6; }
      .l-side .l-side-nav .l-side-nav__item.l-side-nav__item--archive .l-side-nav__body ul li a.is-current span {
        color: #d86163; }
  .l-side .l-side-bnr {
    margin-top: 30px; }
    .l-side .l-side-bnr a {
      display: inline-block; }
      .l-side .l-side-bnr a:hover {
        opacity: 0.8; }
  .l-side .l-side-bnr02 {
    margin-top: 10px; }
    .l-side .l-side-bnr02 a {
      display: inline-block; }
      .l-side .l-side-bnr02 a:hover {
        opacity: 0.8; }
  .page-about .l-side .l-side-nav__item.l-side-nav__item--about .l-side-nav__head a {
    border-left-color: #00924c; }
  .page-about .l-side .l-side-nav__item.l-side-nav__item--about .l-side-nav__body ul li a span:before {
    background: #00924c; }
  .page-home .l-side .l-side-nav__item.l-side-nav__item--home .l-side-nav__head a {
    border-left-color: #eda533; }
  .page-home .l-side .l-side-nav__item.l-side-nav__item--home .l-side-nav__body ul li a span:before {
    background: #eda533; }
  .page-experiment .l-side .l-side-nav__item.l-side-nav__item--experiment .l-side-nav__head a {
    border-left-color: #37a4f6; }
  .page-experiment .l-side .l-side-nav__item.l-side-nav__item--experiment .l-side-nav__body ul li a span:before {
    background: #37a4f6; }
  .page-archive .l-side .l-side-nav__item.l-side-nav__item--archive .l-side-nav__head a {
    border-left-color: #d86163; }
  .page-archive .l-side .l-side-nav__item.l-side-nav__item--archive .l-side-nav__body ul li a span:before {
    background: #d86163; }

.l-main {
  width: 720px;
  float: right;
  padding: 50px 0 90px; }
  .page-explanation-index .l-main {
    padding-bottom: 0; }

.comingsoon {
  pointer-events: none;
  position: relative; }
  .comingsoon::after {
    content: "近日公開予定";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    top: 0;
    text-align: center;
    color: #fff;
    font-size: 16px;
    padding: 118px 0;
    font-weight: bold;
    letter-spacing: 1px; }

.p-applicationArea__btn.comingsoon::after {
  padding: 5.3% 0; }

.comingsoonside {
    pointer-events: none;
    position: relative;
	height: 238px;
}

  .comingsoonside::after {
    content: "近日公開予定";
    position: relative;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    top: -132px;
    text-align: center;
    color: #fff;
    font-size: 16px;
    padding: 107px 38px;
    font-weight: bold;
    letter-spacing: 1px; }

.l-next21-contents .c-btn > * {
  display: table;
  width: 100%;
  text-align: center;
  padding: 0 10px;
  cursor: pointer;
  position: relative; }
.l-next21-contents .c-btn--center {
  margin-left: auto;
  margin-right: auto; }
.l-next21-contents .c-btn--general {
  width: 100%;
  max-width: 240px; }
  .l-next21-contents .c-btn--general > * {
    height: 54px;
    line-height: 1.3;
    font-size: 1.5rem;
    font-weight: 700;
    color: #0066b3;
    border: 1px solid #0066b3;
    background: #fff; }
    .l-next21-contents .c-btn--general > * > span {
      display: table-cell;
      vertical-align: middle;
      padding: 10px 0; }
      .l-next21-contents .c-btn--general > * > span > span {
        position: relative;
        display: inline-block;
        padding: 0 36px 0 0; }
        .l-next21-contents .c-btn--general > * > span > span:after {
          content: "";
          display: block;
          width: 20px;
          height: 9px;
          position: absolute;
          top: 50%;
          right: 0;
          background-image: url("/company/efforts/next21/assets/css/../images/ico_arrow_01.svg");
          background-position: center;
          background-repeat: no-repeat;
          margin-top: -5px;
          transition: all .2s ease-out;
          -webkit-transition: all .2s ease-out; }
        .l-next21-contents .c-btn--general > * > span > span.c-btn__hasIco {
          padding: 0 0 0 40px; }
          .l-next21-contents .c-btn--general > * > span > span.c-btn__hasIco:after {
            display: none; }
          .l-next21-contents .c-btn--general > * > span > span.c-btn__hasIco img {
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%); }
    .l-next21-contents .c-btn--general > *:hover {
      color: #fff;
      background: #0066b3; }
      .l-next21-contents .c-btn--general > *:hover > span > span:after {
        background-image: url("/company/efforts/next21/assets/css/../images/ico_arrow_01_w.svg"); }
  .l-next21-contents .c-btn--general.c-btn--small {
    max-width: 175px; }
.l-next21-contents .c-btn--large {
  width: 100%;
  max-width: 516px; }
  .l-next21-contents .c-btn--large > * {
    height: 77px;
    line-height: 1.3;
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
    background: #0070bc; }
    .l-next21-contents .c-btn--large > * > span {
      display: table-cell;
      vertical-align: middle;
      padding: 10px 0; }
      .l-next21-contents .c-btn--large > * > span > span {
        position: relative;
        display: inline-block; }
    .l-next21-contents .c-btn--large > *:hover {
      background: #055891; }
.l-next21-contents .c-btn-wrap {
  margin-top: 40px;
  font-size: 0; }
  .l-next21-contents .c-btn-wrap .c-btn {
    display: inline-block; }
    .l-next21-contents .c-btn-wrap .c-btn + .c-btn {
      margin-left: 8px; }
.l-next21-contents .c-btn--zoom a span {
  font-weight: 700;
  display: inline-block;
  padding-left: 30px;
  min-height: 18px;
  line-height: 18px;
  position: relative;
  background: url("/company/efforts/next21/assets/css/../images/ico_zoom.svg") no-repeat left top/18px; }
.l-next21-contents .c-btn--zoom a:hover {
  color: #0066b3; }
.l-next21-contents .c-btn--txt a span {
  font-weight: 700;
  font-size: 1.4rem;
  display: inline-block;
  padding-left: 17px;
  min-height: 14px;
  line-height: 1.3;
  position: relative; }
  .l-next21-contents .c-btn--txt a span:before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #0066b3;
    border-right: 2px solid #0066b3;
    transform: rotate(45deg);
    position: absolute;
    top: 0.4em;
    left: -1px; }
.l-next21-contents .c-btn--txt a:hover {
  color: #0066b3; }

.c-card .c-card__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -30px 0 0; }
.c-card .c-card__item {
  width: 100%;
  margin: 30px 0 0; }
@media screen and (min-width: 750px) {
  .c-card.c-card--col2 .c-card__items {
    margin: -30px -15px 0; }
    .page-about-concept .c-card.c-card--col2 .c-card__items, .page-about-system .c-card.c-card--col2 .c-card__items {
      margin: 0 -10px 0; } }
@media screen and (min-width: 750px) {
  .c-card.c-card--col2 .c-card__item {
    width: calc((100% / 2) - 30px);
    margin: 30px 15px 0; }
    .page-about-concept .c-card.c-card--col2 .c-card__item, .page-about-system .c-card.c-card--col2 .c-card__item {
      width: calc((100% / 2) - 20px);
      margin: 0px 10px 30px; }
      .page-about-concept .c-card.c-card--col2 .c-card__item p, .page-about-system .c-card.c-card--col2 .c-card__item p {
        margin-top: 10px; } }
@media screen and (min-width: 750px) {
  .c-card.c-card--col3 .c-card__items {
    margin: -30px -15px 0; }
    .page-about-nature .c-card.c-card--col3 .c-card__items {
      margin: 0 -7.5px 0; } }
@media screen and (min-width: 750px) {
  .c-card.c-card--col3 .c-card__item {
    width: calc((100% / 3) - 30px);
    margin: 30px 15px 0; }
    .page-about-nature .c-card.c-card--col3 .c-card__item {
      width: calc((100% / 3) - 14px);
      margin: 0px 7px 0; } }
@media screen and (min-width: 750px) {
  .c-card.c-card--col4 .c-card__items {
    margin: -30px -15px 0; } }
@media screen and (min-width: 750px) {
  .c-card.c-card--col4 .c-card__item {
    width: calc((100% / 2) - 30px);
    margin: 30px 15px 0; } }
@media screen and (min-width: 1024px) {
  .c-card.c-card--col4 .c-card__item {
    width: calc((100% / 4) - 30px);
    margin: 30px 15px 0; } }

.c-list {
  margin-top: 10px; }
  .c-list li {
    text-indent: -1em;
    margin-left: 1em; }
    .c-list li + li {
      margin-top: 5px; }
  .page-about-nature .c-list {
    margin: 35px 0 35px 30px; }
  .page-home-other .c-list {
    margin: 35px 0 35px 30px; }

/*
#styleguide
.c-list--notes
注釈リスト
```
<ul class="c-list c-list--notes">
  <li>テキストテキストテキストテキストテキスト</li>
  <li>テキストテキストテキストテキストテキスト</li>
  <li>テキストテキストテキストテキストテキスト</li>
</ul>
```
*/
.c-list--notes li:before {
  content: "※"; }

/*.c-list-block > li {
  line-height: 1.6;
  margin-bottom: 3px;
  padding-left: 1.0em;
  text-indent: -1.0em;
  text-align: left;
}

*/
.c-list-inline > li {
  line-height: 1.6;
  display: inline-block;
  margin-right: 7px; }

.page-about-system .c-list--disc {
  margin: 20px 0 0 30px; }

.c-list--disc > li {
  position: relative;
  margin-left: 13px; }
  .c-list--disc > li:before {
    content: "";
    display: block;
    position: absolute;
    left: -13px;
    top: 7px;
    width: 8px;
    height: 8px;
    background-color: #333;
    border-radius: 100px; }
  .page-home .c-list--disc > li {
    list-style: none; }
    .page-home .c-list--disc > li:nth-child(n + 2) {
      margin-top: 15px; }
    .page-home .c-list--disc > li:before {
      background: #eda533;
      width: 6px;
      height: 6px; }
  .page-about-concept .c-table .c-list--disc > li {
    margin-left: 8px; }
    .page-about-concept .c-table .c-list--disc > li + li {
      margin-top: 0px; }
    .page-about-concept .c-table .c-list--disc > li:before {
      left: -8px;
      top: 10px;
      width: 3px;
      height: 3px;
      background-color: #333; }
  .page-about-concept .c-table--01 .c-list--disc > li + li {
    margin-top: 5px; }
  .page-about-concept .c-list--disc > li, .page-about-system .c-list--disc > li {
    margin-left: 11px; }
    .page-about-concept .c-list--disc > li + li, .page-about-system .c-list--disc > li + li {
      margin-top: 11px; }
    .page-about-concept .c-list--disc > li:before, .page-about-system .c-list--disc > li:before {
      background-color: #00924c;
      left: -11px;
      top: 9px;
      width: 6px;
      height: 6px; }
    .page-about-concept .c-list--disc > li a, .page-about-system .c-list--disc > li a {
      color: #066fbb;
      text-decoration: underline;
      transition: all .2s ease-out; }
      .page-about-concept .c-list--disc > li a:hover, .page-about-system .c-list--disc > li a:hover {
        text-decoration: none; }
    .page-about-concept .c-list--disc > li span, .page-about-system .c-list--disc > li span {
      font-size: 1.6rem; }
  .page-explanation-index .c-list--disc > li + li {
    margin-top: 15px; }
  .page-explanation-index .c-list--disc > li:before {
    width: 9px;
    height: 9px; }
  .page-explanation-index .c-list--disc > li a, .page-explanation-index .c-list--disc > li span {
    border-bottom: 1px solid #0066b3; }
  .page-explanation-index .c-list--disc > li .c-list--disc li {
    margin-left: 10px; }
    .page-explanation-index .c-list--disc > li .c-list--disc li + li {
      margin-top: 0; }
    .page-explanation-index .c-list--disc > li .c-list--disc li:before {
      background-color: #0066b3;
      width: 6px;
      height: 6px;
      left: -10px;
      top: 8px; }

.c-list--check > li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 30px; }
  .c-list--check > li:last-child {
    margin-bottom: 0; }
  .c-list--check > li .c-ico--check {
    position: absolute;
    left: 0;
    top: 5px; }

/*
.c-list--link > li a {
  text-indent: 0;
}

.c-list--decimal01 > li {
  padding-left: 1.3em;
  text-indent: -1.3em;
  list-style-type: decimal;
}


.c-list--notes02 {
  counter-reset: number 0;
}

.c-list--notes02 > li {
  line-height: 1.6;
  margin-bottom: 0;
  padding-left: 2.0em;
  text-indent: -2.0em;
  font-size: 1.2rem;
  counter-increment: number;
}

.c-list--notes02 > li:before {
  content: "※" counter(number);
  margin-right: 5px;
}

.c-list--notes02-from2 {
  counter-reset: number 1;
}

.c-list--notes02-from3 {
  counter-reset: number 2;
}

.c-list--notes02-from4 {
  counter-reset: number 3;
}

.c-list--notes02-from5 {
  counter-reset: number 4;
}

.c-list--notes02-from6 {
  counter-reset: number 5;
}

.c-list--notes02-from7 {
  counter-reset: number 6;
}

.c-list--notes02-from8 {
  counter-reset: number 7;
}

.c-list--notes02-from9 {
  counter-reset: number 8;
}

.c-list--notes02-from10 {
  counter-reset: number 9;
}

.c-list--notice01 > li {
  line-height: 1.6;
  margin-bottom: 0;
  padding-left: 2.0em;
  text-indent: -2.0em;
  font-size: 1.2rem;
}

.c-list--notice01 > li:before {
  content: "注）";
}

.c-list--notice02 {
  counter-reset: number 0;
}

.c-list--notice02 > li {
  line-height: 1.6;
  margin-bottom: 0;
  padding-left: 2.5em;
  text-indent: -2.5em;
  font-size: 1.2rem;
  counter-increment: number;
}

.c-list--notice02 > li:before {
  content: "注" counter(number) "）";
}

.c-list--notice02-from2 {
  counter-reset: number 1;
}

.c-list--notice02-from3 {
  counter-reset: number 2;
}

.c-list--notice02-from4 {
  counter-reset: number 3;
}

.c-list--notice02-from5 {
  counter-reset: number 4;
}

.c-list--notice02-from6 {
  counter-reset: number 5;
}

.c-list--notice02-from7 {
  counter-reset: number 6;
}

.c-list--notice02-from8 {
  counter-reset: number 7;
}

.c-list--notice02-from9 {
  counter-reset: number 8;
}

.c-list--notice02-from10 {
  counter-reset: number 9;
}

.c-list-definition01 {
  line-height: 1.6;
}

.c-list-definition01 > dt {
  margin-bottom: 5px;
  font-weight: 700;
}

.c-list-spec {
  width: 100%;
  overflow: hidden;
}

.c-list-spec__pic {
  float: left;
  width: 35%;
  min-width: 100px;
  margin-right: 5%;
  padding: 15px !important;
}

.c-list-spec__text {
  float: left;
  width: 60%;
}*/
.c-media .c-media__body {
  width: calc(50% - 20px); }
.c-media .c-media__img {
  width: calc(50% - 20px); }
  .c-media .c-media__img figure figcaption {
    display: block;
    font-size: 1.2rem;
    margin-top: 10px; }
  .c-media .c-media__img .c-media__zoom {
    float: right;
    margin-top: 10px; }
.c-media.c-media--01 .c-media__body {
  float: left; }
.c-media.c-media--01 .c-media__img {
  float: right; }
.c-media.c-media--02 .c-media__body {
  float: right; }
.c-media.c-media--02 .c-media__img {
  float: left; }
.c-media.c-media--03 * + * {
  margin-top: 30px; }
.c-media.c-media--03 .c-media__body {
  width: auto; }
.c-media.c-media--03 .c-media__img {
  width: auto; }
.c-media.c-media--imgL .c-media__body {
  width: calc(39% - 20px); }
.c-media.c-media--imgL .c-media__img {
  width: calc(61% - 20px); }
.c-media.c-media--imgR .c-media__img {
  width: calc(37.5% - 30px); }
  .c-media.c-media--imgR .c-media__img figure + figure {
    margin-top: 10px; }
.c-media.c-media--imgR .c-media__body {
  width: calc(62.5% - 30px); }
.page-about-comment .c-media.c-media--imgR .c-media__img {
  width: calc(33.5% - 20px); }
.page-about-comment .c-media.c-media--imgR .c-media__body {
  width: calc(66.5% - 20px); }
.c-media.c-media--imgI .c-media__img-02 {
  width: calc(42.5% - 5px);
  float: right; }
.c-media.c-media--imgI .c-media__img-01 {
  width: calc(57.5% - 5px); }
.c-media.c-media--imgRW .c-media__img {
  width: calc(62% - 30px); }
  .c-media.c-media--imgRW .c-media__img figure + figure {
    margin-top: 10px; }
.c-media.c-media--imgRW .c-media__body {
  width: calc(38% - 10px); }

.c-sect--xl + .c-sect--xl {
  margin-top: 100px; }

.c-sect--lg + .c-sect--lg {
  margin-top: 70px; }

.c-sect--md + .c-sect--md {
  margin-top: 40px; }

.c-sect--sm + .c-sect--sm {
  margin-top: 20px; }

.c-sect--xs + .c-sect--xs {
  margin-top: 10px; }

.c-sect--bgCircle {
  position: relative; }
  .c-sect--bgCircle + .c-sect--bgCircle {
    margin-top: 100px; }
  .c-sect--bgCircle .c-media > * {
    position: relative;
    z-index: 2; }
  .c-sect--bgCircle .c-media:before {
    content: "";
    display: block;
    width: 333px;
    height: 333px;
    position: absolute;
    background-image: url("/company/efforts/next21/assets/css/../images/home/bg_circle_01.png");
    background-repeat: no-repeat;
    background-size: 100% 100%; }
  .c-sect--bgCircle .c-media--01:before {
    top: -25px;
    left: 6px; }
  .c-sect--bgCircle .c-media--02:before {
    top: -2px;
    left: 336px; }
  .c-sect--bgCircle .c-media--03:before {
    width: 611px;
    height: 600px;
    top: 23px;
    left: 109px; }

.c-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff; }
  .c-table.c-table--01 th,
  .c-table.c-table--01 td {
    border-bottom: 1px solid #dcdcdc;
    padding: 15px 25px; }
  .c-table.c-table--01 tr:first-child th,
  .c-table.c-table--01 tr:first-child td {
    border-top: 1px solid #dcdcdc; }
  .c-table.c-table--01 th {
    padding-right: 0;
    width: 90px;
    font-weight: 700;
    text-align: left; }
  .page-about .c-table.c-table--01 th {
    width: 170px; }
  .page-explanation-index .c-table.c-table--01 th {
    width: 200px;
    padding-left: 30px; }
  .c-table.c-table--01 .d-flex {
    display: flex; }
    .c-table.c-table--01 .d-flex span:first-child {
      flex: 0 0 auto; }
  .c-table.c-table--02 th,
  .c-table.c-table--02 td {
    border-bottom: 1px solid #dcdcdc;
    padding: 15px 25px; }
  .c-table.c-table--02 tr:first-child th,
  .c-table.c-table--02 tr:first-child td {
    border-top: 1px solid #dcdcdc; }
  .c-table.c-table--02 tr td:first-of-type {
    width: 135px; }
  .c-table.c-table--02 th {
    padding-right: 0;
    width: 155px;
    font-weight: 700;
    text-align: left; }
  .page-about-concept .c-table.c-table--02 {
    margin-top: 40px; }
    .page-about-concept .c-table.c-table--02 th, .page-about-concept .c-table.c-table--02 td {
      border: 1px solid #dcdcdc;
      border-collapse: collapse;
      padding: 20px 10px 20px;
      width: 200px;
      vertical-align: middle; }
      .page-about-concept .c-table.c-table--02 th:first-child, .page-about-concept .c-table.c-table--02 td:first-child {
        width: 130px;
        border-left: 1px solid #a6a6a6;
        background-color: #f1faef;
        text-align: center;
        padding: 20px 20px 20px; }
        .page-about-concept .c-table.c-table--02 th:first-child b, .page-about-concept .c-table.c-table--02 td:first-child b {
          display: block;
          font-weight: bold;
          color: #00924c;
          margin-top: 10px; }
      .page-about-concept .c-table.c-table--02 th:nth-child(2), .page-about-concept .c-table.c-table--02 td:nth-child(2) {
        width: 150px; }
      .page-about-concept .c-table.c-table--02 th:last-child, .page-about-concept .c-table.c-table--02 td:last-child {
        border-right: 1px solid #a6a6a6; }
    .page-about-concept .c-table.c-table--02 th {
      background-color: #f1f3f6;
      padding: 15px 10px;
      text-align: center; }
    .page-about-concept .c-table.c-table--02 td a {
      color: #066fbb;
      text-decoration: underline;
      transition: all .2s ease-out; }
      .page-about-concept .c-table.c-table--02 td a:hover {
        text-decoration: none; }
    .page-about-concept .c-table.c-table--02 td span {
      color: #e60012; }
    .page-about-concept .c-table.c-table--02 tr:first-child th, .page-about-concept .c-table.c-table--02 tr:first-child td {
      border-top: 1px solid #a6a6a6; }
    .page-about-concept .c-table.c-table--02 tr:last-child th, .page-about-concept .c-table.c-table--02 tr:last-child td {
      border-bottom: 1px solid #a6a6a6; }
  .page-about-nature .c-table.c-table--02 th {
    background-color: #f1faef;
    padding: 25px 10px; }
  .page-about-nature .c-table.c-table--02 td {
    padding: 20px 10px 30px; }
  .page-about-nature .c-table.c-table--02 th, .page-about-nature .c-table.c-table--02 td {
    width: calc(100% / 4);
    text-align: center;
    border: 1px solid #dcdcdc; }
    .page-about-nature .c-table.c-table--02 th:first-child, .page-about-nature .c-table.c-table--02 td:first-child {
      border-left: 1px solid #a6a6a6; }
    .page-about-nature .c-table.c-table--02 th:last-child, .page-about-nature .c-table.c-table--02 td:last-child {
      border-right: 1px solid #a6a6a6; }
  .page-about-nature .c-table.c-table--02 tr:first-child th, .page-about-nature .c-table.c-table--02 tr:first-child td {
    border-top: 1px solid #a6a6a6; }
  .page-about-nature .c-table.c-table--02 tr:last-child th, .page-about-nature .c-table.c-table--02 tr:last-child td {
    border-bottom: 1px solid #a6a6a6; }
  .c-table.c-table--02.c-table--03 th,
  .c-table.c-table--02.c-table--03 td {
    width: auto !important;
    padding-left: 30px; }
    
    
/******

	200513 Added
	/home/home6.html

				******/

div.flex-box{
		margin: 10px;
		width: 720px;
		display: flex;
		flex-flow: row nowrap;
		flex-wrap: nowrap;
}


div.flex-box div {
      width: 240px;
      height: auto;
      line-height:1.6;
      padding:10px;
      font-size:94%;
   }

div.flex-box div p:nth-child(1){
	height:90px;
}

div.flex-box div p:nth-child(3){
	margin-top:5px;
}

/*
#overview
.c-tel

telリンク
*/
/*
#styleguide
.c-tel
```
▼テキスト内
<p>電話でのお問い合わせ先は<span class="c-tel"><a href="tel:0123456789">0123-45-6789</a></span>です。</p>

▼ボックス
<div class="c-tel"><a href="tel:0123456789"><div class="u-p-xs u-bg-gray02">TEL</div></a></div>
```
*/
.c-tel {
  position: relative;
  display: inline-block;
  pointer-events: none; }
  .c-tel:after {
    content: "";
    display: block;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .is-spView .c-tel {
    pointer-events: inherit; }
    .is-spView .c-tel:after {
      display: none; }

.c-ttl--01 {
  position: relative;
  max-width: 720px;
  margin: 0 auto 45px;
  line-height: 1.3;
  text-align: center;
  padding: 0 0 8px;
  position: relative; }
  .c-ttl--01:before {
    content: "";
    width: 697px;
    height: 89px;
    display: block;
    position: absolute;
    top: 8px;
    left: 18px; }
  .c-ttl--01 span {
    display: inline-block;
    margin-bottom: -11px;
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 0 18px;
    font-size: 1.8rem;
    font-weight: 700;
    color: #0066b3; }
    .c-ttl--01 span.c-ttl--01__hasIco {
      padding-left: 95px; }
      .c-ttl--01 span.c-ttl--01__hasIco img {
        position: absolute;
        top: 50%;
        left: 10px;
        margin-top: -45px; }
      .c-ttl--01 span.c-ttl--01__hasIco + b {
        padding-top: 45px; }
    .c-ttl--01 span.c-ttl--01__txtL {
      font-size: 2.4rem; }
      .c-ttl--01 span.c-ttl--01__txtL span {
        width: 1px;
        height: 22px;
        text-indent: -9999px;
        font-weight: 400;
        padding: 0;
        margin: 0 0.6em;
        font-size: inherit;
        background: #ccc;
        vertical-align: middle;
        position: relative;
        top: -0.1em; }
  @media all and (-ms-high-contrast: none) {
    .c-ttl--01 {
      /* IE11 */ }
      .c-ttl--01 *::-ms-backdrop, .c-ttl--01 span {
        top: 7px;


        line-height: inherit !important; } }
  .c-ttl--01 b {
    display: block;
    background-image: url("/company/efforts/next21/assets/css/../images/line_horizontal.png"), url("/company/efforts/next21/assets/css/../images/line_horizontal.png");
    background-position: center top, center bottom;
    background-repeat: no-repeat, no-repeat;
    padding: 25px 30px;
    font-size: 2.8rem;
    font-weight: 400;
    position: relative; }
    .c-ttl--01 b:before, .c-ttl--01 b:after {
      content: "";
      display: block;
      width: 3px;
      height: 100%;
      background-image: url("/company/efforts/next21/assets/css/../images/line_vertical.png");
      background-position: center top;
      background-repeat: repeat-y;
      position: absolute; }
    .c-ttl--01 b:before {
      left: 10px;
      top: -10px; }
    .c-ttl--01 b:after {
      right: 10px;
      bottom: -10px; }
  .page-top .c-ttl--01 b {
    font-size: 3.5rem;
    font-weight: 500; }
  .page-top .c-ttl--01 span {
    line-height: 1; }
  .page-top .c-ttl--01:before {
    top: 19px;
    height: auto;
    bottom: 1px;
    background: #fffabf; }
  .page-about .c-ttl--01:before {
    background: url("/company/efforts/next21/assets/css/../images/about/ttl01_bg.png") no-repeat 0 0;
    background-size: contain; }
  .page-about .c-ttl--01 span {
    color: #00924c; }
    .page-about .c-ttl--01 span.c-ttl--01__txtL span {
      background: #00924c; }
  .page-about .c-ttl--01 b {
    background-image: url("/company/efforts/next21/assets/css/../images/about/line_horizontal.png"), url("/company/efforts/next21/assets/css/../images/about/line_horizontal.png");
    font-weight: 500;
    font-size: 3rem; }
    .page-about .c-ttl--01 b:before, .page-about .c-ttl--01 b:after {
      background-image: url("/company/efforts/next21/assets/css/../images/about/line_vertical.png"); }
  .page-about-comment .c-ttl--01:before {
    height: 120px;
    background-color: rgba(106, 166, 115, 0.12); }
  .page-home .c-ttl--01:before {
    height: auto;
    top: 17px;
    background: #fdf6ee;
    bottom: 0px; }
  .page-home .c-ttl--01 span {
    line-height: 1; }
  .page-home .c-ttl--01.ttl--01__L:before {
    height: 118px; }
  .page-home .c-ttl--01 span {
    color: #eda533; }
    .page-home .c-ttl--01 span.c-ttl--01__txtL span {
      background: #eda533; }
  .page-home .c-ttl--01 b {
    background-image: url("/company/efforts/next21/assets/css/../images/home/line_horizontal.png"), url("/company/efforts/next21/assets/css/../images/home/line_horizontal.png");
    font-weight: 500; }
    .page-home .c-ttl--01 b:before, .page-home .c-ttl--01 b:after {
      background-image: url("/company/efforts/next21/assets/css/../images/home/line_vertical.png"); }
  .page-home-other .c-ttl--01:before {
    height: auto;
    top: 8px; }
  .page-experiment .c-ttl--01:before {
    background: url("/company/efforts/next21/assets/css/../images/experiment/ttl01_bg.png") no-repeat 0 0;
    background-size: contain; }
  .page-experiment .c-ttl--01 span {
    color: #37a4f6; }
    .page-experiment .c-ttl--01 span.c-ttl--01__txtL span {
      background: #37a4f6; }
  .page-experiment .c-ttl--01 b {
    background-image: url("/company/efforts/next21/assets/css/../images/experiment/line_horizontal.png"), url("/company/efforts/next21/assets/css/../images/experiment/line_horizontal.png"); }
    .page-experiment .c-ttl--01 b:before, .page-experiment .c-ttl--01 b:after {
      background-image: url("/company/efforts/next21/assets/css/../images/experiment/line_vertical.png"); }
  .page-archive .c-ttl--01:before {
    background: url("/company/efforts/next21/assets/css/../images/archive/ttl01_bg.png") no-repeat 0 0;
    background-size: contain; }
  .page-archive .c-ttl--01 span {
    color: #d86163; }
    .page-archive .c-ttl--01 span.c-ttl--01__txtL span {
      background: #d86163; }
  .page-archive .c-ttl--01 b {
    background-image: url("/company/efforts/next21/assets/css/../images/archive/line_horizontal.png"), url("/company/efforts/next21/assets/css/../images/archive/line_horizontal.png"); }
    .page-archive .c-ttl--01 b:before, .page-archive .c-ttl--01 b:after {
      background-image: url("/company/efforts/next21/assets/css/../images/archive/line_vertical.png"); }
  .page-news .c-ttl--01:before {
    background: url("/company/efforts/next21/assets/css/../images/news/ttl01_bg.png") no-repeat 0 0;
    background-size: contain; }
  .page-explanation .c-ttl--01:before {
    background: url("/company/efforts/next21/assets/css/../images/explanation/ttl01_bg.png") no-repeat 0 0;
    background-size: contain;
    height: 124px; }
  .page-explanation .c-ttl--01 b span.c-ttl--red {
    background-color: transparent;
    color: #e60012;
    font-size: 2.8rem;
    padding: 0;
    font-weight: 400; }

.c-ttl--02 {
  border-left: 2px solid #ccc;
  padding: 0 0 0 25px;
  margin-bottom: 30px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5; }
  .page-about .c-ttl--02 {
    border-left-color: #00924c; }
  .page-home .c-ttl--02 {
    border-left-color: #eda533; }
  .page-experiment .c-ttl--02 {
    border-left-color: #37a4f6; }
  .page-explanation .c-ttl--02 {
    border-left-color: #0066b3; }
  .page-archive .c-ttl--02 {
    border-left-color: #d86163; }
  .page-news .c-ttl--02 {
    border-left-color: #0066b3; }

.c-ttl--03 {
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: 700; }

.c-ttl--04 {
  margin-bottom: 20px;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.3;
  padding-bottom: 15px;
  border-bottom: 2px solid #dde1e7;
  position: relative; }
  .c-ttl--04:before {
    content: "";
    display: block;
    width: 174px;
    height: 2px;
    background: #0066b3;
    position: absolute;
    left: 0;
    bottom: -2px; }

.c-ttl--05 {
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: 700; }

.c-ttl--06 {
  margin-bottom: 20px;
  font-size: 2.4rem;
  text-align: center;
  font-weight: normal;
  position: relative;
  padding-bottom: 13px;
  margin: 0 0 30px 0; }
  .c-ttl--06:before {
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    width: 40px;
    margin: 0 auto;
    background: #00924c;
    bottom: 0;
    content: ''; }

.p-accordionBox + .p-accordionBox {
  margin-top: 30px; }
.p-accordionBox .p-accordionBox__head {
  cursor: pointer;
  background-color: #f1f3f6;
  position: relative;
  padding: 30px;
  position: relative;
  border: 1px solid #dae1e8;
  border-top: 3px solid #37a4f6;
  transition: all .2s ease-out;
  -webkit-transition: all .2s ease-out; }
  .p-accordionBox .p-accordionBox__head:after {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    border-top: 3px solid #37a4f6;
    border-right: 3px solid #37a4f6;
    transform: rotate(135deg);
    position: absolute;
    bottom: 25px;
    right: 25px; }
  .p-accordionBox .p-accordionBox__head.is-active:after {
    transform: rotate(-45deg); }
  .p-accordionBox .p-accordionBox__head .p-accordionBox__head-time {
    position: absolute;
    right: 20px;
    top: 15px;
    color: #7b7b7b; }
  .p-accordionBox .p-accordionBox__head .p-accordionBox__head-ttl {
    height: 50px;
    display: table;
    padding: 0 0 0 65px;
    margin-bottom: 15px;
    position: relative; }
    .p-accordionBox .p-accordionBox__head .p-accordionBox__head-ttl img {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%; }
    .p-accordionBox .p-accordionBox__head .p-accordionBox__head-ttl .p-accordionBox__head-ttl-inner {
      display: table-cell;
      vertical-align: middle;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.3; }
  .p-accordionBox .p-accordionBox__head .p-accordionBox__head-ico {
    display: inline-block;
    font-weight: 400;
    border-radius: 2px;
    min-width: 70px;
    background: #f0798a;
    text-align: center;
    padding: 2px 5px;
    margin-right: 10px;
    color: #fff;
    font-size: 1.4rem;
    position: relative;
    top: -0.1em; }
  .p-accordionBox .p-accordionBox__head .p-accordionBox__head-txt {
    padding-right: 70px; }
  .p-accordionBox .p-accordionBox__head:hover {
    background: #efefef;
    border-color: #37a4f6; }
.p-accordionBox .p-accordionBox__body {
  display: none;
  padding: 50px 30px 75px;
  border: 1px solid #dae1e8;
  border-top: none;
  background: #fff url("/company/efforts/next21/assets/css/../images/accordionBox_bg.png") center bottom no-repeat; }
.p-accordionBox .p-accordionBox__body-btn {
  clear: both;
  margin: 40px auto 0; }

.p-anchorLink {
  padding: 0 30px 45px;
  position: relative; }
  .p-anchorLink:before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - 37px);
    background: #eee;
    position: absolute;
    top: 37px;
    left: 0; }
  .p-anchorLink .p-anchorLink__items {
    text-align: center;
    font-size: 0;
    margin: 0 -30px;
    position: relative;
    z-index: 2; }
    .p-anchorLink .p-anchorLink__items .p-anchorLink__item {
      display: inline-block;
      font-size: 1.6rem;
      font-weight: 700;
      padding: 0 30px;
      vertical-align: top; }
      .p-anchorLink .p-anchorLink__items .p-anchorLink__item a {
        display: inline-block;
        transition: none;
        position: relative; }
        .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span {
          position: relative;
          padding: 0 24px 0 18px;
          margin: 0 -10px;
          display: inline-block;
          white-space: nowrap;
          line-height: 1.2;
          transition: all .2s ease-out;
          -webkit-transition: all .2s ease-out; }
          .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:before {
            content: "";
            display: block;
            width: 12px;
            height: 12px;
            border: 3px solid #ccc;
            border-radius: 50%;
            position: absolute;
            top: 0.25em;
            left: 0; }
          .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:after {
            content: "";
            display: block;
            width: 10px;
            height: 10px;
            border-top: 2px solid #ccc;
            border-right: 2px solid #ccc;
            transform: rotate(135deg);
            position: absolute;
            top: 50%;
            right: 0;
            margin-top: -7px; }
      .p-anchorLink .p-anchorLink__items .p-anchorLink__item__icon {
        position: absolute;
        position: absolute;
        top: 82px;
        z-index: 5;
        width: 64px; }
  .p-anchorLink .p-anchorLink__items--hasImg {
    margin: 0 -12px 40px; }
    .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item {
      width: calc(99% / 4);
      padding: 0 12px; }
      .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
        width: 146px;
        height: 146px;
        background: #fff;
        border-radius: 50%;
        border: 3px solid #ccc;
        overflow: hidden;
        margin: 0 auto 10px;
        position: relative;
        z-index: 1; }
        .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure img {
          transition: all .2s ease-out;
          -webkit-transition: all .2s ease-out; }
      .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a span {
        padding-left: 0;
        padding-right: 20px; }
        .page-home-index .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a span {
          min-height: 38px;
          display: inline-flex;
          align-items: center; }





        .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a span:before {
          display: none; }
      .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a:hover figure img {
        transform: scale(1.05) rotate(0.1deg); }
  .p-anchorLink .p-anchorLink__items--col3 .p-anchorLink__item {
    margin: 0 15px; }
  .p-anchorLink.p-anchorLink--lower {
    padding: 0;
    margin: -90px 0 80px; }
    .p-anchorLink.p-anchorLink--lower:before {
      display: none; }
    .p-anchorLink.p-anchorLink--lower .p-anchorLink__items--hasImg {
      margin: 0; }
      .p-anchorLink.p-anchorLink--lower .p-anchorLink__items--hasImg .p-anchorLink__item {
        width: 150px;
        padding: 0 10px; }
        .p-anchorLink.p-anchorLink--lower .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
          width: 90px;
          height: 90px;
          margin: 0 auto 10px;
          padding: 15px; }
          .p-anchorLink.p-anchorLink--lower .p-anchorLink__items--hasImg .p-anchorLink__item a figure img {
            width: 60px; }
  .page-about .p-anchorLink:before {
    background: #f3f8f6; }
  .page-about .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:before {
    border-color: #00924c; }
  .page-about .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:after {
    border-top-color: #00924c;
    border-right-color: #00924c; }
  .page-about .p-anchorLink .p-anchorLink__items .p-anchorLink__item a:hover span {
    color: #00924c; }
  .page-about .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
    border-color: #00924c; }
  .page-home .p-anchorLink:before {
    background: #faf6ee; }
  .page-home .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:before {
    border-color: #eda533; }
  .page-home .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:after {
    border-top-color: #eda533;
    border-right-color: #eda533; }
  .page-home .p-anchorLink .p-anchorLink__items .p-anchorLink__item a:hover span {
    color: #eda533; }
  .page-home .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
    border-color: #eda533; }
  .page-experiment .p-anchorLink:before {
    background: #e9f3fa; }
  .page-experiment .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:before {
    border-color: #37a4f6; }
  .page-experiment .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:after {
    border-top-color: #37a4f6;
    border-right-color: #37a4f6; }
  .page-experiment .p-anchorLink .p-anchorLink__items .p-anchorLink__item a:hover span {
    color: #37a4f6; }
  .page-experiment .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
    border-color: #37a4f6; }
  .page-archive .p-anchorLink:before {
    background: #f8f3f4; }
  .page-archive .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:before {
    border-color: #d86163; }
  .page-archive .p-anchorLink .p-anchorLink__items .p-anchorLink__item a span:after {
    border-top-color: #d86163;
    border-right-color: #d86163; }
  .page-archive .p-anchorLink .p-anchorLink__items .p-anchorLink__item a:hover span {
    color: #d86163; }
  .page-archive .p-anchorLink .p-anchorLink__items--hasImg .p-anchorLink__item a figure {
    border-color: #d86163; }

.p-anchorLinkLower {
  margin-bottom: 65px; }
  .p-anchorLinkLower .p-anchorLinkLower__items {
    display: flex;
    text-align: center;
    flex-wrap: wrap;
    position: relative;
    z-index: 2; }
  .p-anchorLinkLower .p-anchorLinkLower__items--col3 .p-anchorLinkLower__item {
    width: calc(100% / 3); }
  .p-anchorLinkLower .p-anchorLinkLower__items--col5 .p-anchorLinkLower__item {
    width: calc(100% / 5); }
  .p-anchorLinkLower .p-anchorLinkLower__items--down .p-anchorLinkLower__item a div {
    padding: 0 0 20px;
    height: 100%;
    display: inline-flex;
    align-items: center; }
    .p-anchorLinkLower .p-anchorLinkLower__items--down .p-anchorLinkLower__item a div:after {
      top: auto;

      bottom: 2px;
      right: 50%;
      margin-right: -5px;
      margin-top: 0; }
  .p-anchorLinkLower .p-anchorLinkLower__item {
    width: calc(100% / 4);
    font-size: 1.6rem;
    font-weight: 700;
    border-right: 1px solid #d1d1d1; }
    .p-anchorLinkLower .p-anchorLinkLower__item:first-child {
      border-left: 1px solid #d1d1d1; }
    .p-anchorLinkLower .p-anchorLinkLower__item a {
      display: flex;
      justify-content: center;
      align-items: center;
      transition: none;
      width: 100%;
      height: 73px;
      padding: 0 10px;
      transition: all .2s ease-out; }
      @media screen and (min-width: 750px) {
        .p-anchorLinkLower .p-anchorLinkLower__item a:hover {
          opacity: 0.7; } }
      .p-anchorLinkLower .p-anchorLinkLower__item a div {
        position: relative;
        padding: 0 24px 0 0;
        display: inline-block;
        line-height: 1.3;
        transition: all .2s ease-out;
        -webkit-transition: all .2s ease-out; }
        .p-anchorLinkLower .p-anchorLinkLower__item a div:after {
          content: "";
          display: block;
          width: 10px;
          height: 10px;
          border-top-width: 2px;
          border-right-width: 2px;
          border-style: solid;
          border-color: #ccc;
          transform: rotate(135deg);
          position: absolute;
          top: 50%;
          right: 0;
          margin-top: -5px; }
        .p-anchorLinkLower .p-anchorLinkLower__item a div span {
          display: block;
          font-size: 1.2rem;
          margin-bottom: 5px; }
        .p-anchorLinkLower .p-anchorLinkLower__item a div b {
          display: block;
          font-size: 1.6rem; }
  .page-about .p-anchorLinkLower .p-anchorLinkLower__item a div:after {
    border-color: #00924c; }
  .page-about .p-anchorLinkLower .p-anchorLinkLower__item a div span {
    color: #00924c; }
  .page-home .p-anchorLinkLower .p-anchorLinkLower__item a div:after {
    border-color: #eda533; }
  .page-home .p-anchorLinkLower .p-anchorLinkLower__item a div span {
    color: #eda533; }
  .page-experiment .p-anchorLinkLower .p-anchorLinkLower__item a div:after {
    border-color: #37a4f6; }
  .page-experiment .p-anchorLinkLower .p-anchorLinkLower__item a div span {
    color: #37a4f6; }
  .page-archive .p-anchorLinkLower .p-anchorLinkLower__item a div:after {
    border-color: #d86163; }
  .page-archive .p-anchorLinkLower .p-anchorLinkLower__item a div span {
    color: #d86163; }
  .p-anchorLinkLower .p-anchorLinkLower__items--media {
    margin: -6px -3px 0; }
    .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item {
      border-right: none;
      margin-top: 6px; }
      .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item:first-child {
        border-left: none; }
      .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a {
        height: auto;
        padding-left: 3px;
        padding-right: 3px;
        justify-content: flex-start; }
        .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div {
          display: flex;
          flex-wrap: wrap;
          width: 100%;
          padding: 5px;
          background-color: rgba(156, 156, 156, 0.1); }
          .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div:after {
            display: none; }
          .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div .p-anchorLinkLower__img {
            width: 90px; }
          .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div .p-anchorLinkLower__txt {
            width: calc(100% - 90px);
            text-align: left;
            font-weight: 400;
            font-size: 1.4rem;
            padding: 10px 8px 10px 20px; }
            .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div .p-anchorLinkLower__txt b {
              font-size: 1.6rem;

              font-weight: 700;
              margin: 10px 0 0; }
            .p-anchorLinkLower .p-anchorLinkLower__items--media .p-anchorLinkLower__item a div .p-anchorLinkLower__txt .p-anchorLinkLower__position {
              color: #222;
              font-size: 1.2rem;
              display: inline-block;
              margin: 0 0 0 4px; }
  .p-anchorLinkLower.p-anchorLinkLower--multiple ul {
    border-bottom: 1px solid #e0e0e0;
    margin-top: 15px;
    padding-bottom: 15px; }
  .p-anchorLinkLower.p-anchorLinkLower--multiple .p-anchorLinkLower__item a {
    height: 56px; }

.p-applicationArea {
  margin-top: 65px; }
  .p-applicationArea .p-applicationArea__head {
    margin-bottom: 15px;
    text-align: center; }
    .p-applicationArea .p-applicationArea__head span {
      display: inline-block;
      padding: 0 0 0 63px;
      font-size: 2rem;
      font-weight: 700;
      color: #0070bc;
      min-height: 40px;
      line-height: 40px;
      background-image: url("/company/efforts/next21/assets/css/../images/ico_data.png");
      background-repeat: no-repeat;
      background-position: left top;
      background-size: 43px; }
  .p-applicationArea .p-applicationArea__btn {
    margin: 0 auto; }
  .p-applicationArea .p-applicationArea__txt {
    text-align: center;
    font-size: 1.6rem;
    margin-top: 10px; }

.p-applicationArea--mail .p-applicationArea__head span {
  background-image: url("/company/efforts/next21/assets/css/../images/ico_mail.png");
  color: #ed9333; }
.p-applicationArea--mail .c-btn--large > a {
  background-color: #ed9333; }
  .p-applicationArea--mail .c-btn--large > a:hover {
    background-color: #a7641e; }

.p-applicationAreas--col2 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  .p-applicationAreas--col2 .p-applicationArea {
    flex: 0 0 50%;
    max-width: 50%;
    width: 50%;
    padding: 0 10px; }

.p-indexArea {
  background-position: center top;
  background-repeat: no-repeat;
  margin-bottom: -92px; }
  .p-indexArea .p-indexArea__lead {
    text-align: center;
    margin-top: -15px; }
  .p-indexArea .p-indexArea__item {
    position: relative;
    clear: both;
    padding: 0 30px 0 0; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__img {
      width: 268px;
      position: absolute;
      top: 30px;
      left: 0; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink {
      display: flex;
      flex-wrap: wrap;
      width: 457px;
      margin: -5px 0 0 0; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem {
        margin: 5px 0 0 5px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem:nth-child(4) {
          margin-left: 34px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a {
          display: block;
          position: relative;
          overflow: hidden; }
          .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a figure {
            position: relative; }
            .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a figure:before {
              content: "";
              display: block;
              width: 17px;
              height: 17px;
              background: #fff url("/company/efforts/next21/assets/css/../images/ico_arrow_02.png") no-repeat center center;
              border-radius: 50%;
              position: absolute;
              right: 5px;
              bottom: 5px; }
          .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver {
            width: 100%;
            height: 100%;
            position: absolute;
            bottom: 0;
            left: 0;
            color: #fff;
            text-align: center;
            display: flex;
            align-items: center;
            font-size: 1.2rem;
            font-weight: 700;
            line-height: 1.5;
            transition-duration: 0.3s;
            transform: translateY(100%); }
            .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver:before {
              content: "";
              display: block;
              width: 100%;
              height: 100%;
              background: #000;
              position: absolute;
              top: 0;
              left: 0;
              z-index: 1;
              opacity: 0.86; }
            .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver div {
              position: relative;
              z-index: 2;
              width: 100%; }
            .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver .p-indexArea__btnLinkPosition {
              margin-bottom: 5px; }
            .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver .p-indexArea__btnLinkName b {
              display: block;
              font-size: 1.6rem; }
          .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a:hover .p-indexArea__btnLinkOver {
            transform: translateY(0); }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__body {
      width: 370px;
      float: right;
      position: relative;
      z-index: 2; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl {
      font-size: 3rem;
      font-weight: 500;
      margin-bottom: 30px;
      line-height: 1.3; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl b {
        font-size: 4.4rem; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl small {
        color: #222222;
        font-size: 1.8rem;
        display: inline-block; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--s b {
        font-size: 3rem; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--line {
        padding-left: 100px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--line .p-indexArea__ttl__icon {
          position: absolute;
          left: 0;
          top: 9px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--line .p-indexArea__ttl__sub {
          margin: 0; }
          .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--line .p-indexArea__ttl__sub + .p-indexArea__ttl__sub {
            margin-top: -10px; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__lead {
      font-size: 1.6rem;
      font-weight: 700;
      margin: 0 0 20px;
      line-height: 1.5;
      text-align: left; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink {
      margin-top: 20px;
      line-height: 1.4; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li + li {
        margin-top: 4px; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li a {
        display: inline-block;
        padding: 0 0 0 17px;
        position: relative; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li a:before {
          content: "";
          position: absolute;
          left: 17px;
          right: 0;
          bottom: 1px;
          background-color: #222;
          height: 1px;
          opacity: 0;
          transition: 0.2s ease-in-out; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li a:hover:before {
          opacity: 1; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li a span {
          font-size: 1rem;
          display: inline-block;
          margin-left: 4px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__txtLink li a:after {
          content: "";
          display: block;
          width: 9px;
          height: 7px;
          position: absolute;
          top: 7px;
          left: 0;
          background-image: url(/company/efforts/next21/assets/css/../images/ico_arrow_02.png);
          background-position: center;
          background-repeat: no-repeat;
          transition: all .2s ease-out; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__dl {
      margin-top: 25px; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__dl dt {
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 10px;
        background: #c9e6fd;
        text-align: center; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__dl ul li {
        width: 50%;
        float: left;
        padding: 0 0 4px 10px;
        position: relative; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__dl ul li:before {
          content: "";
          display: block;
          width: 7px;
          height: 7px;
          border-radius: 50%;
          background: #37a4f6;
          position: absolute;
          left: 0;
          top: 0.6em; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__pic {
      padding: 30px 0 0;
      margin: -20px 0 0 -20px; }
      .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__pic figure {
        width: 175px;
        float: left;
        margin: 20px 0 0 20px; }
        .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__pic figure figcaption {
          font-weight: 700;
          margin-top: 5px; }
    .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btn {
      margin-top: 25px;
      float: right; }
  .p-indexArea .p-indexArea__item--reverse {
    padding: 0 0 0 30px; }
    .p-indexArea .p-indexArea__item--reverse .p-indexArea__sect .p-indexArea__img {
      left: inherit;
      right: 0; }
    .p-indexArea .p-indexArea__item--reverse .p-indexArea__sect .p-indexArea__body {
      float: left; }
  .p-indexArea .p-indexArea__item--col2 {
    width: 550px;
    float: right;
    display: flex; }
    .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect {
      width: 240px;
      float: left;
      padding-bottom: 85px;
      position: relative; }
      .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect + .p-indexArea__sect {
        margin-left: 40px; }
      .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect .p-indexArea__ttl {
        font-size: 1.6rem;
        margin: 20px 0 15px;
        font-weight: bold; }
        .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect .p-indexArea__ttl span {
          display: inline-block;
          padding-bottom: 2px;
          position: relative; }
          .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect .p-indexArea__ttl span:after {
            content: '';
            position: absolute;
            bottom: 0px;
            left: 0px;
            right: 0px;
            background: rgba(51, 168, 112, 0.27);
            height: 6px; }
      .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect .p-indexArea__btn {
        position: absolute;
        left: 0;
        bottom: 0; }
      .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect p + p {
        margin-top: 10px; }
  .p-indexArea .p-indexArea__indent {
    text-indent: -1em;
    padding-left: 1em; }
  .page-about .p-indexArea {
    background-image: url("/company/efforts/next21/assets/css/../images/about/indexArea_bg.png"); }
    .page-about .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__btnLink .p-indexArea__btnLinkItem a .p-indexArea__btnLinkOver:before {
      background: #00924c; }
    .page-about .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl b {
      color: #00924c; }

  .page-home .p-indexArea {
    background-image: url("/company/efforts/next21/assets/css/../images/home/indexArea_bg.png"); }
    .page-home .p-indexArea .p-indexArea__item--col2 .p-indexArea__sect .p-indexArea__ttl span:after {
      background-color: rgba(243, 195, 119, 0.27); }
    .page-home .p-indexArea .p-indexArea__ttl__sub .sup {
      position: relative;
      display: inline-block; }
      .page-home .p-indexArea .p-indexArea__ttl__sub .sup sub {
        position: absolute;
        top: -6px;
        left: 0;
        right: 0;
        font-size: 11px;
        text-align: center;
        color: #222; }
    .page-home .p-indexArea .p-indexArea__ttl--cus {
      margin-right: -16px; }
      .page-home .p-indexArea .p-indexArea__ttl--cus .p-indexArea__ttl__sub {
        letter-spacing: -0.03em; }
      @media all and (-ms-high-contrast: none) {
        .page-home .p-indexArea .p-indexArea__ttl--cus *::-ms-backdrop, .page-home .p-indexArea .p-indexArea__ttl--cus .p-indexArea__ttl__sub {
          letter-spacing: -0.04em; } }
    .page-home .p-indexArea .p-indexArea__ttl__sub:after {
      background-color: rgba(243, 195, 119, 0.27);
      bottom: 3px; }
    .page-home .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl b {
      color: #eda533; }
  .page-experiment .p-indexArea {
    background-image: url("/company/efforts/next21/assets/css/../images/experiment/indexArea_bg.png"); }
    .page-experiment .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--s {
      font-family: "Noto Sans JP"; }
      .page-experiment .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl.p-indexArea__ttl--s b b {
        color: #37a4f6;
        font-size: 4.4rem; }
    .page-experiment .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl__sub:after {
      background-color: rgba(55, 164, 246, 0.3);
      bottom: 3px; }
  .page-archive .p-indexArea {
    background-image: url("/company/efforts/next21/assets/css/../images/archive/indexArea_bg.png"); }
    .page-archive .p-indexArea .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl b {
      color: #d86163; }
  .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__img {
    width: 355px;
    border-width: 8px;
    border-style: solid;
    border-radius: 50%;
    overflow: hidden;
    left: -88px; }
    .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__img img {
      max-width: inherit;
      width: 100%; }
  .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__imgSub {
    position: absolute; }
  .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__body {
    width: 617px; }
  .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl {
    font-size: 3rem;
    min-height: 82px;
    margin-bottom: 25px;
    padding-left: 97px;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 82px;
    line-height: 1; }
    .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl > span {
      position: relative;
      z-index: 2; }
      .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl > span:after {
        content: '';
        position: absolute;
        bottom: 0px;
        left: 0px;
        right: 2px;
        background: rgba(51, 168, 112, 0.27);
        height: 12px;
        z-index: -1; }
    .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl span {
      display: inline-block;
      padding: 10px 0 3px; }
      .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl span span {
        display: block;
        border: none;
        padding: 0;
        min-height: inherit;
        font-size: 1.6rem;
        font-weight: bold;
        margin: -10px 0 5px; }
      .p-indexArea.p-indexArea--top .p-indexArea__item .p-indexArea__sect .p-indexArea__ttl span b {
        display: inline-block;
        line-height: 1;
        font-size: 4.4rem; }
  .p-indexArea.p-indexArea--top .p-indexArea__item.p-indexArea__item--reverse .p-indexArea__sect .p-indexArea__img {
    left: inherit;
    right: -88px; }
  .p-indexArea__ttl__icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 14px; }
  .p-indexArea__ttl__sub {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 13px;
    position: relative; }
    .p-indexArea__ttl__sub:after {
      content: '';
      position: absolute;
      bottom: 2px;
      left: -5px;
      right: -6px;
      background: rgba(51, 168, 112, 0.27);
      height: 12px; }

.p-lowerLink {
  clear: both;
  width: 100%;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
  height: 156px;
  display: table;
  background-position: center top;
  background-repeat: no-repeat;
  background-image: url("/company/efforts/next21/assets/css/../images/lowerLink_bg.png"); }
  .p-lowerLink .p-lowerLink__head {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 180px;
    color: #fff;
    font-weight: bold;
    font-size: 1.8rem; }
  .p-lowerLink .p-lowerLink__body {
    display: table-cell;
    vertical-align: middle;
    padding: 0 30px;
    font-size: 1.5rem;
    line-height: 1.3; }
    .p-lowerLink .p-lowerLink__body ul li {
      float: left;
      width: 25%;
      padding: 0 10px 0 0; }
      .p-lowerLink .p-lowerLink__body ul li div {
        height: 60px;
        display: table-cell;
        vertical-align: middle; }
        .p-lowerLink .p-lowerLink__body ul li div a {
          display: inline-block; }
          .p-lowerLink .p-lowerLink__body ul li div a span {
            display: inline-block;
            position: relative;
            padding: 0 0 0 15px; }
            .p-lowerLink .p-lowerLink__body ul li div a span:before {
              content: "";
              display: block;
              width: 7px;
              height: 2px;
              background: #d8d8d8;
              position: absolute;
              left: 0;
              top: 50%;
              margin-top: -1px; }
          .p-lowerLink .p-lowerLink__body ul li div a:hover span {
            text-decoration: underline; }
          .p-lowerLink .p-lowerLink__body ul li div a.is-current span {
            text-decoration: underline; }
  .page-about .p-lowerLink {
    background-image: url("/company/efforts/next21/assets/css/../images/about/lowerLink_bg.png"); }
    .page-about .p-lowerLink .p-lowerLink__body ul li div a span:before {
      background: #00924c; }
    .page-about .p-lowerLink .p-lowerLink__body ul li div a.is-current span {
      color: #00924c; }
  .page-home .p-lowerLink {
    height: 175px;  
    background-image: url("/company/efforts/next21/assets/css/../images/home/lowerLink_bg.png"); }
     .page-home .p-lowerLink .p-lowerLink__body ul li {
 	padding-top: 5px;
 	padding-bottom: 5px;
 	}
    .page-home .p-lowerLink .p-lowerLink__body ul li div a span:before {
      background: #eda533; }
    .page-home .p-lowerLink .p-lowerLink__body ul li div a.is-current span {
      color: #eda533; }
  .page-experiment .p-lowerLink {
    background-image: url("/company/efforts/next21/assets/css/../images/experiment/lowerLink_bg.png"); }
    .page-experiment .p-lowerLink .p-lowerLink__body ul li div a span:before {
      background: #37a4f6; }
    .page-experiment .p-lowerLink .p-lowerLink__body ul li div a.is-current span {
      color: #37a4f6; }
  .page-archive .p-lowerLink {
    background-image: url("/company/efforts/next21/assets/css/../images/archive/lowerLink_bg.png"); }
    .page-archive .p-lowerLink .p-lowerLink__body ul li div a span:before {
      background: #d86163; }
    .page-archive .p-lowerLink .p-lowerLink__body ul li div a.is-current span {
      color: #d86163; }

.p-newsList .p-newsList__head {
  position: relative; }
.p-newsList .p-newsList__btn {
  position: absolute;
  right: 0;
  top: 15px; }
.p-newsList .p-newsList__item {
  position: relative; }
  .p-newsList .p-newsList__item {  /*modified 200323*/
    padding: 5px 0;
    display: block;
    overflow: hidden;
    position: relative; }
    .p-newsList .p-newsList__item span{ /*modified 200323*/
      display: block; }
    .p-newsList .p-newsList__item .p-newsList__time{/*modified 200323*/
      width: 255px;
      float: left; }
    .p-newsList .p-newsList__item .p-newsList__ico{/*modified 200323*/
      width: 88px;
      height: 23px;
      text-align: center;
      font-size: 1.5rem;
      color: #fff;
      line-height: 23px;
      background: #ccc;
      border-radius: 2px;
      position: absolute;
      top: 5px;
      left: 150px; }
      .p-newsList .p-newsList__item .p-newsList__ico--new{/*modified 200323*/
        background: #d94a4c; }

	.p-newsList .p-newsList__item .p-newsList__txt{
      margin-left: 255px; }/*modified 200319 */

    .p-newsList .p-newsList__item a:hover .p-newsList__txt {
      text-decoration: underline; }


  .page-news .p-newsList .p-newsList__item {/*.page-news=not top*/
    border-bottom: 1px solid #ededed;
	padding: 25px 10px 25px 30px; }

      .page-news .p-newsList .p-newsList__item .p-newsList__time{/*modified 200323*/
        width: 160px;
        font-weight: bold; }
      .page-news .p-newsList .p-newsList__item a .p-newsList__txt{ /*modified 200319*/
	    margin-left: 160px;
        color: #005ca1;
        text-decoration: underline;
		display: block;}
		.page-news .p-newsList .p-newsList__item .p-newsList__txt{ /*added 200319*/
	   margin-left: 160px;
        /*color: #005ca1;*/
        text-decoration: none;
		display: block;}
      .page-news .p-newsList .p-newsList__item a:hover .p-newsList__txt {
        text-decoration: none; }

.p-pageHeader {
  height: 286px;
  position: relative;
  color: #fff;
  background-color: #fff;
  background-position: center top;
  background-repeat: no-repeat;
  letter-spacing: 0.1em; }
  .p-pageHeader:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url("/company/efforts/next21/assets/css/../images/mv_frame.png") no-repeat center bottom;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-bottom: -1px; }
  .p-pageHeader .p-pageHeader__inner {
    max-width: 950px;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 0 0 0 230px;
    display: flex;
    align-items: center; }
    .p-pageHeader .p-pageHeader__inner:before, .p-pageHeader .p-pageHeader__inner:after {
      content: "";
      width: 200px;
      height: 100%;
      position: absolute;
      top: 0; }
    .p-pageHeader .p-pageHeader__inner:before {
      left: -245px;
      background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 100%); }
    .p-pageHeader .p-pageHeader__inner:after {
      right: -245px;
      background: linear-gradient(-90deg, white 0%, rgba(255, 255, 255, 0) 100%); }
  .p-pageHeader .p-pageHeader__parent {
    display: table;
    min-width: 230px;
    font-size: 1.6rem;
    padding: 5px 0 6px;
    margin-bottom: 15px;
    line-height: 1;
    text-align: center;
    position: relative; }
    .p-pageHeader .p-pageHeader__parent:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      background: #000;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0.91; }
    .p-pageHeader .p-pageHeader__parent span {
      display: inline-block;
      position: relative;
      z-index: 2; }
  .p-pageHeader .p-pageHeader__ttl {
    font-size: 3rem;
    font-weight: 400;
    padding: 0;
    line-height: 1.3; }
    .p-pageHeader .p-pageHeader__ttl span {
      display: inline-block;
      padding: 0 0 5px;
      border-bottom: 2px solid #fff;
      text-shadow: 2px 4px 3px rgba(0, 0, 0, 0.7); }
    .p-pageHeader .p-pageHeader__ttl__small {
      position: relative; }
      .p-pageHeader .p-pageHeader__ttl__small sub {
        position: absolute;
        top: -4px;
        left: 0;
        right: 0;
        font-size: 11px;
        text-align: center; }
  .p-pageHeader .p-pageHeader__txt {
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: .13em;
    margin-top: 15px;
    text-shadow: 2px 4px 3px rgba(0, 0, 0, 0.7); }
  .p-pageHeader .p-pageHeader__img {
    position: absolute;
    top: 40px;
    right: 0; }
  .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl {
    display: table;
    font-size: 3rem;
    font-weight: 600;
    padding: 0;
    line-height: 1.3;
    position: relative;
    padding: 0 30px 0 24px; }
    .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      background: #000;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0.8; }
    .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
      display: inline-block;
      padding: 0 0 0 55px;
      border-bottom: none;
      position: relative;
      z-index: 2;
      height: 73px;
      line-height: 73px;
      background-position: left center;
      background-repeat: no-repeat;
      text-shadow: none; }
  .p-pageHeader.p-pageHeader--index .p-pageHeader__txt {
    font-size: 2rem;
    margin-top: 30px; }
  .page-about .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
    background: #00924c; }
  .page-about .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
    background-image: url("/company/efforts/next21/assets/css/../images/ico_about.png"); }
  .page-home .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
    background: #eda533; }
  .page-home .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
    background-image: url("/company/efforts/next21/assets/css/../images/ico_home.png"); }
  .page-experiment .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
    background: #37a4f6; }
  .page-experiment .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
    background-image: url("/company/efforts/next21/assets/css/../images/ico_experiment.png"); }
  .page-explanation .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
    background: #006cb9; }
  .page-explanation .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
    background-image: none;
    padding-left: 0; }
  .page-archive .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
    background: #d86163; }
  .page-archive .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
    background-image: url("/company/efforts/next21/assets/css/../images/ico_archive.png"); }
  .page-news .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl {
    padding-left: 43px;
    padding-right: 43px; }
    .page-news .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl:before {
      background: #0066b3; }
    .page-news .p-pageHeader.p-pageHeader--index .p-pageHeader__ttl span {
      padding-left: 0; }
  .page-about .p-pageHeader.p-pageHeader--lower .p-pageHeader__parent:before {
    background: #00924c; }
  .page-home .p-pageHeader.p-pageHeader--lower .p-pageHeader__parent:before {
    background: #eda533; }
  .page-experiment .p-pageHeader.p-pageHeader--lower .p-pageHeader__parent:before {
    background: #37a4f6; }
  .page-archive .p-pageHeader.p-pageHeader--lower .p-pageHeader__parent:before {
    background: #d86163; }

.p-imgGroup .p-imgGroup__item figcaption {
  margin-top: 10px; }
.p-imgGroup .p-imgGroup__item figure + figure {
  margin-top: 10px; }
.p-imgGroup .p-imgGroup__itemRight {
  float: right; }
  .p-imgGroup .p-imgGroup__itemRight + .p-imgGroup__itemRight {
    margin-right: 10px; }
.p-imgGroup .p-imgGroup__itemLeft {
  float: left; }
  .p-imgGroup .p-imgGroup__itemLeft + .p-imgGroup__itemLeft {
    margin-left: 10px; }

/*
#overview
Utility

ユーティリティクラス
*/
/*
#styleguide
display
```
<p>【375px以上で表示→】<span class="u-xxsMin">375px以上で表示</span></p>
<p>【374px以下で表示→】<span class="u-xxsMax">374px以下で表示</span></p>
<br>
<p>【768px以上で表示→】<span class="u-xsMin">768px以上で表示</span></p>
<p>【767px以下で表示→】<span class="u-xsMax">767px以下で表示</span></p>
<br>
<p>【1180px以上で表示→】<span class="u-smMin">1180px以上で表示</span></p>
<p>【1179px以下で表示→】<span class="u-smMax">1179px以下で表示</span></p>
<br>
<p>【1600px以上で表示→】<span class="u-mdMin">1600px以上で表示</span></p>
<p>【1599px以下で表示→】<span class="u-mdMax">1599px以下で表示</span></p>
```
*/
@media screen and (max-width: 374px) {
  .u-xsMin {
    display: none !important; } }

@media screen and (min-width: 375px) {
  .u-xsMax {
    display: none !important; } }

@media screen and (max-width: 749px) {
  .u-smMin {
    display: none !important; } }

@media screen and (min-width: 750px) {
  .u-smMax {
    display: none !important; } }

@media screen and (max-width: 1023px) {
  .u-mdMin {
    display: none !important; } }

@media screen and (min-width: 1024px) {
  .u-mdMax {
    display: none !important; } }

@media screen and (max-width: 1499px) {
  .u-lgMin {
    display: none !important; } }

@media screen and (min-width: 1500px) {
  .u-lgMax {
    display: none !important; } }

.u-ff-normal {
  font-family: fontNormal; }

.u-ff-selif {
  font-family: "Noto Serif JP", serif; }

/*
#styleguide
font-size
```
<p class="u-fz-20">font-size: 2rem</p>
<p class="u-fz-19">font-size: 1.9rem</p>
<p class="u-fz-18">font-size: 1.8rem</p>
<p class="u-fz-17">font-size: 1.7rem</p>
<p class="u-fz-16">font-size: 1.6rem</p>
<p class="u-fz-15">font-size: 1.5rem</p>
<p class="u-fz-14">font-size: 1.4rem</p>
<p class="u-fz-13">font-size: 1.3rem</p>
<p class="u-fz-12">font-size: 1.2rem</p>
<p class="u-fz-11">font-size: 1.1rem</p>
<p class="u-fz-10">font-size: 1rem</p>
```
*/
.u-fz-20 {
  font-size: 2rem !important; }

.u-fz-19 {
  font-size: 1.9rem !important; }

.u-fz-18 {
  font-size: 1.8rem !important; }

.u-fz-17 {
  font-size: 1.7rem !important; }

.u-fz-16 {
  font-size: 1.6rem !important; }

.u-fz-15 {
  font-size: 1.5rem !important; }

.u-fz-14 {
  font-size: 1.4rem !important; }

.u-fz-13 {
  font-size: 1.3rem !important; }

.u-fz-12 {
  font-size: 1.2rem !important; }

.u-fz-11 {
  font-size: 1.1rem !important; }

.u-fz-10 {
  font-size: 1rem !important; }

/*
#styleguide
font-weight
```
<p class="u-fw-r">【Regular】font-weight: 400</p>
<p class="u-fw-m">【Medium】font-weight: 500</p>
<p class="u-fw-b">【Bold】font-weight: 700</p>
```
*/
.u-fw-r {
  font-weight: 400 !important; }

.u-fw-m {
  font-weight: 500 !important; }

.u-fw-b {
  font-weight: 700 !important; }

/*
#styleguide
text-align
```
<p class="u-txt-left">text-align: left</p>
<p class="u-txt-right">text-align: right</p>
<p class="u-txt-center">text-align: center</p>
<p class="u-smMintxt-left">smMintxt text-align: left</p>
<p class="u-smMintxt-right">smMintxt text-align: right</p>
<p class="u-smMintxt-center">smMintxt text-align: center</p>
<p class="u-smMax-left">smMax text-align: left</p>
<p class="u-smMax-right">smMax text-align: right</p>
<p class="u-smMax-center">smMax text-align: center</p>
```
*/
.u-ta-l {
  text-align: left !important; }

.u-ta-r {
  text-align: right !important; }

.u-ta-c {
  text-align: center !important; }

/*@include xsMin() {
  .u-xsMin-txt-left {
    text-align: left !important;
  }

  .u-xsMin-txt-right {
    text-align: right !important;
  }

  .u-xsMin-txt-center {
    text-align: center !important;
  }
}

@include xsMax() {
  .u-smMax-txt-left {
    text-align: left !important;
  }

  .u-smMax-txt-right {
    text-align: right !important;
  }

  .u-smMax-txt-center {
    text-align: center !important;
  }
}
*/
/*
#styleguide
text-align
```
<p class="u-letter-01">letter-spacing: 0.01em</p>
```
*/
.u-letter-001 {
  letter-spacing: 0.01em; }

/*
#styleguide
vertical-align
```
<table class="c-table">
  <tbody>
    <tr>
      <td>あああああ<br>あああああ<br>あああああ<br>あああああ<br>あああああ</td>
      <td class="u-txt-top">あああああ</td>
      <td class="u-txt-middle">あああああ</td>
      <td class="u-txt-bottom">あああああ</td>
    </tr>
  </tbody>
</table>
```
*/
.u-va-t {
  vertical-align: top !important; }

.u-va-m {
  vertical-align: middle !important; }

.u-va-b {
  vertical-align: bottom !important; }

/*
#styleguide
margin
```
<div class="u-m-0"><div class="u-bg-gray01">margin: 0;</div></div>
<div class="u-m-auto"><div class="u-bg-gray02">margin: auto;</div></div>
<div class="u-mx-auto"><div class="u-bg-gray01">margin-left: auto; margin-right: auto;</div></div>
<div class="u-my-auto"><div class="u-bg-gray02">margin-top: auto; margin-bottom: auto;</div></div>
<br>
▼margin-top
<div class="u-mt-0"><div class="u-bg-gray01">margin-top: 0;</div></div>
<div class="u-mt-5"><div class="u-bg-gray01">margin-top: 5px;</div></div>
<div class="u-mt-10"><div class="u-bg-gray01">margin-top: 10px;</div></div>
<div class="u-mt-15"><div class="u-bg-gray01">margin-top: 15px;</div></div>
<div class="u-mt-20"><div class="u-bg-gray01">margin-top: 20px;</div></div>
<div class="u-mt-xs"><div class="u-bg-gray01">margin-top: 20px;【1179px以下】margin-top: 15px;【767px以下】margin-top: 10px;</div></div>
<div class="u-mt-sm"><div class="u-bg-gray01">margin-top: 40px;【1179px以下】margin-top: 30px;【767px以下】margin-top: 20px;</div></div>
<div class="u-mt-md"><div class="u-bg-gray01">margin-top: 60px;【1179px以下】margin-top: 45px;【767px以下】margin-top: 30px;</div></div>
<div class="u-mt-lg"><div class="u-bg-gray01">margin-top: 80px;【1179px以下】margin-top: 60px;【767px以下】margin-top: 40px;</div></div>
<div class="u-mt-xl"><div class="u-bg-gray01">margin-top: 100px;【1179px以下】margin-top: 75px;【767px以下】margin-top: 50px;</div></div>
<br>
▼margin-bottom
<div class="u-mb-0"><div class="u-bg-gray01">margin-bottom: 0;</div></div>
<div class="u-mb-5"><div class="u-bg-gray01">margin-bottom: 5px;</div></div>
<div class="u-mb-10"><div class="u-bg-gray01">margin-bottom: 10px;</div></div>
<div class="u-mb-15"><div class="u-bg-gray01">margin-bottom: 15px;</div></div>
<div class="u-mb-20"><div class="u-bg-gray01">margin-bottom: 20px;</div></div>
<div class="u-mb-xs"><div class="u-bg-gray01">margin-bottom: 20px;【1179px以下】margin-top: 15px;【767px以下】margin-top: 10px;</div></div>
<div class="u-mb-sm"><div class="u-bg-gray01">margin-bottom: 40px;【1179px以下】margin-top: 30px;【767px以下】margin-top: 20px;</div></div>
<div class="u-mb-md"><div class="u-bg-gray01">margin-bottom: 60px;【1179px以下】margin-top: 45px;【767px以下】margin-top: 30px;</div></div>
<div class="u-mb-lg"><div class="u-bg-gray01">margin-bottom: 80px;【1179px以下】margin-top: 60px;【767px以下】margin-top: 40px;</div></div>
<div class="u-mb-xl"><div class="u-bg-gray01">margin-bottom: 100px;【1179px以下】margin-top: 75px;【767px以下】margin-top: 50px;</div></div>
<br>
▼調整用
<div class="u-mdMin-mx-80"><div class="u-bg-gray01">【1600px以上】margin-left: 80px; margin-right: 80px</div></div>
```
*/
.u-m-0 {
  margin: 0 !important; }

.u-m-auto {
  margin: auto !important; }

.u-mx-auto {
  margin-left: auto !important;
  margin-right: auto !important; }

.u-my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important; }

.u-mt-0 {
  margin-top: 0 !important; }

.u-mt-5 {
  margin-top: 5px !important; }

.u-mt-10 {
  margin-top: 10px !important; }

.u-mt-15 {
  margin-top: 15px !important; }

.u-mt-20 {
  margin-top: 20px !important; }

.u-mt-30 {
  margin-top: 30px !important; }

.u-mt-40 {
  margin-top: 40px !important; }

.u-mt-50 {
  margin-top: 50px !important; }

.u-mt-60 {
  margin-top: 60px !important; }

.u-mt-xs {
  margin-top: 20px !important; }
  @media screen and (max-width: 1023px) {
    .u-mt-xs {
      margin-top: 15px !important; } }
  @media screen and (max-width: 749px) {
    .u-mt-xs {
      margin-top: 10px !important; } }

.u-mt-sm {
  margin-top: 40px !important; }
  @media screen and (max-width: 1023px) {
    .u-mt-sm {
      margin-top: 30px !important; } }
  @media screen and (max-width: 749px) {
    .u-mt-sm {
      margin-top: 20px !important; } }

.u-mt-md {
  margin-top: 50px !important; }
  @media screen and (max-width: 1023px) {
    .u-mt-md {
      margin-top: 40px !important; } }
  @media screen and (max-width: 749px) {
    .u-mt-md {
      margin-top: 30px !important; } }

.u-mt-lg {
  margin-top: 80px !important; }
  @media screen and (max-width: 1023px) {
    .u-mt-lg {
      margin-top: 60px !important; } }
  @media screen and (max-width: 749px) {
    .u-mt-lg {
      margin-top: 40px !important; } }

.u-mt-xl {
  margin-top: 100px !important; }
  @media screen and (max-width: 1023px) {
    .u-mt-xl {
      margin-top: 75px !important; } }
  @media screen and (max-width: 749px) {
    .u-mt-xl {
      margin-top: 50px !important; } }

.u-mb-0 {
  margin-bottom: 0 !important; }

.u-mb-5 {
  margin-bottom: 5px !important; }

.u-mb-10 {
  margin-bottom: 10px !important; }

.u-mb-15 {
  margin-bottom: 15px !important; }

.u-mb-20 {
  margin-bottom: 20px !important; }

.u-mb-30 {
  margin-bottom: 30px !important; }

.u-mb-40 {
  margin-bottom: 40px !important; }

.u-mb-50 {
  margin-bottom: 50px !important; }

.u-mb-60 {
  margin-bottom: 60px !important; }

.u-mb-70 {
  margin-bottom: 70px !important; }

.u-mb-80 {
  margin-bottom: 80px !important; }

.u-mb-90 {
  margin-bottom: 90px !important; }

.u-mb-xs {
  margin-bottom: 20px !important; }
  @media screen and (max-width: 1023px) {
    .u-mb-xs {
      margin-bottom: 15px !important; } }
  @media screen and (max-width: 749px) {
    .u-mb-xs {
      margin-bottom: 10px !important; } }

.u-mb-sm {
  margin-bottom: 40px !important; }
  @media screen and (max-width: 1023px) {
    .u-mb-sm {
      margin-bottom: 30px !important; } }
  @media screen and (max-width: 749px) {
    .u-mb-sm {
      margin-bottom: 20px !important; } }

.u-mb-md {
  margin-bottom: 60px !important; }
  @media screen and (max-width: 1023px) {
    .u-mb-md {
      margin-bottom: 45px !important; } }
  @media screen and (max-width: 749px) {
    .u-mb-md {
      margin-bottom: 30px !important; } }

.u-mb-lg {
  margin-bottom: 80px !important; }
  @media screen and (max-width: 1023px) {
    .u-mb-lg {
      margin-bottom: 60px !important; } }
  @media screen and (max-width: 749px) {
    .u-mb-lg {
      margin-bottom: 40px !important; } }

.u-mb-xl {
  margin-bottom: 100px !important; }
  @media screen and (max-width: 1023px) {
    .u-mb-xl {
      margin-bottom: 75px !important; } }
  @media screen and (max-width: 749px) {
    .u-mb-xl {
      margin-bottom: 50px !important; } }

/*
#styleguide
padding
```
<div class="u-p-0 u-bg-gray01">padding: 0;</div>
<div class="u-p-auto u-bg-gray02">padding: auto;</div>
<div class="u-px-auto u-bg-gray01">padding-left: auto; padding-right: auto;</div>
<div class="u-py-auto u-bg-gray02">padding-top: auto; padding-bottom: auto;</div>
<div class="u-p-xs u-bg-gray01">padding: 20px;【1179px以下】padding: 15px;【767px以下】padding: 10px;</div>
<div class="u-p-sm u-bg-gray02">padding: 40px;【1179px以下】padding: 30px;【767px以下】padding: 20px;</div>
<div class="u-p-md u-bg-gray01">padding: 60px;【1179px以下】padding: 45px;【767px以下】padding: 30px;</div>
<div class="u-p-lg u-bg-gray02">padding: 80px;【1179px以下】padding: 60px;【767px以下】padding: 40px;</div>
<div class="u-p-xl u-bg-gray01">padding: 100px;【1179px以下】padding: 75px;【767px以下】padding: 50px;</div>
<br>
▼padding-top
<div class="u-pt-0 u-bg-gray01">padding-top: 0;</div>
<div class="u-pt-5 u-bg-gray02">padding-top: 5px;</div>
<div class="u-pt-10 u-bg-gray01">padding-top: 10px;</div>
<div class="u-pt-15 u-bg-gray02">padding-top: 15px;</div>
<div class="u-pt-20 u-bg-gray01">padding-top: 20px;</div>
<div class="u-pt-xs u-bg-gray02">padding-top: 20px;【1179px以下】padding-top: 15px;【767px以下】padding-top: 10px;</div>
<div class="u-pt-sm u-bg-gray01">padding-top: 40px;【1179px以下】padding-top: 30px;【767px以下】padding-top: 20px;</div>
<div class="u-pt-md u-bg-gray02">padding-top: 60px;【1179px以下】padding-top: 45px;【767px以下】padding-top: 30px;</div>
<div class="u-pt-lg u-bg-gray01">padding-top: 80px;【1179px以下】padding-top: 60px;【767px以下】padding-top: 40px;</div>
<div class="u-pt-xl u-bg-gray02">padding-top: 100px;【1179px以下】padding-top: 75px;【767px以下】padding-top: 50px;</div>
<br>
▼padding-bottom
<div class="u-pb-0 u-bg-gray01">padding-bottom: 0;</div>
<div class="u-pb-5 u-bg-gray02">padding-bottom: 5px;</div>
<div class="u-pb-10 u-bg-gray01">padding-bottom: 10px;</div>
<div class="u-pb-15 u-bg-gray02">padding-bottom: 15px;</div>
<div class="u-pb-20 u-bg-gray01">padding-bottom: 20px;</div>
<div class="u-pb-xs u-bg-gray02">padding-bottom: 20px;【1179px以下】padding-top: 15px;【767px以下】padding-top: 10px;</div>
<div class="u-pb-sm u-bg-gray01">padding-bottom: 40px;【1179px以下】padding-top: 30px;【767px以下】padding-top: 20px;</div>
<div class="u-pb-md u-bg-gray02">padding-bottom: 60px;【1179px以下】padding-top: 45px;【767px以下】padding-top: 30px;</div>
<div class="u-pb-lg u-bg-gray01">padding-bottom: 80px;【1179px以下】padding-top: 60px;【767px以下】padding-top: 40px;</div>
<div class="u-pb-xl u-bg-gray02">padding-bottom: 100px;【1179px以下】padding-top: 75px;【767px以下】padding-top: 50px;</div>
```
*/
.u-p-0 {
  padding: 0 !important; }

.u-p-auto {
  padding: auto !important; }

.u-px-auto {
  padding-left: auto !important;
  padding-right: auto !important; }

.u-py-auto {
  padding-top: auto !important;
  padding-bottom: auto !important; }

.u-p-xs {
  padding: 20px !important; }
  @media screen and (max-width: 1023px) {
    .u-p-xs {
      padding: 15px !important; } }
  @media screen and (max-width: 749px) {
    .u-p-xs {
      padding: 15px 10px !important; } }

.u-p-sm {
  padding: 40px !important; }
  @media screen and (max-width: 1023px) {
    .u-p-sm {
      padding: 30px !important; } }
  @media screen and (max-width: 749px) {
    .u-p-sm {
      padding: 30px 15px !important; } }

.u-p-md {
  padding: 60px !important; }
  @media screen and (max-width: 1023px) {
    .u-p-md {
      padding: 45px !important; } }
  @media screen and (max-width: 749px) {
    .u-p-md {
      padding: 30px 20px !important; } }

.u-p-lg {
  padding: 80px !important; }
  @media screen and (max-width: 1023px) {
    .u-p-lg {
      padding: 60px !important; } }
  @media screen and (max-width: 749px) {
    .u-p-lg {
      padding: 40px 20px !important; } }

.u-p-xl {
  padding: 100px !important; }
  @media screen and (max-width: 1023px) {
    .u-p-xl {
      padding: 75px !important; } }
  @media screen and (max-width: 749px) {
    .u-p-xl {
      padding: 50px 20px !important; } }

.u-pt-0 {
  padding-top: 0 !important; }

.u-pt-5 {
  padding-top: 5px !important; }

.u-pt-10 {
  padding-top: 10px !important; }

.u-pt-15 {
  padding-top: 15px !important; }

.u-pt-20 {
  padding-top: 20px !important; }

.u-pt-xs {
  padding-top: 20px !important; }
  @media screen and (max-width: 1023px) {
    .u-pt-xs {
      padding-top: 15px !important; } }
  @media screen and (max-width: 749px) {
    .u-pt-xs {
      padding-top: 10px !important; } }

.u-pt-sm {
  padding-top: 40px !important; }
  @media screen and (max-width: 1023px) {
    .u-pt-sm {
      padding-top: 30px !important; } }
  @media screen and (max-width: 749px) {
    .u-pt-sm {
      padding-top: 20px !important; } }

.u-pt-md {
  padding-top: 60px !important; }
  @media screen and (max-width: 1023px) {
    .u-pt-md {
      padding-top: 45px !important; } }
  @media screen and (max-width: 749px) {
    .u-pt-md {
      padding-top: 30px !important; } }

.u-pt-lg {
  padding-top: 80px !important; }
  @media screen and (max-width: 1023px) {
    .u-pt-lg {
      padding-top: 60px !important; } }
  @media screen and (max-width: 749px) {
    .u-pt-lg {
      padding-top: 40px !important; } }

.u-pt-xl {
  padding-top: 100px !important; }
  @media screen and (max-width: 1023px) {
    .u-pt-xl {
      padding-top: 75px !important; } }
  @media screen and (max-width: 749px) {
    .u-pt-xl {
      padding-top: 50px !important; } }

.u-pb-0 {
  padding-bottom: 0 !important; }

.u-pb-5 {
  padding-bottom: 5px !important; }

.u-pb-10 {
  padding-bottom: 10px !important; }

.u-pb-15 {
  padding-bottom: 15px !important; }

.u-pb-20 {
  padding-bottom: 20px !important; }

.u-pb-xs {
  padding-bottom: 20px !important; }
  @media screen and (max-width: 1023px) {
    .u-pb-xs {
      padding-bottom: 15px !important; } }
  @media screen and (max-width: 749px) {
    .u-pb-xs {
      padding-bottom: 10px !important; } }

.u-pb-sm {
  padding-bottom: 40px !important; }
  @media screen and (max-width: 1023px) {
    .u-pb-sm {
      padding-bottom: 30px !important; } }
  @media screen and (max-width: 749px) {
    .u-pb-sm {
      padding-bottom: 20px !important; } }

.u-pb-md {
  padding-bottom: 60px !important; }
  @media screen and (max-width: 1023px) {
    .u-pb-md {
      padding-bottom: 45px !important; } }
  @media screen and (max-width: 749px) {
    .u-pb-md {
      padding-bottom: 30px !important; } }

.u-pb-lg {
  padding-bottom: 80px !important; }
  @media screen and (max-width: 1023px) {
    .u-pb-lg {
      padding-bottom: 60px !important; } }
  @media screen and (max-width: 749px) {
    .u-pb-lg {
      padding-bottom: 40px !important; } }

.u-pb-xl {
  padding-bottom: 100px !important; }
  @media screen and (max-width: 1023px) {
    .u-pb-xl {
      padding-bottom: 75px !important; } }
  @media screen and (max-width: 749px) {
    .u-pb-xl {
      padding-bottom: 50px !important; } }

/*
#styleguide
color
```
<div class="u-bg-gray01 u-p-xs">
  <p class="u-color-main">.u-color-main</p>
  <p class="u-color-black">.u-color-black</p>
  <p class="u-color-white">u-color-white</p>
  <p class="u-color-666">.u-color-666</p>
  <p class="u-color-888">.u-color-888</p>
  <p class="u-color-999">.u-color-999</p>
  <p class="u-color-chorishi">.u-color-chorishi</p>
  <p class="u-color-seika">.u-color-seika</p>
  <p class="u-color-ecoleOsaka">.u-color-ecoleOsaka</p>
  <p class="u-color-ecoleTokyo">.u-color-ecoleTokyo</p>
  <p class="u-color-france">.u-color-france</p>
</div>
```
*/
.u-color-main {
  color: #e92b2f !important; }

.u-color-black {
  color: #333 !important; }

.u-color-white {
  color: #fff !important; }

.u-color-666 {
  color: #666 !important; }

.u-color-888 {
  color: #888 !important; }

.u-color-999 {
  color: #999 !important; }

/*
#styleguide
background
```
<div class="u-bg-alpha"><div class="u-p-xs">.u-bg-alpha</div></div>
<div class="u-bg-main"><div class="u-p-xs">.u-bg-main</div></div>
<div class="u-bg-black"><div class="u-p-xs u-color-white">.u-bg-black</div></div>
<div class="u-bg-white"><div class="u-p-xs">.u-bg-white</div></div>
<div class="u-bg-gray01"><div class="u-p-xs">.u-bg-gray01</div></div>
<div class="u-bg-gray02"><div class="u-p-xs">.u-bg-gray02</div></div>
<div class="u-bg-chorishi"><div class="u-p-xs">.u-bg-chorishi</div></div>
<div class="u-bg-seika"><div class="u-p-xs">.u-bg-seika</div></div>
<div class="u-bg-ecoleOsaka"><div class="u-p-xs">.u-bg-ecoleOsaka</div></div>
<div class="u-bg-ecoleTokyo"><div class="u-p-xs">.u-bg-ecoleTokyo</div></div>
<div class="u-bg-france"><div class="u-p-xs u-color-white">.u-bg-france</div></div>
<div class="u-bg-gradientChorishi"><div class="u-p-xs">.u-bg-gradientChorishi</div></div>
<div class="u-bg-gradientSeika"><div class="u-p-xs">.u-bg-gradientSeika</div></div>
<div class="u-bg-gradientEcoleOsaka"><div class="u-p-xs">.u-bg-gradientEcoleOsaka</div></div>
<div class="u-bg-gradientEcoleTokyo"><div class="u-p-xs">.u-bg-gradientEcoleTokyo</div></div>
<div class="u-bg-gradientFrance"><div class="u-p-xs u-color-white">.u-bg-gradientFrance</div></div>
```
*/
.u-bg-alpha {
  background-color: transparent !important; }

.u-bg-main {
  background-color: #e92b2f !important; }

.u-bg-black {
  background-color: #333 !important; }

.u-bg-white {
  background-color: #fff !important; }

.u-bg-gray01 {
  background-color: #f2f2f2 !important; }

.u-bg-gray02 {
  background-color: #e7e7e7 !important; }

/*
#styleguide
border
```
<div class="u-bd-gray01"><div class="u-p-xs">u-bd-gray01</div></div>
<div class="u-bdt-gray01"><div class="u-p-xs">u-bdt-gray01</div></div>
<div class="u-bdl-gray01"><div class="u-p-xs">u-bdl-gray01</div></div>
<div class="u-bdb-gray01"><div class="u-p-xs">u-bdb-gray01</div></div>
<div class="u-bdr-gray01"><div class="u-p-xs">u-bdr-gray01</div></div>
```
*/
.u-bd-gray01 {
  border: 1px solid #f2f2f2 !important; }

.u-bdt-gray01 {
  border-top: 1px solid #f2f2f2 !important; }

.u-bdl-gray01 {
  border-left: 1px solid #f2f2f2 !important; }

.u-bdb-gray01 {
  border-bottom: 1px solid #f2f2f2 !important; }

.u-bdr-gray01 {
  border-right: 1px solid #f2f2f2 !important; }

.u-animate-oapcity,
.u-animate-opacity {
  opacity: 0;
  transition-duration: 0.5s; }
  .u-animate-oapcity.is-animated,
  .u-animate-opacity.is-animated {
    opacity: 1; }

.u-w-full {
  width: 100% !important;
  max-width: auto !important;
  min-width: 0 !important; }

.walk_thru_btn{
  padding: 10px 0px;
  /*width: 582px;*/
  margin: 0 auto 100px;
}
.w_t_b_top{
  padding: 10px 0px;
  width: 720px;
  margin: 50px auto;
  text-align: center;
}

.walk_thru_btn span{
  font-size: 11px;
  margin-top: 4px;
  line-height: 120%;
  text-align: left;
  display: block;
  color: #666;
}

.walk_thru_btn img:hover{
  opacity: 0.6 ;
}