@charset "UTF-8";
/* Scss Document */
/* Scss Document */
body {
  font-size: 62.5%;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  -webkit-text-size-adjust: 100%;
  animation-name: fadeIn;
  animation-duration: 1.5s;
  animation-timing-function: ease;
  position: relative; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
body, h1, h2, h3, h4, h5, h6, p {
  font-size: 1rem;
  color: #333;
  font-weight: 500;
  margin: 0;
  padding: 0;
  line-height: 1.8; }

a {
  text-decoration: none; }
  a:hover {
    color: #FF0000;
    text-decoration: underline; }
  a:link {
    color: #0000FF; }
  a:active {
    color: #0000FF; }
  a:visited {
    color: #990066; }

img {
  vertical-align: bottom; }

a img {
  border: none; }

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  outline: none; }

input:focus,
button {
  outline: 0; }

.clear {
  display: none;
  clear: both; }

img.centering {
  position: absolute; }

::selection {
  background: #FFD7E9; }

::-moz-selection {
  background: #FFD7E9; }

.pcNone {
  display: none; }

@media (max-width: 767px) {
  /* responsive none fore SP */
  .spNone {
    display: none; } }
div.system-free {
  height: 100%;
  overflow: hidden; }
  div.system-free hr {
    height: 0;
    margin: 0;
    border: none;
    border-top: 1px solid #333; }
  div.system-free table {
    border-collapse: collapse; }

@media (max-width: 1080px) {
  div.system-free img {
    width: 100%;
    height: auto; } }
ol.transition {
  width: 100%;
  height: 28px;
  overflow: hidden;
  margin: 100px auto 0;
  padding: 0;
  text-align: center;
  list-style: none; }
  ol.transition li {
    width: 28px;
    height: 28px;
    overflow: hidden;
    margin: 0 2px 0 0;
    padding: 0;
    color: #00a497;
    text-align: center;
    line-height: 1;
    display: inline-block; }
    ol.transition li:last-child {
      margin: 0; }
    ol.transition li a, ol.transition li.current span,
    ol.transition li span.extra {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      color: #00a497;
      display: block;
      text-decoration: none;
      background: #FFF;
      border: none;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
    ol.transition li.current span,
    ol.transition li span.extra {
      padding: 5px 0 0; }
    ol.transition li a span {
      margin: 0;
      padding: 5px 0 0;
      display: block; }
    ol.transition li a:hover, ol.transition li.current span {
      color: #FFF;
      font-weight: bold;
      background: #00a497; }

.header {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 50px 60px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  z-index: 100;
  transition: 0.1s linear; }
  .header__logo {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 2;
    transition: 0.1s linear; }
    .header__logo--anchor {
      padding: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      color: #333 !important;
      position: relative;
      transition: 0.1s linear; }
      .header__logo--anchor img.logomark {
        transition: 0.1s linear; }
      .header__logo--anchor div {
        margin: 0 0 0 10px;
        padding: 0; }
        .header__logo--anchor div img {
          width: 120px;
          height: 30px; }
        .header__logo--anchor div span {
          margin: 5px 0 0;
          display: block;
          font-size: 0.9375rem;
          line-height: 1.0; }
      .header__logo--anchor:hover {
        text-decoration: none;
        top: 1px;
        left: 1px;
        opacity: 0.7;
        filter: alpha(opacity=70);
        -ms-filter: alpha(opacity=70); }
  .header__btn {
    width: 160px;
    height: 40px;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 100;
    transition: 0.1s linear; }
    .header__btn--anchor {
      width: 100%;
      height: 100%;
      font-family: "Reddit Sans", sans-serif;
      line-height: 1.0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #00a497;
      border: 1px solid #00a497;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .header__btn--anchor:hover {
        text-decoration: none;
        background-color: #FFF; }
  .header::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: alpha(opacity=0);
    -moz-transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    transform-origin: top;
    transition: 0.1s linear; }

.menu-trigger {
  transition: all .4s;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .menu-trigger span {
    width: 24px;
    height: 1px;
    display: block;
    position: relative;
    background-color: #FFF;
    transition: all .4s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .menu-trigger span:nth-of-type(1) {
      margin: 0 auto 5px; }
    .menu-trigger span:nth-of-type(2) {
      margin: 0 auto; }
    .menu-trigger span:nth-of-type(3) {
      margin: 5px auto 0; }
  .menu-trigger.active span {
    width: 16px; }
    .menu-trigger.active span:nth-of-type(1) {
      margin: 0 auto;
      top: 1px;
      -webkit-transform: translateY(0) rotate(-45deg);
      transform: translateY(0) rotate(-45deg); }
    .menu-trigger.active span:nth-of-type(2) {
      left: 0;
      opacity: 0;
      -webkit-animation: active-menu-bar02 .8s forwards;
      animation: active-menu-bar02 .8s forwards; }
    .menu-trigger.active span:nth-of-type(3) {
      margin: 0 auto;
      -webkit-transform: translateY(0) rotate(45deg);
      transform: translateY(0) rotate(45deg); }
  .menu-trigger strong {
    margin: 0 0 0 10px;
    color: #FFF;
    font-family: "Reddit Sans", sans-serif;
    font-weight: 500;
    line-height: 1.0;
    position: relative; }
  .menu-trigger:hover span {
    background-color: #00a497; }
  .menu-trigger:hover strong {
    color: #00a497; }

@-webkit-keyframes active-menu-bar02 {
  100% {
    height: 0; } }
@keyframes active-menu-bar02 {
  100% {
    height: 0; } }
@media (max-width: 1480px) {
  .header {
    padding: 50px 30px; } }
@media (max-width: 600px) {
  .header {
    padding: 20px; }
    .header__logo--anchor img.logomark {
      width: 30px;
      height: 32px; }
    .header__logo--anchor div img {
      width: 90px;
      height: 23px; }
    .header__btn {
      width: 100px; } }
.scrollHeader {
  padding: 20px 60px; }
  .scrollHeader::after {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: alpha(opacity=100);
    -moz-transform: scaleY(1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
  .scrollHeader .header__logo--anchor img.logomark {
    width: 36px;
    height: 39px; }
  .scrollHeader .header__logo--anchor div span {
    display: none; }

@media (max-width: 1480px) {
  .scrollHeader {
    padding: 20px 30px; } }
@media (max-width: 600px) {
  .scrollHeader {
    padding: 20px; }
    .scrollHeader .header__logo--anchor img.logomark {
      width: 30px;
      height: 32px; } }
.gNav {
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 3;
  transition: 0.1s linear; }
  .gNav__list {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
  .gNav__item {
    margin: 0;
    padding: 0;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.0;
    position: relative; }
    .gNav__item:not(:first-of-type) {
      margin: 0 0 0 50px; }
    .gNav__item.pulldown .gNav__item--anchor {
      padding: 0 20px 0 0; }
      .gNav__item.pulldown .gNav__item--anchor::after {
        content: '';
        border-top: 8px solid #333;
        border-right: 5px solid transparent;
        border-bottom: 8px solid transparent;
        border-left: 5px solid transparent;
        position: absolute;
        top: 10px;
        right: 0; }
    .gNav__item--anchor {
      color: #333 !important;
      position: relative; }
      .gNav__item--anchor:hover {
        text-decoration: none;
        top: 1px;
        left: 1px;
        opacity: 0.7;
        filter: alpha(opacity=70);
        -ms-filter: alpha(opacity=70); }
    .gNav__item ul {
      width: auto;
      min-width: 140px;
      margin: 0;
      padding: 20px 10px 20px 20px;
      letter-spacing: normal;
      display: none;
      background-color: rgba(255, 255, 255, 0.6);
      -webkit-border-radius: 10px;
      -moz-border-radius: 10px;
      border-radius: 10px;
      position: absolute;
      top: 20px;
      left: 0;
      z-index: -1;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .gNav__item ul li {
        margin: 0 0 15px;
        display: block;
        white-space: nowrap; }
        .gNav__item ul li:last-of-type {
          margin: 0; }
        .gNav__item ul li a {
          padding: 0 0 0 15px;
          color: #333 !important;
          font-size: 1rem;
          display: inline-block;
          position: relative; }
          .gNav__item ul li a:hover {
            text-decoration: none;
            top: 1px;
            left: 1px;
            opacity: 0.7;
            filter: alpha(opacity=70);
            -ms-filter: alpha(opacity=70); }
          .gNav__item ul li a::before {
            content: '';
            width: 6px;
            height: 6px;
            background-color: rgba(255, 255, 255, 0.1);
            border: 1px solid #333;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            position: absolute;
            top: 7px;
            left: 0; }

@media (max-width: 1000px) {
  .gNav {
    display: none; } }
.spNav {
  display: none;
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 99;
  background-color: white; }
  .spNav__logo {
    margin: 100px 0 0;
    padding: 0;
    position: relative;
    z-index: 2;
    transition: 0.1s linear; }
    .spNav__logo--anchor {
      padding: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #333 !important;
      transition: 0.1s linear; }
      .spNav__logo--anchor img.logomark {
        transition: 0.1s linear; }
      .spNav__logo--anchor div {
        margin: 0 0 0 10px;
        padding: 0; }
        .spNav__logo--anchor div img {
          width: 120px;
          height: 30px; }
        .spNav__logo--anchor div span {
          margin: 5px 0 0;
          display: block;
          font-size: 0.9375rem;
          line-height: 1.0; }
      .spNav__logo--anchor:hover {
        text-decoration: none; }
  .spNav__list {
    max-width: 800px;
    margin: 50px auto 0;
    padding: 0;
    list-style: none; }
  .spNav__item {
    margin: 0;
    padding: 0;
    text-align: center;
    border: 1px solid #333; }
    .spNav__item:not(:first-of-type) {
      border-top: none; }
    .spNav__item--anchor {
      width: 100%;
      height: 100%;
      padding: 20px 0;
      display: block;
      color: #333 !important;
      font-size: 1.125rem;
      font-weight: 700;
      line-height: 1.0;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .spNav__item--anchor:hover {
        text-decoration: none; }
    .spNav__item ul {
      margin: 0;
      padding: 0;
      list-style: none;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      -o-flex-wrap: wrap;
      flex-wrap: wrap;
      border-top: 1px solid #333; }
      .spNav__item ul li {
        width: 50%;
        margin: 0;
        padding: 0;
        border-bottom: 1px solid #333;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        .spNav__item ul li:nth-of-type(odd) {
          border-right: 1px solid #333; }
        .spNav__item ul li:nth-last-of-type(2), .spNav__item ul li:last-of-type {
          border-bottom: none; }
        .spNav__item ul li a {
          width: 100%;
          height: 100%;
          padding: 10px 0;
          display: block;
          color: #333 !important;
          text-align: center;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
          .spNav__item ul li a:hover {
            text-decoration: none; }

@media (max-width: 870px) {
  .spNav__list {
    width: calc(100% - 40px);
    margin: 50px 20px 0; } }
.footer {
  width: 100%;
  margin: 100px 0 0;
  padding: 143px 0 80px;
  background-color: #00a497;
  background-image: url("../img/common/bg_footer.jpg");
  background-position: top left;
  background-repeat: repeat-x; }
  .footer__inner {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between; }
  .footer__left {
    margin: 0;
    padding: 0;
    font-style: normal; }
    .footer__left--name {
      color: #FFF;
      font-size: 1.5rem;
      font-weight: 700; }
    .footer__left--ads {
      margin: 25px 0 0;
      color: #FFF;
      line-height: 1.7;
      font-size: 1.125rem; }
    .footer__left--copy {
      margin: 35px 0 0;
      color: #FFF;
      font-size: 1.125rem;
      font-family: "Reddit Sans", sans-serif;
      line-height: 1.0; }
  .footer__right {
    margin: 0;
    padding: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
  .footer__list {
    margin: 0 50px 0 0;
    padding: 0;
    list-style: none; }
    .footer__list:last-of-type {
      margin: 0; }
  .footer__item {
    margin: 0 0 20px;
    padding: 0; }
    .footer__item:last-of-type {
      margin: 0; }
    .footer__item--anchor {
      padding: 0 0 5px;
      color: #FFF !important;
      border-bottom: 1px solid #FFF;
      transition: 0.1s linear;
      position: relative; }
      .footer__item--anchor:hover {
        text-decoration: none;
        border-bottom-color: transparent;
        top: 1px;
        left: 1px; }
    .footer__item ul {
      width: 360px;
      margin: 20px 0 0;
      padding: 0;
      list-style: none;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      -o-flex-wrap: wrap;
      flex-wrap: wrap; }
      .footer__item ul li {
        width: 180px;
        margin: 0 0 20px;
        padding: 0;
        font-size: 1rem; }
        .footer__item ul li a {
          padding: 0 0 3px;
          color: #FFF !important;
          line-height: 1.0;
          border-bottom: 1px solid #FFF;
          border-bottom-color: transparent;
          transition: 0.1s linear;
          position: relative; }
          .footer__item ul li a:hover {
            text-decoration: none;
            border-bottom-color: #FFF;
            top: 1px;
            left: 1px; }
        .footer__item ul li:last-of-type {
          margin: 0; }

@media (max-width: 1480px) {
  .footer__inner {
    width: calc(100% - 60px);
    margin: 0 30px; } }
@media (max-width: 1000px) {
  .footer__left {
    width: 100%; }
    .footer__left--name, .footer__left--ads, .footer__left--copy {
      text-align: center; }
  .footer__right {
    display: none; } }
@media (max-width: 600px) {
  .footer__inner {
    width: calc(100% - 40px);
    margin: 0 20px; } }
.btnPagetop {
  width: 80px;
  height: 80px;
  position: fixed;
  right: 0;
  z-index: 11111; }
  .btnPagetop__anchor {
    width: 100%;
    height: 100%;
    color: #FFF !important;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3ea6b3;
    transition: 0.1s linear; }
    .btnPagetop__anchor span {
      width: 100%;
      padding: 26px 0 0;
      font-size: 0.75rem;
      line-height: 1.2;
      font-family: "Reddit Sans", sans-serif;
      text-align: center;
      display: block;
      background-image: url("../img/common/ar05.svg");
      background-position: top center;
      background-repeat: no-repeat;
      background-size: 24px 14px; }
    .btnPagetop__anchor:hover {
      color: #3ea6b3 !important;
      text-decoration: none;
      background-color: #FFF; }
      .btnPagetop__anchor:hover span {
        background-image: url("../img/common/ar05_green.svg"); }

@media (max-width: 430px) {
  .btnPagetop {
    width: 60px;
    height: 60px;
    transition: 0.1s linear; }
    .btnPagetop__anchor span {
      padding: 20px 0 0; } }
.businessLink {
  margin: 100px 0 0;
  padding: 0; }
  .businessLink__title {
    margin: 0;
    padding: 10px 30px;
    color: #FFF;
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.0;
    background-color: #00a497;
    -webkit-border-top-left-radius: 10px;
    -webkit-border-top-right-radius: 10px;
    -moz-border-top-left-radius: 10px;
    -moz-border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; }
    .businessLink__title span {
      padding: 0 0 0 20px;
      position: relative; }
      .businessLink__title span::before {
        content: '';
        width: 12px;
        height: 12px;
        position: absolute;
        top: 8px;
        left: 0;
        background-color: #FFF;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%; }
  .businessLink__data {
    margin: 0;
    padding: 0; }
  .businessLink__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: 1px solid #BBB;
    border-left: 1px solid #BBB; }
  .businessLink__item {
    width: 25%;
    height: 80px;
    margin: 0;
    padding: 0;
    border-right: 1px solid #BBB;
    border-bottom: 1px solid #BBB;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .businessLink__item--anchor {
      width: 100%;
      height: 100%;
      padding: 0;
      color: #333 !important;
      font-size: 1.125rem;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      -o-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      align-content: center;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      position: relative;
      z-index: 1; }
      .businessLink__item--anchor span {
        width: 100%;
        padding: 0 30px;
        display: block;
        background-image: url("../img/common/ar02_black.svg");
        background-position: right 20px center;
        background-repeat: no-repeat;
        background-size: 9px 16px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        position: relative; }
      .businessLink__item--anchor::after {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #F3F3F3;
        z-index: -1;
        -moz-transform: scaleX(0);
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        transform-origin: center right;
        transition: transform 0.2s ease; }
      .businessLink__item--anchor.external span {
        background-image: url("../img/common/ico_external_black.svg");
        background-size: 12px; }
      .businessLink__item--anchor em {
        width: 100%;
        font-size: 0.875rem;
        font-style: normal;
        line-height: 1.0;
        display: block; }
      .businessLink__item--anchor:hover {
        text-decoration: none; }
        .businessLink__item--anchor:hover span {
          opacity: 0.7;
          filter: alpha(opacity=70);
          -ms-filter: alpha(opacity=70);
          top: 1px;
          left: 1px; }
        .businessLink__item--anchor:hover::after {
          transform-origin: center left;
          -moz-transform: scaleX(1);
          -webkit-transform: scaleX(1);
          transform: scaleX(1); }

@media (max-width: 900px) {
  .businessLink__item {
    width: calc(100%/3); }
    .businessLink__item--anchor span {
      padding: 0 20px; } }
@media (max-width: 600px) {
  .businessLink__item {
    width: 50%; } }
@media (max-width: 450px) {
  .businessLink__item {
    width: 100%; } }
