@charset "UTF-8";
.is-view {
  opacity: 1;
  -webkit-animation: all 0.8s linear;
          animation: all 0.8s linear;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.js-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  transition: transform 0.8s ease-out, opacity 0.8s ease-out, -webkit-transform 0.8s ease-out; }

.js-fadeIn.is-fadeIn {
  opacity: 1;
  -webkit-transform: none;
  -ms-transform: none;
      transform: none; }

.js-changeTop {
  background: #ffffff; }

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@font-face {
  font-family: "Yu Gothic", sans-serif;
  font-style: normal;
  font-weight: bold;
  src: local(YuGothB); }

@font-face {
  font-family: "Yu Gothic", sans-serif;
  font-style: normal;
  font-weight: 400;
  src: local(YuGothR); }

@font-face {
  font-family: "Yu Gothic", sans-serif;
  font-style: normal;
  font-weight: 500;
  src: local(YuGothM); }

@font-face {
  font-family: "Yu Gothic", sans-serif;
  font-style: normal;
  font-weight: 300;
  src: local(YuGothL); }

/*------------------------------------------------------------
	Reset
------------------------------------------------------------*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
nav,
section,
time,
mark,
audio,
video {
  font-size: 1em;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

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

html {
  font-size: 62.5%; }

body {
  -webkit-text-size-adjust: 100%; }

body,
table,
input,
textarea,
select,
option,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-style: normal; }

table,
input,
textarea,
select,
option {
  line-height: 1.1;
  font-weight: 300; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

:focus {
  outline: 0; }

ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

img {
  width: 100%;
  height: 100%;
  vertical-align: top;
  -o-object-fit: cover;
     object-fit: cover; }

a {
  -webkit-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
  text-decoration: none;
  color: inherit; }

@media screen and (min-width: 1024px) {
  a:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; } }

form label {
  cursor: pointer; }

.absLink {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 0; }

/*------------------------------------------------------------
for develop
------------------------------------------------------------*/
#__bs_notify__ {
  opacity: 0.3 !important;
  font-size: 0.5rem !important;
  line-height: 100% !important;
  padding: 0 5px 0 5px !important;
  border-radius: 0 !important; }

.c-dev-title1 {
  background: #000;
  color: #fff;
  line-height: 1;
  padding: 6px 0 6px 15px;
  font-size: 1.6rem;
  margin: 60px 0 20px 0; }

.c-dev-title2 {
  background: #888;
  color: #fff;
  line-height: 1;
  padding: 6px 0 6px 30px;
  font-size: 1.3rem;
  margin: 50px 0 10px 0; }

.c-dev-message1 {
  top: 0;
  left: 0;
  background: #f00;
  color: #fff;
  z-index: 9999;
  position: fixed;
  line-height: 1;
  padding: 3px 6px;
  opacity: 0.6;
  font-size: 0.8rem; }

@media only screen and (max-width: 900px) {
  .pc-only {
    display: none !important; } }

/*------------------------------------------------------------
breadcrumb
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-breadcrumb ul {
  padding: 15px 0;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 1.4rem; }
  @media only screen and (max-width: 900px) {
    .c-breadcrumb ul {
      padding: 5px 0; } }
  .c-breadcrumb ul li {
    position: relative;
    padding-left: 30px;
    display: inline; }
    @media only screen and (max-width: 900px) {
      .c-breadcrumb ul li {
        padding-left: 20px;
        font-size: 1.2rem; } }
    .c-breadcrumb ul li:before {
      content: "/";
      position: absolute;
      left: 10px;
      top: 0;
      font-size: 1.4rem; }
      @media only screen and (max-width: 900px) {
        .c-breadcrumb ul li:before {
          left: 8px;
          font-size: 1.2rem; } }
    .c-breadcrumb ul li:first-of-type {
      padding-left: 0; }
      .c-breadcrumb ul li:first-of-type:before {
        content: none; }
    .c-breadcrumb ul li a {
      text-decoration: none;
      line-height: 1;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .c-breadcrumb ul li a img {
        width: auto;
        margin-right: 8px; }
        @media only screen and (max-width: 900px) {
          .c-breadcrumb ul li a img {
            width: 15px; } }

/*------------------------------------------------------------
footer
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-fCenter {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .c-fCenter__txt1 {
    font-size: 1.6rem;
    line-height: 1.8; }
    @media only screen and (max-width: 900px) {
      .c-fCenter__txt1 {
        font-size: 1.4rem;
        grid-column: span 6; } }
    @media only screen and (max-width: 900px) {
      .c-fCenter__txt1:first-child {
        grid-row: span 12; } }
  .c-fCenter__logo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.4rem;
    margin-bottom: 40px; }
    @media only screen and (max-width: 900px) {
      .c-fCenter__logo {
        margin-bottom: 20px; } }
    .c-fCenter__logo img {
      width: 195px; }
      @media only screen and (max-width: 900px) {
        .c-fCenter__logo img {
          width: 161px; } }
    .c-fCenter__logo span {
      font-size: 1.8rem; }
  .c-fCenter__box {
    display: table;
    margin: 0 auto;
    width: 100%; }
  .c-fCenter__box1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 35px;
    width: 32%;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
    @media only screen and (max-width: 900px) {
      .c-fCenter__box1 {
        width: 100%;
        margin-bottom: 20px;
        padding-top: unset; } }
  .c-fCenter__address {
    margin-top: 25px; }
  .c-fCenter__banner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    margin-top: 25px; }
    .c-fCenter__bannerLink {
      display: block;
      max-width: 300px;
      width: 100%; }
  .c-fCenter__menu {
    width: 100%; }
    .c-fCenter__menu > ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media only screen and (max-width: 900px) {
        .c-fCenter__menu > ul {
          width: 100%;
          padding-top: unset;
          margin: 10px auto 0; } }
      .c-fCenter__menu > ul > li {
        position: relative;
        padding: 0 20px; }
        @media only screen and (max-width: 900px) {
          .c-fCenter__menu > ul > li {
            padding: 0 5px;
            width: calc(100% / 3);
            text-align: center; } }
        .c-fCenter__menu > ul > li:not(:first-child)::before {
          content: "";
          position: absolute;
          left: 0;
          top: 3px;
          width: 1px;
          height: 20px;
          background: #ffffff; }
        .c-fCenter__menu > ul > li > a {
          font-size: 1.6rem;
          display: block; }
          @media only screen and (max-width: 900px) {
            .c-fCenter__menu > ul > li > a {
              letter-spacing: -0.06em;
              font-size: 1.4rem; } }
        .c-fCenter__menu > ul > li a {
          line-height: 1.8;
          -webkit-transition: all .3s ease;
          transition: all .3s ease;
          text-transform: uppercase; }
          @media screen and (min-width: 1024px) {
            .c-fCenter__menu > ul > li a:hover {
              color: #222222;
              opacity: 1;
              font-weight: bold; } }
        .c-fCenter__menu > ul > li > .sub-menu li {
          padding-left: 5px;
          position: relative; }
          .c-fCenter__menu > ul > li > .sub-menu li::before {
            position: absolute;
            content: "";
            width: 7px;
            height: 11px;
            background: url("../img/common/icon_arrow2.png") no-repeat;
            background-size: contain;
            top: 50%;
            left: 0;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%); }
  .c-fCenter__link {
    font-size: 1.6rem;
    color: #fff;
    line-height: calc(24 / 16);
    text-decoration: underline;
    text-underline-offset: 10px; }
    @media only screen and (max-width: 900px) {
      .c-fCenter__link {
        letter-spacing: -0.06em;
        text-underline-offset: 5px; } }

.c-copyPolicy {
  font-size: 1.4rem;
  font-weight: 400;
  color: #ffffff;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .c-copyPolicy {
      font-size: 1.2rem; } }

.c-footer {
  margin-top: auto;
  background: #0a0c11;
  color: #ffffff; }
  .c-footer__wrap {
    max-width: 1080px;
    margin: 0 auto;
    width: 100%;
    position: relative; }
    @media only screen and (max-width: 900px) {
      .c-footer__wrap {
        padding: 20px 10px; } }
  .c-footer__bottom {
    position: relative;
    padding: 15px;
    background-color: #0a0c11; }
    @media only screen and (max-width: 900px) {
      .c-footer__bottom {
        padding: 10px; } }
  .c-footer__menu {
    padding: 21px 0 20px; }
    @media only screen and (max-width: 900px) {
      .c-footer__menu {
        display: none; } }

.bannerContact {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#00B390), to(#007B63));
  background: -webkit-linear-gradient(left, #00B390 0%, #007B63 100%);
  background: linear-gradient(to right, #00B390 0%, #007B63 100%);
  border-radius: 5px;
  z-index: 10000; }
  .bannerContact::before {
    position: absolute;
    content: "";
    background: url("../img/common/icon_manager.png") no-repeat;
    background-size: cover;
    width: 84px;
    height: 77px;
    bottom: 0;
    left: 10px; }
  .bannerContact .bannerContact__box {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #FFFFFF;
    padding: 10px;
    line-height: 1; }
  .bannerContact .bannerContact__title {
    position: relative;
    font-size: 1.4rem;
    font-weight: 400;
    padding: 5px 15px; }
    .bannerContact .bannerContact__title::before, .bannerContact .bannerContact__title::after {
      position: absolute;
      content: "";
      width: 2px;
      height: 23px;
      background: #FFFFFF;
      top: 50%; }
    .bannerContact .bannerContact__title::before {
      left: 10px;
      -webkit-transform: rotate(155deg) translateY(50%);
          -ms-transform: rotate(155deg) translateY(50%);
              transform: rotate(155deg) translateY(50%); }
    .bannerContact .bannerContact__title::after {
      right: 10px;
      -webkit-transform: rotate(25deg) translateY(-50%);
          -ms-transform: rotate(25deg) translateY(-50%);
              transform: rotate(25deg) translateY(-50%); }
  .bannerContact .bannerContact__subtitle {
    font-size: 1.7rem;
    font-weight: 400;
    margin-top: 5px; }

/*------------------------------------------------------------
header
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10;
  margin: 0 auto;
  padding-left: 100px;
  z-index: 10000;
  height: 150px;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out; }
  @media only screen and (max-width: 900px) {
    .c-header {
      height: 50px;
      padding-left: 10px; } }
  .c-header.js-active {
    background-color: #0a0c11;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05); }
  .c-header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
    margin: 0 auto;
    height: 100%; }
    @media only screen and (max-width: 900px) {
      .c-header__inner {
        height: 50px; } }
  @media only screen and (max-width: 900px) {
    .c-header__sp {
      position: absolute;
      width: 100%;
      left: 0;
      top: 0;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      z-index: 11;
      height: 100%; } }
  @media only screen and (max-width: 900px) {
    .c-header__naviSp {
      top: 0;
      width: 100%;
      height: 100%;
      position: fixed;
      right: 0;
      opacity: 0;
      visibility: hidden;
      z-index: -1; } }
  @media only screen and (max-width: 900px) {
    .c-header__naviSp.is-open {
      opacity: 1;
      visibility: visible;
      background: #0a0c11; } }
  .c-header .c-iconSP {
    display: none; }
    @media only screen and (max-width: 900px) {
      .c-header .c-iconSP {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        width: 50px;
        height: 50px;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0; } }
    @media only screen and (max-width: 900px) {
      .c-header .c-iconSP__line {
        width: 25px;
        height: 25px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .c-header .c-iconSP__txt1 {
      font-size: 1rem;
      color: #fff; }
    .c-header .c-iconSP__txt2 {
      font-size: 1rem;
      color: #fff;
      display: none; }
    @media only screen and (max-width: 900px) {
      .c-header .c-iconSP span {
        display: block;
        width: 100%;
        height: 2px;
        background: #fff;
        -webkit-transition: all 0.25s ease;
        transition: all 0.25s ease; } }
    .c-header .c-iconSP p {
      font-size: 0.8rem;
      line-height: 1;
      color: #fff; }
    .c-header .c-iconSP.is-open span:nth-child(1) {
      -webkit-transform: translateY(3px) rotate(45deg);
          -ms-transform: translateY(3px) rotate(45deg);
              transform: translateY(3px) rotate(45deg); }
    .c-header .c-iconSP.is-open span:nth-child(2) {
      display: none; }
    .c-header .c-iconSP.is-open span:nth-child(3) {
      -webkit-transform: translateY(-5px) rotate(-45deg);
          -ms-transform: translateY(-5px) rotate(-45deg);
              transform: translateY(-5px) rotate(-45deg); }

.c-btnSP a {
  display: none; }
  @media only screen and (max-width: 900px) {
    .c-btnSP a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      width: 70px;
      height: 70px;
      background: #F3FBF5; } }

.c-logo {
  width: 100%; }
  @media only screen and (max-width: 900px) {
    .c-logo {
      margin-top: 12px; } }
  .c-logo a {
    text-decoration: none;
    font-size: 2.4rem;
    width: 100%;
    font-weight: 700;
    line-height: 1.5;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .c-logo a {
        font-size: 1.8rem; } }
    .c-logo a img {
      width: 300px; }
      @media only screen and (max-width: 900px) {
        .c-logo a img {
          width: 157px; } }
    .c-logo a span {
      font-size: 1.8rem; }
      @media only screen and (max-width: 900px) {
        .c-logo a span {
          font-size: 1.5rem; } }
  .c-logo img {
    width: 100%;
    vertical-align: middle; }

.c-globalNavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%; }
  @media only screen and (max-width: 900px) {
    .c-globalNavi {
      display: block;
      padding: 0 0 100px;
      background: #0a0c11;
      -webkit-transform: translateX(-100%);
          -ms-transform: translateX(-100%);
              transform: translateX(-100%);
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      opacity: 0;
      height: 100vh;
      width: 100%;
      margin: 0 auto;
      margin-top: 50px;
      overflow-y: scroll;
      color: #fff; } }
  @media only screen and (max-width: 900px) {
    .c-globalNavi.is-open {
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0);
      opacity: 1; } }
  .c-globalNavi__btn {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    border-radius: 23px;
    text-align: center;
    margin-right: 15px; }
    @media only screen and (max-width: 900px) {
      .c-globalNavi__btn {
        max-width: 210px;
        width: 100%;
        margin: 20px auto 0; } }
    .c-globalNavi__btn1 {
      background: #ffffff;
      color: #001446; }
      @media only screen and (max-width: 900px) {
        .c-globalNavi__btn1 {
          margin-top: 30px;
          background: #fff;
          border-radius: 23px; } }
      .c-globalNavi__btn1 a img {
        width: 27px; }
    .c-globalNavi__btn2 {
      color: #ffffff;
      background: -webkit-gradient(linear, right top, left top, from(#2070bd), to(#50c9e2));
      background: -webkit-linear-gradient(right, #2070bd 0%, #50c9e2 100%);
      background: linear-gradient(to left, #2070bd 0%, #50c9e2 100%); }
      .c-globalNavi__btn2 a img {
        width: 24px; }
    .c-globalNavi__btn3 {
      display: none; }
      @media only screen and (max-width: 900px) {
        .c-globalNavi__btn3 {
          display: block;
          max-width: 335px;
          width: 95%;
          margin: 0 auto; } }
      .c-globalNavi__btn3 .c-fCenter__contact {
        width: 100%; }
      .c-globalNavi__btn3 .c-fCenter__time {
        width: 100%; }
    .c-globalNavi__btn a {
      width: 160px;
      height: 45px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 5px; }
      @media only screen and (max-width: 900px) {
        .c-globalNavi__btn a {
          height: 100%;
          font-size: 1.4rem;
          width: 100%;
          height: 45px;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row;
          padding: 0; } }
      .c-globalNavi__btn a img {
        width: 41px;
        height: 33px;
        margin-bottom: 10px; }
        @media only screen and (max-width: 900px) {
          .c-globalNavi__btn a img {
            width: 28px;
            height: 21px;
            margin-bottom: 0;
            margin-right: 5px; } }

.c-gnavi {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 40px; }
  @media only screen and (max-width: 900px) {
    .c-gnavi {
      margin: 0 0 30px;
      color: #ffffff;
      background: -webkit-gradient(linear, left top, left bottom, from(#0088b2), to(#27ab7b));
      background: -webkit-linear-gradient(top, #0088b2 0%, #27ab7b 100%);
      background: linear-gradient(to bottom, #0088b2 0%, #27ab7b 100%); } }
  .c-gnavi__en {
    font-size: 1.6rem;
    font-weight: 500;
    margin-bottom: 10px;
    text-transform: uppercase; }
    @media only screen and (max-width: 900px) {
      .c-gnavi__en {
        font-size: 1.8rem;
        font-weight: 700;
        margin-bottom: 0; } }
  .c-gnavi__jp {
    font-size: 1.2rem;
    font-weight: 300; }
    @media only screen and (max-width: 900px) {
      .c-gnavi__jp {
        font-size: 1.4rem;
        margin-left: 15px;
        font-weight: 700; } }
  .c-gnavi > ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 900px) {
      .c-gnavi > ul {
        display: block; } }
    .c-gnavi > ul > li {
      margin: 0 25px; }
      @media only screen and (max-width: 900px) {
        .c-gnavi > ul > li {
          text-align: center;
          margin: 0;
          border-bottom: 1px solid #ffffff; } }
      .c-gnavi > ul > li:first-of-type {
        margin-left: 0;
        margin-right: 28px; }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li:first-of-type {
            margin-right: 0; } }
      .c-gnavi > ul > li:last-of-type {
        margin-right: 0; }
      .c-gnavi > ul > li > a {
        text-decoration: none;
        -webkit-font-feature-settings: "palt" 1;
                font-feature-settings: "palt" 1;
        padding: 0;
        position: relative;
        text-align: center;
        -webkit-transition: 0.15s;
        transition: 0.15s;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        cursor: pointer;
        height: 100px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li > a {
            -webkit-box-pack: start;
            -webkit-justify-content: flex-start;
                -ms-flex-pack: start;
                    justify-content: flex-start;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -webkit-flex-direction: row;
                -ms-flex-direction: row;
                    flex-direction: row;
            padding: 15px 30px;
            height: auto; } }
        @media screen and (min-width: 1024px) {
          .c-gnavi > ul > li > a:hover, .c-gnavi > ul > li > a.is-current {
            opacity: 0.7; } }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li > a:after {
            content: none;
            width: 10px;
            height: 10px;
            position: absolute;
            border-top: 3px solid #626262;
            border-right: 3px solid #626262;
            -webkit-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                    transform: rotate(45deg);
            right: 30px;
            top: 22px;
            border-radius: 2px; } }
      @media only screen and (max-width: 900px) {
        .c-gnavi > ul > li > span {
          width: 25px;
          height: 25px;
          display: block;
          position: absolute;
          top: 16px;
          right: 22px; } }
      @media only screen and (max-width: 900px) {
        .c-gnavi > ul > li > span:before, .c-gnavi > ul > li > span:after {
          content: "";
          position: absolute;
          width: 20px;
          height: 3px;
          background: #626262;
          right: 2px;
          top: calc(50% - 1px); } }
      @media only screen and (max-width: 900px) {
        .c-gnavi > ul > li > span:after {
          -webkit-transform: rotate(90deg);
              -ms-transform: rotate(90deg);
                  transform: rotate(90deg); } }
      .c-gnavi > ul > li > span.active:after {
        opacity: 0; }
      @media only screen and (max-width: 900px) {
        .c-gnavi > ul > li.nav-sub {
          position: relative; } }
      .c-gnavi > ul > li.nav-sub > a {
        position: relative;
        padding-right: 20px; }
        .c-gnavi > ul > li.nav-sub > a:before {
          content: "";
          position: absolute;
          z-index: 1;
          opacity: 1;
          border-right: 2px solid #ffffff;
          border-bottom: 2px solid #ffffff;
          width: 6px;
          height: 6px;
          -webkit-transform: rotate(45deg);
              -ms-transform: rotate(45deg);
                  transform: rotate(45deg);
          right: 0;
          bottom: 37px;
          -webkit-transition: 0.15s;
          transition: 0.15s; }
          @media only screen and (max-width: 900px) {
            .c-gnavi > ul > li.nav-sub > a:before {
              content: none; } }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li.nav-sub > a:after {
            content: none; } }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li.nav-sub > a.is-exist.active:after {
            opacity: 0; } }
        @media screen and (min-width: 1024px) {
          .c-gnavi > ul > li.nav-sub > a:hover:before {
            border-right: 2px solid #626262;
            border-bottom: 2px solid #626262; } }
      @media screen and (min-width: 1024px) {
        .c-gnavi > ul > li.nav-sub:hover a:before {
          opacity: 1; }
        .c-gnavi > ul > li.nav-sub:hover a:after {
          opacity: 1; } }
      .c-gnavi > ul > li.nav-sub.is-open a {
        opacity: 1;
        color: #626262; }
        @media only screen and (max-width: 900px) {
          .c-gnavi > ul > li.nav-sub.is-open a {
            color: #ffffff; } }
        .c-gnavi > ul > li.nav-sub.is-open a:before {
          border-right: 2px solid #626262;
          border-bottom: 2px solid #626262; }
          @media only screen and (max-width: 900px) {
            .c-gnavi > ul > li.nav-sub.is-open a:before {
              border-right: 2px solid #ffffff;
              border-bottom: 2px solid #ffffff; } }
  .c-gnavi .subList {
    background: #eaf5f0;
    position: absolute;
    top: 100%;
    z-index: 2;
    width: 163px;
    display: none;
    padding: 10px; }
    @media only screen and (max-width: 900px) {
      .c-gnavi .subList {
        position: static;
        border: none;
        display: none;
        padding: 0;
        margin: 0;
        width: 100%;
        background: #f8f8f8; } }
    .c-gnavi .subList_inner > ul > li {
      position: relative; }
      @media only screen and (max-width: 900px) {
        .c-gnavi .subList_inner > ul > li {
          border-bottom: 1px solid #d3d3d3; } }
      .c-gnavi .subList_inner > ul > li > a {
        color: #ffffff !important;
        font-size: 1.6rem;
        padding: 5px 0;
        display: block; }
        @media only screen and (max-width: 900px) {
          .c-gnavi .subList_inner > ul > li > a {
            text-align: left;
            padding: 15px 30px 15px 55px;
            position: relative;
            font-size: 1.8rem; } }
        .c-gnavi .subList_inner > ul > li > a:after {
          content: "";
          width: 6px;
          height: 6px;
          position: absolute;
          -webkit-transform: rotate(45deg);
              -ms-transform: rotate(45deg);
                  transform: rotate(45deg);
          border-top: 2px solid #ffffff;
          border-right: 2px solid #ffffff;
          right: 5px;
          top: 13px;
          border-radius: 2px; }
          @media only screen and (max-width: 900px) {
            .c-gnavi .subList_inner > ul > li > a:after {
              width: 10px;
              height: 10px;
              border-top: 3px solid #ec9d9d;
              border-right: 3px solid #ec9d9d;
              right: auto;
              left: 26px;
              top: 22px; } }

.header__navList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media only screen and (max-width: 900px) {
    .header__navList {
      width: 100%;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      padding: 0 10px; } }
  @media only screen and (max-width: 900px) {
    .header__navList > .header__navItem {
      border-bottom: 1px solid #fff; } }
  .header__navList > .header__navItem > .header__navLink {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media only screen and (max-width: 900px) {
      .header__navList > .header__navItem > .header__navLink {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    @media only screen and (max-width: 900px) {
      .header__navList > .header__navItem > .header__navLink span:first-child {
        margin-right: 15px; } }

.header__navList.active {
  left: 0%; }

.header__navItem {
  position: relative;
  margin-right: 40px;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .header__navItem {
      margin-right: 0;
      width: 100%; } }
  @media screen and (min-width: 1025px) {
    .header__navItem:hover > .sub-menu {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      z-index: 100;
      position: fixed;
      top: 117px;
      left: 0; } }
  @media screen and (min-width: 1024px) {
    .header__navItem:hover.has-menu::before {
      position: absolute;
      content: "";
      background: #eaeaea;
      width: 15px;
      height: 15px;
      left: 50%;
      bottom: -7px;
      -webkit-transform: translateX(-50%) rotate(45deg);
          -ms-transform: translateX(-50%) rotate(45deg);
              transform: translateX(-50%) rotate(45deg); } }
  .header__navItem .sub-menu {
    display: none;
    margin: 0;
    padding: 2px 4%;
    min-width: 100vw;
    position: static;
    top: 100%;
    left: 0;
    background: url("../img/common/bg_nav-menu.png") right bottom/cover no-repeat;
    -webkit-transition: all 0.4s ease-in;
    transition: all 0.4s ease-in;
    z-index: 100000000;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media only screen and (max-width: 900px) {
      .header__navItem .sub-menu {
        background: none;
        width: 100%;
        padding: 0 15px 15px; } }
    .header__navItem .sub-menu .header__navItem {
      margin-right: 25px;
      margin-left: 25px; }
      @media only screen and (max-width: 900px) {
        .header__navItem .sub-menu .header__navItem {
          margin-right: 0;
          margin-left: 0; } }
      .header__navItem .sub-menu .header__navItem:first-child {
        margin-left: 0; }
      .header__navItem .sub-menu .header__navItem:last-child {
        margin-right: 0; }
      .header__navItem .sub-menu .header__navItem .header__navLink {
        padding: 10px 15px;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
        .header__navItem .sub-menu .header__navItem .header__navLink::after {
          position: absolute;
          content: "";
          width: 7px;
          height: 11px;
          background: url("../img/common/icon_arrow2.png") no-repeat;
          background-size: contain;
          top: 50%;
          left: 0;
          -webkit-transform: translateY(-50%);
              -ms-transform: translateY(-50%);
                  transform: translateY(-50%); }
          @media only screen and (max-width: 900px) {
            .header__navItem .sub-menu .header__navItem .header__navLink::after {
              content: none; } }
        @media only screen and (max-width: 900px) {
          .header__navItem .sub-menu .header__navItem .header__navLink {
            padding: 0;
            color: #fff;
            height: 30px; } }
      .header__navItem .sub-menu .header__navItem .sub-menu {
        left: 100%;
        top: 0; }

.header__navLink {
  height: 150px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  color: #ffffff;
  font-weight: 500; }
  @media only screen and (max-width: 900px) {
    .header__navLink {
      font-size: 1.4rem;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      height: 50px; } }
  .header__navLink::before {
    content: "";
    display: inline-block;
    height: 1px;
    width: 0%;
    -webkit-transition: width 0.12s ease-in;
    transition: width 0.12s ease-in;
    background-color: #50c9e2;
    position: absolute;
    left: auto;
    right: 0;
    bottom: 50px; }
  @media screen and (min-width: 1024px) {
    .header__navLink:hover, .header__navLink--active {
      color: #50c9e2;
      opacity: 1; }
      .header__navLink:hover::before, .header__navLink--active::before {
        width: 100%;
        left: 0;
        right: auto; } }

.current-menu-parent > .header__navLink {
  color: #008066; }

.current-menu-item > .header__navLink {
  color: #008066; }

.menu-toggle,
.menu-arrow {
  display: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999; }
  @media only screen and (max-width: 900px) {
    .menu-toggle,
    .menu-arrow {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }

.menu-toggle::after,
.menu-toggle::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 15px;
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s; }

.menu-toggle::before {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.menu-toggle.active::after {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.menu-arrow::before {
  position: absolute;
  content: "";
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
  width: 8px;
  height: 8px;
  border-top: 2px solid #ffffff;
  border-left: 2px solid #ffffff; }

/*------------------------------------------------------------
layout
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

html,
body {
  height: 100%; }

body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background: url("../img/common/background_paper.png") no-repeat, #ffffff;
  background-size: cover;
  height: 100%;
  min-height: 100vh;
  min-width: 1280px;
  width: 100%;
  overflow-x: hidden;
  color: #0a0c11;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5; }
  @media only screen and (max-width: 900px) {
    body {
      min-width: 100%;
      font-size: 1.4rem;
      background: url("../img/common/background_paper_sp.png") no-repeat, #ffffff;
      background-size: cover; } }
  body.is-hidden {
    overflow: hidden;
    position: fixed; }

section {
  padding: 50px 0; }
  @media only screen and (max-width: 900px) {
    section {
      padding: 25px 0; } }

main {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.l-wrap {
  margin: 0 auto;
  width: 1080px; }
  @media only screen and (max-width: 900px) {
    .l-wrap {
      padding: 0 10px;
      width: 100%; } }

.l-wrap2 {
  margin: 0 auto;
  width: 1280px; }
  @media only screen and (max-width: 900px) {
    .l-wrap2 {
      padding: 0 10px;
      width: 100%; } }

/*------------------------------------------------------------
side
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-ttlSide1 {
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 900px) {
    .c-ttlSide1 {
      font-size: 1.5rem;
      padding: 10px 0;
      border-width: 2px; } }

.c-listSide1 {
  border-radius: 10px;
  background: #ffffff;
  -webkit-box-shadow: 0px 3px 10px 0px rgba(182, 183, 191, 0.2);
          box-shadow: 0px 3px 10px 0px rgba(182, 183, 191, 0.2);
  padding: 15px; }
  .c-listSide1 + .c-listSide1 {
    margin-top: 50px; }
    @media only screen and (max-width: 900px) {
      .c-listSide1 + .c-listSide1 {
        margin-top: 30px; } }
  .c-listSide1__item {
    position: relative;
    list-style: none; }
    .c-listSide1__item--post {
      margin-top: 20px; }
      @media only screen and (max-width: 900px) {
        .c-listSide1__item--post {
          margin-top: 15px; } }
      @media screen and (min-width: 1024px) {
        .c-listSide1__item--post:hover .post__img img {
          -webkit-transform: scale(1.1);
              -ms-transform: scale(1.1);
                  transform: scale(1.1); } }
      .c-listSide1__item--post a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
    .c-listSide1__item--tag {
      margin-top: 25px; }
      @media only screen and (max-width: 900px) {
        .c-listSide1__item--tag {
          margin-top: 15px; } }
      .c-listSide1__item--tag a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        line-height: 1; }
        .c-listSide1__item--tag a img {
          width: 12px;
          margin-right: 5px; }
    .c-listSide1__item::marker {
      margin-right: 10px; }
    .c-listSide1__item a {
      text-decoration: none;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      @media screen and (min-width: 1024px) {
        .c-listSide1__item a:hover {
          color: #50c9e2;
          opacity: 1; } }
    .c-listSide1__item .post__img {
      overflow: hidden;
      width: 133px;
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0;
      margin-right: 10px; }
      .c-listSide1__item .post__img img {
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
    .c-listSide1__item .post__name {
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
      font-weight: 400; }

.c-selectSide2 {
  margin-top: 50px;
  border-radius: 10px;
  background: #ffffff;
  -webkit-box-shadow: 0px 3px 10px 0px rgba(182, 183, 191, 0.2);
          box-shadow: 0px 3px 10px 0px rgba(182, 183, 191, 0.2);
  padding: 15px; }
  @media only screen and (max-width: 900px) {
    .c-selectSide2 {
      margin-top: 30px; } }
  .c-selectSide2__item {
    position: relative;
    margin-top: 25px; }
    @media only screen and (max-width: 900px) {
      .c-selectSide2__item {
        margin-top: 15px; } }
    .c-selectSide2__item::before {
      content: "";
      position: absolute;
      width: 7px;
      height: 7px;
      top: 50%;
      right: 10px;
      -webkit-transform: translateY(-50%) rotate(135deg);
          -ms-transform: translateY(-50%) rotate(135deg);
              transform: translateY(-50%) rotate(135deg);
      border-left: 3px solid #a9a9a9;
      border-top: 3px solid #a9a9a9; }
  .c-selectSide2 select {
    font-size: 1.5rem;
    width: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 33px;
    background: #ffffff;
    padding: 0 30px 0 12px;
    border: 1px solid #505050;
    font-weight: 300; }
    @media only screen and (max-width: 900px) {
      .c-selectSide2 select {
        font-size: 1.4rem; } }
    .c-selectSide2 select::-ms-expand {
      display: none; }
    .c-selectSide2 select option {
      font-weight: 300; }
  .c-selectSide2__inner {
    position: relative;
    display: inline-block;
    width: 100%;
    margin: 19px 0 0; }
    .c-selectSide2__inner:after {
      content: "";
      position: absolute;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-top: 10px solid #333333;
      right: 10px;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }

.c-sidebar1 {
  width: 350px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  @media only screen and (max-width: 900px) {
    .c-sidebar1 {
      width: 100%;
      margin-top: 30px; } }

/*------------------------------------------------------------
campaign side
------------------------------------------------------------*/
.c-listSideCampaign + .c-listSideCampaign {
  margin-top: 50px; }

.c-listSideCampaign__item {
  margin-top: 20px; }

.c-ttlSideCampaign {
  font-size: 3rem;
  font-weight: 500;
  color: #d4b113; }

/*------------------------------------------------------------
btn
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-btn1 {
  position: relative;
  max-width: 250px;
  width: 100%;
  margin: 50px auto 0;
  text-align: center;
  background: -webkit-gradient(linear, right top, left top, color-stop(0, #babdcb), to(#cfd4e9));
  background: -webkit-linear-gradient(right, #babdcb 0, #cfd4e9 100%);
  background: linear-gradient(to left, #babdcb 0, #cfd4e9 100%);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border-radius: 25px;
  overflow: hidden; }
  @media screen and (min-width: 1024px) {
    .c-btn1:hover {
      opacity: 1; }
      .c-btn1:hover::before {
        right: 15px; } }
  @media only screen and (max-width: 900px) {
    .c-btn1 {
      margin-top: 30px; } }
  .c-btn1::before {
    position: absolute;
    content: "";
    background: url("../img/common/icon_arrowwhite.png") no-repeat;
    width: 15px;
    height: 16px;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
  .c-btn1__txt1,
  .c-btn1 button,
  .c-btn1 input, .c-btn1 a {
    font-size: 1.6rem;
    display: block;
    width: 100%;
    padding: 15px 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    border: 0;
    background: inherit;
    color: #ffffff; }
    @media only screen and (max-width: 900px) {
      .c-btn1__txt1,
      .c-btn1 button,
      .c-btn1 input, .c-btn1 a {
        font-size: 1.4rem; } }
    @media screen and (min-width: 1024px) {
      .c-btn1__txt1:hover,
      .c-btn1 button:hover,
      .c-btn1 input:hover, .c-btn1 a:hover {
        opacity: 1; } }
  .c-btn1.center .c-btn1__txt1 {
    margin: 0 auto; }
  .c-btn1--style1 {
    background: #ffffff;
    border: 1px  solid #b5b6be; }
    .c-btn1--style1::before {
      background: url("../img/common/icon_arrowgrey.png") no-repeat;
      right: unset;
      left: 20px;
      width: 13px;
      height: 14px; }
    @media screen and (min-width: 1024px) {
      .c-btn1--style1:hover::before {
        left: 15px; } }
    .c-btn1--style1__txt1,
    .c-btn1--style1 button,
    .c-btn1--style1 input, .c-btn1--style1 a {
      color: #b5b6be; }
      @media screen and (min-width: 1024px) {
        .c-btn1--style1__txt1:hover,
        .c-btn1--style1 button:hover,
        .c-btn1--style1 input:hover, .c-btn1--style1 a:hover {
          opacity: 1; } }
    @media screen and (min-width: 1024px) {
      .c-btn1--style1:hover {
        opacity: 1; } }
  .c-btn1.center .c-btn1__txt1 {
    margin-left: auto;
    margin-right: auto; }
  .c-btn1.left .c-btn1__txt1 {
    margin: 50px auto 0 0; }
    @media only screen and (max-width: 900px) {
      .c-btn1.left .c-btn1__txt1 {
        margin: 50px auto 0; } }
  .c-btn1.right .c-btn1__txt1 {
    margin: 50px 0 0 auto; }
    @media only screen and (max-width: 900px) {
      .c-btn1.right .c-btn1__txt1 {
        margin: 50px auto 0; } }
  .c-btn1 .wpcf7-spinner {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    margin: 0; }

.view-all {
  margin-top: 20px; }
  .view-all.center a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .view-all.flex-end a {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .view-all a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .view-all a img {
      width: 50px;
      margin-left: 10px; }

.btnLink {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .btnLink.center a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .btnLink.flex-end a {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .btnLink a {
    min-width: 244px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #0a0c11;
    color: #ffffff;
    font-size: 1.8rem;
    font-weight: 500;
    padding: 10px 20px;
    outline: 2px solid #06c755;
    border-radius: 23px;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    @media screen and (min-width: 1024px) {
      .btnLink a:hover {
        opacity: 1;
        background: #ffffff;
        color: #0a0c11; } }
    .btnLink a img {
      width: 14px;
      margin-left: 10px; }

.btnMore {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 40px; }
  .btnMore.center {
    margin-left: auto;
    margin-right: auto; }
  .btnMore a {
    min-width: 250px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #011d59;
    color: #ffffff;
    padding: 10px 20px;
    border-radius: 10px;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out; }
    @media screen and (min-width: 1024px) {
      .btnMore a:hover {
        opacity: 0.7; }
        .btnMore a:hover img {
          right: 15px; } }
    .btnMore a img {
      position: absolute;
      right: 20px;
      width: 15px;
      height: 16px;
      -webkit-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }

/*------------------------------------------------------------
title
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-ttl1__txt1 {
  font-size: 3rem;
  color: #4F4F4F;
  font-weight: 600;
  line-height: calc(40 / 30);
  text-align: center;
  margin-bottom: 30px; }

.c-ttl1__sub1 {
  font-size: 1.6rem;
  line-height: calc(24 / 16);
  color: #F7F7F7; }

.c-ttl1__txt2 {
  font-family: 'Mrs Saint Delafield', cursive;
  font-weight: 400;
  font-size: 9rem;
  color: #fff;
  line-height: calc(177 / 90); }
  @media only screen and (max-width: 900px) {
    .c-ttl1__txt2 {
      font-size: 4.5rem; } }

.c-ttl1.center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center; }

.c-ttl1.left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  position: relative; }

.c-ttl1.u-pconly {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 900px) {
    .c-ttl1.u-pconly {
      display: none; } }

.c-ttl1.u-sponly {
  display: none; }
  @media only screen and (max-width: 900px) {
    .c-ttl1.u-sponly {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }

.c-ttl2__txt1 {
  font-size: 3rem;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .c-ttl2__txt1 {
      font-size: 2rem; } }

.c-ttl3 {
  max-width: 728px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 900px) {
    .c-ttl3 {
      max-width: 335px; } }
  .c-ttl3__txt1 {
    font-size: 1.6rem;
    text-align: left;
    line-height: calc(24 / 16); }

.c-ttl4__txt1 {
  font-size: 2.8rem;
  font-weight: 500;
  text-align: center;
  color: #000000;
  position: relative;
  line-height: calc(40 / 28);
  padding-bottom: 5px; }
  .c-ttl4__txt1::before {
    content: "";
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 145px;
    height: 5px;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    left: 50%;
    bottom: -5px;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(20%, #2b3b90), to(#1e75bc));
    background-image: -webkit-linear-gradient(left, #2b3b90 20%, #1e75bc 100%);
    background-image: linear-gradient(90deg, #2b3b90 20%, #1e75bc 100%);
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

.c-ttl4.center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center; }

.ttl48mrs {
  font-family: 'Mrs Saint Delafield', cursive;
  font-weight: 400;
  position: relative;
  font-size: 4.8rem;
  color: #3d6947; }
  .ttl48mrs::before {
    content: "";
    position: absolute;
    background: url("../img/common/icon_line_ttl.png") no-repeat;
    width: 138px;
    height: 14px;
    bottom: 10px;
    left: -5px; }

.txt {
  font-size: 1.6rem;
  line-height: calc(24 / 16); }
  @media only screen and (max-width: 900px) {
    .txt {
      font-size: 1.4rem;
      line-height: calc(36 / 28); } }
  .txt:not(:last-child) {
    margin-bottom: 30px; }
    @media only screen and (max-width: 900px) {
      .txt:not(:last-child) {
        margin-bottom: 20px; } }
  .txt.w520 {
    max-width: 520px;
    width: 100%;
    margin: 10px auto 40px; }
    @media only screen and (max-width: 900px) {
      .txt.w520 {
        margin: 10px auto 20px; } }

.txt2 {
  font-family: 'Sawarabi Mincho', serif;
  font-weight: 400;
  font-size: 2rem;
  color: #25843a;
  margin-right: 11px; }
  @media only screen and (max-width: 900px) {
    .txt2 {
      font-size: 1.8rem;
      margin-right: 6px; } }

.ttlcar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .ttlcar img {
    width: 36px;
    height: 30px;
    margin-right: 15px; }

.note {
  font-size: 1.4rem;
  line-height: calc(24 / 14); }
  @media only screen and (max-width: 900px) {
    .note {
      font-size: 1.2rem;
      line-height: calc(32 / 24); } }

.ttl_box {
  line-height: 1; }
  .ttl_box.center {
    text-align: center; }

.ttl-en {
  font-size: 6rem;
  font-weight: bold;
  text-transform: uppercase; }
  @media only screen and (max-width: 900px) {
    .ttl-en {
      font-size: 4rem; } }
  .ttl-en span {
    color: #008066; }
  .ttl-en.fs48green {
    font-size: 4.8rem;
    background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
    background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-style: italic; }
    @media only screen and (max-width: 900px) {
      .ttl-en.fs48green {
        font-size: 2.4rem; } }
  .ttl-en.fs30green {
    font-size: 3rem;
    background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
    background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-style: italic; }
    @media only screen and (max-width: 900px) {
      .ttl-en.fs30green {
        font-size: 2.4rem;
        letter-spacing: -.01em; } }

.ttl-jp {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 5px 8px;
  border-left: 3px solid #babdcb; }
  @media only screen and (max-width: 900px) {
    .ttl-jp {
      font-size: 1.5rem; } }
  .ttl-jp.fs24 {
    font-size: 2.4rem; }
    @media only screen and (max-width: 900px) {
      .ttl-jp.fs24 {
        font-size: 1.8rem; } }
  .ttl-jp.fs24black {
    font-size: 2.4rem;
    color: #222222; }
    @media only screen and (max-width: 900px) {
      .ttl-jp.fs24black {
        font-size: 1.8rem; } }

.ttl26 {
  font-size: 2.6rem; }
  @media only screen and (max-width: 900px) {
    .ttl26 {
      font-size: 1.8rem; } }

.ttl24 {
  font-size: 2.4rem;
  font-weight: 400; }

.ttl20 {
  font-size: 2rem; }
  @media only screen and (max-width: 900px) {
    .ttl20 {
      font-size: 1.8rem; } }

.ttl18 {
  font-size: 1.8rem;
  font-weight: 500;
  padding: 5px 8px;
  line-height: 1;
  border-left: 3px solid #babdcb; }
  @media only screen and (max-width: 900px) {
    .ttl18 {
      font-size: 1.5rem;
      border-left: 0;
      padding: 0;
      font-weight: bold; } }

.ttl30 {
  font-size: 3rem;
  font-weight: bold;
  color: #011d59; }
  @media only screen and (max-width: 900px) {
    .ttl30 {
      font-size: 2rem; } }

.ttl30-orange {
  font-size: 3rem;
  font-weight: bold;
  color: #ff4200; }
  @media only screen and (max-width: 900px) {
    .ttl30-orange {
      font-size: 2rem; } }

.ttl28 {
  position: relative;
  font-size: 2.8rem;
  padding-left: 50px;
  line-height: 1; }
  @media only screen and (max-width: 900px) {
    .ttl28 {
      font-size: 2.3rem;
      padding-left: 35px; } }
  .ttl28::before {
    position: absolute;
    content: "";
    background-color: #b5b6be;
    width: 27px;
    height: 27px;
    top: 1px;
    left: 0; }
    @media only screen and (max-width: 900px) {
      .ttl28::before {
        width: 20px;
        height: 20px; } }

.ttl24b {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .ttl24b {
      font-size: 1.8rem; } }

/*------------------------------------------------------------
icon
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
form
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-input1 {
  font-size: 1.6rem;
  overflow: hidden;
  width: 100%; }
  @media only screen and (max-width: 900px) {
    .c-input1 {
      font-size: 1.4rem;
      width: 100%; } }
  .c-input1.age input {
    max-width: 263px; }
  .c-input1 input {
    width: 100%;
    height: 100%;
    border: none;
    padding: 0 15px;
    height: 50px;
    border: 0;
    background-color: #f3f3f3;
    font-size: 1.6rem; }
    @media only screen and (max-width: 900px) {
      .c-input1 input {
        font-size: 1.4rem; } }
    .c-input1 input[type="number"]::-webkit-outer-spin-button, .c-input1 input[type="number"]::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0; }
    .c-input1 input[type="number"] input[type="number"] {
      -moz-appearance: textfield; }
    .c-input1 input::-webkit-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
      @media only screen and (max-width: 900px) {
        .c-input1 input::-webkit-input-placeholder {
          font-size: 1.4rem; } }
    .c-input1 input:-ms-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
      @media only screen and (max-width: 900px) {
        .c-input1 input:-ms-input-placeholder {
          font-size: 1.4rem; } }
    .c-input1 input::-webkit-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
    .c-input1 input::-moz-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
    .c-input1 input:-ms-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
    .c-input1 input::-ms-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
    .c-input1 input::placeholder {
      color: #bcbcbc;
      font-size: 1.6rem; }
      @media only screen and (max-width: 900px) {
        .c-input1 input::-webkit-input-placeholder {
          font-size: 1.4rem; }
        .c-input1 input::-moz-placeholder {
          font-size: 1.4rem; }
        .c-input1 input:-ms-input-placeholder {
          font-size: 1.4rem; }
        .c-input1 input::-ms-input-placeholder {
          font-size: 1.4rem; }
        .c-input1 input::placeholder {
          font-size: 1.4rem; } }

.c-radio1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media only screen and (max-width: 900px) {
    .c-radio1 {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .c-radio1 > span {
    display: inline-block;
    width: calc(100% / 3); }
    @media only screen and (max-width: 900px) {
      .c-radio1 > span {
        padding-bottom: 0;
        width: 100%;
        display: block; } }
    .c-radio1 > span:last-of-type {
      padding: 0; }
  .c-radio1 .wpcf7-radio {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 45px; }
  .c-radio1.checkbox label span::before {
    border-radius: 0; }
  .c-radio1.checkbox input:checked + span:after {
    background: unset;
    content: "";
    border-radius: 0;
    width: 8px;
    height: 16px;
    border-bottom: 2px solid #008066;
    border-right: 2px solid #008066;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    top: -6px;
    left: 6px; }
    @media only screen and (max-width: 900px) {
      .c-radio1.checkbox input:checked + span:after {
        top: 2px; } }
  .c-radio1 label span {
    color: #000000;
    cursor: pointer;
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1;
    padding: 0px 0 0 27px;
    position: relative; }
    @media only screen and (max-width: 900px) {
      .c-radio1 label span {
        font-size: 1.4rem;
        padding: 3px 0 3px 25px;
        line-height: 1.5; } }
    .c-radio1 label span:before {
      background: #fff;
      border-radius: 50%;
      border: 1px solid #000000;
      content: "";
      height: 16px;
      left: 0;
      margin: 0 5px 0 0;
      position: absolute;
      top: 0;
      width: 16px; }
      @media only screen and (max-width: 900px) {
        .c-radio1 label span:before {
          top: 8px; } }
  .c-radio1 input {
    display: none; }
    .c-radio1 input:checked + span:before {
      border: 1px solid #000000; }
    .c-radio1 input:checked + span:after {
      background: #000;
      border-radius: 50%;
      content: "";
      height: 8px;
      left: 5px;
      position: absolute;
      top: 5px;
      width: 8px; }
      @media only screen and (max-width: 900px) {
        .c-radio1 input:checked + span:after {
          top: 13px; } }

.c-checkbox1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media only screen and (max-width: 900px) {
    .c-checkbox1 {
      display: block; } }
  .c-checkbox1 > span {
    display: inline-block;
    margin-left: 0 !important;
    margin-right: 10px;
    padding-bottom: 25px;
    width: calc(33% - 5px); }
    @media only screen and (max-width: 900px) {
      .c-checkbox1 > span {
        display: inline-block;
        margin-bottom: 3px;
        width: calc((100% - 12px) / 2);
        margin-right: 5px; } }
    .c-checkbox1 > span:nth-of-type(3n) {
      margin-right: 0; }
      @media only screen and (max-width: 900px) {
        .c-checkbox1 > span:nth-of-type(3n) {
          margin-right: 5px; } }
    @media only screen and (max-width: 900px) {
      .c-checkbox1 > span:nth-of-type(2n) {
        margin-right: 0; } }
    .c-checkbox1 > span:last-of-type {
      padding-right: 0; }
  .c-checkbox1 label span {
    color: #333;
    cursor: pointer;
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 0 0 0 30px;
    position: relative; }
    @media only screen and (max-width: 900px) {
      .c-checkbox1 label span {
        font-size: 1.4rem; } }
    .c-checkbox1 label span:before {
      background: #fff;
      border: 2px solid #333;
      content: "";
      height: 18px;
      left: 0;
      margin: 0 5px 0 0;
      position: absolute;
      top: 0;
      width: 18px; }
  .c-checkbox1 input {
    display: none; }
    .c-checkbox1 input:checked + span:before {
      background: #ffffff;
      border-color: #ffffff; }
    .c-checkbox1 input:checked + span:after {
      border-bottom: 2px solid #fff;
      border-right: 2px solid #fff;
      content: "";
      height: 10px;
      left: 8px;
      position: absolute;
      top: 4px;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      width: 5px; }
  .c-checkbox1.flexbox {
    border-bottom: 1px solid #bcbcbc;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 20px; }
    .c-checkbox1.flexbox > span {
      padding: 10px 0 15px; }
  .c-checkbox1.paddingzero {
    padding-right: 0; }

.c-textarea1 {
  width: 100%; }
  .c-textarea1 textarea {
    height: 163px;
    padding: 15px;
    resize: none;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
    border: 0;
    background-color: #f3f3f3; }
    @media only screen and (max-width: 900px) {
      .c-textarea1 textarea {
        height: 222px;
        padding: 20px; } }
    .c-textarea1 textarea::-webkit-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem;
      line-height: 1.5; }
    .c-textarea1 textarea:-ms-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem;
      line-height: 1.5; }
    .c-textarea1 textarea::-moz-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem;
      line-height: 1.5; }
    .c-textarea1 textarea::-ms-input-placeholder {
      color: #bcbcbc;
      font-size: 1.6rem;
      line-height: 1.5; }
    .c-textarea1 textarea::placeholder {
      color: #bcbcbc;
      font-size: 1.6rem;
      line-height: 1.5; }

.c-form1 {
  max-width: 860px;
  margin: 50px auto 0;
  padding: 50px;
  background-color: #ffffff;
  border-radius: 20px;
  -webkit-box-shadow: 0px 3px 25px 0px rgba(182, 183, 191, 0.44);
          box-shadow: 0px 3px 25px 0px rgba(182, 183, 191, 0.44); }
  @media only screen and (max-width: 900px) {
    .c-form1 {
      padding: 20px;
      margin-top: 30px; } }
  .c-form1__row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.6rem;
    padding: 15px 0;
    min-height: 50px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .c-form1__row {
        display: block;
        padding: 10px 0;
        min-height: auto;
        position: relative; } }
    .c-form1__row.alignStart {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; }
    .c-form1__row.row-gender .c-radio1 > span {
      width: calc(100% / 3); }
      @media only screen and (max-width: 900px) {
        .c-form1__row.row-gender .c-radio1 > span {
          width: 100%; } }
  .c-form1__ttl1 {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 40px;
    position: relative;
    width: 215px;
    font-weight: 400; }
    @media only screen and (max-width: 900px) {
      .c-form1__ttl1 {
        line-height: 1.5;
        width: 190px;
        margin-right: 0;
        margin-bottom: 10px; } }
    .c-form1__ttl1 small {
      display: block;
      font-size: 1.2rem; }
  .c-form1__info {
    width: 100%; }
    @media only screen and (max-width: 900px) {
      .c-form1__info {
        margin-top: 20px; } }
  .c-form1__dflex {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .c-form1__dflex span {
      color: #fff;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 34px;
      padding: 3px 0;
      text-align: center;
      width: 85px;
      border-radius: 10px;
      cursor: pointer;
      font-size: 1.4rem;
      font-weight: 400;
      background: #222222; }
      @media only screen and (max-width: 900px) {
        .c-form1__dflex span {
          font-size: 1.2rem;
          border-radius: 5px;
          height: 30px;
          width: 75px; } }
      .c-form1__dflex span:hover {
        opacity: 1; }
    .c-form1__dflex .c-input1 {
      width: 100%;
      max-width: 265px; }
      @media only screen and (max-width: 900px) {
        .c-form1__dflex .c-input1 {
          max-width: 100%; } }
      .c-form1__dflex .c-input1 input {
        width: 100%;
        max-width: 265px; }
        @media only screen and (max-width: 900px) {
          .c-form1__dflex .c-input1 input {
            max-width: 100%; } }
      .c-form1__dflex .c-input1 span {
        width: 100%;
        height: 50px; }
  .c-form1__ajaxzip3 {
    margin-left: 27px; }
    @media only screen and (max-width: 900px) {
      .c-form1__ajaxzip3 {
        margin-left: 18px; } }
  .c-form1__btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: center;
    max-width: 555px;
    margin: 0 auto; }
    @media only screen and (max-width: 900px) {
      .c-form1__btn {
        display: block;
        margin: 55px auto 0; } }
  @media only screen and (max-width: 900px) and (max-width: 900px) {
    .c-form1__btn {
      margin: 45px auto 0; } }
    @media only screen and (max-width: 900px) {
      .c-form1__btn .c-btn3__txt1,
      .c-form1__btn .c-btn3 button,
      .c-form1__btn .c-btn3 input {
        margin: 0 auto; } }
    @media only screen and (max-width: 900px) {
      .c-form1__btn .c-btn3--style1 {
        margin-bottom: 30px; } }
  .c-form1 .requied {
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 24px;
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    background: #b5b6be;
    border-radius: 12px;
    font-size: 1.4rem;
    font-weight: 400; }
    @media only screen and (max-width: 900px) {
      .c-form1 .requied {
        font-size: 1.2rem;
        height: 100%;
        width: 48px;
        top: 0;
        border-radius: 10px;
        line-height: 1; } }
  .c-form1 .note1 {
    font-size: 1.3rem; }

.c-datepicker {
  width: 100%;
  padding-bottom: 20px; }
  .c-datepicker + .c-datepicker {
    padding-top: 20px;
    border-top: 1px dashed #707070; }
  .c-datepicker:last-child {
    padding-bottom: unset; }
  .c-datepicker__ttl {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 145px; }
  .c-datepicker__date, .c-datepicker__time {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .c-datepicker__date, .c-datepicker__time {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start; } }
  .c-datepicker__time {
    margin-top: 15px; }
  .c-datepicker .c-radio1 > span {
    padding-bottom: unset;
    width: 85px; }

.c-date-picker {
  width: 265px;
  height: 50px;
  font-size: 1.6rem;
  padding: 15px 20px; }
  @media only screen and (max-width: 900px) {
    .c-date-picker {
      width: 100%;
      margin-top: 10px; } }

/*------------------------------------------------------------
text
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-text1 {
  font-size: 1.6rem;
  color: #ff4200;
  line-height: 1.5; }
  @media only screen and (max-width: 900px) {
    .c-text1 {
      font-size: 1.4rem; } }
  .c-text1 + .c-text1 {
    margin-top: 20px; }
    @media only screen and (max-width: 900px) {
      .c-text1 + .c-text1 {
        margin-top: 15px; } }
  .c-text1.color1 {
    color: #fff; }
  .c-text1.center {
    text-align: center; }

.desc_box {
  margin-top: 30px;
  width: 100%; }
  .desc_box.center {
    margin-left: auto;
    margin-right: auto; }
  @media only screen and (max-width: 900px) {
    .desc_box {
      margin: 20px auto; } }
  .desc_box p:not(:first-child) {
    margin-top: 10px; }

.mission__box {
  width: 100%; }
  @media only screen and (max-width: 900px) {
    .mission__box {
      position: absolute;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      bottom: 50px;
      left: 10px;
      padding-right: 10px; } }
  .mission__box .mission__text {
    width: 50%;
    margin-left: auto;
    color: #ffffff;
    padding-left: 90px; }
    @media only screen and (max-width: 900px) {
      .mission__box .mission__text {
        width: 100%;
        padding-left: unset;
        margin-left: unset; } }
  .mission__box .mision__ttl {
    font-size: 4.8rem;
    color: rgba(255, 255, 255, 0.4);
    font-weight: bold; }
    @media only screen and (max-width: 900px) {
      .mission__box .mision__ttl {
        font-size: 4rem;
        line-height: 1; } }
  .mission__box .mission__subttl {
    margin-top: 20px;
    font-size: 2.4rem;
    font-weight: bold; }
    @media only screen and (max-width: 900px) {
      .mission__box .mission__subttl {
        font-size: 1.8rem;
        margin-top: 10px; } }
  .mission__box .mission__desc {
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .mission__box .mission__desc {
        margin-top: 10px; } }
    .mission__box .mission__desc p {
      margin-top: 10px; }
    .mission__box .mission__desc ul {
      font-size: 1.8rem;
      font-weight: bold;
      margin-top: 10px;
      list-style-type: disc;
      list-style-position: inside; }
      @media only screen and (max-width: 900px) {
        .mission__box .mission__desc ul {
          font-size: 1.5rem; } }

.contact_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 30px; }
  @media only screen and (max-width: 900px) {
    .contact_box {
      margin-top: 15px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .contact_box .contact_phone {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 50%; }
    @media only screen and (max-width: 900px) {
      .contact_box .contact_phone {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .contact_box .contact_phoneLink {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 2.4rem;
      font-weight: bold; }
      .contact_box .contact_phoneLink img {
        width: 20px;
        margin-right: 6px; }
  .contact_box .contact_hours {
    margin-left: 20px; }
    @media only screen and (max-width: 900px) {
      .contact_box .contact_hours {
        margin-left: unset;
        margin-top: 10px; } }
  .contact_box .contact_email {
    border-radius: 25px;
    border: 4px solid transparent;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)), -webkit-gradient(linear, left top, right top, from(#50c9e2), to(#2070bd));
    background-image: -webkit-linear-gradient(#fff, #fff), -webkit-linear-gradient(left, #50c9e2, #2070bd);
    background-image: linear-gradient(#fff, #fff), linear-gradient(90deg, #50c9e2, #2070bd);
    background-origin: border-box;
    background-clip: padding-box, border-box; }
    @media only screen and (max-width: 900px) {
      .contact_box .contact_email {
        margin-top: 25px;
        max-width: 305px;
        width: 100%; } }
    .contact_box .contact_email a {
      display: block;
      padding: 9px 55px;
      background: -webkit-gradient(linear, left top, right top, from(#50c9e2), to(#2070bd));
      background: -webkit-linear-gradient(left, #50c9e2, #2070bd);
      background: linear-gradient(90deg, #50c9e2, #2070bd);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      text-align: center; }
      @media only screen and (max-width: 900px) {
        .contact_box .contact_email a {
          padding: 8px; } }

/*------------------------------------------------------------
navi
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
img
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-imgTxt1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 900px) {
    .c-imgTxt1 {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding-left: unset;
      max-width: 500px;
      width: 100%;
      margin: 0 auto; } }
  .c-imgTxt1.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1.reverse {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .c-imgTxt1.reverse .c-imgTxt1__info {
      margin-left: 0; }
    .c-imgTxt1.reverse .c-imgTxt1__img {
      margin-left: 50px; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1.reverse .c-imgTxt1__img {
          margin-left: unset; } }
  .c-imgTxt1__ttl1 {
    font-size: 4rem;
    font-weight: bold;
    color: #000000;
    line-height: 1.2; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1__ttl1 {
        font-size: 2.2rem; } }
  .c-imgTxt1__info {
    margin-left: 50px;
    position: relative; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1__info {
        margin-left: 0;
        margin-top: 20px;
        width: 100%; } }
  .c-imgTxt1__img {
    width: 522px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1__img {
        width: 100%;
        margin-bottom: 0px; } }
  .c-imgTxt1__detail p:not(:first-child) {
    margin-top: 20px; }
  .c-imgTxt1__detail2.right {
    text-align: right;
    margin-top: 40px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1__detail2.right {
        margin: 20px 8px 20px 0; } }
  .c-imgTxt1__careertxt {
    font-size: 1.8rem;
    padding-left: 25px;
    position: relative;
    margin-bottom: 14px; }
    .c-imgTxt1__careertxt::before {
      content: "";
      width: 15px;
      height: 15px;
      background: #000;
      position: absolute;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      left: 8px;
      top: 55%; }
  .c-imgTxt1__career table {
    max-width: 640px;
    width: 100%;
    display: contents;
    letter-spacing: 0.06em; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1__career table {
        max-width: 100%;
        display: table;
        border-collapse: collapse; } }
    .c-imgTxt1__career table tr:last-child th {
      border-bottom: 1px solid #dedede; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1__career table tr:last-child th {
          border: 0; } }
    .c-imgTxt1__career table tr:last-child td {
      border-bottom: 1px solid #dedede; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1__career table tr:last-child td {
          border: 0; } }
    .c-imgTxt1__career table th {
      font-size: 1.6rem;
      width: 188px;
      height: 55px;
      padding: 15px 33px;
      background: #d0d0d0;
      text-align: left;
      position: relative;
      border-top: 1px solid #dedede; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1__career table th {
          display: block;
          height: 46px;
          width: 100%;
          padding: 15px 20px;
          border: 0; } }
    .c-imgTxt1__career table td {
      font-size: 1.6rem;
      padding: 15px 60px 15px 33px;
      line-height: calc(24 / 16);
      border-top: 1px solid #dedede; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1__career table td {
          display: block;
          width: 100%;
          padding: 10px 20px;
          border: 0;
          -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
                  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); } }
  .c-imgTxt1 .u-thtop {
    position: absolute;
    top: 20px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1 .u-thtop {
        top: 16px; } }
  .c-imgTxt1 .u-thmid {
    position: absolute;
    top: 30%;
    width: 1px;
    height: 98px;
    background: #000;
    left: 30%; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1 .u-thmid {
        top: 25px;
        width: 50px;
        height: 1px;
        left: 97px; } }
  .c-imgTxt1 .u-thbot {
    position: absolute;
    bottom: 15px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1 .u-thbot {
        bottom: 13px;
        left: 165px; } }
  .c-imgTxt1 .c-btn1 {
    position: absolute;
    right: 0;
    bottom: 0; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1 .c-btn1 {
        position: relative;
        right: unset;
        bottom: unset; } }
    @media only screen and (max-width: 900px) {
      .c-imgTxt1 .c-btn1__txt1 {
        margin: 0 auto; } }
  .c-imgTxt1--style1 {
    margin-top: -1px; }
    .c-imgTxt1--style1 .c-imgTxt1__img {
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1--style1 .c-imgTxt1__img {
          -webkit-box-ordinal-group: 2;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; } }
    .c-imgTxt1--style1 .c-imgTxt1__info {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1;
      margin-left: 0;
      margin-right: 40px;
      max-width: 500px;
      padding-top: 28px; }
      @media only screen and (max-width: 900px) {
        .c-imgTxt1--style1 .c-imgTxt1__info {
          -webkit-box-ordinal-group: 3;
          -webkit-order: 2;
              -ms-flex-order: 2;
                  order: 2;
          margin-right: 0; } }

.c-imgTxt2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0 80px; }
  @media only screen and (max-width: 900px) {
    .c-imgTxt2 {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 0; } }
  .c-imgTxt2__img {
    margin-right: 90px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 294px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt2__img {
        width: 100%;
        text-align: center; } }
    .c-imgTxt2__img img {
      max-width: 100%; }
  .c-imgTxt2__info {
    padding: 20px 0 0; }
  .c-imgTxt2__txt1 {
    font-size: 1.4rem;
    color: #ffffff; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt2__txt1 {
        text-align: center; } }
  .c-imgTxt2__txt2 {
    font-size: 2.6rem;
    font-weight: 300; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt2__txt2 {
        text-align: center; } }
  .c-imgTxt2__txt3 {
    font-size: 1.6rem; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt2__txt3 {
        text-align: center; } }
  .c-imgTxt2__txt4 {
    font-size: 2rem;
    margin: 40px 0 15px; }
  .c-imgTxt2__detail {
    font-size: 1.6rem; }

.imgbox {
  position: relative;
  width: 100%;
  padding-bottom: 40.74%;
  display: block;
  overflow: hidden; }
  .imgbox > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.imgbox52 {
  position: relative;
  width: 100%;
  padding-bottom: 52%;
  display: block;
  overflow: hidden; }
  @media only screen and (max-width: 900px) {
    .imgbox52 {
      padding-bottom: 70%; } }
  .imgbox52 > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.mapbox {
  position: relative;
  width: 100%;
  padding-bottom: 39%;
  display: block;
  overflow: hidden; }
  .mapbox iframe {
    position: absolute;
    width: 100%;
    height: 100%; }

.image__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  width: 100%; }
  .image__container .image__item {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    overflow: hidden;
    position: relative;
    margin-left: -3%;
    max-height: 263px; }
    .image__container .image__item img {
      aspect-ratio: 461 / 263; }
    .image__container .image__item:nth-child(1) img {
      -webkit-clip-path: polygon(0 0, 90% 0, 100% 100%, 0% 100%);
              clip-path: polygon(0 0, 90% 0, 100% 100%, 0% 100%); }
    .image__container .image__item:nth-child(2) img {
      -webkit-clip-path: polygon(0 0, 90% 0, 100% 100%, 10% 100%);
              clip-path: polygon(0 0, 90% 0, 100% 100%, 10% 100%); }
    .image__container .image__item:nth-child(3) img {
      -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%);
              clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%); }

.imgbox__75 {
  position: relative;
  padding-bottom: 75%; }
  .imgbox__75 img {
    position: absolute;
    top: 0;
    left: 0; }

.c-imgTxt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 7.8%; }
  @media only screen and (max-width: 900px) {
    .c-imgTxt {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding-left: 0; } }
  .c-imgTxt + .c-imgTxt {
    margin-top: 50px; }
  .c-imgTxt .c-imgTxt__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .c-imgTxt .c-imgTxt__detail ul {
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt .c-imgTxt__detail ul {
        margin-top: 15px; } }
    .c-imgTxt .c-imgTxt__detail ul li {
      position: relative;
      padding-left: 14px; }
      .c-imgTxt .c-imgTxt__detail ul li:after {
        content: "";
        width: 3px;
        height: 3px;
        border-radius: 50%;
        background: #000;
        position: absolute;
        left: 5px;
        top: 11px; }
        @media only screen and (max-width: 900px) {
          .c-imgTxt .c-imgTxt__detail ul li:after {
            left: 7px; } }
  .c-imgTxt .c-imgTxt__detail p {
    margin-top: 20px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt .c-imgTxt__detail p {
        margin-top: 10px; } }
  .c-imgTxt .c-imgTxt__detail h4 {
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt .c-imgTxt__detail h4 {
        margin-top: 20px; } }
  .c-imgTxt .c-imgTxt__img {
    width: 610px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-left: 60px; }
    @media only screen and (max-width: 900px) {
      .c-imgTxt .c-imgTxt__img {
        width: 100%;
        margin-left: 0;
        margin-top: 20px; } }

/*------------------------------------------------------------
list
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-list1 {
  width: 100%;
  margin: 45px auto; }
  @media only screen and (max-width: 900px) {
    .c-list1 {
      margin: 0; } }
  .c-list1__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 1px dashed #aaaaaa;
    padding: 20px 15px;
    font-weight: 300; }
    @media only screen and (max-width: 900px) {
      .c-list1__item {
        width: 100%;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        padding: 20px 0; } }
  .c-list1__cat {
    font-size: 1.4rem;
    border: 1px solid #707070;
    min-width: 87px;
    padding: 3px 0;
    text-align: center;
    margin-right: 40px;
    cursor: pointer; }
    @media only screen and (max-width: 900px) {
      .c-list1__cat {
        margin-right: unset;
        padding: 4px 0; } }
    .c-list1__cat.infomation {
      background: #a6ae87; }
    .c-list1__cat.blog {
      background: #305d84; }
  .c-list1__date {
    margin-right: 30px; }
  .c-list1__ttl1 {
    cursor: pointer;
    width: 100%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    @media only screen and (max-width: 900px) {
      .c-list1__ttl1 {
        margin-top: 5px; } }
    @media screen and (min-width: 1024px) {
      .c-list1__ttl1:hover {
        text-decoration: underline;
        opacity: 1; } }
  .c-list1__txt {
    text-align: center; }
    .c-list1__txt1 {
      font-weight: 500;
      font-size: 2.4rem;
      color: #000000; }
      @media only screen and (max-width: 900px) {
        .c-list1__txt1 {
          font-size: 2rem; } }
    .c-list1__txt2 {
      font-size: 1.6rem;
      color: #000000;
      line-height: calc(24 / 16); }

/*------------------------------------------------------------
not use
------------------------------------------------------------*/
.c-listimg {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 710px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media only screen and (max-width: 900px) {
    .c-listimg {
      width: 100%; } }
  .c-listimg__item {
    width: 350px; }
    @media only screen and (max-width: 900px) {
      .c-listimg__item {
        width: 49.4%; } }
    .c-listimg__item:nth-of-type(3n) {
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0;
      width: 100%;
      margin-top: 10px; }

.list-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 25px; }
  .list-icon__item a {
    display: block; }
  .list-icon__item:not(:last-child) {
    margin-right: 17px; }

.list-faq {
  padding: 35px 20px; }
  @media only screen and (max-width: 900px) {
    .list-faq {
      padding: 25px 0; } }
  .list-faq:not(:last-child) {
    border-bottom: 1px solid #f2e5cd; }
  .list-faq__ques, .list-faq__ans {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .list-faq__ques .txt, .list-faq__ans .txt {
      padding-top: 5px; }

.list-video {
  display: grid;
  max-width: 990px;
  width: 100%;
  margin: 0 auto;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px 30px; }
  @media only screen and (max-width: 900px) {
    .list-video {
      grid-template-columns: repeat(1, 1fr);
      row-gap: 10px; } }
  .list-video_item {
    height: 270px; }
    .list-video_item iframe {
      width: 100%;
      height: 100%; }

.menu__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -30px -15px 0; }
  @media only screen and (max-width: 900px) {
    .menu__list {
      margin: -20px 0 0; } }
  .menu__list .menu__item {
    width: calc(100% / 3);
    padding: 0 15px;
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .menu__list .menu__item {
        width: 50%;
        padding: 0;
        margin-top: 20px; } }
    @media only screen and (max-width: 900px) {
      .menu__list .menu__item img {
        aspect-ratio: 167/270; } }
    .menu__list .menu__itemDetails {
      margin-top: 15px; }
      @media only screen and (max-width: 900px) {
        .menu__list .menu__itemDetails {
          margin-top: 5px;
          padding-right: 10px; } }
  .menu__list .img__box {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
    @media only screen and (max-width: 900px) {
      .menu__list .img__box {
        -webkit-box-flex: unset;
        -webkit-flex: unset;
            -ms-flex: unset;
                flex: unset; } }
    .menu__list .img__box::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      background-color: rgba(196, 196, 196, 0.7);
      mix-blend-mode: overlay;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
  .menu__list a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%; }
    @media screen and (min-width: 1024px) {
      .menu__list a:hover {
        opacity: 1; }
        .menu__list a:hover .img__box::before {
          background-color: rgba(11, 11, 11, 0.51);
          mix-blend-mode: multiply; } }

.commit__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 -38px; }
  .commit__list .commit__item {
    width: calc(100% / 3);
    padding: 0 38px;
    margin-top: 75px; }
    .commit__list .commit__itemDetails {
      margin-top: 30px; }
    .commit__list .commit__itemDes {
      margin-top: 40px; }

.flow__list span {
  font-weight: bold;
  color: #819F83;
  margin-right: 22px; }

.flow__list a {
  color: #008066; }
  .flow__list a img {
    width: auto; }

.flow__list .c-fCenter__hotline {
  margin-top: 25px;
  height: unset;
  background-color: unset;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .flow__list .c-fCenter__hotline a {
    width: 540px;
    height: 60px; }
  .flow__list .c-fCenter__hotline .c-fCenter__contact span {
    color: #ffffff; }
  .flow__list .c-fCenter__hotline .c-fCenter__contact:hover span {
    color: #333; }
  .flow__list .c-fCenter__hotline .c-fCenter__time {
    margin-top: 20px; }
  .flow__list .c-fCenter__hotline .c-fCenter__timeImg span {
    color: #333; }

.flow__list .wrapper {
  width: 100%; }

.flow__list .flow__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 40px 0; }
  @media only screen and (max-width: 900px) {
    .flow__list .flow__item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 30px 0; } }
  .flow__list .flow__item + .flow__item {
    border-top: 1px dashed #707070; }
  .flow__list .flow__item dl {
    width: 100%; }
    .flow__list .flow__item dl dt {
      font-size: 2.6rem;
      font-weight: 700; }
      @media only screen and (max-width: 900px) {
        .flow__list .flow__item dl dt {
          font-size: 2.2rem; } }
      .flow__list .flow__item dl dt span {
        font-size: 3rem;
        color: #938e8c;
        margin-right: 50px; }
        @media only screen and (max-width: 900px) {
          .flow__list .flow__item dl dt span {
            font-size: 2.2rem;
            margin-right: 27px; } }
    .flow__list .flow__item dl dd {
      margin-top: 20px; }
      .flow__list .flow__item dl dd ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .flow__list .flow__item dl dd ul.alignCenter {
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center; }
        .flow__list .flow__item dl dd ul li + li {
          margin-left: 70px; }
  .flow__list .flow__item .img {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 400px;
    margin-left: 45px; }
    @media only screen and (max-width: 900px) {
      .flow__list .flow__item .img {
        width: 100%;
        margin-left: unset;
        margin-top: 20px; } }
    .flow__list .flow__item .img img {
      -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
              box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }

.gallery__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px; }
  @media only screen and (max-width: 900px) {
    .gallery__list {
      margin-left: unset;
      margin-right: unset; } }
  .gallery__list .gallery__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: calc(100% / 2);
    padding: 0 10px; }
    @media only screen and (max-width: 900px) {
      .gallery__list .gallery__item {
        width: 100%;
        padding: 0; } }
    .gallery__list .gallery__item:nth-child(even) {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
    .gallery__list .gallery__itemImg--avt {
      margin-top: 20px; }
      @media only screen and (max-width: 900px) {
        .gallery__list .gallery__itemImg--avt {
          margin-top: 10px; } }
      .gallery__list .gallery__itemImg--avt img {
        aspect-ratio: 265/429; }
    .gallery__list .gallery__item--img {
      margin-top: 20px; }
      @media only screen and (max-width: 900px) {
        .gallery__list .gallery__item--img {
          margin-top: 10px; } }
      .gallery__list .gallery__item--img img {
        aspect-ratio: 265/164; }

.catfaq__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 30px;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .catfaq__list {
      grid-template-columns: repeat(2, 1fr);
      gap: 20px; } }
  .catfaq__list .catfaq__item {
    width: 100%; }
    .catfaq__list .catfaq__item a {
      display: block;
      width: 100%;
      padding: 16px 10px;
      background-color: #ffffff;
      border-radius: 5px;
      border: 1px solid #333333;
      -webkit-transition: all 0.3s ease 0.1s;
      transition: all 0.3s ease 0.1s; }
      @media only screen and (max-width: 900px) {
        .catfaq__list .catfaq__item a {
          font-size: 1.4rem;
          padding: 14px 10px;
          letter-spacing: -0.1em; } }
      @media screen and (min-width: 1024px) {
        .catfaq__list .catfaq__item a:hover {
          background-color: #444444;
          color: #ffffff;
          opacity: 1; } }

.faq__list .faq__item {
  overflow: hidden; }
  .faq__list .faq__item + .faq__item {
    margin-top: 20px; }
    @media only screen and (max-width: 900px) {
      .faq__list .faq__item + .faq__item {
        margin-top: 15px; } }

.faq__list .faq__ans {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  padding: 20px;
  cursor: pointer;
  position: relative;
  height: 70px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #e3e3e3; }
  @media only screen and (max-width: 900px) {
    .faq__list .faq__ans {
      min-height: 70px;
      height: auto;
      padding: 15px 60px 15px 20px; } }
  .faq__list .faq__ans.is-open i:after {
    -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
            transform: rotate(360deg); }
  .faq__list .faq__ans span {
    font-size: 2.8rem;
    font-weight: 400;
    color: #008066;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 25px;
    width: 27px;
    height: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .faq__list .faq__ans span {
        font-size: 2rem; } }
  .faq__list .faq__ans i {
    width: 20px;
    height: 20px;
    pointer-events: none;
    position: absolute;
    right: 35px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .faq__list .faq__ans i::before,
  .faq__list .faq__ans i:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    background: #008066;
    top: 9px;
    left: 0;
    border-radius: 2px;
    -webkit-transition: 0.3s;
    transition: 0.3s; }
  .faq__list .faq__ans i:after {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }

.faq__list .faq__que {
  display: none;
  border: 1px solid #e3e3e3; }

.faq__list .faq__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 20px;
  height: 70px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 70px; }
  @media only screen and (max-width: 900px) {
    .faq__list .faq__content {
      min-height: 70px;
      height: auto;
      padding: 20px; } }
  .faq__list .faq__content span {
    font-size: 2rem;
    line-height: 1.1;
    font-weight: 700;
    color: #fff;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 25px;
    background: #819F83;
    width: 27px;
    height: 27px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 50%; }

.products__list .products__item {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }
  .products__list .products__item + .products__item {
    margin-top: 50px; }
    @media only screen and (max-width: 900px) {
      .products__list .products__item + .products__item {
        margin-top: 40px; } }
  .products__list .products__item.noimg .products__itemContent {
    width: 100%;
    margin-top: unset; }
    @media only screen and (max-width: 900px) {
      .products__list .products__item.noimg .products__itemContent {
        width: 90%; } }
  .products__list .products__itemImg {
    position: absolute;
    left: 0;
    top: 0;
    width: 75%;
    max-width: 100%;
    z-index: 1; }
    @media only screen and (max-width: 900px) {
      .products__list .products__itemImg {
        width: 100%; } }
    .products__list .products__itemImg img {
      aspect-ratio: 270/167; }
      @media only screen and (max-width: 900px) {
        .products__list .products__itemImg img {
          aspect-ratio: 335/207; } }
  .products__list .products__itemContent {
    background-color: #efefef;
    padding: 50px 60px;
    z-index: 2;
    min-height: 380px;
    width: 55.5%;
    margin-left: auto;
    margin-top: 33%; }
    @media only screen and (max-width: 900px) {
      .products__list .products__itemContent {
        width: 90%;
        margin-right: auto;
        margin-top: 50%;
        padding: 30px; } }
    .products__list .products__itemContent > li + li {
      margin-top: 50px; }
  .products__list .products__itemTop {
    font-size: 2rem;
    font-weight: 700;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 10px;
    border-bottom: 1px solid #707070; }
  .products__list .products__itemPrice {
    text-align: right; }
  .products__list .products__itemBot li {
    margin-top: 20px; }

.closet__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 -10px; }
  .closet__list .closet__item {
    width: calc(100% / 3);
    padding: 0 10px;
    margin-top: 50px; }
    @media only screen and (max-width: 900px) {
      .closet__list .closet__item {
        width: calc(100% / 2);
        margin-top: 30px; } }
    .closet__list .closet__item:hover {
      cursor: pointer; }
      .closet__list .closet__item:hover .closet__img img {
        height: 0;
        opacity: 0; }
      .closet__list .closet__item:hover .closet__img .second-image {
        opacity: 1;
        height: auto; }
  .closet__list .closet__img {
    overflow: hidden;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .closet__list .closet__img::after {
      position: absolute;
      content: "";
      width: 75px;
      height: 30px;
      bottom: 5px;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      background: url("../img/common/stella_2.svg") no-repeat;
      background-size: contain; }
      @media only screen and (max-width: 900px) {
        .closet__list .closet__img::after {
          bottom: 0; } }
    .closet__list .closet__img img {
      aspect-ratio: 255/383;
      opacity: 1; }
    .closet__list .closet__img .second-image {
      opacity: 0;
      height: 0; }
  .closet__list .closet__title {
    text-align: center;
    padding: 10px; }
    .closet__list .closet__title h3 {
      font-weight: 400; }

.campaign__list {
  overflow: hidden;
  margin-left: -10px;
  margin-right: -10px; }
  .campaign__list .campaign__item {
    padding: 0 10px; }
  .campaign__list .campaign__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (min-width: 1024px) {
      .campaign__list .campaign__link:hover {
        opacity: 1; }
        .campaign__list .campaign__link:hover .campaign__img img {
          -webkit-transform: scale(1.05);
              -ms-transform: scale(1.05);
                  transform: scale(1.05); } }
  .campaign__list .campaign__img {
    overflow: hidden; }
    .campaign__list .campaign__img img {
      -webkit-transition: all 0.4s;
      transition: all 0.4s;
      aspect-ratio: 1; }
  .campaign__list .campaign__title {
    margin-top: 10px; }
    .campaign__list .campaign__title h3 {
      font-weight: 500; }
  .campaign__list .slick-slide.slick-current.slick-active {
    -webkit-animation-name: none;
            animation-name: none; }
  .campaign__list .slick-prev,
  .campaign__list .slick-next {
    z-index: 1;
    top: 43%; }
    .campaign__list .slick-prev::before,
    .campaign__list .slick-next::before {
      color: #008066; }
  .campaign__list .slick-prev {
    left: 0; }
  .campaign__list .slick-next {
    right: 0; }

.c-campaign__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 30px; }
  @media only screen and (max-width: 900px) {
    .c-campaign__list {
      grid-template-columns: repeat(2, 1fr);
      gap: 20px; } }
  .c-campaign__list .c-campaign__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (min-width: 1024px) {
      .c-campaign__list .c-campaign__link:hover {
        opacity: 1; }
        .c-campaign__list .c-campaign__link:hover .c-campaign__img img {
          -webkit-transform: scale(1.05);
              -ms-transform: scale(1.05);
                  transform: scale(1.05); } }
  .c-campaign__list .c-campaign__img {
    overflow: hidden;
    outline: 1px solid #e2e2e2;
    position: relative;
    padding-bottom: 100%; }
    .c-campaign__list .c-campaign__img img {
      position: absolute;
      -webkit-transition: all 0.4s;
      transition: all 0.4s;
      aspect-ratio: 1; }
  .c-campaign__list .c-campaign__title {
    margin-top: 15px; }
    .c-campaign__list .c-campaign__title h3 {
      font-weight: 500; }

.reservation__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media only screen and (max-width: 900px) {
    .reservation__list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .reservation__list .reservation__item {
    max-width: 450px;
    width: 100%;
    text-align: center; }
    @media only screen and (max-width: 900px) {
      .reservation__list .reservation__item.reservation__itemLine {
        margin-top: 20px; } }
    @media only screen and (max-width: 900px) {
      .reservation__list .reservation__item.reservation__itemLine .c-fCenter__timeImg {
        padding-left: 10px; } }
    .reservation__list .reservation__item.reservation__itemLine .c-fCenter__timeImg::before {
      width: 28px;
      height: 28px;
      background: url("../img/common/icon_line2.svg") no-repeat;
      background-size: contain; }
      @media only screen and (max-width: 365px) {
        .reservation__list .reservation__item.reservation__itemLine .c-fCenter__timeImg::before {
          left: -20px; } }
  .reservation__list .reservation__ttl {
    font-size: 2.4rem;
    font-weight: 500; }
    @media only screen and (max-width: 900px) {
      .reservation__list .reservation__ttl {
        font-size: 1.8rem; } }
  .reservation__list .reservation__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 10px;
    border-radius: 5px;
    border: 1px solid #333333;
    height: 60px; }
    @media only screen and (max-width: 900px) {
      .reservation__list .reservation__link {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    @media only screen and (max-width: 900px) {
      .reservation__list .reservation__link .c-fCenter__timeNum {
        margin-left: unset; } }
  .reservation__list .reservation__note {
    margin-top: 10px; }

/*------------------------------------------------------------
end not use
------------------------------------------------------------*/
@media only screen and (max-width: 900px) {
  .news-container {
    margin-top: 30px; } }

.news-tabs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 5px; }
  .news-tabs .tab {
    background: #5a5a5a;
    color: #fff;
    border: none;
    padding: 8px 16px;
    min-width: 124px;
    cursor: pointer;
    font-weight: 500; }
    @media only screen and (max-width: 900px) {
      .news-tabs .tab {
        font-size: 1.4rem;
        min-width: -webkit-fit-content;
        min-width: -moz-fit-content;
        min-width: fit-content;
        padding: 6px 7px; } }
    .news-tabs .tab.active {
      background: #fff;
      color: #292929; }

.news-list {
  background-color: #fff;
  padding: 40px; }
  @media only screen and (max-width: 900px) {
    .news-list {
      padding: 20px 10px; } }
  .news-list .news-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
    padding: 20px 0;
    border-bottom: 2px solid #f0f0f0; }
    @media only screen and (max-width: 900px) {
      .news-list .news-item {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        padding: 15px 0;
        gap: 15px; } }
    .news-list .news-item .date {
      color: #8d8d8d; }
    .news-list .news-item .tag {
      padding: 5px 8px;
      color: #fff;
      font-size: 1.4rem;
      min-width: 100px;
      text-align: center; }
      @media only screen and (max-width: 900px) {
        .news-list .news-item .tag {
          font-size: 1.2rem; } }
      .news-list .news-item .tag.blue {
        background: #3c76bd; }
      .news-list .news-item .tag.purple {
        background: #9a66a0; }
      .news-list .news-item .tag.gold {
        background: #bd973c; }
      .news-list .news-item .tag.gray {
        background: #939393; }
    .news-list .news-item .name {
      font-weight: 400; }
      @media only screen and (max-width: 900px) {
        .news-list .news-item .name {
          width: 100%;
          -webkit-flex-shrink: 0;
              -ms-flex-negative: 0;
                  flex-shrink: 0; } }

.business__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  color: #fff;
  margin-top: 50px; }
  @media only screen and (max-width: 900px) {
    .business__list {
      grid-template-columns: repeat(1, 1fr);
      margin-top: 30px; } }
  .business__list .business__item {
    position: relative; }
    @media only screen and (max-width: 900px) {
      .business__list .business__item .imgbox {
        padding-bottom: 60%; } }
  .business__list .business__info {
    position: absolute;
    left: 25px;
    top: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media only screen and (max-width: 900px) {
      .business__list .business__info {
        top: 15px;
        left: 15px; } }
  .business__list .business__title {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    height: 100%;
    margin-bottom: 10px; }
    @media only screen and (max-width: 900px) {
      .business__list .business__title {
        font-size: 1.5rem; } }
  .business__list .business__desc {
    width: 65%; }
    @media only screen and (max-width: 900px) {
      .business__list .business__desc {
        width: 97%; } }
  .business__list .view-all {
    position: absolute;
    right: 25px;
    bottom: 30px; }

.box__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px; }
  @media only screen and (max-width: 900px) {
    .box__list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; } }
  .box__list .box__item {
    position: relative;
    width: 50%; }
    @media only screen and (max-width: 900px) {
      .box__list .box__item {
        max-width: 385px;
        width: 100%; } }
    .box__list .box__item .imgbox52 {
      padding-bottom: 60%; }
      @media only screen and (max-width: 900px) {
        .box__list .box__item .imgbox52 {
          padding-bottom: 75%; } }
  .box__list .box__content {
    position: absolute;
    top: -22px;
    left: 30px;
    width: calc(100% - 30px); }
    @media only screen and (max-width: 900px) {
      .box__list .box__content {
        top: -10px;
        left: 10px;
        width: calc(100% - 10px); } }
  .box__list .box__info {
    padding: 20px 40px 20px 10px;
    min-height: 135px; }
    @media only screen and (max-width: 900px) {
      .box__list .box__info {
        padding: 15px 20px 15px 0;
        min-height: unset; } }
  .box__list .box__link {
    font-size: 3.6rem;
    font-weight: bold;
    color: #008066;
    display: block;
    text-align: center; }
    @media only screen and (max-width: 900px) {
      .box__list .box__link {
        font-size: 2.7rem; } }
  .box__list .box__img {
    position: relative; }

.slogan__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin-top: 50px; }
  @media only screen and (max-width: 900px) {
    .slogan__list {
      gap: 8px;
      margin-top: 20px; } }
  .slogan__list .slogan__item {
    position: relative;
    overflow: hidden;
    max-width: 162px;
    width: 100%;
    -webkit-clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
            clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); }
  .slogan__list .slogan__inner {
    position: relative;
    width: 100%;
    padding-bottom: 87.65%; }
  .slogan__list .slogan__img {
    position: absolute;
    width: 100%;
    height: 100%; }
  .slogan__list .slogan__content {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .slogan__list .slogan__title {
    font-size: 1.8rem; }
    @media only screen and (max-width: 900px) {
      .slogan__list .slogan__title {
        font-size: 1.5rem;
        letter-spacing: -0.07em; } }
  .slogan__list .slogan__subttl {
    font-size: 1.4rem; }
    @media only screen and (max-width: 900px) {
      .slogan__list .slogan__subttl {
        font-size: 1.2rem; } }

.SDGs__list {
  max-width: 865px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  gap: 50px;
  grid-template-columns: repeat(2, 1fr); }
  @media only screen and (max-width: 900px) {
    .SDGs__list {
      gap: 40px; } }
  .SDGs__list .SDGs__item {
    margin-top: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .SDGs__list .SDGs__item {
        margin-top: 20px; } }
  .SDGs__list .SDGs__img {
    width: auto;
    height: 90px; }
    @media only screen and (max-width: 900px) {
      .SDGs__list .SDGs__img {
        height: 111px; } }
    .SDGs__list .SDGs__img img {
      -o-object-fit: cover;
         object-fit: cover; }
      @media only screen and (max-width: 900px) {
        .SDGs__list .SDGs__img img {
          -o-object-fit: contain;
             object-fit: contain; } }
  .SDGs__list .SDGs__title {
    position: relative;
    margin-top: 15px;
    font-size: 1.8rem;
    color: #008066;
    font-weight: bold;
    padding-bottom: 10px;
    text-align: center; }
    @media only screen and (max-width: 900px) {
      .SDGs__list .SDGs__title {
        font-size: 1.5rem; } }
    .SDGs__list .SDGs__title::before {
      position: absolute;
      content: "";
      bottom: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 30px;
      height: 4px;
      background: #008066; }
  .SDGs__list .SDGs__desc {
    margin-top: 15px; }
    @media only screen and (max-width: 900px) {
      .SDGs__list .SDGs__desc {
        letter-spacing: -.06em; } }

.children__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 330px));
  gap: 60px 40px; }
  @media only screen and (max-width: 900px) {
    .children__list {
      gap: 20px;
      grid-template-columns: repeat(2, 1fr); } }
  .children__list a.children__itemLink {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    @media screen and (min-width: 1024px) {
      .children__list a.children__itemLink:hover {
        opacity: 0.7; }
        .children__list a.children__itemLink:hover .children__itemTitle {
          color: #008066; } }
  .children__list .children__imgbox {
    position: relative; }
    .children__list .children__imgbox::before {
      position: absolute;
      content: "";
      background: url("../img/common/bg_texture.jpg") no-repeat;
      background-size: contain;
      width: 100%;
      height: 100%;
      top: 10px;
      left: 10px; }
      @media only screen and (max-width: 900px) {
        .children__list .children__imgbox::before {
          top: 5px;
          left: 5px; } }
  .children__list .children__itemImg {
    position: relative;
    padding-bottom: 75.76%; }
    .children__list .children__itemImg img {
      position: absolute; }
  .children__list .children__itemTitle {
    position: relative;
    margin-top: 30px;
    font-size: 1.8rem;
    font-weight: bold;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease; }
    @media only screen and (max-width: 900px) {
      .children__list .children__itemTitle {
        margin-top: 10px;
        font-size: 1.5rem; } }
    .children__list .children__itemTitle::before {
      content: "";
      display: inline-block;
      width: 0%;
      height: 100%;
      -webkit-transition: width 0.4s ease;
      transition: width 0.4s ease;
      background-color: #cc0000;
      position: absolute;
      left: auto;
      right: 0;
      top: 0; }
    .children__list .children__itemTitle img {
      display: block;
      width: 11px;
      height: 16px;
      margin-left: 20px; }
  .children__list .children__itemDes {
    margin-top: 20px; }
  .children__list .children__itemPrice {
    font-size: 2.4rem;
    font-weight: bold;
    color: #008066; }
    @media only screen and (max-width: 900px) {
      .children__list .children__itemPrice {
        font-size: 1.8rem; } }

.location__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .location__list .location__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .location__list .location__item .table__overview {
      margin-top: 70px; }
      @media only screen and (max-width: 900px) {
        .location__list .location__item .table__overview {
          margin-top: 35px; } }
  .location__list .location__itemBot {
    padding: 0 105px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .location__list .location__itemBot {
        padding: 0;
        margin-top: 25px; } }
  .location__list .location__img {
    position: relative;
    max-width: 343px;
    width: 100%;
    margin-right: 30px; }
    @media only screen and (max-width: 900px) {
      .location__list .location__img {
        margin-right: 15px; } }
    .location__list .location__img img {
      aspect-ratio: 343 / 209; }
  .location__list .location__map {
    width: 100%; }
    .location__list .location__map iframe {
      width: 100%;
      height: 100%; }

.affiliate__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .affiliate__list .affiliate__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0 105px;
    margin-top: 50px; }
    @media only screen and (max-width: 900px) {
      .affiliate__list .affiliate__item {
        margin-top: 20px;
        padding: 0; } }
  .affiliate__list .affiliate__name {
    font-size: 1.8rem;
    font-weight: bold;
    border-left: 4px solid #008066;
    padding: 5px 20px; }
    @media only screen and (max-width: 900px) {
      .affiliate__list .affiliate__name {
        font-size: 1.5rem;
        padding: 3px 10px; } }
  .affiliate__list .affiliate__content {
    margin-top: 25px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 900px) {
      .affiliate__list .affiliate__content {
        margin-top: 15px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; } }
  .affiliate__list .affiliate__img {
    margin-right: 30px;
    max-width: 291px;
    width: 100%; }
    @media only screen and (max-width: 900px) {
      .affiliate__list .affiliate__img {
        margin-right: unset;
        max-width: 480px; } }
    .affiliate__list .affiliate__img img {
      -o-object-fit: contain;
         object-fit: contain; }
  .affiliate__list .affiliate__info {
    width: 100%; }
    @media only screen and (max-width: 900px) {
      .affiliate__list .affiliate__info {
        margin-top: 10px; } }
    .affiliate__list .affiliate__info table {
      width: 100%;
      text-align: left;
      border-collapse: collapse;
      border-spacing: 0;
      line-height: 1.75; }
      .affiliate__list .affiliate__info table tr {
        position: relative;
        border-bottom: 5px solid #fff; }
        .affiliate__list .affiliate__info table tr th {
          padding: 10px 20px;
          width: 27%;
          font-weight: bold;
          vertical-align: top;
          background-color: #f0f0f0;
          font-weight: 400; }
          @media only screen and (max-width: 900px) {
            .affiliate__list .affiliate__info table tr th {
              width: 35%;
              padding: 15px; } }
        .affiliate__list .affiliate__info table tr td {
          padding: 10px 20px; }
          @media only screen and (max-width: 900px) {
            .affiliate__list .affiliate__info table tr td {
              padding: 15px; } }
        .affiliate__list .affiliate__info table tr a {
          display: block;
          color: #008066;
          text-decoration: underline;
          text-underline-offset: 4px; }

.features__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -15px; }
  @media only screen and (max-width: 900px) {
    .features__list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: 0; } }
  .features__list .features__item {
    position: relative;
    margin-top: 50px;
    width: calc(100% / 3);
    margin: 50px 15px 0;
    padding: 20px;
    border: 10px solid #e8e9e9; }
    @media only screen and (max-width: 900px) {
      .features__list .features__item {
        width: 100%;
        border-width: 5px;
        margin: 25px auto 0;
        padding: 10px; } }
  .features__list .features__pointAbs {
    position: absolute;
    width: 80px;
    top: -18px;
    left: 10px;
    background: #fff; }
    @media only screen and (max-width: 900px) {
      .features__list .features__pointAbs {
        top: -13px;
        left: 3px; } }
    .features__list .features__pointAbs span {
      font-size: 1.8rem;
      font-weight: bold;
      background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
      background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-style: italic;
      padding: 0 10px; }
      @media only screen and (max-width: 900px) {
        .features__list .features__pointAbs span {
          font-size: 1.5rem; } }
  .features__list .features__top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 10px; }
  .features__list .features__topText {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .features__list .features__number {
    font-size: 6rem;
    font-weight: bold;
    background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
    background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-style: italic;
    min-width: 80px;
    line-height: 1; }
    @media only screen and (max-width: 900px) {
      .features__list .features__number {
        font-size: 4rem; } }
  .features__list .features__name {
    font-size: 2.4rem;
    font-weight: bold;
    margin-top: 10px;
    line-height: 1.3; }
    @media only screen and (max-width: 900px) {
      .features__list .features__name {
        font-size: 1.8rem; } }
  .features__list .strengths__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 4px; }
    @media only screen and (max-width: 900px) {
      .features__list .strengths__list {
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; } }
    .features__list .strengths__list .strengths__item {
      margin-top: 20px;
      padding: 6px 10px;
      background: #008066;
      color: #fff;
      font-weight: bold;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      @media only screen and (max-width: 900px) {
        .features__list .strengths__list .strengths__item {
          padding: 5px; } }
      .features__list .strengths__list .strengths__item img {
        width: 20px;
        height: auto;
        margin-right: 6px; }
  .features__list .strengths__desc {
    margin-top: 20px; }

.materials__list {
  max-width: 865px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .materials__list .materials__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 30px; }
    @media only screen and (max-width: 900px) {
      .materials__list .materials__item {
        margin-top: 20px;
        display: grid;
        grid-template-columns: repeat(12, 1fr); } }
    .materials__list .materials__item:nth-child(even) .materials__name {
      color: #fff;
      background: url("../img/sales/bg_materials2.png") no-repeat;
      background-size: contain; }
      @media only screen and (max-width: 900px) {
        .materials__list .materials__item:nth-child(even) .materials__name {
          background: url("../img/sales/bg_materials2_sp.png") no-repeat;
          background-size: contain; } }
  .materials__list .materials__name {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 131px;
    height: 122px;
    color: #008066;
    margin-right: 30px;
    background: url("../img/sales/bg_materials1.png") no-repeat;
    background-size: contain; }
    @media only screen and (max-width: 900px) {
      .materials__list .materials__name {
        font-size: 1.5rem;
        margin-right: 10px;
        width: 53px;
        height: 191px;
        background: url("../img/sales/bg_materials1_sp.png") no-repeat;
        background-size: contain; } }
    .materials__list .materials__name h3 {
      margin-right: 7px; }
      @media only screen and (max-width: 900px) {
        .materials__list .materials__name h3 {
          -webkit-writing-mode: vertical-rl;
              -ms-writing-mode: tb-rl;
                  writing-mode: vertical-rl; } }
  @media only screen and (max-width: 900px) {
    .materials__list .materials__desc {
      grid-column: span 10; } }

.tinyhouse__list .tinyhouse__item {
  margin-top: 50px; }

.tinyhouse__list .tinyhouse__box {
  padding: 40px;
  border: 10px solid #e8e8e8; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__box {
      padding: 15px;
      border-width: 5px; } }

.tinyhouse__list .tinyhouse__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__main {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }

.tinyhouse__list .tinyhouse__mainImg {
  max-width: 464px;
  width: 100%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 20px; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__mainImg {
      margin-right: 0; } }

.tinyhouse__list .tinyhouse__contentTop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-bottom: 25px;
  border-bottom: 2px solid #f0f0f0; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__contentTop {
      padding-bottom: 20px;
      margin-top: 10px; } }

.tinyhouse__list .tinyhouse__contentDes {
  padding: 20px 10px; }

.tinyhouse__list .tinyhouse__num {
  font-weight: bold;
  background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
  background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: italic;
  margin-right: 25px; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__num {
      margin-right: 10px; } }
  .tinyhouse__list .tinyhouse__numBig {
    font-size: 6rem;
    line-height: 1;
    min-width: 80px; }
    @media only screen and (max-width: 900px) {
      .tinyhouse__list .tinyhouse__numBig {
        font-size: 4rem;
        min-width: 55px; } }
  .tinyhouse__list .tinyhouse__numSmall {
    font-size: 1.8rem;
    padding: 0 10px; }
    @media only screen and (max-width: 900px) {
      .tinyhouse__list .tinyhouse__numSmall {
        font-size: 1.5rem;
        padding: 0 5px; } }

.tinyhouse__list .tinyhouse__title {
  font-size: 2.4rem;
  font-weight: bold; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__title {
      font-size: 1.8rem; } }

.tinyhouse__list .tinyhouse__gallery {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 35px; }
  @media only screen and (max-width: 900px) {
    .tinyhouse__list .tinyhouse__gallery {
      margin-top: 15px;
      gap: 15px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .tinyhouse__list .tinyhouse__galleryText {
    padding: 15px; }
    @media only screen and (max-width: 900px) {
      .tinyhouse__list .tinyhouse__galleryText {
        padding: 0 10px;
        width: 60%;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0; } }
  .tinyhouse__list .tinyhouse__galleryItem {
    display: block;
    width: calc(100% / 3); }
    @media only screen and (max-width: 900px) {
      .tinyhouse__list .tinyhouse__galleryItem {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%; } }
  .tinyhouse__list .tinyhouse__galleryImg img {
    aspect-ratio: 310 / 235; }
    @media only screen and (max-width: 900px) {
      .tinyhouse__list .tinyhouse__galleryImg img {
        aspect-ratio: 1 / 1; } }

.contact__list {
  max-width: 865px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px; }
  @media only screen and (max-width: 900px) {
    .contact__list {
      max-width: 210px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 25px; } }
  .contact__list .contact__item {
    width: 50%;
    background: -webkit-linear-gradient(2deg, #00e5d9 0%, #008066 100%);
    background: linear-gradient(88deg, #00e5d9 0%, #008066 100%);
    color: #fff;
    min-height: 88px; }
    @media only screen and (max-width: 900px) {
      .contact__list .contact__item {
        width: 100%;
        min-height: 45px; } }
    .contact__list .contact__item.phone {
      background: #fff;
      border: 3px solid #008066;
      color: #008066; }
      .contact__list .contact__item.phone span {
        font-size: 1.8rem; }
        @media only screen and (max-width: 900px) {
          .contact__list .contact__item.phone span {
            font-size: 1.5rem; } }
    .contact__list .contact__itemLink {
      font-size: 2.4rem;
      font-weight: bold;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      height: 100%;
      padding: 10px; }
      @media only screen and (max-width: 900px) {
        .contact__list .contact__itemLink {
          font-size: 1.4rem; } }

.c-youtube__list {
  width: 100%;
  margin: 50px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px; }
  @media only screen and (max-width: 900px) {
    .c-youtube__list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .c-youtube__list .c-youtube__item {
    width: calc((100% / 2) - 10px);
    height: 300px;
    position: relative; }
    @media only screen and (max-width: 900px) {
      .c-youtube__list .c-youtube__item {
        width: 100%; } }
  .c-youtube__list iframe {
    width: 100%;
    height: 100%; }

.image__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 350px));
  gap: 15px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .image__list .image__item img {
    aspect-ratio: 350 / 197;
    -o-object-fit: contain;
       object-fit: contain; }
    @media only screen and (max-width: 900px) {
      .image__list .image__item img {
        display: none; } }
  .image__list .image__item iframe {
    aspect-ratio: 350 / 197;
    width: 100%;
    height: 100%; }

.news__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 330px));
  gap: 45px;
  margin-top: 50px; }
  @media only screen and (max-width: 900px) {
    .news__list {
      grid-template-columns: repeat(auto-fit, minmax(280px, 355px));
      gap: 25px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .news__list .news__link {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (min-width: 1024px) {
      .news__list .news__link:hover {
        opacity: 1; }
        .news__list .news__link:hover .news__imgbox img {
          -webkit-transform: scale(1.1);
              -ms-transform: scale(1.1);
                  transform: scale(1.1); }
        .news__list .news__link:hover .news__title {
          color: #50c9e2; } }
  .news__list .news__imgbox {
    position: relative;
    padding-bottom: 75%;
    overflow: hidden; }
    .news__list .news__imgbox img {
      position: absolute;
      top: 0;
      left: 0;
      -webkit-transition: all 0.4s ease;
      transition: all 0.4s ease; }
  .news__list .news__cat {
    display: inline-block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 4px 16px;
    font-size: 1.4rem;
    font-weight: 500;
    color: #ffffff;
    background: -webkit-gradient(linear, right top, left top, from(#2070bd), to(#50c9e2));
    background: -webkit-linear-gradient(right, #2070bd 0%, #50c9e2 100%);
    background: linear-gradient(to left, #2070bd 0%, #50c9e2 100%);
    margin-left: 10px; }
    @media only screen and (max-width: 900px) {
      .news__list .news__cat {
        font-size: 1.2rem; } }
  .news__list .news__info {
    padding: 12px; }
    @media only screen and (max-width: 900px) {
      .news__list .news__info {
        padding: 8px 0; } }
  .news__list .news__title {
    font-weight: 400;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    margin-top: 15px; }
    @media only screen and (max-width: 900px) {
      .news__list .news__title {
        margin-top: 10px; } }
  .news__list .news__date {
    font-weight: bold; }

.services__list {
  max-width: 985px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px; }
  .services__list .services__item {
    width: calc((100% / 2) - 20px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #f3f3f3;
    padding: 50px;
    margin-top: 40px; }
    @media only screen and (max-width: 900px) {
      .services__list .services__item {
        width: 100%;
        margin-top: 10px;
        padding: 25px 15px; } }
  .services__list .services__img img {
    width: auto; }
  .services__list .services__info {
    margin-left: 20px; }
    @media only screen and (max-width: 900px) {
      .services__list .services__info {
        width: 60%;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0;
        margin-left: auto; } }
  .services__list .services__title {
    font-size: 2.4rem;
    color: #54576a;
    text-align: left;
    line-height: 1; }
    @media only screen and (max-width: 900px) {
      .services__list .services__title {
        font-size: 1.8rem; } }
  .services__list .services__desc {
    margin-top: 15px; }
    @media only screen and (max-width: 900px) {
      .services__list .services__desc {
        margin-top: 10px; } }

.step__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 50px; }
  @media only screen and (max-width: 900px) {
    .step__list {
      padding: 0; } }
  .step__list .step__item {
    position: relative;
    background-color: #f3f3f3;
    margin-top: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 900px) {
      .step__list .step__item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .step__list .step__item + .step__item::before {
      position: absolute;
      content: "";
      background-color: #b5b6be;
      width: 60px;
      height: 50px;
      top: -50px;
      left: 60px; }
      @media only screen and (max-width: 900px) {
        .step__list .step__item + .step__item::before {
          left: 50%;
          -webkit-transform: translateX(-50%);
              -ms-transform: translateX(-50%);
                  transform: translateX(-50%); } }
  .step__list .step__content {
    width: 100%;
    padding: 30px 30px 30px 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media only screen and (max-width: 900px) {
      .step__list .step__content {
        padding: 25px; } }
  .step__list .step__ttl {
    color: #011d59;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media only screen and (max-width: 900px) {
      .step__list .step__ttl {
        font-size: 1.8rem; } }
    .step__list .step__ttl span {
      margin-right: 10px; }
  .step__list .step__description {
    margin-top: 20px; }
    @media only screen and (max-width: 900px) {
      .step__list .step__description {
        margin-top: 10px; } }
  .step__list .step__img {
    width: 370px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
    @media only screen and (max-width: 900px) {
      .step__list .step__img {
        width: 100%; } }

/*------------------------------------------------------------
table
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.table__overview {
  padding: 0 50px;
  margin-top: 50px; }
  @media only screen and (max-width: 900px) {
    .table__overview {
      padding: 0;
      margin-top: 20px; } }
  .table__overview table {
    width: 100%;
    text-align: left;
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 1.75; }
    .table__overview table tr {
      position: relative; }
      .table__overview table tr th {
        padding: 30px;
        width: 20%;
        font-weight: bold;
        color: #b6b7bf;
        vertical-align: top;
        border-bottom: 1px solid #b6b7bf; }
        @media only screen and (max-width: 900px) {
          .table__overview table tr th {
            width: 25%;
            padding: 10px;
            vertical-align: middle; } }
      .table__overview table tr td {
        padding: 30px;
        border-bottom: 1px solid #b6b7bf; }
        @media only screen and (max-width: 900px) {
          .table__overview table tr td {
            padding: 15px; } }
        .table__overview table tr td ul li {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex; }
      .table__overview table tr a {
        display: block;
        color: #008066;
        text-decoration: underline;
        text-underline-offset: 4px; }

.table__equipment {
  max-width: 865px;
  width: 100%;
  margin: 50px auto 0;
  overflow-x: auto; }
  .table__equipment table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed; }
    .table__equipment table thead tr th {
      width: 43%; }
      .table__equipment table thead tr th:last-child {
        width: 14%;
        text-align: center; }
        @media only screen and (max-width: 900px) {
          .table__equipment table thead tr th:last-child {
            width: 20%; } }
    .table__equipment table th {
      background-color: #8d8d8d;
      color: #ffffff;
      text-align: left;
      padding: 20px;
      font-weight: 400;
      outline: 2px solid #fff; }
      @media only screen and (max-width: 900px) {
        .table__equipment table th {
          padding: 8px; } }
    .table__equipment table td {
      padding: 20px;
      background-color: #f0f0f0;
      outline: 2px solid #fff; }
      @media only screen and (max-width: 900px) {
        .table__equipment table td {
          padding: 8px; } }
      .table__equipment table td:last-child {
        text-align: center; }
    .table__equipment table tr:last-child td {
      border-bottom: none; }

/*------------------------------------------------------------
line
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
video
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
video
------------------------------------------------------------*/
.slick-slide.slick-current.slick-active {
  -webkit-animation: none;
          animation: none; }

/*
------------------------------------------------------------*/
/*------------------------------------------------------------
simply
------------------------------------------------------------*/
.simply-scroll-container {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 50px; }
  @media only screen and (max-width: 900px) {
    .simply-scroll-container {
      margin-bottom: 0; } }
  .simply-scroll-container .simply-scroll-clip {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto; }
  .simply-scroll-container .simply-scroll-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
    height: 400px; }
    @media only screen and (max-width: 900px) {
      .simply-scroll-container .simply-scroll-list {
        height: 223px; } }
    .simply-scroll-container .simply-scroll-list li {
      float: left;
      width: 300px;
      height: 400px;
      margin: 0;
      padding: 0 13px; }
      @media only screen and (max-width: 900px) {
        .simply-scroll-container .simply-scroll-list li {
          width: 167px;
          height: 223px;
          padding: 0 0.75rem; } }
      .simply-scroll-container .simply-scroll-list li a {
        overflow: hidden;
        display: block;
        height: 100%;
        -webkit-transition: 0.4s;
        transition: 0.4s; }
      .simply-scroll-container .simply-scroll-list li img {
        height: 100%;
        -webkit-transition: 0.4s;
        transition: 0.4s; }

/*
------------------------------------------------------------*/
.slider-example {
  margin: 30px auto 0;
  width: 100%;
  position: relative;
  overflow-x: hidden; }
  .slider-example .slider-example__item {
    background: #ffffff;
    -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    margin: 20px 10px;
    max-width: 400px;
    width: 100%; }
    @media only screen and (max-width: 900px) {
      .slider-example .slider-example__item {
        max-width: 245px; } }
    .slider-example .slider-example__item .slider-example__image {
      position: relative;
      padding-bottom: 75%; }
      .slider-example .slider-example__item .slider-example__image img {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px; }
    .slider-example .slider-example__item .slider-example__content {
      padding: 30px; }
      @media only screen and (max-width: 900px) {
        .slider-example .slider-example__item .slider-example__content {
          padding: 15px; } }
      .slider-example .slider-example__item .slider-example__content .slider-example__name {
        position: relative;
        color: #008066;
        font-weight: bold;
        padding-bottom: 10px;
        font-size: 1.8rem;
        text-align: center; }
        @media only screen and (max-width: 900px) {
          .slider-example .slider-example__item .slider-example__content .slider-example__name {
            font-size: 1.5rem; } }
        .slider-example .slider-example__item .slider-example__content .slider-example__name::before {
          position: absolute;
          content: "";
          width: 30px;
          height: 4px;
          background: #008066;
          bottom: 0;
          left: 50%;
          -webkit-transform: translateX(-50%);
              -ms-transform: translateX(-50%);
                  transform: translateX(-50%); }
      .slider-example .slider-example__item .slider-example__content .slider-example__desc {
        margin-top: 15px; }
  .slider-example .slick-slide.slick-current.slick-active {
    -webkit-animation: none;
            animation: none; }

.slick-prev, .slick-next {
  width: 50px;
  height: 50px;
  z-index: 1000; }

.slick-prev {
  left: 100px; }
  @media only screen and (max-width: 900px) {
    .slick-prev {
      left: 10px; } }

.slick-next {
  right: 100px; }
  @media only screen and (max-width: 900px) {
    .slick-next {
      right: 10px; } }

.slick-prev:before, .slick-next:before {
  color: #008066;
  font-size: 50px;
  opacity: 1; }

/* 要素のMoveUp + フェードイン */
.MoveUp {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
      -ms-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1); }
  @media only screen and (max-width: 900px) {
    .MoveUp.only_pc {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0);
      opacity: 1;
      -webkit-transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1); } }

.MoveUpDone {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.Blur {
  -webkit-transition: opacity 400ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-filter 1000ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 400ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-filter 1000ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 400ms cubic-bezier(0.19, 1, 0.22, 1), filter 1000ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 400ms cubic-bezier(0.19, 1, 0.22, 1), filter 1000ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-filter 1000ms cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0;
  -webkit-filter: blur(20px);
          filter: blur(20px); }

.BlurDone {
  opacity: 1;
  -webkit-filter: blur(0px);
          filter: blur(0px); }

/* 要素のMoveRight + フェードイン */
.MoveRight {
  opacity: 0;
  -webkit-transform: translate(-50px, 0);
      -ms-transform: translate(-50px, 0);
          transform: translate(-50px, 0);
  -webkit-transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1); }
  @media only screen and (max-width: 900px) {
    .MoveRight.only_pc {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0);
      opacity: 1;
      -webkit-transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1); } }

.MoveRightDone {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

/* 要素のMoveLeft + フェードイン */
.MoveLeft {
  opacity: 0;
  -webkit-transform: translate(50px, 0);
      -ms-transform: translate(50px, 0);
          transform: translate(50px, 0);
  -webkit-transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1900ms cubic-bezier(0.19, 1, 0.22, 1), opacity 1900ms cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1900ms cubic-bezier(0.19, 1, 0.22, 1); }
  @media only screen and (max-width: 900px) {
    .MoveLeft.only_pc {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0);
      opacity: 1;
      -webkit-transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1), opacity 0s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0s cubic-bezier(0.19, 1, 0.22, 1); } }

.MoveLeftDone {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

/* 要素の回転 */
.RotationContent {
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: -webkit-transform 1500ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: -webkit-transform 1500ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: transform 1500ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: transform 1500ms cubic-bezier(0.36, 0.1, 0.16, 1), -webkit-transform 1500ms cubic-bezier(0.36, 0.1, 0.16, 1);
  -webkit-transition-delay: 150ms;
          transition-delay: 150ms; }

.RotationContentDone {
  -webkit-transform: rotate(360deg);
      -ms-transform: rotate(360deg);
          transform: rotate(360deg); }

/* 要素の3D回転 */
.Rotation3dContent {
  -webkit-transform: rotateY(0deg);
          transform: rotateY(0deg);
  -webkit-transition: -webkit-transform 1s ease;
  transition: -webkit-transform 1s ease;
  transition: transform 1s ease;
  transition: transform 1s ease, -webkit-transform 1s ease; }

.Rotation3dContentDone {
  -webkit-transform: rotateY(360deg);
          transform: rotateY(360deg); }

/* ズームイン表示 */
.ZoominContent {
  -webkit-transform: scale(0, 0);
      -ms-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transition: -webkit-transform .5s ease;
  transition: -webkit-transform .5s ease;
  transition: transform .5s ease;
  transition: transform .5s ease, -webkit-transform .5s ease; }

.ZoominContentDone {
  -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
          transform: scale(1, 1); }

/*フェードイン表示*/
.FadeIn {
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease; }

.FadeInDone {
  opacity: 1.0; }

.CoverInview {
  position: relative; }

.CoverInview::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  background: #008066;
  position: absolute;
  -webkit-transition: width 860ms 100ms ease;
  transition: width 860ms 100ms ease;
  z-index: 3000; }

.CoverInviewBK::after {
  background: #000; }

.CoverInviewDone::after {
  width: 0%; }

.CoverInviewGray {
  position: relative;
  overflow: hidden; }
  .CoverInviewGray img {
    -webkit-transition: opacity, -webkit-transform, -webkit-filter;
    transition: opacity, -webkit-transform, -webkit-filter;
    transition: transform, opacity, filter;
    transition: transform, opacity, filter, -webkit-transform, -webkit-filter;
    -webkit-transform: scale(1.08);
        -ms-transform: scale(1.08);
            transform: scale(1.08);
    opacity: 0;
    -webkit-filter: brightness(1.8);
            filter: brightness(1.8);
    will-change: transform; }

.CoverInviewGrayDone img {
  -webkit-transition-delay: 800ms;
          transition-delay: 800ms;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-duration: 850ms;
          transition-duration: 850ms;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1;
  -webkit-filter: brightness(1);
          filter: brightness(1); }

.CoverInviewGray::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #008066;
  position: absolute;
  z-index: 9;
  -webkit-transform: translate(-105%);
      -ms-transform: translate(-105%);
          transform: translate(-105%); }

.CoverInviewGray::before {
  -webkit-transition: all 1400ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 1400ms cubic-bezier(0.165, 0.84, 0.44, 1); }

.CoverInviewGrayBK::after {
  background: #000; }

.CoverInviewGrayDone::after {
  -webkit-animation: CoverWrap 1400ms cubic-bezier(0.165, 0.84, 0.44, 1);
          animation: CoverWrap 1400ms cubic-bezier(0.165, 0.84, 0.44, 1); }

.CoverInviewGrayDone::before {
  width: 100%; }

.Delay100ms {
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms; }

.Delay150ms {
  -webkit-transition-delay: 150ms;
          transition-delay: 150ms; }

.Delay200ms {
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms; }

.Delay300ms {
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms; }

.Delay400ms {
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms; }

.Delay450ms {
  -webkit-transition-delay: 450ms;
          transition-delay: 450ms; }

.Delay500ms {
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms; }

.Delay600ms {
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms; }

.Delay700ms {
  -webkit-transition-delay: 700ms;
          transition-delay: 700ms; }

.Delay750ms {
  -webkit-transition-delay: 750ms;
          transition-delay: 750ms; }

.Delay800ms {
  -webkit-transition-delay: 800ms;
          transition-delay: 800ms; }

.Delay900ms {
  -webkit-transition-delay: 900ms;
          transition-delay: 900ms; }

.Delay1000ms {
  -webkit-transition-delay: 1000ms;
          transition-delay: 1000ms; }

.Delay1100ms {
  -webkit-transition-delay: 1100ms;
          transition-delay: 1100ms; }

.Delay1200ms {
  -webkit-transition-delay: 1200ms;
          transition-delay: 1200ms; }

.Delay1300ms {
  -webkit-transition-delay: 1300ms;
          transition-delay: 1300ms; }

.Delay1400ms {
  -webkit-transition-delay: 1400ms;
          transition-delay: 1400ms; }

.Delay1500ms {
  -webkit-transition-delay: 1500ms;
          transition-delay: 1500ms; }

.Delay1600ms {
  -webkit-transition-delay: 1600ms;
          transition-delay: 1600ms; }

.Delay1700ms {
  -webkit-transition-delay: 1700ms;
          transition-delay: 1700ms; }

.Delay1800ms {
  -webkit-transition-delay: 1800ms;
          transition-delay: 1800ms; }

.Delay1900ms {
  -webkit-transition-delay: 1900ms;
          transition-delay: 1900ms; }

.Delay2000ms {
  -webkit-transition-delay: 2000ms;
          transition-delay: 2000ms; }

@-webkit-keyframes CoverWrap {
  0% {
    -webkit-transform: translate(-105%);
            transform: translate(-105%); }
  50% {
    -webkit-transform: translate(0);
            transform: translate(0); }
  100% {
    -webkit-transform: translate(105%);
            transform: translate(105%); } }

@keyframes CoverWrap {
  0% {
    -webkit-transform: translate(-105%);
            transform: translate(-105%); }
  50% {
    -webkit-transform: translate(0);
            transform: translate(0); }
  100% {
    -webkit-transform: translate(105%);
            transform: translate(105%); } }

#preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1000000;
  -webkit-transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
  transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
  top: 0;
  left: 0; }

#preloader-logo {
  width: 120px;
  opacity: 1;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out; }

.circle-border {
  width: 150px;
  height: 150px;
  padding: 3px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(33%, rgba(63, 249, 220, 0.1)), to(#008066));
  background: -webkit-linear-gradient(bottom, rgba(63, 249, 220, 0.1) 33%, #008066 100%);
  background: linear-gradient(0deg, rgba(63, 249, 220, 0.1) 33%, #008066 100%);
  -webkit-animation: spin .8s linear 0s infinite;
          animation: spin .8s linear 0s infinite; }
  @media only screen and (max-width: 900px) {
    .circle-border {
      width: 100px;
      height: 100px; } }

.circle-core {
  width: 100%;
  height: 100%;
  background-color: #fff;
  border-radius: 50%; }

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes spin {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.is-moveup, .is-fadein {
  opacity: 0; }

.char {
  display: inline-block;
  -webkit-transform: translateY(100px);
      -ms-transform: translateY(100px);
          transform: translateY(100px);
  -webkit-transition: all 1s;
  transition: all 1s; }

.is-moveup.active .char {
  -webkit-animation: moveUpChar 1s ease forwards;
          animation: moveUpChar 1s ease forwards; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes moveUpChar {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes moveUpChar {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.is-moveup.active {
  opacity: 1; }

.is-fadein.active {
  -webkit-animation: fadeIn .3s ease forwards;
          animation: fadeIn .3s ease forwards; }

/*------------------------------------------------------------
other
------------------------------------------------------------*/
.c-mvSliderTop {
  position: relative;
  width: 100%; }
  .c-mvSliderTop__inner {
    width: 100%;
    min-height: 550px;
    height: 100vh; }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop__inner {
        min-height: unset;
        height: 225px; } }
  .c-mvSliderTop__image {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
  .c-mvSliderTop__text {
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    top: 50%;
    left: 100px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff; }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop__text {
        left: 10px; } }
    .c-mvSliderTop__text h1 {
      font-size: 4.8rem;
      padding: 10px;
      line-height: 1;
      font-weight: 900;
      overflow: hidden;
      background: -webkit-gradient(linear, right top, left top, from(#2070bd), to(#50c9e2));
      background: -webkit-linear-gradient(right, #2070bd 0%, #50c9e2 100%);
      background: linear-gradient(to left, #2070bd 0%, #50c9e2 100%);
      -webkit-background-clip: text;
              background-clip: text;
      color: transparent; }
      @media only screen and (max-width: 900px) {
        .c-mvSliderTop__text h1 {
          font-size: 4rem;
          padding: 10px 0; } }
    .c-mvSliderTop__text p {
      font-size: 3rem;
      font-weight: bold;
      line-height: 1.2;
      padding: 10px; }
      @media only screen and (max-width: 900px) {
        .c-mvSliderTop__text p {
          font-size: 1.5rem;
          padding: 5px 0; } }
  .c-mvSliderTop__ttl1 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 3.6rem;
    font-weight: 400;
    line-height: calc(48 / 36);
    text-align: left;
    margin-bottom: 10px; }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop__ttl1 {
        font-size: 3rem;
        line-height: calc(72 / 60); } }
  .c-mvSliderTop__ttl2 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: calc(36 / 24);
    margin-bottom: 15px; }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop__ttl2 {
        font-size: 1.8rem;
        margin-bottom: 10px;
        line-height: calc(48 / 33); } }
    .c-mvSliderTop__ttl2 span {
      background: #fff; }
  .c-mvSliderTop__ttl3 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 1.6rem;
    font-weight: 400;
    color: #393939;
    line-height: calc(24 / 16); }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop__ttl3 {
        font-size: 1.4rem;
        text-shadow: 0 0 10px rgba(244, 242, 230, 0.7);
        line-height: calc(36 / 28); } }
  .c-mvSliderTop__item {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%; }
  .c-mvSliderTop .slick-dots {
    bottom: 15px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media only screen and (max-width: 900px) {
      .c-mvSliderTop .slick-dots {
        bottom: 10px; } }
    .c-mvSliderTop .slick-dots li {
      width: auto;
      height: auto;
      margin: 0 10px; }
      .c-mvSliderTop .slick-dots li button {
        width: 10px;
        height: 10px;
        padding: 0;
        background: #fff;
        border-radius: 50%; }
        .c-mvSliderTop .slick-dots li button:before {
          content: none; }
        .c-mvSliderTop .slick-dots li button:hover {
          opacity: 0.7; }
    .c-mvSliderTop .slick-dots .slick-active button {
      background: #008066; }
  .c-mvSliderTop .btnLink {
    position: absolute;
    right: 100px;
    top: calc(100% - 25px);
    z-index: 1; }

.c-mvPage {
  position: relative;
  width: 100%; }
  .c-mvPage__inner {
    width: 100%;
    max-height: 400px;
    height: 100vh; }
    @media only screen and (max-width: 900px) {
      .c-mvPage__inner {
        min-height: unset;
        height: 175px; } }
  .c-mvPage__image {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }
  .c-mvPage__text {
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    top: 50%;
    left: 100px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff; }
    @media only screen and (max-width: 900px) {
      .c-mvPage__text {
        left: 10px; } }
    .c-mvPage__text p {
      font-size: 6rem;
      padding: 10px;
      line-height: 1;
      font-weight: 900;
      overflow: hidden; }
      @media only screen and (max-width: 900px) {
        .c-mvPage__text p {
          font-size: 4rem;
          padding: 10px 0; } }
    .c-mvPage__text h1 {
      font-size: 1.8rem;
      font-weight: bold;
      line-height: 1.2;
      padding: 10px; }
      @media only screen and (max-width: 900px) {
        .c-mvPage__text h1 {
          font-size: 1.5rem;
          padding: 5px 0; } }
  .c-mvPage__ttl1 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 3.6rem;
    font-weight: 400;
    line-height: calc(48 / 36);
    text-align: left;
    margin-bottom: 10px; }
    @media only screen and (max-width: 900px) {
      .c-mvPage__ttl1 {
        font-size: 3rem;
        line-height: calc(72 / 60); } }
  .c-mvPage__ttl2 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: calc(36 / 24);
    margin-bottom: 15px; }
    @media only screen and (max-width: 900px) {
      .c-mvPage__ttl2 {
        font-size: 1.8rem;
        margin-bottom: 10px;
        line-height: calc(48 / 33); } }
    .c-mvPage__ttl2 span {
      background: #fff; }
  .c-mvPage__ttl3 {
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 400;
    font-size: 1.6rem;
    font-weight: 400;
    color: #393939;
    line-height: calc(24 / 16); }
    @media only screen and (max-width: 900px) {
      .c-mvPage__ttl3 {
        font-size: 1.4rem;
        text-shadow: 0 0 10px rgba(244, 242, 230, 0.7);
        line-height: calc(36 / 28); } }
  .c-mvPage__item {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%; }
  .c-mvPage .slick-dots {
    bottom: 15px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media only screen and (max-width: 900px) {
      .c-mvPage .slick-dots {
        bottom: 10px; } }
    .c-mvPage .slick-dots li {
      width: auto;
      height: auto;
      margin: 0 10px; }
      .c-mvPage .slick-dots li button {
        width: 10px;
        height: 10px;
        padding: 0;
        background: #fff;
        border-radius: 50%; }
        .c-mvPage .slick-dots li button:before {
          content: none; }
        .c-mvPage .slick-dots li button:hover {
          opacity: 0.7; }
    .c-mvPage .slick-dots .slick-active button {
      background: #008066; }
  .c-mvPage .btnLink {
    position: absolute;
    right: 100px;
    top: calc(100% - 25px);
    z-index: 1; }

.wp-pagenavi {
  text-align: center;
  margin: 75px 0 0; }
  @media only screen and (max-width: 900px) {
    .wp-pagenavi {
      margin: 30px 0 0; } }
  .wp-pagenavi .page,
  .wp-pagenavi .current {
    padding: 5px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    background: #f3f3f3;
    text-decoration: none;
    -webkit-transition: all 0.15s ease;
    transition: all 0.15s ease;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 10px 0 10px;
    min-width: 40px;
    min-height: 40px; }
    @media only screen and (max-width: 900px) {
      .wp-pagenavi .page,
      .wp-pagenavi .current {
        margin: 5px; } }
    @media screen and (min-width: 1024px) {
      .wp-pagenavi .page:hover,
      .wp-pagenavi .current:hover {
        opacity: 1;
        color: #fff; } }
  @media screen and (min-width: 1024px) {
    .wp-pagenavi .page:hover {
      background: #b5b6be; } }
  .wp-pagenavi .current {
    color: #fff;
    background: #b5b6be; }
  .wp-pagenavi a {
    text-decoration: none; }
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    position: relative;
    text-decoration: none;
    padding: 5px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-transition: all 0.15s ease;
    transition: all 0.15s ease;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 10px 0 10px;
    min-width: 40px;
    min-height: 40px;
    color: #b5b6be;
    font-family: bold; }
    @media screen and (min-width: 1024px) {
      .wp-pagenavi .previouspostslink:hover,
      .wp-pagenavi .nextpostslink:hover {
        text-decoration: none; } }
    .wp-pagenavi .previouspostslink:hover,
    .wp-pagenavi .nextpostslink:hover {
      opacity: 1; }

.c-contact {
  max-width: 700px;
  width: 100%;
  border-radius: 3px;
  margin: 80px auto;
  border-radius: 3px;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
  @media only screen and (max-width: 900px) {
    .c-contact {
      width: calc(100% - 40px);
      margin: 50px auto; } }
  .c-contact ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 900px) {
      .c-contact ul {
        display: block; } }
  .c-contact__item a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    color: #fff;
    font-size: 2rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 78px;
    background: #ffffff;
    -webkit-transition: 0.15s;
    transition: 0.15s;
    border: 1px solid #ffffff; }
    @media only screen and (max-width: 900px) {
      .c-contact__item a {
        height: 70px;
        font-size: 1.8rem; } }
    @media screen and (min-width: 1024px) {
      .c-contact__item a:hover {
        background: #fff;
        color: #ffffff;
        opacity: 1; } }
    .c-contact__item a span {
      position: relative; }
      .c-contact__item a span:nth-child(1):after {
        content: "";
        position: absolute;
        background: #fff;
        width: 1px;
        height: 36px;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
        @media only screen and (max-width: 900px) {
          .c-contact__item a span:nth-child(1):after {
            width: 242px;
            height: 1px;
            bottom: 0;
            top: auto;
            left: 50%;
            -webkit-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                    transform: translateX(-50%); } }

.c-boxTxt1__info {
  font-size: 1.6rem;
  color: #ffffff; }
  .c-boxTxt1__info.center {
    display: table;
    margin: 0 auto; }

.c-boxTxt1 .c-ttl2 {
  margin-bottom: 35px; }
  @media only screen and (max-width: 900px) {
    .c-boxTxt1 .c-ttl2 {
      margin-bottom: 15px; } }

.c-map {
  height: 470px; }
  @media only screen and (max-width: 900px) {
    .c-map {
      height: 321px; } }
  .c-map iframe {
    height: 100%;
    width: 100%; }

.c-inqui {
  margin: 50px auto 0; }
  @media only screen and (max-width: 900px) {
    .c-inqui {
      margin: 30px auto 0;
      padding: 20px; } }
  .c-inqui__content {
    background-color: #ffffff;
    margin: 0 auto;
    -webkit-align-self: center;
        -ms-flex-item-align: center;
            align-self: center;
    max-width: 470px;
    text-align: center;
    padding: 0 0 30px;
    border: 1px solid #b5b6be; }
    @media only screen and (max-width: 900px) {
      .c-inqui__content {
        padding: 0 0 15px; } }
  .c-inqui__ttl {
    font-size: 1.8rem;
    font-weight: bold;
    background-color: #b5b6be;
    color: #ffffff;
    line-height: 1;
    padding: 10px; }
  .c-inqui__txt1 {
    font-size: 4rem;
    font-weight: 700;
    margin: 20px 0; }
    @media only screen and (max-width: 900px) {
      .c-inqui__txt1 {
        font-size: 2.4rem;
        margin: 15px 0;
        line-height: 1; } }
    .c-inqui__txt1 a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: inherit;
      text-decoration: none; }
      .c-inqui__txt1 a img {
        width: 32px;
        margin-right: 10px; }
        @media only screen and (max-width: 900px) {
          .c-inqui__txt1 a img {
            width: 17px; } }
      @media screen and (min-width: 1024px) {
        .c-inqui__txt1 a:hover {
          opacity: .7; } }

.c-totop {
  position: fixed;
  bottom: 50px;
  right: 30px;
  cursor: pointer;
  z-index: 1;
  width: 43px;
  height: 43px;
  background: -webkit-gradient(linear, right top, left top, from(#2070bd), to(#50c9e2));
  background: -webkit-linear-gradient(right, #2070bd 0%, #50c9e2 100%);
  background: linear-gradient(to left, #2070bd 0%, #50c9e2 100%);
  border-radius: 50%; }
  @media only screen and (max-width: 900px) {
    .c-totop {
      bottom: 76px;
      right: 20px;
      width: 24px;
      height: 24px; } }
  .c-totop:before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    border-left: 3px solid #ffffff;
    border-top: 3px solid #ffffff;
    border-radius: 2px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 17px;
    left: 15px; }
    @media only screen and (max-width: 900px) {
      .c-totop:before {
        border-left: 2px solid #ffffff;
        border-top: 2px solid #ffffff;
        width: 8px;
        height: 8px;
        top: 10px;
        left: 7px; } }

.u-linktd {
  text-decoration: underline;
  text-underline-offset: 5px; }
  @media only screen and (max-width: 900px) {
    .u-linktd {
      text-underline-offset: 2px; } }

.c-slickitem {
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  margin-right: 20px;
  width: 400px; }
  @media only screen and (max-width: 900px) {
    .c-slickitem {
      width: 335px; } }
  @media only screen and (max-width: 350px) {
    .c-slickitem {
      width: 280px; } }
  .c-slickitem img {
    width: 100%; }

.c-plan {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 40px; }
  @media only screen and (max-width: 900px) {
    .c-plan {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; } }
  .c-plan__item {
    max-width: 495px;
    width: calc((100% - 90px) / 2);
    border-radius: 15px;
    border: 3px solid #4F4F4F;
    padding: 20px 50px; }
    @media only screen and (max-width: 900px) {
      .c-plan__item {
        width: 100%;
        padding: 20px 30px; } }
    @media only screen and (max-width: 900px) {
      .c-plan__item:first-of-type {
        margin-bottom: 55px; } }
    .c-plan__item ul li {
      position: relative;
      padding-left: 30px;
      margin-bottom: 10px; }
      .c-plan__item ul li::before {
        content: "";
        position: absolute;
        border: 4px solid #4F4F4F;
        height: 5px;
        border-radius: 50%;
        width: 5px;
        top: 6px;
        left: 0; }
      .c-plan__item ul li a {
        font-size: 1.6rem;
        font-weight: 700;
        line-height: calc(24 / 16); }
    .c-plan__item ul p {
      font-size: 1.6rem;
      font-weight: 500;
      line-height: calc(24 / 16);
      margin-top: 10px; }
  .c-plan__title {
    font-size: 3rem;
    font-weight: 700;
    line-height: calc(44 / 30);
    color: #4F4F4F;
    text-align: center;
    margin-bottom: 30px; }
  .c-plan__sub {
    font-size: 1.6rem;
    line-height: calc(24 / 16);
    color: #000000;
    margin-bottom: 15px; }
  .c-plan__price {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    position: relative;
    line-height: calc(35 / 24);
    margin-bottom: 35px; }
    .c-plan__price::before {
      content: "";
      position: absolute;
      background: rgba(248, 214, 72, 0.3);
      width: 240px;
      height: 20px;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      bottom: -15px;
      left: 50%; }
  .c-planbonus {
    padding-left: 55px; }
    @media only screen and (max-width: 900px) {
      .c-planbonus {
        padding-left: 0; } }
    .c-planbonus__title {
      font-size: 2.4rem;
      font-weight: 400;
      min-width: 291px;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      line-height: calc(35 / 24);
      color: #000000;
      position: relative;
      padding-left: 20px;
      border-bottom: 1px solid #4F4F4F;
      margin-bottom: 22px; }
      .c-planbonus__title::before {
        content: "";
        position: absolute;
        width: 5px;
        height: 29px;
        background: #4F4F4F;
        left: 0;
        top: 6px; }
    .c-planbonus__sub {
      font-size: 1.6rem;
      line-height: calc(24 / 16);
      color: #333;
      margin-bottom: 15px; }

.slick-list {
  overflow: visible; }

.c-content {
  padding-left: 15px;
  width: 470px; }
  @media only screen and (max-width: 900px) {
    .c-content {
      width: 100%;
      padding-left: 0;
      margin-bottom: 25px; } }

.wrapper-content {
  max-width: 640px;
  width: 100%;
  margin: 30px auto 0; }
  @media only screen and (max-width: 900px) {
    .wrapper-content {
      margin: 15px auto 0;
      text-align: left; } }

.map iframe {
  width: 100%;
  height: 360px;
  margin-top: 40px;
  margin-bottom: 40px; }
  @media only screen and (max-width: 900px) {
    .map iframe {
      margin-top: 25px;
      margin-bottom: 25px; } }

/*------------------------------------------------------------
404
------------------------------------------------------------*/
.p-page404 {
  background: #fff; }
  .p-page4041 {
    max-width: 704px;
    margin: 0 auto; }
    @media only screen and (max-width: 900px) {
      .p-page4041 {
        max-width: 480px;
        width: 100%; } }
    .p-page4041 .c-text1 {
      color: #222;
      width: 100%;
      margin: 30px auto; }
  .p-page404 .c-btn1 {
    outline: 2px solid #f0f0f0; }

/*------------------------------------------------------------
Company
------------------------------------------------------------*/
.greeting__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 900px) {
    .greeting__wrapper {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .greeting__wrapper .greeting__description p {
    margin-top: 5px; }
  .greeting__wrapper .greeting__description h3 {
    margin-top: 20px; }
  .greeting__wrapper .greeting__image {
    width: 470px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-left: 60px; }
    @media only screen and (max-width: 900px) {
      .greeting__wrapper .greeting__image {
        width: 100%;
        margin-left: unset;
        margin-top: 20px; } }
    .greeting__wrapper .greeting__image img {
      -o-object-fit: contain;
         object-fit: contain; }

.greeting__history {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px; }
  @media only screen and (max-width: 900px) {
    .greeting__history {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .greeting__historyItem {
    width: calc(100% / 3);
    padding: 10px 10px 10px 25px;
    border-left: 1px solid #b6b7bf; }
    @media only screen and (max-width: 900px) {
      .greeting__historyItem {
        width: 100%; } }
    @media only screen and (max-width: 900px) {
      .greeting__historyItem + .greeting__historyItem {
        margin-top: 20px; } }
    .greeting__historyItem ul li {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-top: 10px; }
      .greeting__historyItem ul li span {
        color: #b6b7bf;
        margin-right: 15px; }
    .greeting__historyItem > p {
      margin-top: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .greeting__historyItem > p a {
        margin-right: 20px; }
      .greeting__historyItem > p img {
        max-width: 135px;
        -o-object-fit: contain;
           object-fit: contain; }

.p-companyMission {
  background: url("../img/company/company_img02.jpg") no-repeat;
  background-size: cover;
  padding: 100px 0; }
  @media only screen and (max-width: 900px) {
    .p-companyMission {
      background: url("../img/company/company_img02_sp.jpg") no-repeat;
      background-size: cover;
      padding: 50px 0;
      min-height: 765px; } }
  .p-companyMission .mission__text {
    padding-right: 20px; }
    @media only screen and (max-width: 900px) {
      .p-companyMission .mission__text {
        padding-right: unset; } }

/*------------------------------------------------------------
index
------------------------------------------------------------*/
.p-indexMission {
  background: url("../img/index/index_img04.jpg") no-repeat;
  background-size: cover;
  padding: 100px 0; }
  @media only screen and (max-width: 900px) {
    .p-indexMission {
      background: url("../img/index/index_img04_sp.jpg") no-repeat;
      background-size: cover;
      padding: 50px 0;
      min-height: 510px; } }

/*------------------------------------------------------------
news
------------------------------------------------------------*/
.filter-bar {
  padding: 0 50px; }
  @media only screen and (max-width: 900px) {
    .filter-bar {
      padding: 0; } }

.filter-bar__inner {
  background: #fff;
  border-radius: 38px;
  padding: 20px 35px;
  -webkit-box-shadow: 0px 3px 25px rgba(182, 183, 191, 0.44);
          box-shadow: 0px 3px 25px rgba(182, 183, 191, 0.44);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  @media only screen and (max-width: 900px) {
    .filter-bar__inner {
      padding: 15px; } }

.filter-tabs__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  list-style: none;
  margin: 0;
  padding: 0; }

.filter-tabs__item a {
  text-decoration: none;
  color: #333;
  font-weight: 500; }

.filter-tabs__item.is-active a {
  color: #b5b6be; }

.filter-search form {
  position: relative; }

.filter-search input {
  width: 220px;
  padding: 12px 15px 12px 45px;
  border: none;
  background: #f3f3f3;
  border-radius: 20px;
  outline: none; }
  @media only screen and (max-width: 900px) {
    .filter-search input {
      width: 145px;
      padding: 5px 5px 5px 25px;
      font-size: 13px; } }

.search-btn {
  position: absolute;
  left: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: none;
  background: url("../img/common/icon_glass.png") no-repeat center;
  background-size: contain;
  cursor: pointer; }
  @media only screen and (max-width: 900px) {
    .search-btn {
      left: 10px;
      width: 12px;
      height: 12px; } }

@media only screen and (max-width: 900px) {
  .filter-tabs {
    display: none; } }

.filter-dropdown {
  display: none; }
  @media only screen and (max-width: 900px) {
    .filter-dropdown {
      display: block;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      position: relative;
      max-width: 135px; } }
  @media only screen and (max-width: 900px) {
    .filter-dropdown select {
      width: 100%;
      border: none;
      background: transparent;
      font-weight: 500;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      outline: none; } }
  .filter-dropdown::after {
    content: "";
    position: absolute;
    right: 5px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-right: 3px solid #333;
    border-bottom: 3px solid #333;
    -webkit-transform: translateY(-50%) rotate(45deg);
        -ms-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    pointer-events: none; }

/*------------------------------------------------------------
  news detail
  ------------------------------------------------------------*/
.p-newsDetail {
  background: #fff; }
  .p-newsDetail .news-list {
    padding: 0; }
    .p-newsDetail .news-list .news-item {
      border-bottom: 0; }
  .p-newsDetail .c-btn1 {
    outline: 2px solid #f0f0f0; }
  .p-newsDetail1__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .p-newsDetail1__img img {
      max-width: 370px;
      width: calc((100% - 20px) / 2) !important; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail1__img img {
          width: calc((100% - 9px) / 2) !important; } }
  .p-newsDetail1__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media only screen and (max-width: 900px) {
      .p-newsDetail1__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; } }
  .p-newsDetail1__content {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 700px;
    background: #fff; }
    @media only screen and (max-width: 900px) {
      .p-newsDetail1__content {
        width: 100%; } }
  .p-newsDetail1 .img {
    margin: 45px 0 86px; }
    @media only screen and (max-width: 900px) {
      .p-newsDetail1 .img {
        margin: 40px 0; } }
    .p-newsDetail1 .img img {
      max-width: 100%; }
  .p-newsDetail .news__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .p-newsDetail .news__info .news__date {
      font-weight: bold; }
    .p-newsDetail .news__info .news__cat {
      min-width: 80px;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      height: -webkit-fit-content;
      height: -moz-fit-content;
      height: fit-content;
      padding: 4px 12px;
      font-size: 1.4rem;
      font-weight: 500;
      color: #ffffff;
      margin-left: 10px;
      background: -webkit-gradient(linear, right top, left top, from(#2070bd), to(#50c9e2));
      background: -webkit-linear-gradient(right, #2070bd 0%, #50c9e2 100%);
      background: linear-gradient(to left, #2070bd 0%, #50c9e2 100%); }
    .p-newsDetail .news__info .news__title {
      margin-left: 20px;
      font-weight: 400; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news__info .news__title {
          display: none; } }
  .p-newsDetail .news-single {
    overflow: hidden;
    font-weight: 400; }
    .p-newsDetail .news-single h1 {
      font-size: 2.8rem;
      font-weight: 700;
      padding-left: 11px;
      position: relative;
      border-left: 5px solid #008066; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h1 {
          font-size: 2rem; } }
    .p-newsDetail .news-single h2 {
      font-size: 2.4rem;
      font-weight: 700;
      padding-left: 8px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h2 {
          font-size: 1.8rem; } }
    .p-newsDetail .news-single h3 {
      font-size: 2.2rem;
      font-weight: 700;
      position: relative; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h3 {
          font-size: 1.7rem; } }
      .p-newsDetail .news-single h3 span {
        display: inline-block;
        padding: 0 50px 0 12px; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single h3 span {
            padding: 0; } }
    .p-newsDetail .news-single h4 {
      position: relative;
      font-size: 2rem;
      font-weight: 700;
      padding-left: 40px;
      line-height: 1; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h4 {
          padding-left: 25px; } }
      .p-newsDetail .news-single h4::before {
        position: absolute;
        content: "";
        background-color: #b5b6be;
        width: 20px;
        height: 20px;
        top: 0;
        left: 0; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single h4::before {
            top: 1px;
            width: 14px;
            height: 14px; } }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h4 {
          font-size: 1.6rem; } }
    .p-newsDetail .news-single h5 {
      font-size: 1.8rem;
      font-weight: 500;
      text-decoration: underline;
      text-underline-offset: 4px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h5 {
          font-size: 1.5rem; } }
    .p-newsDetail .news-single h6 {
      font-size: 1.7rem;
      font-weight: 400; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h6 {
          font-size: 1.5rem; } }
    .p-newsDetail .news-single h1,
    .p-newsDetail .news-single h2,
    .p-newsDetail .news-single h3,
    .p-newsDetail .news-single h4,
    .p-newsDetail .news-single h5,
    .p-newsDetail .news-single h6 {
      margin-top: 25px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single h1,
        .p-newsDetail .news-single h2,
        .p-newsDetail .news-single h3,
        .p-newsDetail .news-single h4,
        .p-newsDetail .news-single h5,
        .p-newsDetail .news-single h6 {
          margin-top: 20px; } }
    .p-newsDetail .news-single ol {
      list-style-type: decimal;
      padding: 0 0 0 20px;
      margin-top: 25px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single ol {
          margin: 20px 0 0; } }
    .p-newsDetail .news-single ul {
      list-style-type: disc;
      padding: 0 0 0 20px;
      margin: 25px 0 0; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single ul {
          margin: 20px 0 0; } }
      .p-newsDetail .news-single ul li::marker {
        font-size: 1rem; }
    .p-newsDetail .news-single p {
      margin-top: 10px; }
      .p-newsDetail .news-single p a {
        color: #50c9e2;
        text-decoration: underline;
        text-underline-offset: 2px; }
        .p-newsDetail .news-single p a:hover {
          text-decoration: none;
          opacity: 1; }
    .p-newsDetail .news-single img {
      max-width: 100%;
      width: auto;
      height: auto;
      margin-top: 20px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single img {
          margin-top: 10px; } }
      .p-newsDetail .news-single img.aligncenter {
        text-align: center;
        margin: 20px auto 0;
        display: block; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single img.aligncenter {
            margin: 10px auto 0;
            display: inherit; } }
      .p-newsDetail .news-single img.alignright {
        display: block;
        float: right;
        margin: 20px auto 0; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single img.alignright {
            margin: 10px auto 0;
            display: inherit;
            float: unset; } }
    .p-newsDetail .news-single table {
      max-width: 718px;
      width: 100%;
      border-collapse: collapse;
      margin-top: 35px;
      margin-bottom: 25px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single table {
          margin-bottom: 10px; } }
      .p-newsDetail .news-single table th,
      .p-newsDetail .news-single table td {
        border: 1px solid #c9c9c9;
        text-align: center;
        padding: 7px;
        background: #ffffff;
        width: 180px; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single table th,
          .p-newsDetail .news-single table td {
            padding: 6px 0; } }
      .p-newsDetail .news-single table th {
        background: #b5b5b5;
        color: #fff;
        font-weight: 400; }
    .p-newsDetail .news-single blockquote {
      max-width: 718px;
      width: 100%;
      font-size: 1.6rem;
      padding: 20px 65px;
      position: relative;
      background: #efefef;
      margin-bottom: 25px; }
      @media only screen and (max-width: 900px) {
        .p-newsDetail .news-single blockquote {
          padding: 20px 30px;
          margin-bottom: 10px; } }
      .p-newsDetail .news-single blockquote::before {
        content: "";
        background: url("../img/common/icon_quote.png") center/cover no-repeat;
        position: absolute;
        left: 28px;
        top: 25px;
        width: 27px;
        height: 22px; }
        @media only screen and (max-width: 900px) {
          .p-newsDetail .news-single blockquote::before {
            top: 20px;
            left: 5px; } }

/*------------------------------------------------------------
privacy
------------------------------------------------------------*/
.p-privacy1 article h2, .p-privacy1 article h3, .p-privacy1 article h4, .p-privacy1 article h5, .p-privacy1 article h6 {
  margin-top: 50px; }
  @media only screen and (max-width: 900px) {
    .p-privacy1 article h2, .p-privacy1 article h3, .p-privacy1 article h4, .p-privacy1 article h5, .p-privacy1 article h6 {
      margin-top: 25px; } }

.p-privacy1 article h2 {
  position: relative;
  font-size: 1.8rem;
  color: #1b1f36;
  font-weight: 700;
  padding-left: 25px;
  line-height: 1; }
  @media only screen and (max-width: 900px) {
    .p-privacy1 article h2 {
      padding-left: 35px;
      font-size: 2.3rem;
      margin-bottom: 10px; } }
  .p-privacy1 article h2::before {
    position: absolute;
    content: "";
    background-color: #b5b6be;
    width: 15px;
    height: 15px;
    top: 3px;
    left: 0; }
    @media only screen and (max-width: 900px) {
      .p-privacy1 article h2::before {
        width: 20px;
        height: 20px; } }

.p-privacy1 article h3 {
  font-size: 1.7rem;
  font-weight: 700; }
  @media only screen and (max-width: 900px) {
    .p-privacy1 article h3 {
      font-size: 1.6rem;
      margin-bottom: 10px; } }

.p-privacy1 article h4 {
  font-size: 1.6rem;
  font-weight: 700; }
  @media only screen and (max-width: 900px) {
    .p-privacy1 article h4 {
      font-size: 1.5rem; } }

.p-privacy1 article p {
  margin-top: 20px; }

.p-privacy1 article ul {
  margin: 20px 0 0; }
  @media only screen and (max-width: 900px) {
    .p-privacy1 article ul {
      margin-top: 10px; } }
  .p-privacy1 article ul li {
    position: relative;
    padding-left: 14px; }
    .p-privacy1 article ul li:after {
      content: "";
      width: 3px;
      height: 3px;
      border-radius: 50%;
      background: #000;
      position: absolute;
      left: 5px;
      top: 11px; }
      @media only screen and (max-width: 900px) {
        .p-privacy1 article ul li:after {
          left: 7px; } }

/*------------------------------------------------------------
service
------------------------------------------------------------*/
.u-pconly {
  display: block; }
  @media only screen and (max-width: 900px) {
    .u-pconly {
      display: none; } }

.u-sponly {
  display: none; }
  @media only screen and (max-width: 900px) {
    .u-sponly {
      display: block; } }

.u-line {
  position: relative; }
  .u-line::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 60px;
    background: #ffffff;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    top: 50%;
    left: 50%; }
    @media only screen and (max-width: 900px) {
      .u-line::after {
        display: none; } }
  .u-line1 {
    display: inline;
    text-decoration: none !important; }
    @media only screen and (max-width: 900px) {
      .u-line1 {
        display: none; } }

@media only screen and (max-width: 900px) {
  .u-tel {
    margin-left: 38px; } }

.pattern {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto; }
  .pattern::before, .pattern::after {
    content: "";
    position: absolute;
    width: 41px;
    height: 27px;
    top: 10px; }
    @media only screen and (max-width: 900px) {
      .pattern::before, .pattern::after {
        top: 0; } }
  .pattern::before {
    background: url("../img/common/icon_pattern_left.png") no-repeat;
    left: -50px; }
  .pattern::after {
    background: url("../img/common/icon_pattern_right.png") no-repeat;
    right: -50px; }

.bg-purple {
  background-color: #607DC1; }

.bg-green {
  background-color: #23B039; }

.bg-yellow {
  background-color: #DCDF89; }

.bg-gray {
  background-color: #DDDDDD; }

.bg-turquoise {
  background-color: #F3FBF5; }

.cl-green {
  color: #008066; }

.fs-90 {
  font-size: 9rem; }

.blue {
  background: #3c76bd; }

.purple {
  background: #9a66a0; }

.gold {
  background: #bd973c; }

.gray {
  background: #939393; }

.nophone * {
  pointer-events: none;
  color: #222 !important;
  text-decoration: none !important; }
