@charset "UTF-8";
#view {
  height: calc(100vh - 40px);
  display: flex;
  justify-content: center;
  align-items: center; 
  margin: 0; /* 画像に余分なマージンがないか確認 */
}
  #view img {
    width: 300px; 
  }
    @media screen and (max-width: 780px) {
      #view img {
        width: 170px; } }
    @media screen and (max-width: 550px) {
      #view img {
        width: 120px; } }
  @media screen and (max-width: 550px) {
    #view {
      padding-top: 30px;
      padding-left: 0;
      padding-right: 0; } }

.area {
  background: #f7f7f7;
  width: 100%;
  height: 100vh; }

.circles {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.circles li {
  position: absolute;
  display: block;
  list-style: none;
  width: 20px;
  height: 20px;
  background: rgba(15, 153, 98, 0.1);
  animation: animate 25s linear infinite;
  bottom: -150px; }

.circles li:nth-child(1) {
  left: 25%;
  width: 80px;
  height: 80px;
  animation-delay: 0s; }

.circles li:nth-child(2) {
  left: 10%;
  width: 20px;
  height: 20px;
  animation-delay: 2s;
  animation-duration: 12s; }

.circles li:nth-child(3) {
  left: 70%;
  width: 20px;
  height: 20px;
  animation-delay: 4s; }

.circles li:nth-child(4) {
  left: 40%;
  width: 60px;
  height: 60px;
  animation-delay: 0s;
  animation-duration: 18s; }

.circles li:nth-child(5) {
  left: 65%;
  width: 20px;
  height: 20px;
  animation-delay: 0s; }

.circles li:nth-child(6) {
  left: 75%;
  width: 110px;
  height: 110px;
  animation-delay: 3s; }

.circles li:nth-child(7) {
  left: 35%;
  width: 150px;
  height: 150px;
  animation-delay: 7s; }

.circles li:nth-child(8) {
  left: 50%;
  width: 25px;
  height: 25px;
  animation-delay: 15s;
  animation-duration: 45s; }

.circles li:nth-child(9) {
  left: 20%;
  width: 15px;
  height: 15px;
  animation-delay: 2s;
  animation-duration: 35s; }

.circles li:nth-child(10) {
  left: 85%;
  width: 150px;
  height: 150px;
  animation-delay: 0s;
  animation-duration: 11s; }

@keyframes animate {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 1;
    border-radius: 0; }
  100% {
    transform: translateY(-1000px) rotate(720deg);
    opacity: 0;
    border-radius: 50%; } }
#topAbout {
  text-align: center; }
  #topAbout #topAboutEn {
    font-size: 4.8rem;
    font-weight: 600;
    font-family: "Poppins", sans-serif;
    letter-spacing: 10px;
    line-height: 1; }
    @media screen and (max-width: 780px) {
      #topAbout #topAboutEn {
        font-size: 2.8rem;
        letter-spacing: 5px; } }
    #topAbout #topAboutEn > span {
      display: block; }
      #topAbout #topAboutEn > span:not(:first-child) {
        margin-top: 30px; }
        @media screen and (max-width: 780px) {
          #topAbout #topAboutEn > span:not(:first-child) {
            margin-top: 15px; } }
  #topAbout #topAboutJp {
    font-size: 2.4rem;
    font-weight: 600;
    margin: 45px 0 55px;
    margin: 0 0 55px; }
    @media screen and (max-width: 780px) {
      #topAbout #topAboutJp {
        margin: 30px 0 40px;
        margin: 0 0 40px;
        font-size: 1.8rem; } }
  #topAbout #topAboutText {
    line-height: 2.6;
    font-size: 1.8rem;
    font-weight: 600; }
    @media screen and (max-width: 780px) {
      #topAbout #topAboutText {
        font-size: 1.3rem; } }

.sideTitle {
  width: 100%; }
  @media screen and (min-width: 780px) {
    .sideTitle {
      display: flex;
      justify-content: flex-end; } }
  .sideTitle .secTitle {
    margin: 0; }
    @media screen and (min-width: 780px) {
      .sideTitle .secTitle {
        max-width: 380px;
        width: 47%; } }

#topService {
  padding-bottom: 180px; }
  @media screen and (max-width: 780px) {
    #topService {
      padding-bottom: 60px; } }
  #topService .secBg {
    height: calc(100% - 56px);
    bottom: 0;
    left: -100px;
    height: 1100px; }
    @media screen and (max-width: 780px) {
      #topService .secBg {
        width: 80%;
        left: 0;
        height: 65%; } }
    #topService .secBg.way {
      width: 0; }
      #topService .secBg.way.wayon {
        width: calc(50vw - 480px + 960px - 190px + 100px); }
        @media screen and (max-width: 780px) {
          #topService .secBg.way.wayon {
            width: 100%; } }

@media screen and (min-width: 780px) {
  #workWrap {
    margin-top: -30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; } }
@media screen and (max-width: 780px) {
  #workWrap {
    margin-top: 30px; } }
@media screen and (min-width: 780px) {
  #workWrap .workBox {
    max-width: 380px;
    width: 47%; } }
@media screen and (max-width: 780px) {
  #workWrap .workBox:not(:first-child) {
    margin-top: 40px; } }
#workWrap .workBox:nth-child(1) h2 {
  font-weight: 600;
  font-size: 2rem;
  text-align: center; }
  @media screen and (max-width: 780px) {
    #workWrap .workBox:nth-child(1) h2 {
      font-size: 1.8rem; } }
#workWrap .workBox:nth-child(1) .workBoxIn {
  display: flex;
  justify-content: center;
  align-items: center; }
  @media screen and (min-width: 780px) {
    #workWrap .workBox:nth-child(1) .workBoxIn {
      height: 440px; } }
  @media screen and (max-width: 780px) {
    #workWrap .workBox:nth-child(1) .workBoxIn {
      padding: 30px; } }
@media screen and (min-width: 780px) {
  #workWrap .workBox:nth-child(2) {
    margin-top: 135px; } }
@media screen and (min-width: 780px) {
  #workWrap .workBox:nth-child(3) {
    margin-top: 35px; } }
@media screen and (min-width: 780px) {
  #workWrap .workBox:nth-child(4) {
    margin-top: 170px; } }
#workWrap .workBox .workBoxIn {
  padding: 64px;
  background-color: #f7f7f7; }
  @media screen and (max-width: 780px) {
    #workWrap .workBox .workBoxIn {
      padding: 30px 30px; } }
  @media screen and (max-width: 780px) {
    #workWrap .workBox .workBoxIn .workBoxTop {
      display: flex;
      align-items: center; } }
  #workWrap .workBox .workBoxIn .workBoxTop .workBoxIcon {
    text-align: center;
    width: 80px; }
    @media screen and (min-width: 780px) {
      #workWrap .workBox .workBoxIn .workBoxTop .workBoxIcon {
        margin-bottom: 40px;
        margin: 0 auto; } }
    @media screen and (max-width: 780px) {
      #workWrap .workBox .workBoxIn .workBoxTop .workBoxIcon {
        width: 60px; } }
    #workWrap .workBox .workBoxIn .workBoxTop .workBoxIcon img {
      width: 100%; }
  #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle {
    line-height: 1; }
    @media screen and (min-width: 780px) {
      #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle {
        text-align: center; } }
    @media screen and (max-width: 780px) {
      #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle {
        margin-left: 20px; } }
    #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle .workBoxEn {
      font-size: 2.4rem;
      font-weight: 600;
      font-family: "Poppins", sans-serif; }
      @media screen and (min-width: 780px) {
        #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle .workBoxEn {
          letter-spacing: 2px; } }
      @media screen and (max-width: 780px) {
        #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle .workBoxEn {
          font-size: 1.8rem; } }
    #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle .workBoxJp {
      font-size: 1.6rem;
      font-weight: 600;
      margin-top: 15px; }
      @media screen and (max-width: 780px) {
        #workWrap .workBox .workBoxIn .workBoxTop .workBoxTitle .workBoxJp {
          font-size: 1.3rem;
          margin-top: 10px; } }
  #workWrap .workBox .workBoxIn .workBoxText {
    margin-top: 40px; }
    @media screen and (max-width: 780px) {
      #workWrap .workBox .workBoxIn .workBoxText {
        margin-top: 15px; } }

@media screen and (min-width: 780px) {
  #caseWrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -40px; } }
@media screen and (min-width: 780px) {
  #caseWrap .caseBox {
    width: 50%;
    padding: 0 40px; } }
@media screen and (max-width: 780px) {
  #caseWrap .caseBox:not(:first-child) {
    margin-top: 40px; } }
@media screen and (min-width: 780px) {
  #caseWrap .caseBox:nth-child(3), #caseWrap .caseBox:nth-child(4) {
    margin-top: 80px; } }
#caseWrap .caseBox .caseBoxTitle {
  position: relative;
  padding-left: 20px;
  font-weight: 700;
  margin-bottom: 20px; }
  @media screen and (max-width: 780px) {
    #caseWrap .caseBox .caseBoxTitle {
      margin-bottom: 15px; } }
  #caseWrap .caseBox .caseBoxTitle:before {
    position: absolute;
    content: "";
    top: 5%;
    left: 0;
    width: 3px;
    height: 90%;
    background-color: #095B3A; }
  #caseWrap .caseBox .caseBoxTitle .caseBoxNaiyou {
    font-size: 1.8rem;
    line-height: 1.6; }
    @media screen and (max-width: 780px) {
      #caseWrap .caseBox .caseBoxTitle .caseBoxNaiyou {
        font-size: 1.6rem; } }
  #caseWrap .caseBox .caseBoxTitle .caseBoxAite {
    margin-top: 5px; }
    @media screen and (max-width: 780px) {
      #caseWrap .caseBox .caseBoxTitle .caseBoxAite {
        font-size: 1.3rem; } }
#caseWrap .caseBox .caseBoxText {
  margin-left: 20px; }
  #caseWrap .caseBox .caseBoxText li {
    list-style: disc; }
    #caseWrap .caseBox .caseBoxText li:not(:first-child) {
      margin-top: 8px; }
    #caseWrap .caseBox .caseBoxText li span {
      display: block;
      font-size: 1.1rem; }

#topData .secBg {
  height: calc(100% - 60px);
  margin-top: 60px;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 1; }
  @media screen and (max-width: 780px) {
    #topData .secBg {
      height: calc(100% - 40px);
      margin-top: 40px; } }

#header {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  left: 0;
  top: 0;
  z-index: 2;
  position: fixed;
  width: 100%;
  padding-top: 40px;
  pointer-events: none; }
  @media screen and (max-width: 780px) {
    #header {
      padding-top: 20px; } }
  #header img {
    fill: #0f9962; }
  #header #headerIn {
    display: flex;
    align-items: center;
    justify-content: space-between; }
  .scroll #header {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); }
  .scroll.hideClass #header {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%); }

#title {
  line-height: 1; }
  #title a {
    color: #095B3A;
    font-weight: 700;
    display: block;
    pointer-events: auto; }
    #title a img {
      width: 65px; }
      @media screen and (max-width: 780px) {
        #title a img {
          width: 50px; } }
      .active #title a img {
        fill: #ffffff; }

.headerBt {
  font-family: "Poppins", sans-serif;
  line-height: 1;
  pointer-events: auto; }
  .headerBt:hover {
    opacity: 0.5; }
  .headerBt img {
    display: inline-block; }
    @media screen and (min-width: 780px) {
      .headerBt img {
        width: 15px;
        margin-right: 7px;
        vertical-align: -3px; } }
    @media screen and (max-width: 780px) {
      .headerBt img {
        width: 25px; } }
  @media screen and (max-width: 780px) {
    .headerBt span {
      display: none; } }

.fadeUp {
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  opacity: 0;
  -webkit-transition: all .8s .1s ease;
  transition: all .8s .1s ease; }

.wayon.fadeUp {
  opacity: 1 !important;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

.fadeDown {
  -webkit-transform: translateY(-20px);
  -ms-transform: translateY(-20px);
  transform: translateY(-20px);
  opacity: 0;
  -webkit-transition: all .8s .1s ease;
  transition: all .8s .1s ease; }

.loadin .fadeDown {
  opacity: 1 !important;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

.slideUp {
  overflow: hidden;
  display: inline-block; }

.slideUp > * {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  opacity: 0;
  -webkit-transition: all .8s .1s ease;
  transition: all .8s .1s ease;
  display: inline-block; }

.wayon.slideUp > * {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1; }

.line {
  overflow: hidden;
  line-height: 1; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(1) {
    -webkit-transition-delay: 0.03s;
    transition-delay: 0.03s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(2) {
    -webkit-transition-delay: 0.06s;
    transition-delay: 0.06s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(3) {
    -webkit-transition-delay: 0.09s;
    transition-delay: 0.09s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(4) {
    -webkit-transition-delay: 0.12s;
    transition-delay: 0.12s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(5) {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(6) {
    -webkit-transition-delay: 0.18s;
    transition-delay: 0.18s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(7) {
    -webkit-transition-delay: 0.21s;
    transition-delay: 0.21s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(8) {
    -webkit-transition-delay: 0.24s;
    transition-delay: 0.24s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(9) {
    -webkit-transition-delay: 0.27s;
    transition-delay: 0.27s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(10) {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(11) {
    -webkit-transition-delay: 0.33s;
    transition-delay: 0.33s; }
  .line.wayon:nth-child(1) span.sliceTxt:nth-child(12) {
    -webkit-transition-delay: 0.36s;
    transition-delay: 0.36s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(1) {
    -webkit-transition-delay: 0.12s;
    transition-delay: 0.12s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(2) {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(3) {
    -webkit-transition-delay: 0.18s;
    transition-delay: 0.18s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(4) {
    -webkit-transition-delay: 0.21s;
    transition-delay: 0.21s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(5) {
    -webkit-transition-delay: 0.24s;
    transition-delay: 0.24s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(6) {
    -webkit-transition-delay: 0.27s;
    transition-delay: 0.27s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(7) {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(8) {
    -webkit-transition-delay: 0.33s;
    transition-delay: 0.33s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(9) {
    -webkit-transition-delay: 0.36s;
    transition-delay: 0.36s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(10) {
    -webkit-transition-delay: 0.39s;
    transition-delay: 0.39s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(11) {
    -webkit-transition-delay: 0.42s;
    transition-delay: 0.42s; }
  .line.wayon:nth-child(2) span.sliceTxt:nth-child(12) {
    -webkit-transition-delay: 0.45s;
    transition-delay: 0.45s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(1) {
    -webkit-transition-delay: 0.48s;
    transition-delay: 0.48s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(2) {
    -webkit-transition-delay: 0.51s;
    transition-delay: 0.51s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(3) {
    -webkit-transition-delay: 0.54s;
    transition-delay: 0.54s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(4) {
    -webkit-transition-delay: 0.57s;
    transition-delay: 0.57s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(5) {
    -webkit-transition-delay: 0.6s;
    transition-delay: 0.6s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(6) {
    -webkit-transition-delay: 0.63s;
    transition-delay: 0.63s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(7) {
    -webkit-transition-delay: 0.66s;
    transition-delay: 0.66s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(8) {
    -webkit-transition-delay: 0.69s;
    transition-delay: 0.69s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(9) {
    -webkit-transition-delay: 0.72s;
    transition-delay: 0.72s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(10) {
    -webkit-transition-delay: 0.75s;
    transition-delay: 0.75s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(11) {
    -webkit-transition-delay: 0.78s;
    transition-delay: 0.78s; }
  .line.wayon:nth-child(3) span.sliceTxt:nth-child(12) {
    -webkit-transition-delay: 0.81s;
    transition-delay: 0.81s; }

span.sliceTxt {
  display: inline-block;
  opacity: 0;
  -webkit-transition: 0.9s cubic-bezier(0.075, 0.82, 0.165, 1);
  -moz-transition: 0.9s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-transition: 0.9s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: 0.9s cubic-bezier(0.075, 0.82, 0.165, 1);
  -webkit-transform: translateY(100%);
  -moz-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%); }
  .wayon span.sliceTxt {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
    .wayon span.sliceTxt:nth-child(1) {
      -webkit-transition-delay: 0.05s;
      transition-delay: 0.05s; }
    .wayon span.sliceTxt:nth-child(2) {
      -webkit-transition-delay: 0.1s;
      transition-delay: 0.1s; }
    .wayon span.sliceTxt:nth-child(3) {
      -webkit-transition-delay: 0.15s;
      transition-delay: 0.15s; }
    .wayon span.sliceTxt:nth-child(4) {
      -webkit-transition-delay: 0.2s;
      transition-delay: 0.2s; }
    .wayon span.sliceTxt:nth-child(5) {
      -webkit-transition-delay: 0.25s;
      transition-delay: 0.25s; }
    .wayon span.sliceTxt:nth-child(6) {
      -webkit-transition-delay: 0.3s;
      transition-delay: 0.3s; }
    .wayon span.sliceTxt:nth-child(7) {
      -webkit-transition-delay: 0.35s;
      transition-delay: 0.35s; }
    .wayon span.sliceTxt:nth-child(8) {
      -webkit-transition-delay: 0.4s;
      transition-delay: 0.4s; }
    .wayon span.sliceTxt:nth-child(9) {
      -webkit-transition-delay: 0.45s;
      transition-delay: 0.45s; }
    .wayon span.sliceTxt:nth-child(10) {
      -webkit-transition-delay: 0.5s;
      transition-delay: 0.5s; }
    .wayon span.sliceTxt:nth-child(11) {
      -webkit-transition-delay: 0.55s;
      transition-delay: 0.55s; }
    .wayon span.sliceTxt:nth-child(12) {
      -webkit-transition-delay: 0.6s;
      transition-delay: 0.6s; }
    .wayon span.sliceTxt:nth-child(13) {
      -webkit-transition-delay: 0.65s;
      transition-delay: 0.65s; }
    .wayon span.sliceTxt:nth-child(14) {
      -webkit-transition-delay: 0.7s;
      transition-delay: 0.7s; }
    .wayon span.sliceTxt:nth-child(15) {
      -webkit-transition-delay: 0.75s;
      transition-delay: 0.75s; }
    .wayon span.sliceTxt:nth-child(16) {
      -webkit-transition-delay: 0.8s;
      transition-delay: 0.8s; }
    .wayon span.sliceTxt:nth-child(17) {
      -webkit-transition-delay: 0.85s;
      transition-delay: 0.85s; }
    .wayon span.sliceTxt:nth-child(18) {
      -webkit-transition-delay: 0.9s;
      transition-delay: 0.9s; }
    .wayon span.sliceTxt:nth-child(19) {
      -webkit-transition-delay: 0.95s;
      transition-delay: 0.95s; }
    .wayon span.sliceTxt:nth-child(20) {
      -webkit-transition-delay: 1s;
      transition-delay: 1s; }
    .wayon span.sliceTxt:nth-child(21) {
      -webkit-transition-delay: 1.05s;
      transition-delay: 1.05s; }
    .wayon span.sliceTxt:nth-child(22) {
      -webkit-transition-delay: 1.1s;
      transition-delay: 1.1s; }
    .wayon span.sliceTxt:nth-child(23) {
      -webkit-transition-delay: 1.15s;
      transition-delay: 1.15s; }
    .wayon span.sliceTxt:nth-child(24) {
      -webkit-transition-delay: 1.2s;
      transition-delay: 1.2s; }
    .wayon span.sliceTxt:nth-child(25) {
      -webkit-transition-delay: 1.25s;
      transition-delay: 1.25s; }
    .wayon span.sliceTxt:nth-child(26) {
      -webkit-transition-delay: 1.3s;
      transition-delay: 1.3s; }
    .wayon span.sliceTxt:nth-child(27) {
      -webkit-transition-delay: 1.35s;
      transition-delay: 1.35s; }
    .wayon span.sliceTxt:nth-child(28) {
      -webkit-transition-delay: 1.4s;
      transition-delay: 1.4s; }
    .wayon span.sliceTxt:nth-child(29) {
      -webkit-transition-delay: 1.45s;
      transition-delay: 1.45s; }
    .wayon span.sliceTxt:nth-child(30) {
      -webkit-transition-delay: 1.5s;
      transition-delay: 1.5s; }
    .wayon span.sliceTxt:nth-child(31) {
      -webkit-transition-delay: 1.55s;
      transition-delay: 1.55s; }
    .wayon span.sliceTxt:nth-child(32) {
      -webkit-transition-delay: 1.6s;
      transition-delay: 1.6s; }
    .wayon span.sliceTxt:nth-child(33) {
      -webkit-transition-delay: 1.65s;
      transition-delay: 1.65s; }
    .wayon span.sliceTxt:nth-child(34) {
      -webkit-transition-delay: 1.7s;
      transition-delay: 1.7s; }
    .wayon span.sliceTxt:nth-child(35) {
      -webkit-transition-delay: 1.75s;
      transition-delay: 1.75s; }
    .wayon span.sliceTxt:nth-child(36) {
      -webkit-transition-delay: 1.8s;
      transition-delay: 1.8s; }
    .wayon span.sliceTxt:nth-child(37) {
      -webkit-transition-delay: 1.85s;
      transition-delay: 1.85s; }
    .wayon span.sliceTxt:nth-child(38) {
      -webkit-transition-delay: 1.9s;
      transition-delay: 1.9s; }
    .wayon span.sliceTxt:nth-child(39) {
      -webkit-transition-delay: 1.95s;
      transition-delay: 1.95s; }
    .wayon span.sliceTxt:nth-child(40) {
      -webkit-transition-delay: 2s;
      transition-delay: 2s; }

.contactSec#pageWrap {
  padding: 0; }

.selectWrap {
  position: relative; }
  .selectWrap:before {
    content: "";
    position: absolute;
    background-image: url(../images/arrow/arrow_black.svg);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
    top: 15px;
    right: 10px;
    opacity: 0.5;
    z-index: 1; }
  .selectWrap select {
    border-bottom: solid 1px rgba(26, 26, 26, 0.05);
    outline: none;
    text-overflow: '';
    background: none transparent;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none; }
    .selectWrap select::-ms-expand {
      display: none; }
    .selectWrap select:-moz-focusring {
      color: transparent; }

#formWrap {
  background-color: #f7f7f7; }
  @media screen and (max-width: 780px) {
    #formWrap {
      padding-top: 60px;
      padding-bottom: 60px; } }
  #formWrap .formBox {
    margin-bottom: 30px;
    width: 100%; }
    @media screen and (min-width: 780px) {
      #formWrap .formBox {
        display: flex; } }
    #formWrap .formBox:not(:first-child) {
      border-top: solid 1px #cccccc;
      padding-top: 30px; }
    #formWrap .formBox .formTitle {
      width: 240px;
      font-weight: 600; }
      @media screen and (max-width: 780px) {
        #formWrap .formBox .formTitle {
          margin-bottom: 10px;
          font-size: 1.3rem; } }
      #formWrap .formBox .formTitle.required:after {
        content: "必須";
        background-color: #e0e0e0;
        font-size: 1rem;
        line-height: 1;
        padding: 1px 2px;
        margin-left: 5px; }
    #formWrap .formBox .formInput {
      flex: 1; }
    #formWrap .formBox input[type="text"],
    #formWrap .formBox input[type="tel"],
    #formWrap .formBox input[type="email"],
    #formWrap .formBox select,
    #formWrap .formBox textarea {
      width: 100%;
      border: none;
      border-bottom: solid 1px rgba(102, 102, 102, 0.2);
      background-color: #ffffff;
      padding: 10px 10px;
      font-size: 1.6rem;
      border: solid 2px #ffffff; }
      #formWrap .formBox input[type="text"]::placeholder,
      #formWrap .formBox input[type="tel"]::placeholder,
      #formWrap .formBox input[type="email"]::placeholder,
      #formWrap .formBox select::placeholder,
      #formWrap .formBox textarea::placeholder {
        color: #cccccc; }
      #formWrap .formBox input[type="text"]:-ms-input-placeholder,
      #formWrap .formBox input[type="tel"]:-ms-input-placeholder,
      #formWrap .formBox input[type="email"]:-ms-input-placeholder,
      #formWrap .formBox select:-ms-input-placeholder,
      #formWrap .formBox textarea:-ms-input-placeholder {
        color: #cccccc; }
      #formWrap .formBox input[type="text"]::-ms-input-placeholder,
      #formWrap .formBox input[type="tel"]::-ms-input-placeholder,
      #formWrap .formBox input[type="email"]::-ms-input-placeholder,
      #formWrap .formBox select::-ms-input-placeholder,
      #formWrap .formBox textarea::-ms-input-placeholder {
        color: #cccccc; }
      #formWrap .formBox input[type="text"]:focus,
      #formWrap .formBox input[type="tel"]:focus,
      #formWrap .formBox input[type="email"]:focus,
      #formWrap .formBox select:focus,
      #formWrap .formBox textarea:focus {
        border-color: #095B3A; }
    #formWrap .formBox textarea {
      height: 200px; }

#formCheck {
  margin-bottom: 60px; }
  #formCheck #formCheckLink {
    margin-top: 5px; }
    #formCheck #formCheckLink a {
      display: inline-block;
      font-size: 1.1rem; }

#formSubmit {
  text-align: center; }
  #formSubmit p {
    margin-bottom: 20px; }

.wpcf7-not-valid-tip {
  display: none !important; }

div.wpcf7-response-output {
  margin: 40px 0 0;
  padding: 10px;
  border-width: 4px;
  border-color: #dddddd;
  text-align: center; }
  @media screen and (max-width: 550px) {
    div.wpcf7-response-output {
      margin: 20px 0 0; } }

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing, div.wpcf7-response-output {
  border-color: #095B3A; }

.formErrorContent {
  color: #095B3A;
  font-size: 1.1rem;
  margin-top: 5px; }

[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px; }

[type="checkbox"]:not(:checked) + span,
[type="checkbox"]:checked + span {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer; }

/* checkbox aspect */
[type="checkbox"]:not(:checked) + span:before,
[type="checkbox"]:checked + span:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 1.25em;
  height: 1.25em;
  border: 2px solid #ccc;
  background: #fff;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
  -webkit-transition: 0.2s cubic-bezier(0.3, 0.1, 0.3, 1);
  transition: 0.2s cubic-bezier(0.3, 0.1, 0.3, 1); }

/* checked mark aspect */
[type="checkbox"]:not(:checked) + span:after,
[type="checkbox"]:checked + span:after {
  content: '\2713\0020';
  position: absolute;
  top: .15em;
  left: .22em;
  font-size: 1.3em;
  line-height: 0.8;
  color: #095B3A;
  transition: all .2s; }

/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + span:after {
  opacity: 0;
  transform: scale(0); }

[type="checkbox"]:checked + span:after {
  opacity: 1;
  transform: scale(1); }

/* hover style just for information */
label span:hover:before {
  border: 2px solid #095B3A !important; }

#footer {
  padding-top: 60px;
  padding-bottom: 60px; }
  @media screen and (max-width: 780px) {
    #footer {
      padding-top: 60px; } }
  #footer #footerTop {
    text-align: center;
    font-weight: 700;
    padding-top: 60px;
    margin-bottom: 120px; }
    @media screen and (max-width: 780px) {
      #footer #footerTop {
        padding-top: 0;
        margin-bottom: 60px; } }
    #footer #footerTop p {
      font-size: 2rem;
      margin-bottom: 40px; }
      @media screen and (min-width: 780px) {
        #footer #footerTop p br {
          display: none; } }
      @media screen and (max-width: 780px) {
        #footer #footerTop p {
          font-size: 1.8rem;
          margin-bottom: 20px; } }
    #footer #footerTop a {
      display: block;
      border: solid 5px #ffffff;
      height: 180px;
      line-height: 170px;
      font-size: 2.4rem;
      font-family: "Poppins", sans-serif;
      letter-spacing: 10px; }
      @media screen and (max-width: 780px) {
        #footer #footerTop a {
          height: 120px;
          line-height: 110px; } }
      #footer #footerTop a:hover {
        line-height: 160px;
        border-width: 10px; }
        @media screen and (max-width: 780px) {
          #footer #footerTop a:hover {
            line-height: 100px; } }
  #footer #footerBottom {
    font-size: 1.1rem; }
    #footer #footerBottom .windowL {
      font-family: "Poppins", sans-serif; }
      @media screen and (min-width: 780px) {
        #footer #footerBottom .windowL {
          display: flex;
          justify-content: space-between;
          justify-content: center;
          flex-direction: row-reverse; } }
      @media screen and (max-width: 780px) {
        #footer #footerBottom .windowL {
          text-align: center; } }
      #footer #footerBottom .windowL #copy {
        opacity: 0.5; }
        @media screen and (max-width: 780px) {
          #footer #footerBottom .windowL #copy {
            margin-top: 20px; } }
      #footer #footerBottom .windowL a:hover {
        opacity: 0.5; }

@font-face {
  font-family: Noto_Sans_JP;
  src: url("../font/Noto_Sans_JP/NotoSansJP-Regular.otf") format("opentype");
  font-weight: 400; }
@font-face {
  font-family: Noto_Sans_JP;
  src: url("../font/Noto_Sans_JP/NotoSansJP-Bold.otf") format("opentype");
  font-weight: 700; }
@font-face {
  font-family: Noto_Sans_JP;
  src: url("../font/Noto_Sans_JP/NotoSansJP-Black.otf") format("opentype");
  font-weight: 900; }
@font-face {
  font-family: Poppins;
  src: url("../font/Poppins/Poppins-Medium.ttf") format("truetype");
  font-weight: 400; }
@font-face {
  font-family: Poppins;
  src: url("../font/Poppins/Poppins-SemiBold.ttf") format("truetype");
  font-weight: 600; }
@font-face {
  font-family: Poppins;
  src: url("../font/Poppins/Poppins-Bold.ttf") format("truetype");
  font-weight: 700; }
* {
  box-sizing: border-box; }

html {
  color: #010307;
  font-family: "Noto_Sans_JP", sans-serif;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  letter-spacing: 2px; }

body {
  font-size: 1.3rem;
  background-color: #ffffff;
  background-position: center center;
  background-repeat: repeat;
  line-height: 1.8; }
  @media screen and (max-width: 550px) {
    body {
      font-size: 1.4rem; } }

p {
  margin: 0; }

ul, ol {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

a,
a:before,
a:after,
a img,
a svg,
.timeAc,
.timeAc:before,
.timeAc:after {
  -webkit-transition: 0.8s cubic-bezier(0.3, 0.1, 0.3, 1);
  transition: 0.8s cubic-bezier(0.3, 0.1, 0.3, 1); }

a,
a:link,
a:visited,
a:active,
input[type="submit"]:hover {
  cursor: pointer;
  text-decoration: none;
  color: #010307; }

a:hover,
a:focus,
*:focus {
  outline: none; }

a:hover {
  text-decoration: none; }

a.opa:hover,
.opa a:hover {
  opacity: 0.5; }

a.borderLink {
  text-decoration: underline; }
  a.borderLink:hover {
    text-decoration: none; }

a.borderLink2:hover {
  text-decoration: underline; }

h1, h2, h3 {
  margin: 0;
  font-weight: 400; }

.cont {
  padding-left: 50px;
  padding-right: 50px;
  position: relative;
  width: 100%;
  overflow: hidden; }
  @media screen and (max-width: 780px) {
    .cont {
      padding-left: 20px;
      padding-right: 20px; } }

.contT {
  margin-top: 240px; }
  @media screen and (max-width: 780px) {
    .contT {
      margin-top: 120px; } }

.contB {
  margin-bottom: 120px; }
  @media screen and (max-width: 780px) {
    .contB {
      margin-bottom: 120px; } }

.windowM {
  max-width: 960px;
  margin: 0 auto;
  width: 100%; }
  @media screen and (max-width: 780px) {
    .windowM {
      max-width: 550px; } }

.windowL {
  max-width: 1250px;
  margin: 0 auto;
  width: 100%; }
  @media screen and (max-width: 780px) {
    .windowL {
      max-width: 600px; } }

.bg {
  background-color: #095B3A !important; }
  .bg, .bg a {
    color: #ffffff; }

.bg2 {
  background-color: #f7f7f7; }

.bg3 {
  background-color: #0f9962; }

.secBg {
  position: absolute;
  width: 100%;
  z-index: -1;
  opacity: 0; }
  .secBg.wayon {
    opacity: 1; }

.secBgArea {
  padding: 120px; }
  @media screen and (max-width: 780px) {
    .secBgArea {
      padding: 60px 30px; } }
  @media screen and (max-width: 550px) {
    .secBgArea {
      padding: 40px 15px; } }

.tc {
  text-align: center; }

  #loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 100;
    background-color: #f7f7f7;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center; /* 念のため追加 */} 
  #loader-bg #loaderImg {
    margin: 0 auto; /* 左右中央揃え */}
      @media screen and (max-width: 780px) {
        #loaderImg img {
          width: 120px;}}
      @media screen and (max-width: 550px) {
      #loaderImg img {
        width: 80px; } }

 .btWrap {
  margin-top: 60px; }
  @media screen and (max-width: 780px) {
    .btWrap {
      margin-top: 40px; } }

.bt {
  border: none;
  background-color: #095B3A;
  color: #ffffff !important;
  display: inline-block;
  width: 250px;
  height: 50px;
  line-height: 50px;
  text-align: center; }
  .bt:hover {
    background-color: #0f9962; }
  .bt:disabled {
    background-color: #cccccc; }

.secTitle {
  margin-bottom: 60px; }
  .secTitle .secTitleEn {
    font-weight: 700;
    font-size: 3.4rem;
    font-family: "Poppins", sans-serif;
    letter-spacing: 10px;
    line-height: 1; }
    @media screen and (max-width: 780px) {
      .secTitle .secTitleEn {
        font-size: 2.8rem;
        letter-spacing: 2px; } }
  .secTitle .secTitleJp {
    font-weight: 700;
    line-height: 1;
    margin-top: 20px; }
    @media screen and (max-width: 780px) {
      .secTitle .secTitleJp {
        font-size: 1.8rem;
        margin-top: 10px; } }
  @media screen and (max-width: 550px) {
    .secTitle {
      margin-bottom: 20px; } }

#pageTitle {
  margin-top: 160px;
  height: 300px;
  display: flex;
  align-items: center;
  position: relative; }
  @media screen and (max-width: 780px) {
    #pageTitle {
      margin-top: 90px;
      height: 240px; } }
  #pageTitle #pageTitleEn {
    font-weight: 700;
    font-family: "Poppins", sans-serif;
    font-size: 4.8rem;
    letter-spacing: 10px;
    line-height: 1; }
    @media screen and (max-width: 780px) {
      #pageTitle #pageTitleEn {
        letter-spacing: 2px;
        font-size: 3.4rem; } }
    @media screen and (max-width: 780px) {
      #pageTitle #pageTitleEn .slideUp {
        display: block; } }
    @media screen and (max-width: 780px) {
      #pageTitle #pageTitleEn .slideUp:not(:first-child) {
        margin-top: 10px; } }
  #pageTitle #pageTitleJp {
    font-weight: 700;
    font-size: 2.4rem;
    margin-top: 40px;
    line-height: 1; }
    @media screen and (max-width: 780px) {
      #pageTitle #pageTitleJp {
        font-size: 1.8rem;
        margin-top: 20px; } }
  #pageTitle .secBg {
    height: 100%;
    top: 0;
    right: 0; }
    #pageTitle .secBg.way {
      width: 0; }
      #pageTitle .secBg.way.wayon {
        width: calc(50vw - 480px + 780px); }
        @media screen and (max-width: 780px) {
          #pageTitle .secBg.way.wayon {
            width: 80%; } }

@media screen and (max-width: 780px) {
  .lists {
    margin-top: 30px; } }
@media screen and (min-width: 780px) {
  .lists li {
    display: flex; } }
.lists li:not(:first-child) {
  border-top: solid 1px #095B3A;
  padding-top: 30px; }
  @media screen and (max-width: 780px) {
    .lists li:not(:first-child) {
      padding-top: 15px; } }
.lists li:not(:last-child) {
  padding-bottom: 30px; }
  @media screen and (max-width: 780px) {
    .lists li:not(:last-child) {
      padding-bottom: 15px; } }
@media screen and (max-width: 780px) {
  .lists li span {
    display: block; } }
.lists li span:first-child {
  font-weight: 600; }
  @media screen and (min-width: 780px) {
    .lists li span:first-child {
      width: 20%; } }
@media screen and (min-width: 780px) {
  .lists li span:last-child {
    flex: 1; } }

#pageWrap {
  margin-top: 140px;
  margin-bottom: 140px; }
  @media screen and (max-width: 780px) {
    #pageWrap {
      margin-top: 50px;
      margin-bottom: 50px; } }

.pageTopText {
  margin-bottom: 140px;
  line-height: 2.6;
  font-weight: 600; }
  @media screen and (max-width: 780px) {
    .pageTopText {
      line-height: 1.8;
      margin-bottom: 50px; } }

.pageBox {
  background-color: #f7f7f7;
  padding: 80px;
  margin-top: 60px; }
  @media screen and (max-width: 780px) {
    .pageBox {
      margin-top: 20px;
      padding: 35px 30px; } }
  .pageBox h2 {
    font-weight: 600;
    font-size: 2rem;
    padding-bottom: 10px; }
    @media screen and (max-width: 780px) {
      .pageBox h2 {
        font-size: 1.8rem; } }
  .pageBox p,
  .pageBox ol li {
    font-weight: 600;
    line-height: 2.6; }
    @media screen and (max-width: 780px) {
      .pageBox p,
      .pageBox ol li {
        line-height: 1.8; } }
  .pageBox p:not(:first-child) {
    margin-top: 30px;
    font-weight: 400; }
    @media screen and (max-width: 780px) {
      .pageBox p:not(:first-child) {
        margin-top: 15px; } }
  .pageBox ul {
    padding-left: 22px;
    margin-top: 10px; }
    .pageBox ul li {
      list-style: decimal; }

/*# sourceMappingURL=style.css.map */
