@charset "UTF-8";
@font-face {
    font-family: Broadcast;
    src: url(../fonts/Broadcast_Matter.ttf);
    font-weight: 400;
}

@font-face {
    font-family: YuGothic;
    src: url(../fonts/YuGothR.ttc);
    font-weight: 400;
}

@font-face {
    font-family: YuGothic;
    src: url(../fonts/YuGothM.ttc);
    font-weight: 500;
}

@font-face {
    font-family: YuGothic;
    src: url(../fonts/YuGothB.ttc);
    font-weight: 600;
}

@font-face {
    font-family: CerebriSansBook;
    src: url(../fonts/CerebriSansBook.ttf);
}

@font-face {
    font-family: Magnite;
    src: url(../fonts/Magnite.otf);
}

@-webkit-keyframes zoom-reverse {
  0%{
    transform: scale(1.05);
  }
  50% {
    transform: scale(0.95);
  }
  100%{
    transform: scale(1.05);
  }
}

@keyframes zoom-reverse {
  0%{
    transform: scale(1.05);
  }
  50% {
    transform: scale(0.95);
  }
  100%{
    transform: scale(1.05);
  }
}

@-webkit-keyframes zoom {
  0% {
    transform: scale(0.95);
  }
  50%{
    transform: scale(1.05);
  }
  0% {
    transform: scale(0.95);
  }
}

@keyframes zoom {
  0% {
    transform: scale(0.95);
  }
  50%{
    transform: scale(1.05);
  }
  0% {
    transform: scale(0.95);
  }
}

@-webkit-keyframes fly {
  0% {
    -webkit-transform: translateY(-1vw) rotate(-2deg);
    transform: translateY(-1vw) rotate(-2deg);
  }
  100% {
    -webkit-transform: translateY(2vw) rotate(2deg);
    transform: translateY(2vw) rotate(2deg);
  }
}

@keyframes fly {
  0% {
    -webkit-transform: translateY(-1vw) rotate(-2deg);
    transform: translateY(-1vw) rotate(-2deg);
  }
  100% {
    -webkit-transform: translateY(2vw) rotate(2deg);
    transform: translateY(2vw) rotate(2deg);
  }
}

@-webkit-keyframes fly02 {
  0% {
    -webkit-transform: translateY(2vw) rotate(2deg);
    transform: translateY(2vw) rotate(2deg);
  }
  100% {
    -webkit-transform: translateY(-1vw) rotate(-2deg);
    transform: translateY(-1vw) rotate(-2deg);
  }
}

@keyframes fly02 {
  0% {
    -webkit-transform: translateY(2vw) rotate(2deg);
    transform: translateY(2vw) rotate(2deg);
  }
  100% {
    -webkit-transform: translateY(-1vw) rotate(-2deg);
    transform: translateY(-1vw) rotate(-2deg);
  }
}

@-webkit-keyframes fly03 {
  0% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
  100% {
    -webkit-transform:  scale(1.05);
    transform:  scale(1.05);
  }
}

@keyframes fly03 {
  0% {
    -webkit-transform: translateY(1vw) rotate(5deg) scale(0.95);
    transform: translateY(1vw) rotate(5deg) scale(0.95);
  }
  100% {
    -webkit-transform: translateY(-1vw) rotate(-3deg) scale(1.05);
    transform:  translateY(-1vw) rotate(-3deg) scale(1.05);
  }
}

@-webkit-keyframes intel_item {
  40%,
  100% {
      -webkit-transform: rotateY(360deg);
      transform: rotateY(360deg);
  }
}

@keyframes intel_item {
  40%,
  100% {
      -webkit-transform: rotateY(360deg);
      transform: rotateY(360deg);
  }
}

@-webkit-keyframes mv_zoom {
  from {
	-webkit-transform: translate(-50%,-50%) scale(1);
    transform: translate(-50%,-50%) scale(1);
  }

  to {
	-webkit-transform: translate(-50%,-50%) scale(1.05);
    transform: translate(-50%,-50%) scale(1.05);
  }
}

@keyframes mv_zoom {
  from {
	-webkit-transform: translate(-50%,-50%) scale(1);
    transform: translate(-50%,-50%) scale(1);
  }

  to {
	-webkit-transform: translate(-50%,-50%) scale(1.05);
    transform: translate(-50%,-50%) scale(1.05);
  }
}

@-webkit-keyframes alert_01 {
	0%,25%,50%,75% {
		opacity: 0;
	}
	12.5%,62.5% {
		opacity: 0.6
	}
}

@keyframes alert_01 {
	0%,25%,50%,75% {
		opacity: 0;
	}
	12.5%,62.5% {
		opacity: 0.4
	}
}

@keyframes alert_02 {
	0%,25%,50%,75% {
		opacity: 0;
	}
	37.5%,87.5% {
		opacity: 0.4
	}
}

#menu-item-85,
#menu-item-1235 {
	display: none;
}

.u-alert.u-alert01{
	animation: 8s alert_01 infinite;
}

.u-alert.u-alert02{
	animation: 8s alert_02 infinite;
}

html {
    font-size: 62.5%;
}

main {
    background-color: #fff;
    max-width: 100%;
    overflow: hidden;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

ul {
    list-style: none;
}

a {
    text-decoration: none;
	color: inherit;
}

img {
    max-width: 100%;
}


@media only screen and (min-width: 1025px) {
  .sp-only {
    display: none!important;
  }
}
@media only screen and (max-width: 1024px) {
    .pc-only {
        display: none;
    }
    .sp-only {
        display: block;
    }
}

.g-recaptcha { margin: 0 0 35px; max-width: 100%; }

.c-banner {
	position: relative;
}

.c-banner::before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: linear-gradient(to bottom right,#FFD800, #FFB11D );
	opacity: 0.7;
}

.c-fit {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: YuGothic, sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.5;
}

section {
  position: relative;
}

@media only screen and (max-width: 767px) {
  body {
      min-width: 320px;
  }
}

.c-fixed-bg {
    position: fixed;
 }

.c-back {
  mix-blend-mode: difference;
  color: #fff;
  border-left: 1px solid #fff;
  z-index: 11;
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 0 25px 44px 14px;
  cursor: pointer;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
   -khtml-user-select: none; /* Konqueror HTML */
     -moz-user-select: none; /* Old versions of Firefox */
      -ms-user-select: none; /* Internet Explorer/Edge */
          user-select: none; /* Non-prefixed version, currently
                                supported by Chrome, Edge, Opera and Firefox */
}

.c-back span {
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  font-size: 2rem;
  letter-spacing: 3px;
}

body.is-active,
html.is-active{
  overflow: hidden;
	height: 100vh;
	height: -webkit-fill-available;
}

#js-bubbly {
  position: relative;
  overflow: hidden;
}

.l-container {
  max-width: 1040px;
  margin: 0 auto;
}

.l-container--small {
  max-width: 1140px;
}

.l-container--collapse {
  max-width: 1190px;
}

.l-container--1300 {
  max-width: 1340px;
}

.l-container--1327 {
  max-width: 1367px;
}

.l-container--1432 {
  max-width: 1472px;
}

.l-container--full-width {
	max-width: 100%;
}
/* Header
------------------------------------------------------------*/

.c-header {
  z-index: 100;
  position: sticky;
  position: -webkit-sticky;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid #707070;
  font-family: 'Montserrat', sans-serif;
  top: 0;
  left: 0;
}
.c-header__box {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
}

.c-header__menu {
    display: -webkit-box;
    display: flex;
    height: 100%;
}

.c-header__nav ul:not(.sub-menu) {
    height: 100%;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    font-weight: 500;
}

.c-header__nav ul a {
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #000;
    -webkit-transition: 0.3s all ease-in-out;
    transition: 0.3s all ease-in-out;
}

.c-header__nav ul a:hover,
.c-header__nav ul .is-active a {
    color: #040eff;
}

.c-header__call {
    position: relative;
    display: -webkit-inline-box;
    display: inline-flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    height: 100%;
    color: #000;
    font-weight: 400;
}

.c-header__contact {
    display: -webkit-inline-box;
    display: inline-flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    height: 100%;
    background: #e06d18;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #fff;
    font-weight: 600;
}

.c-trigger,
.c-trigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    box-sizing: border-box;
}

.c-trigger {
    margin-right: 40px;
    display: none;
    position: relative;
    width: 40px;
    height: 35px;
    background: none;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    overflow: hidden;
}

.c-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
}

.c-trigger span:nth-of-type(1) {
    top: 0;
}

.c-trigger span:nth-of-type(2) {
    top: 15px;
}

.c-trigger span:nth-of-type(3) {
    bottom: 0;
}

@-webkit-keyframes active-menu05-bar02 {
    100% {
        height: 0;
    }
}

@keyframes active-menu05-bar02 {
    100% {
        height: 0;
    }
}

#menu05 {
    z-index: 11;
}

#menu05.is-active span:nth-of-type(1) {
    -webkit-transform: translateY(15px) rotate(-45deg);
    transform: translateY(15px) rotate(-45deg);
}

#menu05.is-active span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    /* -webkit-animation: active-menu05-bar02 .8s forwards;
    animation: active-menu05-bar02 .8s forwards; */
}

#menu05.is-active span:nth-of-type(3) {
    -webkit-transform: translateY(-17px) rotate(45deg);
    transform: translateY(-17px) rotate(45deg);
}

/* End Header */
/* TOP PAGE */
/* MV */
.p-top .slick-list,
.p-top .slick-track {
  height: 100%;
}
.c-mv {
  position: relative;
}

.c-mv__body {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.c-mv__body::after {
  content: "";
  z-index: 3;
  position: absolute;
  background-image: url("../img/mv-box.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.c-mv__bottom {
  position: absolute;
  right: 0;
  bottom: 0;
}

.c-mv__item {
  position: relative;
  width: 100%;
  height: 95.5%;
  background: no-repeat bottom;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
  overflow: hidden;
}

.c-mv__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) scale(1.05);
  background: no-repeat bottom;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;
}

.slick-current .c-mv__bg{
  animation: mv_zoom 3.5s;
  animation-fill-mode: forwards;
}

.slic-curent.ani-delay .c-mv__bg{
  animation-delay: 0.5s;
}

.c-mv__item::after {
  content: "";
  top: 0;
  left: 0;
  right: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.19);
}

.c-mv__item5::after {
  background-color: rgba(0, 0, 0, 0);
}

.c-mv__camera {
  position: absolute;
  z-index: 0;
}

.c-mv__text {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 1;
  top: 32%;
  color: #fff;
  text-align: center;
}

.c-mv__title {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  line-height: 1;
}

.c-mv__title--orange {
  color: #FF720A;
}

.c-mv__desc {
  letter-spacing: 0.21em;
}

.c-mv__list {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0 auto;
}

.c-mv__list__item {
  position: absolute;
  z-index: 3;
}

.c-mv__list__item3,
.c-mv__list__item5 {
  z-index: 3;
}

.c-mv__list__item1,
.c-mv__list__item2 {
  z-index: 2;
}

.c-mv__list__item4 {
  z-index: 1;
}

/* .c-mv__list__item2,
.c-mv__list__item4{
  -webkit-animation: fly 2s infinite alternate ease-in-out;
          animation: fly 2s infinite alternate ease-in-out;
}

.c-mv__list__item1,
.c-mv__list__item5 {
  -webkit-animation: fly02 2s infinite alternate ease-in-out;
          animation: fly02 2s infinite alternate ease-in-out;
}

.c-mv__list__item3 {
  -webkit-animation: fly03 1.8s infinite alternate ease-in-out;
          animation: fly03 1.8s infinite alternate ease-in-out;
} */

.c-mv__list__item1,
.c-mv__list__item2 {
  -webkit-animation: zoom-reverse 3.2s infinite alternate ease-in-out;
          animation: zoom-reverse 3.2s infinite alternate ease-in-out;
}

.c-mv__list__item3,
.c-mv__list__item4,
.c-mv__list__item5{
  -webkit-animation: zoom 3.2s infinite alternate ease-in-out;
          animation: zoom 3.2s infinite alternate ease-in-out;
}

.c-mv__obj .item {
	position: absolute;
    width: 20%;
}

.c-topnews {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-topnews a {
	color: #000000;
}

.c-topnews__title {
  background-color: #FF8C38;
  text-align: center;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.2em;
  font-weight: bold;
}

.c-topnews__content {
  background-color: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.c-topnews__content p {
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.2em;
  font-weight: 500;
  line-height: 1;
}

.c-topnews__content h3 {
  font-weight: 500;
  text-decoration: underline;
  letter-spacing: 0.2em;
  overflow: hidden;
  line-height: 1.3;
}
.c-topbusiness--two {
	margin-top: 5%;
	justify-content: space-evenly;
}
.c-topbusiness {
  max-width: 906px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.c-topbusiness__item__img {
  position: relative;
  width: 100%;
  transition: 0.3s all;
  border-radius: 10px;
  overflow: hidden;
  margin: 0 auto;
}

.c-topbusiness__item:hover .c-topbusiness__item__img {
/* 	-webkit-transform: rotateY(360deg);
    transform: rotateY(360deg);
	transition: 2s all ease-in-out */
	transform: scale(1.1);
	box-shadow: 0 0 50px #00000038;
	transition: 0.4s all ease-in-out;
}

.c-topbusiness__item__img::before {
  display: block;
  content: '';
  padding-bottom: 100%;
}

.c-topbusiness__item__img img{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-topbusiness__item__heading {
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 1.36;
  position: relative;
}

.c-topbusiness__item__heading::after {
  content: "";
  position: absolute;
  bottom: 0;
  background: #FF8C38;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.c-topbusiness__item__desc {
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.3;
  width: 95%;
  margin: 0 auto;
  font-feature-settings: "palt";
}

.c-titleline {
    text-align: center;
    position: relative;
    line-height: 1;
    color: #fff;
    letter-spacing: 0.3em;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
}
.c-titleline::before,
.c-titleline:after {
    content: "";
    position: absolute;
    width: 55px;
    height: 4px;
}

.c-titleline::before {
    background-color: #fff;
    bottom: -4px;
    right: 50%;
}

.c-titleline::after {
    background-color: #000;
    bottom: 0;
    left: 50%;
}

.c-titleline--custom,
.c-titleline--black {
    color: #000;
}

.c-titleline--custom::before,
.c-titleline--black::before {
    background-color: #000;
}

.c-titleline--custom::after,
.c-titleline--black::after {
    background-color: #ff8c39;
}
/* P-TOP2 */
.p-top2__obj .item {
  position: absolute;
}
/* P-TOP3 */
.p-top3 {
	position: relative;
	z-index: 3
}

.p-top3__obj .item {
	position: absolute;
	z-index: -1;
}

.p-top3__part1 {
  position: relative;
}

.p-top3__box {
  background-color: white;
  position: relative;
  z-index: 2;
}

.p-top3__box p{
  letter-spacing: 0.2em;
  line-height: 3.08;
  font-weight: 600;
}

.p-top3__bg .image{
  position: absolute;
}

.p-top3__bg .image::before{
  content: '';
  display: block;
}

.p-top3__bg .image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-top3__bg .image:first-child{
  top: 0;
  right: 0;
}

.p-top3__bg .image:last-child {
  left: 0;
  bottom: 0;
}

.p-top3__bg .image:first-child::before{
  padding-bottom: 51.76%;
}

.p-top3__bg .image:last-child::before{
  padding-bottom: 81.95%;
}

.p-top3__part2{
  text-align: center;
}

.p-top4{
  background: url(../img/top4_bg.svg) no-repeat center;
  background-size: auto 103%;
  color: white;
  position: relative;
  z-index: 2;
}

.p-top4__obj .item {
  position: absolute;
  z-index: -1;
}

.p-top4__obj .item:first-child {
  z-index: -2
}

.p-top4__part1 .c-titleline {
  letter-spacing: 0.3em;
}

.p-top4__step {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.p-top4__step .image .box {
  position: relative;
  transform: skew(0deg, -4.5deg);
  overflow: hidden;
  box-shadow: 20px 20px 0  #0000000f;
}

.p-top4__step .image .box::after{
  content: '';
  display: block;
}

.p-top4__step .image .box img{
  position: absolute;
  top: 0;
  left: 0;
}

.p-top4__step h3{
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.2em;
  font-family: 'Montserrat', sans-serif;
  color: #ff7f21;
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
}

.p-top4__step li span{
  font-weight: 600;
  letter-spacing: 0.2em;
  background-color: white;
  color: #211D1D;
  display: inline-block;
}

.p-top4__desc{
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 2.3;
  text-align: center;
}
/* --- */

.p-top4__head {
  position: relative;
}

.p-top4__head-title {
  text-align: center;
  display: inline-block;
}

.p-top4__head-title h2{
	color: white;
	/* text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px; */
  /* font-family: 'Montserrat', sans-serif; */
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0;
  line-height: 1;
  font-weight: 500;
}

.p-top4__head-title h3,
.p-top4__head-title p {
  /* background-color: white;
  color: #000; */
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}

.p-top4__head-title h3 {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  letter-spacing: 0.2em;
}

.p-top4__head-image {
	position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
}

.p-top4__head-image .box {
  position: relative;
  transform: skew(0deg, -4.5deg);
  overflow: hidden;
  box-shadow: 20px 20px 0  #0000000f;
}

.p-top4__head-image .box::after{
  content: '';
  display: block;
}

.p-top4__head-image .box img{
  position: absolute;
  top: 0;
  left: 0;
}

.p-top4__head__arrow {
  position: absolute;
}

.p-top4__content-box {
  display: flex;
  justify-content: space-between;
  position: relative;
}

.p-top4__body-item {
  display: flex;
  justify-content: center;
  background-color: white;
  margin: 0 auto;
  box-shadow: 0 0 50px #00000038;
  position: relative;
  z-index: 2;
}

.p-top4__body-item::after {
  content: '';
  display: block;
  position: absolute;
  background-image: linear-gradient(to bottom right, transparent 50%, #ff7800 50%);
  bottom: 0;
  right: 0;
}

.p-top4__body-item * {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
}

.p-top4__body-item h4 {
  /* background-image: linear-gradient(to bottom, #FFA700 , #FF6C00); */
  /* text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px; */
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.2em;
  color: white;
  background-color: #ff7800;
  border-color: #ff7800;
  text-align: center;
  justify-content: center;
  position: relative;
}

.p-top4__body-item h4::after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(99%, -50%);
  border: solid transparent;
  border-left-color: inherit;
}

.p-top4__body-item:nth-child(2) h4 {
  /* background-image: linear-gradient(to bottom, #FFC65C , #FFA500);
  color: #FFB01E; */
  background-color: #ffa800;
  border-color: #ffa800;
}

.p-top4__body-item:nth-child(2)::after {
  background-image: linear-gradient(to bottom right, transparent 50%, #ffa800 50%);
}

.p-top4__body-item:nth-child(3) h4 {
  /* background-image: linear-gradient(to bottom, #FFD800 , #FFB11D);
  color: #FFBF13; */
  background-color: #e9b735;
  border-color: #e9b735;
}

.p-top4__body-item:nth-child(3)::after {
  background-image: linear-gradient(to bottom right, transparent 50%, #e9b735 50%);
}

.p-top4__body-item p {
  color: black;
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 2;
  justify-content: flex-start;
}

.p-top4__quick-desc {
  text-align: left;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  letter-spacing: 0.2em;
}
/* --- */
.p-top4__part2{
  position: absolute;
  display: flex;
  align-items: flex-start;
  bottom: 0;
  left: 50%;
}

.p-top4__part2 .image{
  width: 20.6vw;
  position: relative;
  transform: rotate(-5deg);
}

.p-top4__part2 li:nth-child(2),.p-top4__part2 li:nth-child(4) {
  margin-top: -5.2%;
  margin-left: -0.4%;
}

.p-top4__part2 li:nth-child(2) {
  margin-left: -0.4%;
}

.p-top4__part2 li:nth-child(3) {
  margin-top: -1.7%;
  margin-left: 0.3%;
}

.p-top4__part2 li:nth-child(4){
margin-left: -0.3%;
}

.p-top4__part2 li:last-child{
  margin-top: -9.6%;
  margin-left: -0.32%;
}

.p-top4__part2 .image::after{
  display: block;
  content: '';
  padding-bottom: 86%;
}

.p-top4__part2 img{
  position: absolute;
  top: 0;
  left: 0;
}
/* P-TOP5 */
.p-top5 {
  position: relative;
  z-index: 2;
}

.p-top5__obj .item {
	position: absolute;
	z-index: -1;
}

.p-top5__obj .item:first-child {
	top: 3%;
  right: 0;
	z-index: -2;
}

.p-top5__bg {
  content: '';
  background: url(../img/top5_bg.png) no-repeat center;
  background-size: cover;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: -1;
	overflow: hidden;
}

.p-top5__bg::before {
  content: '';
  display: block;
  padding-bottom: 50.12%;
  width: 100%;
  background-color: #FF8900;
  opacity: 0.8;
}

.p-top5__list {
  display: flex;
  justify-content: center;
}

.p-top5__list .c-post {
  transition: 0.3s all ease-in-out;
}

.p-top5__list .c-post:hover {
  transform: scale(1.05);
}
/* .p-top5__image {
  position: relative;
  width: 100%;
	background: white;
	box-shadow: 0 0 50px #00000038;
} */

/* .p-top5__image::after {
  display: block;
  content: '';
  padding-bottom: 100%;
} */

/* .p-top5__image::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: solid white;
  pointer-events: none;
  box-sizing: border-box;
  z-index: 2;
} */

/* .p-top5__image img{
  position: absolute;
  top: 50%;
  left: 50%;
	transform: translate(-50%, -50%);
	object-fit: contain;
} */
/* .p-top5__list figcaption h4{
  font-weight: 600;
  letter-spacing: 0.2em;
  text-indent: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
} */
/* .p-top5__list figcaption p{
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #B5B5B5;
  line-height: 1;
  font-family: 'Montserrat', sans-serif;
  text-indent: 5px;
} */
.p-top5__btn {
  text-align: center;
}

.p-top5 .c-post {
	height: 100%;
}
/* P-TOP6 */
.p-top6 {
  position: relative;
}

.p-top6__obj .item {
	position: absolute;
}

.p-top6__obj .item:first-child {
	left: 0;
	top: 0;
}

.p-top6__obj .item:last-child {
  left: 16%;
  top: 0;
}

.p-top6__box {
  text-align: center;
  background-color: white;
  position: relative;
  z-index: 2;
  box-shadow: 0 30px 60px #0000003b;
}

.p-top6__box p {
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 1.8;
}

.p-top6__bg {
  position: absolute;
  top: 0;
  right: 0;
  max-height: 94.8%;
}

.p-top6__bg::before {
  content: '';
  display: block;
}

.p-top6__bg img{
  position: absolute;
  top: 0;
  left: 0;
}

/* P-TOP7 */
.p-top7__content {
  position: relative;
}

.p-top7__image--01 {
  position: relative;
}

.p-top7__image--02 {
  position: absolute;
	z-index: 1;
}

.p-top7__image::before {
  content: '';
  display: block;
  width: 0;
}

.p-top7__image img{
  position: absolute;
  top: 0;
  left: 0;
}

.p-top7__part2 {
  position: relative;
  z-index: 2;
}

.p-top7__head {
  text-align: center;
}

.p-top7__head img {
  margin: 0 auto;
}

.p-top7__box {
  width: 100%;
  background-color: white;
  box-shadow: 0 0 50px #00000038;
}

.p-top7__body {
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 2;
}

.p-top7__btn {
  text-align: center;
}

.p-top7__obj .item{
  position: absolute;
}
/* FOOTER */

.c-footer {
  background-color: #211d1d;
}

.c-footer__header {
  background: -webkit-gradient(linear, left top, left bottom, from(#ff8326), to(#fca126));
  background: linear-gradient(to bottom, #ff8326, #fca126);
  text-align: center;
}

.c-footer__header--blue {
  background: -webkit-gradient(linear, left top, left bottom, from(#6e36f1), to(#58a5e2));
  background: linear-gradient(to bottom, #6e36f1, #58a5e2);
}

.c-footer__contact {
  margin: 0 auto;
  background-color: #fff;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  font-family: 'Noto Sans JP', sans-serif;
}

.c-footer__web {
  -webkit-box-flex: 1;
  flex: 1;
  position: relative;
}

/* .c-footer__web::after {
  content: "";
  height: 80%;
  width: 1px;
  background-color: #211d1d;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
} */

.c-footer__web i {
  display: block;
}

.c-footer__web a {
  background: #211d1d;
  display: inline-block;
  color: #fff;
  letter-spacing: 0.3em;
  font-weight: bold;
	transition: 0.3s all ease-in-out;
	border: 2px solid #211d1d;
}

.c-footer__web a:hover {
	background: #fff;
	color: #211d1d;
}

.c-footer__web p,
.c-footer__call p {
  font-weight: 500;
  letter-spacing: 0.05em;
}

.c-footer__call {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-footer__call i {
  display: block;
}

.c-footer__call a {
  color: #000;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  display: inline-block;
}

.c-footer__body {
  margin: 0 auto;
  color: #fff;
  display: -webkit-box;
  display: flex;
}

.c-footer__body a {
  display: block;
}

.c-footer__left {
  font-family: 'Noto Sans JP', sans-serif;
}

.c-footer__left p {
  letter-spacing: 0.05em;
  font-weight: 400;
}

.c-footer__left p:nth-child(2) {
  font-weight: 300;
}

.c-footer__left a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
  align-items: center;
  background: #fff;
  color: #211d1d;
  letter-spacing: 0.05em;
  font-weight: 400;
  font-family: 'Montserrat', sans-serif;
}

.c-footer__right {
  -webkit-box-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: flex;
}

.c-footer__right li {
  display: -webkit-box;
  display: flex;
}

.c-footer__right li::before {
  content: "\f105";
  font-family: 'FontAwesome';
}

.c-footer__right a {
  color: #fff;
}

.c-footer__nav {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-footer__more {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-footer__heading {
  display: block;
  font-weight: 400;
}

.c-footer__copy {
  font-family: 'Montserrat', sans-serif;
}

.c-footer__footer {
  margin: 0 auto;
  color: #fff;
}

@media only screen and (max-width: 1150px) {
  .c-footer__contact,
  .c-footer__body,
  .c-footer__footer {
      max-width: 94%;
  }
}

@media only screen and (max-width: 1050px) {
  .c-footer__contact {
      padding: 50px 0;
  }
  .c-footer__web,
  .c-footer__call {
      margin: 0 20px;
  }
  .c-footer__web i,
  .c-footer__call i {
      font-size: 3.5rem;
  }
}

/* End TOP PAGE */
/* ---------------------------------------- */
/* COMPANY */
.p-company1 {
  text-align: center;
  position: relative;
}

.p-company1__body {
  background: url(../img/company_bg.jpg) no-repeat center;
  background-size: cover;
  position: relative;
  z-index: 2;
}



.p-company1__body::after {
  display: block;
  content: '';
  position: absolute;
  background-color: #ff8326;
  opacity: 0.6;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.p-company1__box {
  background-color: white;
  text-align: center;
  box-shadow: 0 0 5px gray;
  position: relative;
  z-index: 1;
}

.p-company1__box p {
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 39px;
}

.p-company1__box h4 {
  letter-spacing: 0.16em;
}

.p-company1__image {
  position: absolute;
  z-index: 0;
}

.p-company1__image::before {
  content: '';
  display: block;
  padding-bottom: 92.3%;
}

.p-company1__image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-company2 {
  max-width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.p-company2__profile li {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  border-bottom: 1px solid #dbdbdb;
}

.p-company2__profile li h5 {
  letter-spacing: 0.2em;
}

.p-company2__profile li p {
  letter-spacing: 0.2em;
  line-height: 1.8;
}

.p-company2__facility li {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.p-company2__facility li::before {
  content: '';
  display: block;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fe8c34), to(#ff6b01));
  background-image: linear-gradient(to bottom, #fe8c34, #ff6b01);
}

.p-company2__facility li:nth-child(even)::before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffd801), to(#ffb21e));
  background-image: linear-gradient(to bottom, #ffd801, #ffb21e);
}

.p-company2__facility li .text h3 {
  color: #dcdcdc;
  letter-spacing: 0.3em;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
}

.p-company2__facility li .text h4 {
  letter-spacing: 0.2em;
}

.p-company2__facility li .text dd {
display: flex;
flex-wrap: wrap;
align-items: baseline;
letter-spacing: 0.2em;
  font-weight: 500;
line-height: 1.8;
}

.p-company2__facility li .text dd p:first-child {
font-weight: bold;
}

.p-company2__facility li .text dd p:last-child {
box-sizing:border-box;
}

.p-company2__facility li .text dl {
	font-feature-settings: "palt";
}

.p-company2__objects .item {
  position: absolute;
  z-index: -2;
}

.p-company3 {
  background: url(../img/company3_bg.jpg) no-repeat center;
  background-size: cover;
  position: relative;
  z-index: 2;
}

.p-company3::after {
  display: block;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #ff8326;
  opacity: 0.6;
  z-index: -1;
}

.p-company3__access {
  background-color: #fff;
}

.p-company3__access .head {
  text-align: center;
}

.p-company3__access .head h3 {
  color: #dbdbdb;
  letter-spacing: 0.3em;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
}

.p-company3__access .head h4 {
  letter-spacing: 0.2em;
}

.p-company3__access .image {
  width: 100%;
  position: relative;
  margin: 0 auto;
}

.p-company3__access .image::before {
  display: block;
  content: '';
}

.p-company3__access .image img {
  position: absolute;
  top: 0;
  left: 0;
	object-fit: contain;
}

.p-company3__access .infor li {
  display: -webkit-box;
  display: flex;
}

.p-company3__access .infor li::before {
  content: '';
  display: block;
  background-color: #f09755;
}

.p-company3__access .infor li .text h5 {
  letter-spacing: 0.2em;
}

.p-company3__access .infor li .text p {
  line-height: 1.8;
  letter-spacing: 0.2em;
}

.p-company3__access .btn {
  text-align: center;
}

.p-company3__access .btn a {
  display: inline-block;
  color: white;
  background-color: black;
  text-align: center;
  letter-spacing: 0.4em;
  font-weight: bold;
  font-family: 'Noto Sans JP', sans-serif;
  transition: 0.3s all ease-in-out;
  border: 2px solid black;
}

.p-company3__access .btn a:hover {
  color: black;
  background-color: white;
}

.p-company4__bussiness {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 60px;
}

.p-company4__location {
letter-spacing: 0.2em;
border-left: solid #ff8c39;
}

.p-company4__item .image {
  width: 100%;
  position: relative;
}

.p-company4__item .image::before {
  content: '';
  display: block;
  padding-bottom: 100%;
}

.p-company4__item .image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-company4__item h3 {
  text-align: center;
  letter-spacing: 0.2em;
}

.p-company4__item p {
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.p-company4 .p-company4__item--2 {
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
}

.p-company4 .p-company4__item--2 .text {
/* margin-left: auto;
  margin-right: auto; */
}

.p-company4__item--2 .text {
text-align: left;
}

.p-company4__item--2 h3 {
text-align: left;
position: relative;
}

.p-company4__item--2 h3::after {
	content: '';
	display: block;
	position: absolute;
	background: #ff8c39;
	bottom: 0;
	left: 0;
	width: 100px;
}
/* END COMPANY */
/* ---------------------------------------- */
/* INTRODUCTION */
.p-introduction1 {
  overflow: hidden;
  position: relative;
}

.p-introduction1__obj .item{
position: absolute;
}

.p-introduction2__btn {
	text-align: center;
}

.p-introduction3 {
position: relative;
}

.p-introduction3__obj .item {
position: absolute;
}

.p-introduction5 {
  position: relative;
z-index: 2
}

.p-introduction5__obj .item {
position: absolute;
}

.p-introduction5__obj .item:nth-child(3) {
z-index: -1
}

.p-introduction5::before {
  content: "";
  position: absolute;
  z-index: 0;
  background: url("../img/floor-map-image-1.png");
  background-size: cover;
}

.p-introduction5::after {
  content: "";
  position: absolute;
  z-index: 0;
  background: rgba(224, 109, 24, 0.9);
}

.p-introduction7 {
  background-color: #f0f0f0;
}
/* END INTRODUCTION */
/* ---------------------------------------- */
/* ARCHIVE PRODUCT */
.p-result1 {
  overflow: hidden;
  max-width: 100%;
}

.p-result1__empty {
	text-align: center;
	opacity: 0.5;
	line-height: 2;
}

.p-result1__list .c-post{
  height: 100%;
}

.p-result1__tabs {
  position: relative;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
  justify-content: center;
}

.p-result1__tabs::before,
.p-result1__tabs::after {
  display: block;
  position: absolute;
  content: '';
  background-color: #dcdcdc;
}

.p-result1__tabs::before {
  top: 0;
}

.p-result1__tabs::after {
  bottom: 0;
}

.p-result1__tabs li {
  text-align: center;
  border-right: 1px solid #dcdcdc;
}

.p-result1__tabs li:first-child {
  border-left: 1px solid #dcdcdc;
}

.p-result1__tabs li a {
  display: block;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  color: #dcdcdc;
  line-height: 1.1;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}

.p-result1__tabs li a:hover,
.p-result1__tabs li a.is-active {
  color: white;
  background-color: #ff7209;
}

.p-result1__tabs li a.is-active {
  position: relative;
  letter-spacing: 0.2em;
}

.p-result1__list .list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}

.p-result1__ajax-box {
  position: relative;
}

.p-result1__ajax-box.change {
  min-height: 300px;
}
/* --- */

.p-result1__year-list-item h4{
  display: flex;
  align-items: center;
  color: #b3b3b3;
  letter-spacing: 0.2em;
  cursor: pointer;
}

.p-result1__year-list-item h4 span {
  display: block;
  background-color: #ff7209;
  position: relative;
  border-radius: 50%;
}

.p-result1__year-list-item h4 span::before,
.p-result1__year-list-item h4 span::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 7%;
  background-color: #fff;
  border-radius: 2px;
  transform: translate(-50%, -50%);
  transition: 0.3s all ease-in-out;
}

.p-result1__year-list-item h4 span::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.p-result1__year-list-item.is-actived h4 span::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.p-result1__year-list-item:not(:first-child) .p-result1__year-content {
  display: none;
}

.p-result1__year-content ul {
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
}

.p-result1__year-content .head_title,
.p-result1__year-content li {
  display: flex;
  justify-content: space-evenly;
  align-items: baseline;
  margin-left: auto;
  margin-right: auto;
}

.p-result1__year-content .head_title p {
/* 	text-align: center; */
	font-size: 1.2rem;
	color: lightgray;
	font-weight: bold;
}

.p-result1__year-content li{
  color: #000;
  position: relative;
	flex-wrap: wrap;
	  z-index: 2;
	  overflow: hidden;
}

.p-result1__year-content li:nth-child(even)::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: -1;
	background: #f0f0f096;
	width: 100vw;
	height: 100%;
}

.p-result1__year-content .head_title p.name,
.p-result1__year-content li p.name {
  width: 20%;
}

.p-result1__year-content .head_title p.subtitle,
.p-result1__year-content li p.subtitle {
  width: 30%;
}

.p-result1__year-content .title {
	font-weight: bold;
}

.p-result1__year-content .name span {
	display: inline-block;
	border: 2px solid #fca126;
    border-radius: 5px;
	font-weight: 600;
    letter-spacing: 0.1em;
}
/* END ARCHIVE PRODUCT */
/* ---------------------------------------- */
/* TOKYO */
.p-tokyo {
  overflow: hidden;
}

.p-tokyo4__obj .item,
.p-tokyo7__obj .item,
.p-tokyo9__obj .item {
  position: absolute;
}

.p-tokyo2 {
  position: relative;
  z-index: 1;
}

.p-tokyo2::after {
  content: "";
  z-index: -1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right bottom, from(#521dee), to(#3b9ae0));
  background: linear-gradient(to right bottom, #521dee, #3b9ae0);
}

.p-tokyo3 {
  position: relative;
  z-index: 2;
}

.p-tokyo3__picture,
.p-tokyo3__obj .item{
  position: absolute;
}

.p-tokyo3__picture {
  left: 0;
  top: 0;
}

/* .p-tokyo3::after {
  content: "";
  background: #3b9ae0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: -1;
} */

.p-tokyo3__intro {
  display: -webkit-box;
  display: flex;
	flex-wrap: wrap;
}

.p-tokyo3__subtitle {
  letter-spacing: 0.2em;
  font-weight: bold;
}

.p-tokyo3__desc {
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.p-tokyo4 {
  z-index: 1;
  position: relative;
}

/* .p-tokyo4::before {
  content: "";
  position: absolute;
  z-index: 0;
  background: -webkit-gradient(linear, left top, right bottom, from(#4189c7), to(#47abc2));
  background: linear-gradient(to right bottom, #4189c7, #47abc2);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
} */

/* .p-tokyo4::after {
  content: "";
  background: #3b9ae0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: 0;
} */

.p-tokyo5 {
  background-color: #f0f0f0;
}

.p-tokyo7 {
  position: relative;
  z-index: 4;
  background: -webkit-gradient(linear, left top, right top, from(#5512ef), to(#3b9ae0));
  background: linear-gradient(to right, #5512ef, #3b9ae0);
}

/* .p-tokyo7::before {
  content: "";
  position: absolute;
  z-index: 0;
  background: -webkit-gradient(linear, left bottom, right top, from(#4cc7bb), to(#428ec8));
  background: linear-gradient(to top right, #4cc7bb, #428ec8);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-tokyo7::after {
  content: "";
  position: absolute;
  z-index: 0;
  border: solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
} */

.p-tokyo9 {
  position: relative;
  background: url("../img/top5_bg.png");
  background-size: cover;
}

.p-tokyo9::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, right bottom, left top, from(rgba(76, 199, 187, 0.9)), to(rgba(66, 142, 200, 0.9)));
  background: linear-gradient(to left top, rgba(76, 199, 187, 0.9), rgba(66, 142, 200, 0.9));
}

/* .p-tokyo9::after {
  content: "";
  background: #77b0ea;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: 0;
} */

.p-tokyo9 .c-used__body::after {
display: none;
}

.p-tokyo11 {
  background-color: #f0f0f0;
}


.p-tokyo13__box {
display: flex;
align-items: center;
flex-wrap: wrap;
width: 100%;
}

.p-tokyo13__map,
.p-tokyo13__infor {
width: 50%;
}

.p-tokyo13__map {
background-color: gray;
}

.p-tokyo13__map iframe {
width: 100%;
height: 100%;
}

.p-tokyo13__infor {
letter-spacing: 0.2em;
line-height: 1.8;
}

.p-tokyo13__infor a{
text-decoration: underline;
}

.p-tokyo13__btn {
text-align: center;
}

.p-tokyo14 {
position:relative;
color: white;
z-index: 2;
}

.p-tokyo14::before {
content: '';
display: block;
position: absolute;
background: -webkit-gradient(linear, left top, right top, from(#5512ef), to(#3b9ae0));
  background: linear-gradient(to right, #5512ef, #3b9ae0);
z-index: -1;
}

.p-tokyo14__content {
text-align: center;
letter-spacing: 0.2em;
position: relative;
z-index: 2;
}

.p-tokyo14__content h2{
font-family: 'Poppins', sans-serif;
font-weight: 300;
line-height: 1;
letter-spacing: 0.3em;
}

.p-tokyo14__content h4 {
color: black;
background: -webkit-gradient(linear, left top, right top, from(#feea00), to(#fec700));
  background: linear-gradient(to right, #feea00, #fec700);
width: 90%;
margin:0 auto;
}

.p-tokyo14__content p {
line-height: 1.8;
/* text-decoration: underline; */
}

.p-tokyo14__image2 .image,
.p-tokyo14__image .image {
	position: absolute;
}

.p-tokyo14__image2 .image::before,
.p-tokyo14__image .image::before {
	content: '';
	display: block;
}

.p-tokyo14__image2 .image img,
.p-tokyo14__image .image img{
	position: absolute;
	top: 0;
	left: 0;
}

.p-tokyo14__image .image:first-child {
	left: 0;
	z-index: -1;
}

.p-tokyo14__image .image:nth-child(2) {
	right: 0;
	bottom: 0;
	z-index: -2;
}

.p-tokyo14__image2 .image:last-child {
	top: 0;
	right: 0;
	z-index: -1;
}

.p-tokyo14__obj .item{
	position: absolute;
	opacity: 0.3;
	z-index: -1;
}

.p-tokyo14__obj .item:first-child {
    top: 8%;
    left: 16.5%;
}

.p-tokyo14__obj .item:nth-child(2) {
	bottom: 5%;
    left: 16.5%;
}

.p-tokyo14__obj .item:nth-child(3) {
	top: 57%;
    left: 42.5%;
    transform: translateY(-50%);
}

.p-tokyo14__obj .item:nth-child(4) {
	opacity: 1;
	right: 0;
	bottom: 0;
	z-index: -4;
}
/* END TOKYO */
/* ---------------------------------------- */
/* SINGLE RECRUITMENT */
.p-recruitment {
  overflow: hidden;
}

.p-recruitment1 {
  padding: 90px 0 246px;
}

.p-recruitment2 {
  background: -webkit-gradient(linear, left bottom, right top, color-stop(5%, #ff6d03), to(#ff8c38));
  background: linear-gradient(to top right, #ff6d03 5%, #ff8c38);
  padding: 95px 0 0;
  color: #fff;
  position: relative;
  z-index: 4;
}

.p-recruitment2::before {
  content: "";
  right: -200px;
  top: -41px;
  position: absolute;
  z-index: 0;
  width: 345px;
  height: 345px;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffb21c), to(#ffd700));
  background: linear-gradient(to top right, #ffb21c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
	box-shadow: 0 0 50px #00000038;
}

.p-recruitment2::after {
  content: "";
  right: -190px;
  top: 222px;
  position: absolute;
  z-index: 0;
  width: 245px;
  height: 245px;
  border: 5px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-recruitment3 {
  padding: 174px 0 181px;
}

.p-recruitment4 {
  padding: 111px 0 98px;
  position: relative;
  background: url(../img/top5_bg.png);
  background-size: cover;
}

.p-recruitment4::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left bottom, right top, from(rgba(255, 178, 28, 0.8)), to(rgba(255, 215, 0, 0.8)));
  background: linear-gradient(to top right, rgba(255, 178, 28, 0.8), rgba(255, 215, 0, 0.8));
}

.p-recruitment4 .c-title2 {
  color: #fff;
}

.p-recruitment5 {
  overflow: hidden;
  padding: 149px 0 130px;
  position: relative;
  z-index: 4;
}

.p-recruitment5::before {
  content: "";
  right: -4%;
  top: 25%;
  position: absolute;
  z-index: 0;
  width: 120px;
  height: 120px;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffb21c), to(#ffd700));
  background: linear-gradient(to top right, #ffb21c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-recruitment5::after {
  content: "";
  right: -3%;
  top: 3%;
  position: absolute;
  z-index: -1;
  width: 290px;
  height: 290px;
  border: 5px solid #ff720a;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-recruitment6 {
  background: #f0f0f0;
}
/* END SINGLE RECRUITMENT */
/* ---------------------------------------- */
/* RECRUITMENT */
.p-intel__box {
  max-width: 100%;
  overflow: hidden;
}

.p-intel1__message {
  position: relative;
  z-index: 2;
}

.p-intel1__message::before {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ff8c39), to(#ff6b01));
  background-image: linear-gradient(to bottom, #ff8c39, #ff6b01);
}

.p-intel1__image-list {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  justify-content: space-between;
  position: relative;
}

.p-intel1__image-list .image {
  position: relative;
}

.p-intel1__image-list .image::before {
  content: '';
  display: block;
}

.p-intel1__image-list .image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-intel1__image-list .image--1::before {
  padding-bottom: 88.5%;
}

.p-intel1__image-list .image--2::before {
  padding-bottom: 86.12%;
}

.p-intel1__image-list .image--3::before {
  padding-bottom: 85.9%;
}

.p-intel1__image-list .image--3 {
  position: absolute;
}

.p-intel1__content .text {
  line-height: 1.8;
  letter-spacing: 0.2em;
}

.p-intel1__content .text .name {
	text-align: right;
	margin-top: 20px;
}

.p-intel1__content .text .name p{
	display: inline-block;
	text-align: center;
}

.p-intel1__content .text .name span {
	font-family: 'Yuji Syuku', serif;
}

.p-intel2 {
  background: url(../img/company3_bg.jpg) no-repeat center;
  background-size: cover;
  z-index: 2;
  position: relative;
}

.p-intel2::before {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffd801), to(#ffb21c));
  background-image: linear-gradient(to bottom, #ffd801, #ffb21c);
  opacity: 0.5;
  z-index: -1;
}

.p-intel2__head {
  color: white;
}

.p-intel2__body {
  background-color: white;
  position: relative;
  z-index: 2;
}

.p-intel2__body .object {
  position: absolute;
}

.p-intel2__body .object img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-intel2__body .object::before {
  display: block;
  content: '';
}

.p-intel2__body .object--1 {
  z-index: -2;
}

.p-intel2__body .object--1::before {
  padding-bottom: 86.09%;
}

.p-intel2__body .object--2 {
  z-index: -1;
}

.p-intel2__body .object--2::before {
  padding-bottom: 86.5%;
}

.p-intel2__body .object--3 {
  z-index: -3;
}

.p-intel2__body .object--3::before {
  padding-bottom: 86%;
}

.p-intel2__body p {
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 500;
  margin: 0 auto;
  text-align: center;
}

.p-intel2__body02 {
	display: flex;
	justify-content: center;
}

.p-intel2__body02-text {
	text-align: center;
	line-height: 1.8;
    letter-spacing: 0.2em;
    font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: white;
}

.p-intel2__body02-text p{
	max-width: 90%;
}

.p-intel3 {
  position: relative;
  max-width: 100%;
}

.p-intel3__list {
  display: -webkit-box;
  display: flex;
	justify-content: space-evenly;
}

.p-intel3__list li {
  text-align: center;
}

.p-intel3__list li:nth-child(even) .image {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffd902), to(#ffb21c));
  background-image: linear-gradient(to bottom, #ffd902, #ffb21c);
}

.p-intel3__list li:nth-child(2) .image_animation {
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}

.p-intel3__list li:nth-child(3) .image_animation {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.p-intel3__list li:nth-child(4) .image_animation {
  -webkit-animation-delay: 4.5s;
  animation-delay: 4.5s;
}

/* .p-intel3__list li .image_animation {
  -webkit-animation: intel_item 9s infinite ease-in;
  animation: intel_item 9s infinite ease-in;
} */

.p-intel3__list li .image {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ff8b36), to(#ff6c02));
  background-image: linear-gradient(to bottom, #ff8b36, #ff6c02);
  position: relative;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: auto;
	box-shadow: 0 0 50px #00000038;
}

.p-intel3__list li .image::before {
  content: '';
  display: block;
  padding-bottom: 100%;
}

.p-intel3__list li .image img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.p-intel3__list li h4 {
  letter-spacing: 0.2em;
  line-height: 1.24;
}

.p-intel3__list li p {
  line-height: 1.56;
  letter-spacing: 0.2em;
  margin: 0 auto;
  text-align: left;
}

.p-intel3__objects .item {
  position: absolute;
}

.p-intel3__objects .item1 {
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.p-intel3__objects .item2 {
  right: 0;
  top: 1.5%;
  -webkit-transform: translate(16%, -8%);
  transform: translate(16%, -8%);
}

.p-intel3__objects .item3 {
  right: 0;
  top: 19%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

.p-intel3__objects .item4 {
  left: 0;
  top: 61%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.p-intel4 {
  padding: 95px 0 128px;
  background-color: #f0f0f0;
}

.p-intel4 .c-section-title {
  margin-bottom: 59px;
}

.p-intel4 .c-section-title p {
  margin-top: 13px;
}

.p-intel4__list {
  display: -webkit-box;
  display: flex;
  justify-content: center;
flex-wrap: wrap;
}

.p-intel4__list li {
  width: 31.76%;
  background-color: white;
  padding: 45px 38px 35px;
  border-radius: 17px;
  overflow: hidden;
  position: relative;
  text-align: center;
  margin-bottom: calc((100% - (31.76% * 3)) / 2);
  transition: 0.3s all ease-in-out;
}

.p-intel4__list li:hover {
  transform: scale(1.03);
  box-shadow: 0 0 50px #00000038;
}

.p-intel4__list li:not(:nth-child(3n)){
margin-right: calc((100% - (31.76% * 3)) / 2);
}

.p-intel4__list li::before {
  content: '';
  position: absolute;
  display: block;
  height: 11px;
  width: 100%;
  background-color: #ff7209;
  top: 0;
  left: 0;
}

.p-intel4__list li h4 {
  font-size: 2.3rem;
  margin-top: 19px;
  letter-spacing: 0.2em;
}

.p-intel4__list li h4 a {
  color: black;
}

.p-intel4__list .image {
  width: 100%;
  position: relative;
}

.p-intel4__list .image::before {
  display: block;
  content: '';
  padding-bottom: 57%;
}

.p-intel4__list .image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-intel5__content {
  position: relative;
  z-index: 2;
  color: white;
}

.p-intel5__content .l-container{
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
}

.p-intel5__content::before {
  content: '';
  display: block;
  position: absolute;
  width: 60%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ff8c39), to(#ff6b01));
  background-image: linear-gradient(to bottom, #ff8c39, #ff6b01);
  z-index: -1;
}

.p-intel5__image {
  position: relative;
}

.p-intel5__image::before {
  content: '';
  display: block;
}

.p-intel5__image img {
  position: absolute;
  top: 0;
  left: 0;
}

.p-intel5__message .text .name {
	text-align: right;
	margin-top: 20px;
}

.p-intel5__message .text .name p{
	display: inline-block;
	text-align: center;
}

.p-intel5__message .text .name span {
	font-family: 'Noto Sans JP', sans-serif;
}
/* END RECRUITMENT */
/* ---------------------------------------- */
/* ARCHIVE NEWS */
.p-archive__category {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  border-bottom: 2px solid #ccc;
}

.p-archive__category li:not(:last-child),
.p-archive__category li:not(:nth-child(5n)){
  margin-right: 2%;
}

.p-archive__category li a{
  display: block;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
  letter-spacing: 0.2em;
  font-size: 1.6rem;
  color: #000;
  border: 3px solid #fca126;
  border-radius: 12px;
  transition: 0.3s all ease-in-out;
}

.p-archive__category .is-active a,
.p-archive__category li a:hover {
  color: white;
  background-color: #fca126;
}

.p-archive__list .item_url {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  color: black;
  letter-spacing: 0.2em;
  transition: 0.3s all;
  border-bottom: 1px solid #ccc;
  position: relative;
}

.p-archive__list .item_url::before {
  content: '\f054';
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 2rem;
  top: 50%;
  right: 15px;
  color: #fca126;
  transform: translateY(-50%);
}

.p-archive__list .item_url--quick-read::before {
content: '';
}

.p-archive__list .item_url--custom:not(.item_url--quick-read)::before {
display: none;
}

.p-archive__list .item_url--custom:not(.item_url--quick-read) .arrow {
position: absolute;
top: 50%;
right: 15px;
transform: translateY(-50%);
max-width: 30px;
}

.p-archive__list .item_url--quick-read .arrow {
display: none;
}

.p-archive__list .item_url--custom:not(.item_url--quick-read) .arrow img{
width: 100%;
}

.p-archive__list .item_url:hover {
  transition: 0.6s all ease-in-out;
  background-color: #fca12640;
}

.p-archive__list .date {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  opacity: 0.8;
  color: #fca126;
}

.p-archive__list .cat {
  font-family: 'Noto Sans JP', sans-serif;
  display: flex;
  align-items: baseline;
}

.p-archive__list .cat li{
  flex: 1;
}

.p-archive__list .cat li span{
  display: block;
  border: 2px solid #fca126;
  border-radius: 5px;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background-color: white;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.p-archive__list h5 {
  width: 95%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.p-archive__content {
	position: relative;
}

.p-archive__content .content.change {
	min-height: 400px;
	opacity: 0;
}

.c-ajax-loading {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: white;
	display: none;
}

.c-ajax-loading img {
	width: 30%;
	max-width: 150px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}
/* END ARCHIVE NEWS */
/* ---------------------------------------- */
/* SINGLE NEWS */

.p-single__date {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	letter-spacing: 0.2em;
}

.p-single__date .post_date {
    line-height: 1;
    font-family: 'Montserrat', sans-serif;
	text-indent: 5px;
	color: #B5B5B5;
	font-weight: 600;
}

.p-single__date .working_time {
    background-color: #f0f0f0;
    font-weight: 500;
    text-align: center;
}

.p-single__thumbnail {
  position: relative;
  width: 80%;
}

.p-single__text {
  line-height: 1.3;
  letter-spacing: 0.2em;
}

.p-single__text p{
  line-height: 1.8;
}

.p-single__thumbnail::before {
  content: '';
  display: block;
  padding-bottom: 60%;
}

.p-single__thumbnail img{
  position: absolute;
  top: 0;
  left: 0;
	object-fit: contain;
}

.p-single :is(h2,h3,h4,h5,h6) {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
}

.p-single__btn {
  max-width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  font-family: 'Noto Sans JP', sans-serif;
}

.p-single__btn .button {
  width: 47%;
}

.p-single__btn .button a{
  display: block;
  font-weight: bold;
  border: 3px solid #fca126;
  color: black;
  text-align: center;
  box-sizing: border-box;
  transition: 0.3s all;
  position: relative;
}

.p-single__btn .button.prev a::before,
.p-single__btn .button.next a::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2rem;
}

.p-single__btn .button.prev a::before {
  content: '\f104';
  left: 15px;
}

.p-single__btn .button.next a::before {
  content: '\f105';
  right: 15px;
}

.p-single__btn .button:not(.go-back) a:hover {
  background-color: #fca126;
  color: white;
  transition: 0.3s all ease-in-out;
}

.p-single__btn .button.go-back {
  width: 100%;
  margin: 0 auto;
}

.p-single__btn .button.go-back a {
  color: white;
  border: none;
  background: linear-gradient(to right, #ff8326, #fca126);
}
/* END SINGLE NEWS */
/* ---------------------------------------- */
/* PRIVACY POLICY */
.p-policy__text {
  letter-spacing: 0.2em;
  line-height: 1.8;
}

.p-policy__text h3 {
  font-family: 'Noto Sans JP', sans-serif;
}
/* CONTACT */
.p-contact .c-contactForm {
	box-shadow: initial;
}

.p-contact__completed-text {
	margin: 0 auto;
	max-width: 800px;
}

.p-contact__completed-text p {
	letter-spacing: 0.2em;
	line-height: 2;
}

.p-contact__completed-btn {
	text-align: center;
}
/* END PRIVACY POLICY */
/* ---------------------------------------- */
/* CONTACT */
.c-contact-box{
  display: flex;
  align-items: center;
  max-width: 100%;
  border: 3px solid #e06d18;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.c-contact-box::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
/*   height: 80%; */
	height: 100%;
  width: 0;
  border-right: 3px dashed #e06d18;
  opacity: 0.5;
}

.c-contact-box .number,
.c-contact-box .text {
  flex: 1;
  max-width: 50%;
}

.c-contact-box .text {
  line-height: 1.8;
  letter-spacing: 0.1em;
  text-align: center;
}

.c-contact-box h3{
  font-family: 'Noto Sans JP', sans-serif;
}

.c-contact-box .number {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.c-contact-box .number .item {
	width: 100%;
	height: 50%;
	position: relative;
}

.c-contact-box .number .item:not(:first-child)::after {
	content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 0;
    width: 100%;
    border-top: 3px dashed #e06d18;
    opacity: 0.5;
}

.c-contact-box .number a {
  color: #e06d18;
  display: block;
  transition: 0.3s;
	position: relative;
}

.c-contact-box .number a::before {
	content: '('attr(data-id)')';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 50%);
	color: inherit;
	letter-spacing: 0.2em;
}

.c-contact-box .number a img {
  filter: invert(48%) sepia(97%) saturate(1722%) hue-rotate(353deg) brightness(92%) contrast(90%);
  vertical-align: middle;
	max-width: 40px;
}

.c-contact-box .number a:hover {
  background-color: #e06d18;
  color: white;
  opacity: 0.6;
}

.c-contact-box .number a:hover img {
  filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(28deg) brightness(106%) contrast(101%);
}

.c-form {
  max-width: 100%;
  margin: 0 auto;
}

.c-form__label{
  letter-spacing: 0.2em;
  font-weight: 600;
}

.c-form__label label {
	display: inline-block;
}

.c-form__label.required::after {
  content: '必須';
  display: inline-block;
  color: white;
  background-color: #e06d18;
  font-weight: 500;
  text-align: center;
  border-radius: 3px;
}

.c-form__input input,
.c-form__input select,
.c-form__input textarea{
  width: 100%;
  outline: none;
  border: 2px solid #ccc;
  border-radius: 5px;
  transition: 0.3s ease-in-out;
  letter-spacing: 0.1em;
  outline: none;
}

.c-form__input textarea {
  line-height: 1.5;
}

.c-form__input--select {
	position: relative;
}

.c-form__input--select select {
  color: #757575;
}

.c-form__input--select.c-form__input--selected select {
  color: black;
}

.mw_wp_form:not(.mw_wp_form_confirm) .c-form__input--select:after {
    content: '\0025BC';
    font: normal normal normal 12px/1 FontAwesome;
    color: inherit;
    right: 14px;
    top: 50%;
	transform: translatey(-50%);
/*     height: 26px; */
    position: absolute;
    pointer-events: none;
}

.c-form__input select {
	-webkit-appearance: none;
}

.c-form__input input:focus,
.c-form__input select:focus,
.c-form__input textarea:focus {
  border-color: #e06d18
}

.c-form__btn {
  text-align: center;
}

.c-form__btn input[type=submit] {
  background-color: #000;
  color: white;
  letter-spacing: 0.2em;
  font-weight: 600;
  max-width: 70%;
  cursor: pointer;
  border: none;
  outline: none;
  width: 300px;
  padding: 10px 5px;
  transition: 0.3s all ease-in-out;
  border: 2px solid #000;
}

.c-form__btn input[type=submit]:hover {
  color: #000;
  background-color: white;
}
/* END CONTACT */
/* ---------------------------------------- */
/* COMPONENT */
.c-back {
  mix-blend-mode: difference;
  color: #fff;
  border-left: 1px solid #fff;
  z-index: 11;
  position: fixed;
  bottom: 0;
  cursor: pointer;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
   -khtml-user-select: none; /* Konqueror HTML */
     -moz-user-select: none; /* Old versions of Firefox */
      -ms-user-select: none; /* Internet Explorer/Edge */
          user-select: none; /* Non-prefixed version, currently
                                supported by Chrome, Edge, Opera and Firefox */
}

.c-back span {
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  letter-spacing: 3px;
}

.c-box1 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border: solid #ccc;
  position: absolute;
  z-index: 0;
}

.c-breadcrumb {
  display: -webkit-box;
  display: flex;
  letter-spacing: 2px;
  letter-spacing: 0.1em;
}

.c-breadcrumb li {
  position: relative;
}

.c-breadcrumb li:first-child {
  padding-left: 0;
}

.c-breadcrumb li:first-child a {
  color: #000;
}

.c-breadcrumb li:first-child:before {
  content: '';
}

.c-breadcrumb li:before {
  color: #ff8326;
  position: absolute;
  top: 50%;
  left: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  content: "\f105";
  font-family: 'FontAwesome';
  font-size: 1.3rem;
}

.c-breadcrumb li a {
  color: #ccc;
	text-transform: uppercase;
}

.c-btndark {
  text-align: center;
  display: inline-block;
  max-width: 379px;
  width: 100%;
  position: relative;
  color: white;
  background-color: #211d1c;
  font-weight: bold;
  letter-spacing: 0.3em;
  line-height: 1;
  font-family: 'Noto Sans JP', sans-serif;
  border: 2px solid #211d1c;
  transition: 0.3s all ease-in-out;
}

.c-btndark::after {
  content: '';
  position: absolute;
  display: block;
  border: 1px solid transparent;
  border-top-color: white;
  border-right-color: white;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  pointer-events: none;
  transition: 0.3s all ease-in-out;
}

.c-btndark:hover {
  color: #211d1c;
  background-color: white;
}

.c-btndark:hover::after {
  border-top-color: #211d1c;
  border-right-color: #211d1c;
}

.c-contactForm {
  max-width: 100%;
  margin: 0 auto;
  background-color: white;
  box-shadow: 0 0 10px 5px #80808042;
}

.c-contactForm .mw_wp_form_complete {
	display: flex;
	justify-content: center;
	align-items: center;
}

.c-contactForm__row {
  margin: 0 auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.mw_wp_form_confirm .c-contactForm__row {
	align-items: baseline
}

.mw_wp_form_confirm .c-contactForm__input {
	font-size: inherit;
	font-weight: 600;
}

.c-contactForm__row.c-contactForm__row--submit {
  -webkit-box-pack: center;
  justify-content: center;
	align-items: center;
	flex-direction: column;
}

.c-contactForm__row--submit .submit-btn {
  width: 100%;
  position: relative;
	text-align: center;
}

.c-contactForm__row--submit .submit-btn::after {
  content: '';
  position: absolute;
  top: 50%;
  display: block;
  border: 1px solid transparent;
  border-top-color: white;
  border-right-color: white;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  pointer-events: none;
}

.c-contactForm__row--submit .submit-btn input[type=submit] {
  width: 100%;
	max-width: 70%;
  text-align: center;
  color: white;
  background-color: #211d1c;
  font-weight: bold;
  letter-spacing: 0.4em;
  border: none;
  outline: none;
  cursor: pointer;
  transition: 0.3s all ease-in-out;
  border: 2px solid #211d1c;
	margin-left: auto;
	margin-right: auto;
}

.c-contactForm__row--submit .submit-btn input[type=submit]:hover {
  background-color: white;
  color: #211d1c;
}

.c-contactForm__label .u-required {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}

.c-contactForm__label .u-required::after {
  content: '必須';
  display: inline-block;
  color: white;
  background-color: #ff7209;
  border-radius: 3px;
  letter-spacing: 0.2em;
}

.c-contactForm__label label {
  font-weight: bold;
  letter-spacing: 0.2em;
}

.c-contactForm__input input,
.c-contactForm__input select,
.c-contactForm__input textarea {
  color: #b9b9b9;
  background-color: #f7f7f7;
  border: none;
  outline: none;
  width: 100%;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-desc {
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.c-faq {
  position: relative;
  z-index: 4;
}

.c-faq::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffb21c), to(#ffd700));
  background: linear-gradient(to top right, #ffb21c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 3px -3px 29px 6px rgba(0, 0, 0, 0.23);
}

.c-faq::after {
  content: "";
  position: absolute;
  z-index: -2;
  border: solid #ff720a;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-faq__item {
  border-bottom: 1px solid #ccc;
}

.c-faq__heading {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
}

.c-faq__title {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}

.c-faq__title span {
  color: #ff720a;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
  letter-spacing: 0.3em;
}

.c-faq__title p {
  letter-spacing: 0.2em;
  font-weight: bold;
}

.c-faq__icon {
  cursor: pointer;
  color: #fff;
  background: #ff720a;
  border-radius: 50%;
  text-align: center;
}

.c-faq__icon.is-active {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-faq__inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
	display: none;
}

.c-faq__inner span {
  color: #000;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
  letter-spacing: 0.3em;
}

.c-faq__desc {
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-floor__body {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
	justify-content: center;
}

.c-floor__picture {
  background-color: #fff;
  line-height: 1;
  position: relative;
}

.c-floor__picture li {
position: absolute;
opacity: 0;
transition: 0.3s all
}

.c-floor__picture li:hover {
opacity: 0.4
}

.c-floor__picture li:first-child {
top: 21.3%;
background-color: darkgreen;
}

.c-floor__picture li:last-child {
top: 46.3%;
background-color: darkviolet
}

.c-floor__picture li span {
display: block;
width: 100%;
height: 100%;
cursor: pointer;
}

.c-floor__content {
  position: relative;
  -webkit-box-flex: 1;
  flex: 1;
  position: relative;
  box-shadow: 11px 20px 29px 6px rgba(0, 0, 0, 0.1);
  background-color: #fff;
/* overflow: hidden; */
}

.c-floor__content .loading {
position: absolute;
width: 100%;
height: 100%;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
background-color: inherit;
display: none;
z-index: 2;
	border-radius: inherit;
}

.c-floor__content .loading img {
position: absolute;
max-width: 10%;
min-width: 75px;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}

.c-floor__content::before {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  border-top: 30px solid transparent;
  border-right: 60px solid #fff;
  border-bottom: 30px solid transparent;
}

.c-floor__img {
  line-height: 1;
	overflow: hidden;
}

.c-floor__title {
  letter-spacing: 5px;
}

.c-floor__desc {
  letter-spacing: .55rem;
  line-height: 2;
}

.c-flow--blue .c-flow__number {
  -webkit-box-pack: end;
  justify-content: flex-end;
  background: transparent;
}

.c-flow--blue .c-flow__number::before {
  color: #fff;
  text-shadow: #dbdbdb 3px 0px 0px, #dbdbdb 2.83487px 0.98158px 0px, #dbdbdb 2.35766px 1.85511px 0px, #dbdbdb 1.62091px 2.52441px 0px, #dbdbdb 0.70571px 2.91581px 0px, #dbdbdb -0.28717px 2.98622px 0px, #dbdbdb -1.24844px 2.72789px 0px, #dbdbdb -2.07227px 2.16926px 0px, #dbdbdb -2.66798px 1.37182px 0px, #dbdbdb -2.96998px 0.42336px 0px, #dbdbdb -2.94502px -0.5717px 0px, #dbdbdb -2.59586px -1.50383px 0px, #dbdbdb -1.96093px -2.27041px 0px, #dbdbdb -1.11013px -2.78704px 0px, #dbdbdb -0.13712px -2.99686px 0px, #dbdbdb 0.85099px -2.87677px 0px, #dbdbdb 1.74541px -2.43999px 0px, #dbdbdb 2.44769px -1.73459px 0px, #dbdbdb 2.88051px -0.83825px 0px;
}

.c-flow--blue .c-flow__item {
  border-left: solid #77b0ea;
}

.c-flow--blue .c-flow__item:nth-child(even) {
  border-left: solid #865df3;
}

.c-flow--blue .c-flow__item:nth-child(even) .c-flow__number {
  background: transparent;
}

.c-flow--blue .c-flow__item:nth-child(even) .c-flow__number::before {
  color: #fff;
}

.c-flow__body {
  counter-reset: section;
}

.c-flow__number {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffc559), to(#ffa603));
  background: linear-gradient(to bottom, #ffc559, #ffa603);
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: stretch;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  letter-spacing: 0.2em;
}

.c-flow__number::before {
  color: #ffb42a;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.2em;
  font-weight: 600;
  counter-increment: section;
  /* Increment the value of section counter by 1 */
  content: "0" counter(section);
  /* Display counter value in default style (decimal) */
  text-shadow: white 2px 0px 0px, white 1.75517px 0.95885px 0px, white 1.0806px 1.68294px 0px, white 0.14147px 1.99499px 0px, white -0.83229px 1.81859px 0px, white -1.60229px 1.19694px 0px, white -1.97998px 0.28224px 0px, white -1.87291px -0.70157px 0px, white -1.30729px -1.5136px 0px, white -0.42159px -1.95506px 0px, white 0.56732px -1.91785px 0px, white 1.41734px -1.41108px 0px, white 1.92034px -0.55883px 0px;
}

.c-flow__item {
  display: -webkit-box;
  display: flex;
  border: 1px solid #dcdcdc;
}

.c-flow__item:nth-child(even) .c-flow__number {
  background: -webkit-gradient(linear, left top, left bottom, from(#ff8a35), to(#ff6c02));
  background: linear-gradient(to bottom, #ff8a35, #ff6c02);
}

.c-flow__item:nth-child(even) .c-flow__number::before {
  color: #ff7a1a;
}

.c-flow__content {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-flow__heading {
  letter-spacing: 0.2em;
  font-weight: 600;
}

.c-flow__desc {
  letter-spacing: 0.2em;
  line-height: 2;
}

.c-how {
  text-align: center;
  background-color: white;
}

.c-how__desc {
  letter-spacing: 0.2em;
  font-weight: bold;
}

.c-how__btn {
  margin: 0 auto;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
/*   -webkit-box-pack: justify; */
  justify-content: space-evenly;
  -webkit-box-align: center;
  align-items: center;
}

.c-how__btn a {
  display: block;
  transition: 0.3s all ease-in-out;
}

.c-how__btn a:hover {
  transform: scale(1.05);
  /* box-shadow: 0 0 50px #00000038; */
}

.c-job__body {
  margin: 0 auto;
}

.c-message {
  position: relative;
}

/* .c-message .slick-list {
	overflow: initial;
} */

.c-message .slick-slide {
  margin: 0 30px;
}

/* .c-message .slick-slide {
	transition: 0.3s all ease-in-out;
	opacity: 0;
	visibility: hidden
}

.c-message .slick-slide.slick-active,
.c-message .slick-slide.slick-current{
	opacity: 1;
	visibility: visible;
} */

.c-message__item {
  background: #fff;
  margin: 0 auto;
	width: 100%;
	position: relative;
	height: 100%;
	border-radius: 10px;
}

.c-message__body {
  display: -webkit-box;
  display: flex;
  justify-content: space-between;
  justify-content: space-evenly;
	flex-wrap: wrap;
}

.c-message__picture {
  border: solid #ccc;
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%,-50%)
}

.c-message__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-message__content {
  color: #000;
}

.c-message__title {
  text-align: center;
  letter-spacing: 0.2em;
  font-weight: 600;
}

.c-message__desc {
  letter-spacing: 0.2em;
  line-height: 1.8;
  font-weight: 500;
}

.c-message__name {
  text-align: right;
  display: block;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-more {
  margin: 0 auto;
}

.c-more__item {
  position: relative;
  border: 1px solid #ccc;
  display: -webkit-box;
  display: flex;
  background: url(../img/recruit_bg.png) no-repeat center;
  background-size: cover;
}

.c-more__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
/*   background: rgba(224, 109, 24, 0.9); */
	background-image: linear-gradient(to bottom,#FF8C38, #FF6B00);
	opacity: 0.85;
}

.c-more__heading {
  position: relative;
}

.c-more__content {
  -webkit-box-flex: 1;
  flex: 1;
  -webkit-clip-path: polygon(16% 0, 104% 0, 100% 100%, 0% 100%);
  clip-path: polygon(16% 0, 104% 0, 100% 100%, 0% 100%);
  background: white;
}

.c-more__title {
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
  font-family: 'Montserrat', sans-serif;
}

.c-more__subtitle {
  color: #fff;
  letter-spacing: 0.2em;
  font-weight: 600;
}

.c-more__desc {
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-more__link {
  color: #fff;
  position: relative;
  background-color: #211d1c;
  font-weight: bold;
  letter-spacing: 0.3em;
  display: block;
  width: 100%;
  text-align: right;
  font-family: 'Noto Sans JP', sans-serif;
}

.c-more__link::after {
  content: '';
  position: absolute;
  display: block;
  border: 1px solid transparent;
  border-top-color: white;
  border-right-color: white;
  pointer-events: none;
}

.c-news {
  position: relative;
  z-index: 1;
  background-color: #fff;
  border: 2px solid #77b0ea;
  box-shadow: 11px 20px 29px 6px rgba(0, 0, 0, 0.1);
}

.c-news__path {
  border-right: solid #77b0ea;
}

.c-news__path::after {
  content: "\f0da";
  font-family: 'FontAwesome';
  color: #fff;
  position: absolute;
}

.c-news__item {
  border-bottom: 1px solid #ccc;
}

.c-news__date {
  color: #ccc;
  letter-spacing: 0.2em;
  font-weight: 500;
  font-family: 'Montserrat', sans-serif;
}

.c-news__title {
  letter-spacing: 0.2em;
  font-weight: 600;
}

.c-news__desc {
  letter-spacing: 0.2em;
  line-height: 1.625;
  font-weight: 500;
overflow: hidden;
 text-overflow: ellipsis;
 display: -webkit-box;
 -webkit-line-clamp: 2; /* number of lines to show */
         line-clamp: 2; 
 -webkit-box-orient: vertical;
}

.c-object {
  display: block;
  background-color: #ff8730;
  color: transparent;
  font-size: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-object::before {
  display: block;
  content: '';
  padding-bottom: 100%;
}

.c-object--2 {
  background-color: transparent;
  border: 6px solid #ff9147;
}

.c-object--2-white {
border-color: white;
}

.c-object--2-gray {
border-color: #DBDBDB;
}

.c-object--3 {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffd801), to(#ffb21c));
  background-image: linear-gradient(to bottom, #ffd801, #ffb21c);
}

.c-object--4 {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fe9402), to(#ffae2b));
  background-image: linear-gradient(to bottom, #fe9402, #ffae2b);
}

.c-object--5 {
background-color: #FAFAFA;
}

.c-object--6 {
background: -webkit-gradient(linear, left top, right bottom, from(#521dee), to(#3b9ae0));
  background: linear-gradient(to right bottom, #521dee, #3b9ae0);
}

.c-object--7 {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fed700), to(#ffb21e));
  background-image: linear-gradient(to bottom, #fed700, #ffb21e);
}

.c-object--8 {
  background-color: #3b9ae0;
}

.c-object--9 {
      background: linear-gradient(to bottom, #428BC9, #4CC9BB);
}

.c-object--10 {
  background: -webkit-gradient(linear, left bottom, right top, from(#4cc7bb), to(#428ec8));
  background: linear-gradient(to top right, #4cc7bb, #428ec8);
}

.c-object--11 {
  background-color: #77b0ea;
}

.c-object--shadow {
box-shadow: 0 0 50px #00000038;
}

.c-pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
}

.c-pagination .prev,
.c-pagination .next {
  display: -webkit-box;
  display: flex!important;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  color: white;
  background-color: #211d1c;
}

.c-pagination__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
}

.c-pagination__list .page-numbers {
  color: #b4b4b4;
  display: block;
}

.c-pagination__list .page-numbers:not(:last-child) {
  margin-right: 32px;
}

.c-pagination__list .page-numbers:not(.next):not(.prev):hover,
.c-pagination__list .page-numbers.current {
  color: #df7a32;
}

.c-pick-up {
  position: relative;
}

.c-pick-up__slide .slick-track {
	display: flex !important;
}

.c-pick-up--blue .c-pick-up__slide .slick-dots .slick-active button::before {
  color: #77b0ea;
}

.c-pick-up--blue .c-post--blue:hover {
  border-color: #67b0fa;
}

.c-pick-up__slide .slick-dots {
  bottom: 0;
}

.c-pick-up__slide .slick-dots button::before {
  content: '⬤';
  color: #d8d8d8;
  opacity: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
}

.c-pick-up__slide .slick-dots .slick-active button::before {
  color: #fc9045;
}

.c-pick-up__item .c-post {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
  opacity: 0.2;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  animation: nonCenterSlide 0.3s ease-in-out;
  animation-fill-mode: forwards;
}

.c-pick-up__item:not(.slick-current) .c-post {
  box-shadow: none;
}

.c-pick-up__item:not(.slick-current) .c-post {
  pointer-events: none;
}

.c-pick-up__item.slick-current .c-post {
  /* opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1); */
  animation: centerSlide 0.3s ease-in-out;
  animation-delay: 500ms;
  animation-fill-mode: forwards;
}

@keyframes nonCenterSlide {
  from {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
    opacity: 0.2;
  }
}

@keyframes centerSlide {
  from {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
    opacity: 0.2;
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.c-pick-up__arrows .arrow {
  position: absolute;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  background-color: #211d1c;
  color: #fff;
  cursor: pointer;
}

.c-pick-up__arrows .arrow.prev,
.c-pick-up__arrows .arrow.next {
  top: 45.9%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.c-pick-up__arrows .arrow.prev {
  left: 16.4%;
}

.c-pick-up__arrows .arrow.next {
  right: 16.4%;
}

.c-plan--blue .c-plan__item {
  border-left-color: #77b0ea;
}

.c-plan--blue .c-plan__item:nth-child(even) {
  border-left-color: #865df3;
}

.c-plan__body {
counter-reset: case_number;
}

.c-plan__item {
  border-left: solid #ff720a;
  box-shadow: 11px 20px 29px 6px rgba(0, 0, 0, 0.05);
}

.c-plan__item:nth-child(even) {
  border-left: solid #ffc646;
}

.c-plan__heading {
  font-weight: 600;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #ccc;
counter-increment: case_number;
}

.c-plan__img {
  position: relative;
}

.c-plan__img::before {
  content: '';
  display: block;
}

.c-plan__img img {
  position: absolute;
  top: 0;
  left: 0;
}

.c-plan__heading span::after {
content: counter(case_number);
}

.c-plan__detail {
  display: -webkit-box;
  display: flex;
}

.c-plan__content {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-plan__title {
  line-height: 1;
  letter-spacing: 0.2em;
}

.c-plan__desc {
  letter-spacing: 1px;
  line-height: 1.7;
}

.c-plan__price {
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.2em;
  font-family: 'Montserrat', sans-serif;
}

.c-plan__price span {
  font-family: YuGothic, sans-serif;
}

.c-plan__cmt .item {
display: flex;
justify-content: space-between;
}

.c-plan__cmt .image img {
width: 100%
}

.c-plan__footer {
  text-align: center;
}

.c-plan__footer p {
  font-weight: 600;
  letter-spacing: 0.2em;
}

.c-plan__btn {
  position: relative;
  display: inline-block;
  background: #211d1d;
  letter-spacing: 4px;
  font-weight: 500;
  color: #fff;
  border: 2px solid #211d1d;
  transition: 0.3s all ease-in-out;
  font-family: 'Noto Sans JP', sans-serif;
}

.c-plan__btn::after {
  position: absolute;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  content: "\f105";
  font-family: 'FontAwesome';
  color: inherit;
	top: 50%;
}

.c-plan__btn:hover {
	color: #211d1d;
	background: white;
}

.c-point {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#FF8C38), to(#FF6B00));
  background-image: linear-gradient(to bottom,#FF8C38, #FF6B00);
  color: white;
  text-align: center;
  max-width: 100%;
  overflow: hidden;
}

.c-point__list {
  display: -webkit-box;
  display: flex;
  counter-reset: point;
}

.c-point__text p {
  line-height: 1.34;
  letter-spacing: 0.2em;
/*   font-weight: 600; */
  text-align: left;
}

.c-point__count {
  letter-spacing: 0.25em;
  line-height: 1;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

.c-point__count::after {
  counter-increment: point;
  content: "0" counter(point);
  display: block;
  letter-spacing: 0.2em;
  line-height: 1;
}

.c-point__image, .c-point__title {
	position: relative;
}

.c-point__sub-title {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.c-point__sub-title::before {
	-webkit-transform: skew(-10deg) rotate(-8deg);
    transform: skew(-10deg) rotate(-8deg);
}

.c-point__image {
  -webkit-transform: skew(-10deg) rotate(-8deg);
  transform: skew(-10deg) rotate(-8deg);
  z-index: 2;
}

.c-point__sub-title::before,
.c-point__image::before {
  z-index: -1;
  position: absolute;
  content: '';
  background-color: #FF6C00;
/*   opacity: 0.3; */
  width: 100%;
  height: 100%;
  right: -15px;
  bottom: -15px;
}

.c-point__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transform: skew(7deg) scale(1.2) rotate(7deg);
  transform: skew(7deg) scale(1.2) rotate(7deg);
  position: absolute;
  top: 0;
  left: 0;
}

.c-point__image-box {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.c-point__desc {
  letter-spacing: 0.2em;
  line-height: 1.8;
  font-weight: 500;
}

.c-pointblue {
  position: relative;
  z-index: 3;
  color: #fff;
}

/* .c-pointblue::before {
  content: "";
  background: #3b9ae0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: -1;
} */

.c-pointblue__body {
  -webkit-box-pack: justify;
  justify-content: space-between;
  display: -webkit-box;
  display: flex;
}

.c-pointblue__item {
  text-align: center;
}

.c-pointblue__number {
  position: relative;
  display: inline-block;
  font-weight: 300;
  border-bottom: solid #fff;
  letter-spacing: 0.3em;
  font-family: 'Poppins', sans-serif;
}

.c-pointblue__title {
  letter-spacing: 0.2em;
  font-weight: 600;
  line-height: 1.34;
}

.c-pointblue__banner {
  width: 100%;
}

.c-pointblue__banner img{
  width: 100%;
}

.c-pointblue__desc {
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-pointblue__desc img{
vertical-align: middle;
}

.c-pointblue__desc .larger {
	font-size: 1.5rem;
	font-weight: bold;
}

.c-pointblue__desc b{
	font-family: 'Poppins', sans-serif;
	display: inline-block;
}

.c-pointblue .c-pointblue__desc b span{
	color: #d3181f;
}

.c-post {
  background-color: white;
  border: solid #f0f0f0;
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
	min-width: 30vw;
}

.c-post a {
  color: #1f1e1c;
}

.slick-active .c-post, 
.c-post:hover,
.c-post--orange {
  border-color: #f09755;
  box-shadow: 0 0 10px 5px #80808042;
}

.c-post--blue {
  border-color: #77b0ea;
  box-shadow: 0 0 10px 5px #80808042;
}

.c-post__image {
  min-height: 250px;
  position: relative;
}

.c-post__image img{
	object-fit: contain;
}

.c-post__image::before {
  content: '';
  width: 0;
  display: block;
}

.c-post__image a {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  height: 100%;
width: 100%;
}

.c-post__head {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
}

.c-post__head h3 {
  letter-spacing: 0.2em;
}

.c-post__head p {
  letter-spacing: 0.2em;
  background-color: #f0f0f0;
  font-weight: 500;
	text-align: center;
}

.c-post__head p span{
	word-break: keep-all;
	display: inline-block;
}

.c-post__body p {
  line-height: 1.875;
  letter-spacing: 0.2em;
overflow: hidden;
 text-overflow: ellipsis;
 display: -webkit-box;
 -webkit-line-clamp: 3; /* number of lines to show */
         line-clamp: 3; 
 -webkit-box-orient: vertical;
}

.c-post__body h5 {
  max-width: 100%;
  font-weight: 500;
  letter-spacing: 0.2em;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.c-post__body h5 a {
  opacity: 0.4;
  letter-spacing: 0.08em;
  text-decoration: underline;
  /* white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block; */
  max-width: 100%;
}

.c-post__body h5 a::before {
  content: '\f0c1';
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.c-post__foot {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  flex-wrap: wrap;
}

.c-post__foot li {
  font-weight: bold;
	width: auto;
}

.c-post__foot li a {
  display: block;
  background-color: #f0f0f0;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: bold;
}

.c-preamble {
  margin: 0 auto;
}

.c-preamble__sub {
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
}

.c-preamble__title {
  text-align: center;
  letter-spacing: 0.2em;
  line-height: 1.96;
}

.c-preamble__item {
  display: -webkit-box;
  display: flex;
}

.c-preamble__content {
  position: relative;
  background-color: #ff8932;
}

.c-preamble__content::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffaf2d), to(#ff9401));
  background: linear-gradient(to top right, #ffaf2d, #ff9401);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-preamble__content::after {
  content: "";
  position: absolute;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffd800), to(#ffb21d));
  background: linear-gradient(to top right, #ffd800, #ffb21d);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-preamble__desc {
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-preamble__picture {
  position: relative;
  -webkit-box-align: baseline;
  align-items: baseline;
  -webkit-box-flex: 1;
  flex: 1;
  line-height: 1;
}

.c-preamble__picture .slick-list,
.c-preamble__picture .slick-track,
.c-preamble__picture .slick-slide{
height: 100%;
}

.c-preamble__picture::before {
  content: "";
  position: absolute;
  z-index: -1;
  border: solid #ff9401;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-preamble__picture::after {
  content: "";
  position: absolute;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffd800), to(#ffb21d));
  background: linear-gradient(to top right, #ffd800, #ffb21d);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-preamble__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-preamble .slick-list {
  overflow: initial;
}

.c-preamble .slick-dots {
  width: auto;
}

.c-preamble .slick-dots li {
  margin: 0 5px;
}

.c-preamble .slick-dots li.slick-active button::before {
  color: #ff8932;
  font-size: 22px;
}

.c-preamble .slick-dots li button::before {
  font-size: 15px;
}

.c-preamble__footer {
  text-align: center;
}

.c-preamble1 {
  margin: 0 auto;
}

.c-preamble1__title {
  text-align: center;
  letter-spacing: 0.2em;
  line-height: 1.96;
}

.c-preamble1__desc {
  line-height: 1.8;
  letter-spacing: 0.2px;
}

.c-preamble1__sub {
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
}

.c-preamble1__body {
  display: -webkit-box;
  display: flex;
}

.c-preamble1__content {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-preamble1__img1,
.c-preamble1__img2 {
  text-align: center;
}

.c-related {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.c-related__item {
  text-align: center;
  border-style: solid;
}

.c-related__item--company {
  border-color: #6e36f1;
}

.c-related__item--recruit {
  border-color: #58a5e2;
}

.c-related__title {
  font-family: 'Poppins', sans-serif;
  line-height: 1;
  letter-spacing: 0.3em;
  font-weight: 300;
}

.c-related__desc {
  letter-spacing: 0.2em;
}

.c-section-title {
  color: #b3b3b3;
  text-align: center;
}

.c-section-title--color-inherit {
  color: inherit;
}

.c-section-title--left {
  text-align: left;
}

.c-section-title h2 {
  letter-spacing: 0.3em;
  line-height: 1.2;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
}

.c-section-title p {
  letter-spacing: 0.2em;
}

.c-schedule__header {
  position: relative;
}

.c-schedule__body {
/*   overflow: hidden; */
  position: relative;
}

.c-schedule__body::before {
  content: "";
  position: absolute;
  z-index: -1;
  background: -webkit-gradient(linear, left bottom, right top, from(#ffb21c), to(#ffd700));
  background: linear-gradient(to top right, #ffb21c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-schedule__body::after {
  content: "";
  position: absolute;
  z-index: -2;
  border: solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-schedule__tab-title {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  text-align: center;
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
  letter-spacing: 0.15em;
}

.c-schedule__tab-title li {
  flex: 1;
  cursor: pointer;
  position: relative;
  /* overflow: hidden; */
  transition: 0.3s all ease-in-out;
  max-width: calc(100% / 3);

}

.c-schedule__tab-title li::before {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  width: 100%;
  height: 1px;
  background-color: white;
  transition: inherit;
}

.c-schedule__tab-title li.is-actived {
	font-weight: bold;
}

.c-schedule__tab-title li.is-actived::before{
  height: 6px;
}

.c-schedule__tab-desc {
  text-align: center;
  letter-spacing: 0.2em;
  font-weight: 500;
  line-height: 1.8;
}

.c-schedule__tab-content {
  display: none;
}

.c-schedule__tab-content--show {
  display: block;
}

.c-schedule__comming-soon {
  text-align: center;
  font-family: 'Poppins', sans-serif;
  letter-spacing: 0.2em;
  opacity: 0.8;
}

.c-schedule__item {
  display: -webkit-box;
  display: flex;
	align-items: flex-start;
}

.c-schedule__item:nth-child(3) {
  position: relative;
}

.c-schedule__item:nth-child(3)::after {
  content: "";
  background: -webkit-gradient(linear, left bottom, right top, from(#ffb21c), to(#ffd700));
  background: linear-gradient(to top right, #ffb21c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: -1;
}

.c-schedule__picture {
  border: solid #f0f0f0;
  background-color: #fff;
	position: relative;
}

.c-schedule__picture::before {
	display: block;
	content: '';
	padding-bottom: 62%;
}

.c-schedule__picture img {
	position: absolute;
	top: 0;
	left: 0;
}

.c-schedule__content {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-schedule__heading {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  border-bottom: 1px solid #fff;
}

.c-schedule__time {
  letter-spacing: 0.2em;
  font-weight: 500;
  font-family: 'Montserrat', sans-serif;
}

.c-schedule__title {
  font-weight: 600;
  letter-spacing: 0.2em;
}

.c-schedule__desc {
  letter-spacing: 0.2em;
  line-height: 1.35;
}

.c-submain {
  line-height: 1;
  display: -webkit-box;
  display: flex;
}

.c-submain__box1 {
  display: -webkit-box;
  display: flex;
}

.c-submain__box1 .c-submain__img2,
.c-submain__box1 .c-submain__img3 {
  -webkit-box-flex: 1;
  flex: 1;
}

.c-submain__img {
  width: 100%;
}

.c-submain__content {
  color: #fff;
}

.c-submain__content h2 {
  font-family: 'Poppins', sans-serif;
  line-height: 1.04;
  letter-spacing: 0.3em;
  font-weight: 300;
}

.c-submain__content p {
  line-height: 2;
  letter-spacing: 6px;
}

.c-submain__picture {
  position: absolute;
}

.c-submain__pro {
  color: #8fa5ef;
  display: inline-block;
  font-family: Broadcast;
  text-align: right;
  -webkit-transform: rotate(-5deg);
  transform: rotate(-5deg);
  line-height: 1;
}

.c-submain__pro span:last-child {
  display: block;
  -webkit-transform: rotate(-11deg);
  transform: rotate(-11deg);
}

.c-submain__scroll {
  color: #000;
  border-right: 1px solid #000;
  position: absolute;
}

.c-submain__scroll span {
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  letter-spacing: 6px;
}

.c-submain__scroll::before {
  content: "";
  position: absolute;
  z-index: -1;
  border: solid #DBDBDB;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  /* -webkit-animation: submain_scroll 10s infinite linear;
  animation: submain_scroll 10s infinite linear; */
}

.c-table1 {
  border-collapse: collapse;
  border: solid #ccc;
  width: 100%;
  border-spacing: 0;
}

.c-table1 tr {
  border-bottom: 1px solid #ccc;
}

.c-table1 th {
  letter-spacing: 0.2em;
  border-right: 1px solid #ccc;
  width: 30%;
  text-align: left;
  font-weight: 600;
}

.c-table1 td {
  text-align: left;
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-table2{
  border: solid #DBDBDB;
	overflow: hidden;
}

.c-table2 span {
	display: inline-block;
}

.c-table2__row {
	display: flex;
	width: 100%;
  flex-wrap: wrap;
	font-feature-settings: "palt";
}
.c-table2__row dt,
.c-table2__row dd {
  display: flex;
  align-items: center;
}
.c-table2__row dt {
	font-weight: 600;
}
.c-table2__row dd {
	font-weight: 500;
}

.c-titleline {
  text-align: center;
  position: relative;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.3em;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
}

.c-titleline::before,
.c-titleline:after {
  content: "";
  position: absolute;
}

.c-titleline::before {
  background-color: #fff;
  bottom: -4px;
  right: 50%;
}

.c-titleline::after {
  background-color: #000;
  bottom: 0;
  left: 50%;
}

.c-titleline--custom,
.c-titleline--black {
  color: #000;
}

.c-titleline--custom::before,
.c-titleline--black::before {
  background-color: #000;
}

.c-titleline--custom::after,
.c-titleline--black::after {
  background-color: #ff8c39;
}

.c-title2 {
  text-align: center;
}

.c-title2--silver {
  color: #b4b4b4;
}

.c-title2 h2 {
  font-family: 'Poppins', sans-serif;
  line-height: 1;
  letter-spacing: 0.3em;
  font-weight: 300;
}

.c-title2 p {
  letter-spacing: 0.2em;
  font-weight: 500;
}

.c-title3 {
  position: relative;
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1.27;
  font-family: 'Noto Sans JP', sans-serif;
}

.c-title3::before,
.c-title3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
}

.c-title3::before {
  z-index: 1;
  background-color: #865df3;
  width: 18%;
}

.c-title3::after {
  z-index: 0;
  background-color: #77b0ea;
  width: 72%;
}

.c-used {
  position: relative;
  z-index: 3;
}

.c-used--re-work::after,
.c-used--re-work::before,
.c-used--re-work *::before,
.c-used--re-work *::after {
display: none;
}

.c-used::before {
  content: "";
  background: -webkit-gradient(linear, left top, right top, from(#ffaf2e), to(#ff9300));
  background: linear-gradient(to right, #ffaf2e, #ff9300);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: 0;
}

.c-used__header {
  color: #fff;
}

.c-used__body {
  position: relative;
  z-index: 3;
  margin: 0 auto;
  margin-right: 0;
  background: #fff;
}

.c-used__body::after {
  content: "";
  background: -webkit-gradient(linear, left top, left bottom, from(#f6ab1c), to(#ffd700));
  background: linear-gradient(to bottom, #f6ab1c, #ffd700);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  z-index: 0;
}

.c-used__body--2::after {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#6e36f1), to(#58a5e2));
  background-image: linear-gradient(to bottom, #6e36f1, #58a5e2);
}

.c-used--custom .c-used__body {
  box-shadow: 2px 20px 29px 6px rgba(0, 0, 0, 0.1);
}


/* --- 2023-03-16 --- */
.p-single__url {
	color: #B5B5B5;
    font-weight: 600;
	font-family: 'Montserrat', sans-serif;
}