@charset "UTF-8";
a {
  text-decoration: none;
  color: #fff;
}
.section__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.5vw;
  font-weight: 500;
  text-align: center;
}

.button {
  width: 24vw;
  max-width: 460px;
  height: 4vw;
  max-height: 80px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.btn-link {
  display: block;
  line-height: 4vw;
  font-size: 1.6vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}

.btn-red {
  background-color: #BC1A29;
}

h2 {
  opacity: 0;
  animation-name: fade-in-bottom;
  animation-duration: 0.8s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

@keyframes fade-in-bottom {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.top {
  width: 100%;
  position: relative;
}
.d_none {
	display: none;
}

@media screen and (max-width: 735px) {
  .top {
    height: 6vw;
  }
}

.top__container {
  width: 100%;
  height: 42.5vw;
  max-height: 816px;
  display: flex;
}

@media screen and (max-width: 735px) {
  .top__container {
    display: block;
    height: 170vw;
  }
}

.top__left {
  width: 51%;
  position: relative;
  height: 42.5vw;
  max-height: 816px;
  background-color: #fff;
}

@media screen and (max-width: 735px) {
  .top__left {
    height: 65vw;
    width: 100%;
    z-index: 2;
  }
}

.top__left-logo {
  width: 43.5%;
  height: 4vw;
  max-height: 80px;
  position: absolute;
  left: 39%;
  top: 6vw;
}

@media screen and (max-width: 735px) {
  .top__left-logo {
    height: 8vw;
    left: 30%;
  }
}

.top__left-catch {
  font-size: 2.3vw;
  font-weight: 600;
  white-space: pre-wrap;
  line-height: 4.5vw;
  position: absolute;
  left: 31%;
  top: 13.4vw;
}

@media screen and (max-width: 735px) {
  .top__left-catch {
    left: 26%;
    top: 18vw;
  }
}

.top__left-no {
  width: 38%;
  height: 17.7vw;
  max-height: 341px;
  position: absolute;
  left: 28.3%;
  top: 18vw;
  overflow: hidden;
}

@media screen and (max-width: 735px) {
  .top__left-no {
    height: 35.4vw;
    left: 23.3%;
    top: 23vw;
  }
}

.top__left-no-img {
  width: 100%;
}

.top__left-one {
  width: 30%;
  height: 37.5vw;
  max-height: 720px;
  position: absolute;
  left: 64.5%;
  top: 3vw;
  overflow: hidden;
}

@media screen and (max-width: 735px) {
  .top__left-one {
    height: 75vw;
    top: -7vw;
    left: 59%;
  }
}

.top__left-one-img {
  width: 100%;
}

.top__left-no, .top__left-one {
  animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 both;
}

@keyframes zoomIn {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.reflection {
  height: 17vw;
  width: 1.5vw;
  position: absolute;
  top: -9vw;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 1.5s ease-in-out both;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 1.5s ease-in-out both;
  -moz-transform: rotate(45deg);
  -moz-animation: reflection 1.5s ease-in-out both;
  -ms-transform: rotate(45deg);
  -ms-animation: reflection 1.5s ease-in-out both;
  -o-transform: rotate(45deg);
  -o-animation: reflection 1.5s ease-in-out both;
}

@media screen and (max-width: 735px) {
  .reflection {
    height: 34vw;
    width: 3vw;
    position: absolute;
    top: -9vw;
    left: 0;
    background-color: #fff;
    opacity: 0;
    transform: rotate(45deg);
    animation: reflection 1.5s ease-in-out both;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 1.5s ease-in-out both;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 1.5s ease-in-out both;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 1.5s ease-in-out both;
    -o-transform: rotate(45deg);
    -o-animation: reflection 1.5s ease-in-out both;
  }
  }


@keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@-moz-keyframes reflection {
  0% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -moz-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -moz-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@-ms-keyframes reflection {
  0% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -ms-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -ms-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@-o-keyframes reflection {
  0% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -o-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -o-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.top__left-desc {
  width: 68.5%;
  height: 2.9vw;
  max-height: 57px;
  background-color: #BC1A29;
  color: #fff;
  font-size: 1.2vw;
  font-weight: 600;
  border-radius: 25px;
  line-height: 2.9vw;
  padding-left: 18px;
  position: absolute;
  left: 26%;
  top: 34.7vw;
  letter-spacing: -1px;
}

@media screen and (max-width: 735px) {
  .top__left-desc {
    height: 5.8vw;
    top: 55vw;
    left: 18%;
    line-height: 5.8vw;
  }
}

.top__right {
  width: 49%;
  height: 42.5vw;
  max-height: 816px;
  background-image: url(../img/top-back@2x.webp);
  background-size: cover;
  position: relative;
}

@media screen and (max-width: 735px) {
  .top__right {
    width: 100%;
    height: 85vw;
    top: -5px;
    z-index: 1;
  }
}

.top__right-img {
  width: 95%;
  height: 26vw;
  max-height: 499px;
  margin-top: 5.5vw;
}

@media screen and (max-width: 735px) {
  .top__right-img {
    height: 52vw;
  }
}

.top__right-inner {
  width: 81%;
  height: 13vw;
  max-height: 249px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 26.5vw;
  left: 3.3vw;
}

@media screen and (max-width: 735px) {
  .top__right-inner {
    height: 26vw;
    top: 53vw;
    left: 9vw;
  }
}

.inner__circle-border {
  width: 13vw;
  max-width: 249px;
  height: 13vw;
  max-height: 249px;
  background-image: url(../img/border-gradient@2x.webp);
  background-size: cover;
  background-position: center;
  position: relative;
}

@media screen and (max-width: 735px) {
  .inner__circle-border {
    width: 26vw;
    height: 26vw;
  }
}

.inner__circle {
  width: 12vw;
  max-width: 235px;
  height: 12vw;
  max-height: 235px;
  background: linear-gradient(to bottom right, #fc6076, #ff9a44);
  border-radius: 120px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}

@media screen and (max-width: 735px) {
  .inner__circle {
    width: 24vw;
    height: 24vw;
  }
}

.circle__img-upper {
  width: 10vw;
  max-width: 190px;
  position: absolute;
  bottom: 7vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-upper {
    width: 20vw;
    bottom: 14vw;
  }
}

.circle__img-upper2 {
  width: 7vw;
  max-width: 140px;
  position: absolute;
  bottom: 7vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-upper2 {
    width: 14vw;
    bottom: 14vw;
  }
}

.circle__img-upper3 {
  width: 8vw;
  max-width: 152px;
  position: absolute;
  bottom: 7vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-upper3 {
    width: 16vw;
    bottom: 14vw;
  }
}

.circle__img-downer {
  width: 7vw;
  max-width: 142px;
  position: absolute;
  bottom: 3vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-downer {
    width: 14vw;
    bottom: 6vw;
  }
}

.circle__img-downer2 {
  width: 9.5vw;
  position: absolute;
  bottom: 3vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-downer2 {
    width: 19vw;
    bottom: 6vw;
  }
}

.circle__img-downer3 {
  width: 8.5vw;
  position: absolute;
  bottom: 3vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 735px) {
  .circle__img-downer3 {
    width: 197w;
    bottom: 6vw;
  }
}

.logo-slide {
  /*height: 6vw;*/
  max-height: 130px;
  background-color: #fff;
  display: flex;
  overflow: hidden;
}

@media screen and (max-width: 735px) {
  .logo-slide {
    width: 100vw;
    max-height: 116px;
    background-color: #fff;
    display: flex;
    overflow: hidden;
    z-index: 20;
  }
  .logo-slide .pc_img {
	  display:none !important;
  }
}


.logo-slide__container {
  width: 100%;
  display: flex;
  justify-content: space-evenly;
}

.logo-slide-img {
  height: 4vw;
  max-height: 80px;
  margin-top: 1vw;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 735px) {
  .logo-slide-img {
    margin-top: 2vw;
    height: 8vw;
  }
}

.clock {
  width: 100%;
  height: 15.6vw;
  max-height: 300px;
  background-image: url(../image/top/clock_bg.webp);
  background-size: cover;
  position: relative;
}

.clock__container {
  width: 71%;
  height: 9vw;
  max-height: 175px;
  position: absolute;
  z-index: 10;
  top: 5vw;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(to bottom right, #fc6076, #ff9a44);
  border-radius: 90px;
  -webkit-border-radius: 90px;
  -moz-border-radius: 90px;
  -ms-border-radius: 90px;
  -o-border-radius: 90px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  box-shadow: 5px 3px rgba(0, 0, 0, 0.16);
}
.clock-box{
	position: absolute;
	width: 100%;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
	-webkit-transform: translate(50%, -50%);
	-ms-transform: translate(50%, -50%);
	background: -moz-linear-gradient(90deg, #fc6076 0%, #ff9a44 100%);
	background: -webkit-linear-gradient(90deg, #fc6076 0%, #ff9a44 100%);
	background: linear-gradient(90deg, #fc6076 0%, #ff9a44 100%);
	box-shadow: 5px 3px rgba(0, 0, 0, 0.16);
	border-radius: 80px;
	z-index: 10;
	text-align: right;
	padding: 0 50px 0 0;
}
.clock-box img{
	max-height: 100px;
}
.clock-img {
  width: 20vw;
  max-width: 392px;
  height: 23.5vw;
  max-height: 453px;
  position: absolute;
  top: 0.7vw;
  left: 20%;
  z-index: 20;
}
@media screen and (max-width: 735px) {
  .clock {
		height: 27.6vw;
  }
  .clock-box{
	width: 90%;
	border-radius: 80px;
	padding: 0 5% 0 0;
}
.clock-box img{
	width: 60%;
}
  .clock-img {
    left: 10%;
    top: auto;
    bottom: -50%;
  }
}

.clock__five-minutes-img {
  width: 100%;
}

.clock-img {
  animation: poyoyon3 2.5s infinite;
  opacity: 1;
}

@keyframes poyoyon3 {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(5deg, 5deg);
  }
  10% {
    transform: skew(-4deg, -4deg);
  }
  15% {
    transform: skew(3deg, 3deg);
  }
  20% {
    transform: skew(-2deg, -2deg);
  }
  25% {
    transform: skew(1deg, 1deg);
  }
  30% {
    transform: skew(-0.6deg, -0.6deg);
  }
  35% {
    transform: skew(0.3deg, 0.3deg);
  }
}
.clock__utide {
  width: 16.8vw;
  max-width: 323px;
  height: 3vw;
  max-height: 61px;
  position: absolute;
  top: 4vw;
  left: 60%;
}

.about {
  position: relative;
  width: 100%;
  height: 70vw;
  background-color: #BC1A29;
  z-index: 30;
  white-space: pre-wrap;
}

/*
@media screen and (max-width: 1600px) {
  .about {
    height: 80vw;
  }
}

@media screen and (max-width: 1024px) {
  .about {
    height: 85vw;
  }
*/

@media screen and (max-width: 735px) {
  .about {
    /*height: 160vw !important;*/
    height: 100vw !important;
  }
}

.about__title {
  color: #fff;
  padding-top: 10px;
  font-size: 38px;
  font-weight: 700;
}

@media screen and (max-width: 735px) {
  .about__title {
    font-size: 5vw;
  }
}

.about__text {
  font-size: 18px;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  color: #fff;
  white-space: pre-wrap;
  margin-bottom: 0.5vw;
}

@media screen and (max-width: 735px) {
  .about__text {
    font-size: 2.4vw;
    line-height: 5vw;
  }
}

.about__container {
  width: 100%;
  height: 37vw;
  max-height: 714px;
  display: flex;
  position: relative;
}

@media screen and (max-width: 735px) {
  .about__container {
    height: 83vw;
  }
}

.about__box {
  width: 100%;
  display: flex;
  position: relative;
  top: 2vw;
}

@media screen and (max-width: 735px) {
  .about__box {
    flex-direction: column;
    width: 60%;
    margin-left: auto;
  }
}

.about__box::before {
  content: "";
  width: 29vw;
  display: block;
  margin-top: 67.5px;
  padding-right: 20px;
}

@media screen and (max-width: 735px) {
  .about__box::before {
    width: 100%;
    margin-top: 0;
  }
}

.about__swiper-item1 {
  width: 37vw;
  max-width: 719px;
  height: 37vw;
  max-height: 714px;
  background-color: #fff;
  margin-top: 1vw;
  position: absolute;
  top: 1vw;
  left: 47%;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

@media screen and (max-width: 735px) {
  .about__swiper-item1 {
    width: 55vw;
    height: 55vw;
    margin-top: 30vw;
    left: -30%;
  }
}

.about__swiper-item2 {
  width: 12vw;
  max-width: 228px;
  height: 12vw;
  max-height: 227px;
  background-color: #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 1%;
  transform: translateY(-35%);
  -webkit-transform: translateY(-35%);
  -moz-transform: translateY(-35%);
  -ms-transform: translateY(-35%);
  -o-transform: translateY(-35%);
}

@media screen and (max-width: 735px) {
  .about__swiper-item2 {
    display: none;
  }
}

.about__swiper-item3 {
  width: 12vw;
  max-width: 228px;
  height: 12vw;
  max-height: 227px;
  background-color: #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 1%;
  transform: translateY(-35%);
  -webkit-transform: translateY(-35%);
  -moz-transform: translateY(-35%);
  -ms-transform: translateY(-35%);
  -o-transform: translateY(-35%);
}

@media screen and (max-width: 735px) {
  .about__swiper-item3 {
    display: none;
  }
}

.about__swiper-img1 {
  width: 34vw;
  max-width: 667px;
  height: 19vw;
  max-height: 370px;
  margin-top: 2.5vw;
}

@media screen and (max-width: 735px) {
  .about__swiper-img1 {
    width: 51vw;
    height: 28.5vw;
  }
}

.about__swiper-img2 {
  width: 9.5vw;
  max-width: 187px;
  position: absolute;
  top: 38%;
  left: 1vw;
}

.about__swiper-small-img {
  width: 4vw;
  max-width: 74px;
  height: 3.5vw;
  max-height: 65px;
  position: absolute;
  top: 38%;
  left: 1vw;
  z-index: 1;
}

.about__swiper-img3 {
  width: 9vw;
  max-width: 173px;
  position: absolute;
  top: 55%;
  left: 0.5vw;
  z-index: 10;
}

.about__swiper-text {
  font-family: "Noto Sans JP", sans-serif;
  color: #BC1A29;
  font-size: 0.6vw;
  font-weight: bold;
  text-align: center;
  line-height: 0.8vw;
}

@media screen and (max-width: 1024px) {
  .about__swiper-text {
    position: relative;
    top: -15px;
    line-height: 1;
  }
}

.about__swiper-text2 {
  font-family: "Noto Sans JP", sans-serif;
  color: #BC1A29;
  font-size: 0.6vw;
  font-weight: bold;
  text-align: center;
  line-height: 0.8vw;
  margin-top: 0.6vw;
}

@media screen and (max-width: 1024px) {
  .about__swiper-text2 {
    position: relative;
    top: -20px;
    line-height: 1;
  }
}

.about-text-big {
  font-size: 1.8vw;
  line-height: 2.7vw;
  margin-top: 0.6vw;
  margin-left: 0.4vw;
  letter-spacing: 1.5px;
}

@media screen and (max-width: 735px) {
  .about-text-big {
    font-size: 2.5vw;
    line-height: 4vw;
  }
}

.about__analysis {
  position: absolute;
  width: 29vw;
  display: flex;
  flex-direction: column;
  margin-top: 67.5px;
  left: 20vw;
  top: 25vw;
}

@media screen and (max-width: 735px) {
  .about__analysis {
    width: 75vw;
    text-align: center;
    left: 50%;
    transform: translateX(-50%);
  }
}

.about__analysis-title {
  font-size: 4.1vw;
  font-weight: 900;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  margin-bottom: 2.9vw;
  letter-spacing: 3.5px;
}

.about__analysis-catch {
  font-size: 1.8vw;
  height: 8.5vw;
  max-height: 164px;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  line-height: 2.8vw;
  letter-spacing: 2px;
}

.about__inner {
  width: 28vw;
  max-width: 545px;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 735px) {
  .about__inner {
    width: 100%;
    justify-content: center;
  }
}

.about__inner-item {
  font-size: 1.5vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  color: #BC1A29;
  background-color: #fff;
  padding: 0.9vw 1.5vw;
  margin-right: 1vw;
  margin-bottom: 0.8vw;
  letter-spacing: 1px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.about-pagination {
  width: 100%;
  height: 1.5vw;
  max-height: 30px;
  display: flex;
  justify-content: center;
  margin-top: 1.8vw;
}

@media screen and (max-width: 735px) {
  .about-pagination {
    height: 30px;
    margin-top: 0;
  }
}

.pagination-circle {
  width: 30px;
  height: 30px;
  background-color: #fff;
  margin-left: 30px;
  margin-right: 30px;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

.swiper-pagination {
  position: absolute;
  text-align: left;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.cooperation {
  width: 100%;
  height: 64vw;
  max-height: 1230px;
  background-image: url(../img/cooperation-back@2x.webp);
  background-size: cover;
  background-position: center;
  position: relative;
  top: -2.8vw;
  z-index: 40;
  padding-top: 2.6vw;
}

@media screen and (max-width: 1600px) {
  .cooperation {
    top: -36px;
  }
}

@media screen and (max-width: 735px) {
  .cooperation {
    top: -10px !important;
    height: 128vw;
  }
}

.cooperation__title {
  height: 250px;
  font-size: 34px;
  font-weight: 700;
  max-height: 366px;
  background-image: url(../image/top/no1.webp);
  background-size: 227px 164px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  padding-top: 50px;
  color: #fff;
  white-space: pre-wrap;
  line-height: 50px;
  letter-spacing: 6px;
}

@media only screen and (max-width: 750px) {
  .cooperation__title {
  font-size: 20px;
  background-size: 120px 80px;
}
}

.cooperation__container {
  width: 100%;
  height: 26vw;
  max-height: 500px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-evenly;
  position: relative;
}

@media screen and (max-width: 735px) {
  .cooperation__container {
    height: 500px;
    overflow: hidden;
    justify-content: flex-start;
    margin-top: 30px;
  }
}

.allow-left {
  width: 3.5vw;
  max-width: 70px;
  height: 3.5vw;
  max-height: 70px;
  font-size: 1.8vw;
  font-weight: bold;
  color: #fff;
  background-color: #BC1A29;
  text-align: center;
  line-height: 3.5vw;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  left: 0.5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  z-index: 50;
}

@media screen and (max-width: 735px) {
  .allow-left {
    top: 25%;
  }
}

.allow-right {
  width: 3.5vw;
  max-width: 70px;
  height: 3.5vw;
  max-height: 70px;
  font-size: 1.8vw;
  font-weight: bold;
  color: #fff;
  background-color: #BC1A29;
  text-align: center;
  line-height: 3.5vw;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  right: 0.5%;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  z-index: 50;
}

@media screen and (max-width: 735px) {
  .allow-right {
    top: 25%;
  }
}

.cooperation__item {
  width: 14.7vw;
  height: 26.3vw;
  max-height: 506px;
  background-color: #F4F4F4;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .cooperation__item {
    width: 35%;
    height: 55vw;
    flex: 0 0 auto;
    margin-left: 40px;
  }
}

.fadeup1 {
  animation: fadeup 1s ease-out 0.3s 1 normal both;
}
.use1 {
  background-image: url(https://www-staging.uchideno-kozuchi.com/wp-content/uploads/2021/05/top_use_01.webp);
  background-repeat: no-repeat;
  background-size: 100%;
}

.fadeup2 {
  animation: fadeup 1s ease-out 0.5s 1 normal both;
}
.use2 {
  background-image: url(https://www-staging.uchideno-kozuchi.com/wp-content/uploads/2021/05/top_use_02.webp);
  background-repeat: no-repeat;
  background-size: 100%;
}

.fadeup3 {
  animation: fadeup 1s ease-out 0.7s 1 normal both;
}
.use3 {
  background-image: url(https://www-staging.uchideno-kozuchi.com/wp-content/uploads/2021/05/top_use_03.webp);
  background-repeat: no-repeat;
  background-size: 100%;
}

.fadeup4 {
  animation: fadeup 1s ease-out 0.9s 1 normal both;
}

.use4 {
  background-image: url(https://www-staging.uchideno-kozuchi.com/wp-content/uploads/2021/05/top_use_04.webp);
  background-repeat: no-repeat;
  background-size: 100%;
}

.fadeup5 {
  animation: fadeup 1s ease-out 1.1s 1 normal both;
}

.use5 {
  background-image: url(https://www-staging.uchideno-kozuchi.com/wp-content/uploads/2021/05/top_use_05.webp);
  background-repeat: no-repeat;
  background-size: 100%;
}

.fadeup6 {
  animation: fadeup 1s ease-out 1.3s 1 normal both;
}

@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.cooperation__item-img {
  width: 14.7vw;
  /* max-width: 283px; */
  height: 13vw;
  max-height: 250px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

@media screen and (max-width: 735px) {
  .cooperation__item-img {
    width: 100%;
    height: 26vw;
  }
}

.cooperation__item-catch {
  width: 88%;
  font-size: 1.2vw;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  margin-top: 1.8vw;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 735px) {
  .cooperation__item-catch {
    font-size: 2.4vw;
  }
}

.cooperation__item-text {
  width: 88%;
  font-size: 0.9vw;
  line-height: 1.5vw;
  font-weight: 500;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.8vw;
}

@media screen and (max-width: 735px) {
  .cooperation__item-text {
    font-size: 1.8vw;
    line-height: 3vw;
    letter-spacing: 0;
  }
}

.design {
  height: 60vw;
  max-height: 1154px;
  position: relative;
}

.design__title {
  height: 200px;
  font-size: 34px;
  font-weight: 700;
  max-height: 366px;
  background-image: url(../image/top/no2.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 264px 164px;
  background-repeat: no-repeat;
  background-position: 50% 0%;
  color: #000;
  white-space: pre-wrap;
  line-height: 50px;
  letter-spacing: 6px;
}

.design__swiper {
  width: 100%;
  height: 38vw;
  max-height: 731px;
  overflow: hidden;
  position: relative;
}

.design__swiper-item {
  width: 73%;
  height: 37.5vw;
  max-height: 721px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  border: 2px solid #f4f4f4;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  box-shadow: 5px 5px 3px 3px rgba(181, 181, 181, 0.55);
}

.design__swiper-left {
  width: 50%;
  height: 37.5vw;
  max-height: 721px;
}

.design__swiper-catch {
  font-size: 2vw;
  font-family: "Noto Sans JP", sans-serif;
  color: #BC1A29;
  font-weight: bold;
  margin-left: 0.9vw;
  margin-top: 2vw;
  margin-bottom: 1.6vw;
  letter-spacing: -0.5px;
}

.design__swiper-text {
  width: 33vw;
  max-width: 639px;
  height: 10.8vw;
  max-height: 209px;
  font-size: 1.2vw;
  line-height: 2.5vw;
  margin-left: 0.8vw;
  font-weight: 500;
  letter-spacing: -2px;
}

.design__swiper-inner {
  width: 29vw;
  max-width: 556px;
  height: 18vw;
  max-height: 345px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
}

.design__swiper-inner::after {
  display: block;
  width: calc(33.3333333% - 60px / 3);
  content: "";
}

@media screen and (max-width: 735px) {
  .design__swiper-inner::after {
    width: 30%;
  }
}

.swiper-inner__circle {
  width: 8.3vw;
  max-width: 160px;
  height: 8.3vw;
  max-height: 160px;
  color: #BC1A29;
  font-size: 1.2vw;
  font-weight: bold;
  border: 1px solid #707070;
  text-align: center;
  padding-top: 2vw;
  line-height: 1.8vw;
  white-space: pre-wrap;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  box-shadow: 0 5px rgba(0, 0, 0, 0.16);
  margin-bottom: 1vw;
}

.orange {
  background: linear-gradient(to bottom right, #fc6076, #ff9a44);
  color: #fff;
}

.design__movie {
  width: 50%;
  height: 37.5vw;
  max-height: 721px;
  background-color: #ccc;
  text-align: center;
  line-height: 37.5vw;
}

@media screen and (max-width: 735px) {
  .design__movie {
    line-height: 40vw;
  }
}

.design-triangle {
  width: 6vw;
  height: 6vw;
}

.design__swipe-img1 {
  height: 30.5vw;
  max-height: 586px;
  position: absolute;
  left: -47vw;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}

@media screen and (max-width: 735px) {
  .design__swipe-img1 {
    display: none;
  }
}

.design__swipe-img2 {
  height: 30.5vw;
  max-height: 586px;
  position: absolute;
  right: -47vw;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}

@media screen and (max-width: 735px) {
  .design__swipe-img2 {
    display: none;
  }
}

.design-pagination {
  width: 16.3vw;
  max-width: 313px;
  height: 5.8vw;
  max-height: 112px;
  display: flex;
  justify-content: space-between;
  position: relative;
  left: 76.5%;
  bottom: 1vw;
}

@media screen and (max-width: 735px) {
  .design-pagination {
    left: 70%;
  }
}

.design-left-allow {
  width: 2.5vw;
  max-width: 52px;
  height: 2.5vw;
  max-height: 52px;
  font-size: 1.2vw;
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 2.5vw;
  background-color: #BC1A29;
  border-radius: 1.3vw;
  -webkit-border-radius: 1.3vw;
  -moz-border-radius: 1.3vw;
  -ms-border-radius: 1.3vw;
  -o-border-radius: 1.3vw;
}

.design-right-allow {
  width: 2.5vw;
  max-width: 52px;
  height: 2.5vw;
  max-height: 52px;
  font-size: 1.2vw;
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 2.5vw;
  background-color: #BC1A29;
  border-radius: 26px;
  -webkit-border-radius: 26px;
  -moz-border-radius: 26px;
  -ms-border-radius: 26px;
  -o-border-radius: 26px;
}

.design-pagination-current {
  font-size: 4.3vw;
  font-weight: 600;
  line-height: 3vw;
  letter-spacing: -2px;
  z-index: 10;
}

.design-pagination-max {
  font-size: 1.5vw;
  font-weight: 600;
  color: #bfbfbf;
  position: absolute;
  left: 51%;
  top: 2.5vw;
  z-index: 1;
}

.method {
  position: relative;
}

@media screen and (max-width: 735px) {
  .method {
    height: 195vw;
  }
}

.method__title {
  height: 250px;
  font-size: 34px;
  font-weight: 700;
  max-height: 366px;
  background-image: url(../image/top/no3.webp);
  background-repeat: no-repeat;
  background-size: 264px 164px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  padding-top: 97px;
  color: #000;
  white-space: pre-wrap;
  line-height: 50px;
  letter-spacing: 6px;
}

.method__container {
  width: 97.5%;
  height: 33vw;
  max-height: 638px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  top: -10px;
}

@media screen and (max-width: 735px) {
  .method__container {
    width: 62vw;
  }
}

.method__container::after {
  display: block;
  width: 31vw;
  max-width: 594px;
  content: "";
}

.method__item {
  width: 31vw;
  max-width: 600px;
  height: 15.5vw;
  max-height: 300px;
  /*background-color: #707070;*/
  margin-bottom: 1.8vw;
  position: relative;
  border: 1px solid #707070;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .method__item {
    width: 62vw;
    height: 31vw;
  }
}

.method__item-catch {
  color: #fff;
  font-size: 1.8vw;
  font-weight: bold;
  margin-top: 8.5vw;
  margin-left: 1vw;
  letter-spacing: 3px;
}

@media screen and (max-width: 735px) {
  .method__item-catch {
    font-size: 3.6vw;
    margin-top: 20vw;
  }
}

.method-btn {
  width: 13vw;
  max-width: 194px;
  height: 2vw;
  max-height: 31px;
  background-color: #000;
  left: 17vw;
  top: 12vw;
  position: absolute;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
}

@media screen and (max-width: 735px) {
  .method-btn {
    width: 20vw;
    height: 3vw;
    top: 24vw;
    left: 36vw;
  }
}

.method-btn-link {
  font-size: 0.9vw;
  display: block;
  text-align: center;
  line-height: 2vw;
}

@media screen and (max-width: 735px) {
  .method-btn-link {
    font-size: 1.8vw;
    line-height: 3vw;
  }
}

.system {
  width: 100%;
  height: 62vw;
  max-height: 1190px;
  background-image: url(../img/system-back@2x.webp);
  background-size: cover;
  background-position: center;
  padding-top: 110px;
  position: relative;
  margin-bottom: 80px;
}

@media screen and (max-width: 735px) {
  .system {
    height: 140vw;
  }
}

.system__title {
  height: 250px;
  font-size: 34px;
  font-weight: 700;
  max-height: 366px;
  background-image: url(../image/top/no4.webp);
  background-size: 264px 164px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  padding-top: 80px;
  color: #fff;
  white-space: pre-wrap;
  line-height: 50px;
  letter-spacing: 6px;
}

@media screen and (max-width: 735px) {
  .system__title {
    margin-top: 10vw;
  }
}

.system__container {
  width: 73%;
  height: 25vw;
  max-height: 482px;
  display: flex;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 735px) {
  .system__container {
    display: block;
  }
}

.system__container-left {
  width: 38vw;
  max-width: 732px;
}

@media screen and (max-width: 735px) {
  .system__container-left {
    width: 100%;
  }
}

.left__text {
  width: 96%;
  font-size: 1.2vw;
  color: #131313;
  font-weight: 500;
  line-height: 2.5vw;
  margin-bottom: 2vw;
}

@media screen and (max-width: 735px) {
  .left__text {
    font-size: 10px;
    line-height: 5vw;
  }
}

.left__item-box {
  width: 32.5vw;
  max-width: 628px;
  height: 15.5vw;
  max-height: 298px;
  display: flex;
}

@media screen and (max-width: 735px) {
  .left__item-box {
    width: 100%;
    height: 31vw;
    justify-content: space-between;
  }
}

.left__item {
  width: 9.5vw;
  max-width: 182px;
  margin-right: 1.5vw;
}

@media screen and (max-width: 735px) {
  .left__item {
    width: 30%;
    height: 31vw;
    margin-right: 0;
  }
}

.left__item {
  animation: kurukuru 1s linear 1s 1 normal both;
}

@keyframes kurukuru {
  0% {
    transform: rotateY(180deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(360deg);
    opacity: 1;
  }
}

.left__item-inner {
  width: 9vw;
  max-width: 174px;
  height: 9vw;
  max-height: 174px;
  border: 5px solid #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

@media screen and (max-width: 735px) {
  .left__item-inner {
    width: 18vw;
    height: 18vw;
    margin-left: 15%;
  }
}

.left__item-catch {
  color: #131313;
  font-size: 0.9vw;
  margin-top: 2vw;
  text-align: center;
}

@media screen and (max-width: 735px) {
  .left__item-catch {
    font-size: 1.8vw;
    margin-top: 3vw;
  }
}

.catch__span {
  font-size: 2.5vw;
  font-weight: 900;
  letter-spacing: -1px;
}
.catch__span2 {
  font-size: 2.4vw;
  font-weight: 900;
  letter-spacing: -1px;
}

@media screen and (max-width: 735px) {
  .catch__span {
    font-size: 5vw;
  }
	.system_txt {
		margin-bottom: 2em;
	}
}

.left__item-desc {
  color: #131313;
  font-size: 0.9vw;
  text-align: center;
  white-space: pre-wrap;
  margin-top: 0.5vw;
}

.left__item-text {
  color: #131313;
  font-size: 0.9vw;
  text-align: center;
  margin-top: 1vw;
  font-weight: bold;
}

@media screen and (max-width: 735px) {
  .left__item-text {
    font-size: 10px;
  }
}

.system-img {
  width: 34vw;
  max-width: 677px;
  height: 22vw;
  max-height: 429px;
}

@media screen and (max-width: 735px) {
  .system-img {
    width: 100%;
    height: 44vw;
    margin-left: auto;
    margin-right: auto;
  }
}

/*導入事例のご紹介*/

.introduction {
  width: 100%;
  height: 47vw;
  max-height: 901px;
  margin-bottom: 6.5vw;
  position: relative;
  top: -5vw;
}

@media screen and (max-width: 735px) {
  .introduction {
    top: -15vw;
  }
}

.introduction__title {
  white-space: pre-wrap;
  line-height: 3.75vw;
  letter-spacing: 2px;
  margin-bottom: 0.5vw;
  font-weight: 1000;
}

.introduction__slide-container {
  width: 100%;
  height: 28vw;
  max-height: 545px;
  overflow: hidden;
  display: flex;
  margin-bottom: 3.5vw;
}

@media screen and (max-width: 735px) {
  .introduction__slide-container {

    height: 220px;
  }
}

.introduction__slide-inner {
  width: 100%;
  display: flex;
  position: relative;
}

.introduction__slide-item1 {
  width: 45vw;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/Clip101@2x.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item1 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
  }
}

.introduction__slide-item2 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/Clip102@2x.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item2 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.introduction__slide-item3 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/2022/top_case03.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item3 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.introduction__slide-item4 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/2022/top_case02.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item4 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.introduction__slide-item5 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/2022/top_case01.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item5 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.introduction__slide-item6 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/2022/top_case04.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item6 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.introduction__slide-item7 {
  width: 45vw;
  max-width: 860px;
  height: 28vw;
  max-height: 540px;
  background-image: url(../img/top_case_8283.webp);
  background-size: cover;
  margin-right: 2.5vw;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

@media screen and (max-width: 735px) {
  .introduction__slide-item7 {
    width: 90%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -50vw;
  }
}

.swiper-container2 > .swiper-wrapper > .swiper-slide {
  width: 100% !important;
}

.introduction__img-box {
  width: 14vw;
  max-width: 271px;
  height: 5vw;
  max-height: 100px;
  background-color: #fff;
  text-align: center;
  border-bottom-right-radius: 10px;
  position: relative;
}

@media screen and (max-width: 735px) {
  .introduction__img-box {
    width: 100px;
    height: 30px;
  }
}

.introduction__item-img {
  max-width: 215px;
  height: 2.5vw;
  max-height: 47px;
  z-index: 10;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 735px) {
.introduction__item-img {
  height: 80%;
  width: auto;
  padding: 5px;
}
}
.introduction__item-img2 {
  max-height: 78px;
  z-index: 10;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 735px) {
.introduction__item-img2 {
  height: 95%;
  width: auto;
  padding: 1px;
}
}


.introduction__item-catch {
  font-size: 1.5vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  color: #000;
  white-space: pre-wrap;
  margin-left: 1.7vw;
  margin-top: 2.3vw;
  line-height: 2.2vw;
width: 50%;
}

@media screen and (max-width: 735px) {
  .introduction__item-catch {
    font-size: 15px;
    line-height: 18px;
  }
}

.introduction__item-text {
  width: 19vw;
  max-width: 370px;
  height: 10.5vw;
  max-height: 181px;
  font-size: 1.2vw;
  font-weight: 400;
  white-space: pre-wrap;
  color: #000;
  margin-left: 1.5vw;
  margin-top: 1vw;
  letter-spacing: -1px;
  line-height: 1.8vw;
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  .introduction__item-text {
    width: 150px !important;
    line-height: 12px !important;
    height: 110px;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
}

@media screen and (max-width: 735px) {
  .introduction__item-text {
    width: 170px !important;
    line-height: 15px !important;
    height: 110px;
    font-size: 12px;
    letter-spacing: 0.05em;
	  padding-top: 0.5em;
  }
}

.detail-btn {
  width: 10vw;
  max-width: 194px;
  height: 1.6vw;
  max-height: 31px;
  border: 1px solid #fff;
  margin-left: 1.3vw;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
}

@media screen and (max-width: 735px) {
  .detail-btn {
    width: 20vw;
    height: 3.2vw;
  }
}

.detail-btn-link {
  font-size: 0.9vw;
  display: block;
  text-align: center;
  line-height: 1.6vw;
}

@media screen and (max-width: 735px) {
  .detail-btn-link {
    font-size: 1.8vw;
    line-height: 3.2vw;
  }
}

.btn-link {
  position: relative;
}

.introduction-btn-triangle {
  width: 10vw;
  max-width: 19px;
  height: 10vw;
  max-height: 21px;
  position: absolute;
  top: 33%;
  left: 14%;
}

@media screen and (max-width: 1024px) {
  .introduction-btn-triangle {
    top: 27%;
    left: 13%;
  }
}

@media screen and (max-width: 735px) {
  .introduction-btn-triangle {
    width: 2vw;
    height: 2vw;
    top: 23%;
    left: 12%;
  }
}


.flow {
  width: 100%;
  height: 47vw;
  max-height: 900px;
  background-color: #BC1A29;
  position: relative;
}

.flow__title{
  color: #fff;
  padding-top: 2.8vw;
  margin-bottom: 8vw;
  letter-spacing: 2px;
}

.flow__container {
  width: 79%;
  height: 22vw;
  max-height: 430px;
  display: flex;
  justify-content: flex-end;
  background-image: url(../img/tyohokei-white@2x.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 6.5%;
  position: relative;
  z-index: 10;
}

.flow__item1 {
  width: 14.8vw;
  max-width: 286px;
  height: 23vw;
  max-height: 445px;
  background-color: #BC1A29;
  border: 5px solid #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  z-index: 10;
  position: absolute;
  left: 9%;
}

.flow__item2 {
  width: 15.4vw;
  max-width: 296px;
  height: 23vw;
  max-height: 445px;
  background-color: #BC1A29;
  border: 5px solid #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  z-index: 10;
  position: absolute;
  left: 33%;
}

.flow__item3 {
  width: 14.8vw;
  max-width: 286px;
  height: 23vw;
  max-height: 445px;
  background-color: #BC1A29;
  border: 5px solid #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  z-index: 10;
  position: absolute;
  left: 57.5%;
}

.flow__item4 {
  width: 15.6vw;
  max-width: 300px;
  height: 23vw;
  max-height: 445px;
  background-color: #BC1A29;
  margin-left: 4.8vw;
  border: 5px solid #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  z-index: 10;
  position: absolute;
  left: 75%;
}

.flow__item-step {
  position: absolute;
  bottom: 22.7vw;
  color: #fff;
  font-size: 3.3vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}

.flow__span {
  font-size: 2vw;
  letter-spacing: 2px;
}

.flow__item-img {
  width: 100%;
}

.flow__item-text {
  width: 88%;
  color: #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  white-space: pre-wrap;
  text-align: center;
  line-height: 2.5vw;
  position: absolute;
  bottom: 1.5vw;
  letter-spacing: 1.5px;
  left: 50%;
  transform: translateX(-50%);
}

.flow__item-text2 {
  width: 88%;
  color: #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  white-space: pre-wrap;
  text-align: center;
  line-height: 2.5vw;
  position: absolute;
  bottom: 2.3vw;
  left: 50%;
  transform: translateX(-50%);
}

.flow-allow {
  width: 19vw;
  max-width: 370px;
  height: 22.3vw;
  max-height: 430px;
  background-image: url(../img/allow-white@2x.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50%;
  position: absolute;
  right: 0;
  transform: translateX(65%);
  z-index: 1;
}

.flow__note {
  width: 39.5vw;
  max-width: 760px;
  font-size: 1.2vw;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #fff;
  letter-spacing: -3.5px;
  margin-left: 49vw;
  margin-top: 4.4vw;
}

.seminar {
  width: 100%;
  height: 42vw;
  max-height: 812px;
}

@media screen and (max-width: 735px) {
  .seminar {
    height: 115vw;
  }
}

.seminar__title {
  padding-top: 1.3vw;
  margin-bottom: 3vw;
  letter-spacing: -1px;
}

.seminar__container {
  width: 73%;
  height: 22vw;
  max-height: 420px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 735px) {
  .seminar__container {
    height: 93vw;
    max-height: 600px;
  }
}

.seminar__item {
  width: 48.5%;
  height: 22vw;
  max-height: 426px;
  border-radius: 10px;
  box-shadow: 1px 5px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 735px) {
  .seminar__item {
    width: 100%;
    height: 44vw;
  }
}

.seminar__item-img {
  width: 100%;
  height: 12.2vw;
  max-height: 236px;
}

@media screen and (max-width: 735px) {
  .seminar__item-img {
    height: 25vw;
  }
}

.seminar__item-img-dummy {
  width: 100%;
  height: 12.2vw;
  max-height: 236px;
  background-color: #242424;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}

@media screen and (max-width: 735px) {
  .seminar__item-img-dummy {
    height: 25vw;
  }
}

.seminar__inner {
  display: flex;
  position: relative;
}

.seminar__inner-date {
  width: 22.5%;
  height: 9.8vw;
  max-height: 188px;
  font-size: 1.5vw;
  color: #fff;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  background-color: #BC1A29;
  white-space: pre-wrap;
  border-bottom-left-radius: 10px;
  padding-top: 2vw;
  padding-left: 1.7vw;
  line-height: 2.5vw;
}

@media screen and (max-width: 735px) {
  .seminar__inner-date {
    height: 19vw;
    font-size: 3vw;
    line-height: 5vw;
    padding-left: 3.4vw;
    padding-top: 3vw;
  }
}

.seminar-end {
  background-color: #2d2d2d;
  line-height: 1.8vw;
}

@media screen and (max-width: 735px) {
  .seminar-end {
    line-height: 3.6vw;
  }
}

.seminar__inner-text {
  width: 72%;
  height: 5vw;
  max-height: 105px;
  font-size: 1.2vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  white-space: pre-wrap;
  line-height: 1.8vw;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1vw;
  letter-spacing: 1px;
}

@media screen and (max-width: 735px) {
  .seminar__inner-text {
    height: 10vw;
    font-size: 2.4vw;
    line-height: 3.6vw;
  }
}

.seminar-detail-btn {
  width: 10vw;
  max-width: 194px;
  height: 1.5vw;
  max-height: 31px;
  background-color: #242424;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
  position: absolute;
  left: 67%;
  bottom: 1vw;
}

@media screen and (max-width: 735px) {
  .seminar-detail-btn {
    width: 20vw;
    height: 3vw;
  }
}

.seminar-detail-btn-link {
  display: block;
  text-align: center;
  line-height: 1.5vw;
  font-size: 0.9vw;
}


@media screen and (max-width: 735px) {
  .seminar-detail-btn-link {
    line-height: 3vw;
    font-size: 1.8vw;
  }
}

.seminar-btn {
  margin-top: 4.3vw;
  position: relative;
}

.seminar-btn-triangle {
  width: 10vw;
  max-width: 19px;
  height: 10vw;
  max-height: 21px;
  position: absolute;
  top: 35%;
  left: 20%;
}

@media screen and (max-width: 1024px) {
  .seminar-btn-triangle {
    top: 27%;
    left: 15%;
  }
}
@media screen and (max-width: 735px) {
  .seminar-btn-triangle {
    width: 2vw;
    height: 2vw;
    top: 22%;
    left: 15%;
  }
}


.top-news {
  width: 100%;
  height: 30vw;
  max-height: 577px;
  background-image: url(../img/top-news-back@2x.webp);
  background-size: cover;
}

@media screen and (max-width: 735px) {
  .top-news {
    height: 40vw;
  }
}

.news__title {
  color: #fff;
  padding-top: 3vw;
  margin-bottom: 4vw;
  letter-spacing: -3px;
}

.news__container {
  width: 72%;
  display: flex;
  flex-direction: column;
  margin-left: 14.5%;
}

@media screen and (max-width: 735px) {
  .news__container {
    width: 90%;
    margin-left: 5.5%;
  }
}

.news__item {
  height: 3.5vw;
  max-height: 68px;
  display: flex;
}

@media screen and (max-width: 735px) {
  .news__item {
    height: 7vw;
  }
}

.news__item-date {
  width: 9.8vw;
  max-width: 188px;
  font-size: 1.2vw;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  margin-right: 2.5vw;
}

@media screen and (max-width: 735px) {
  .news__item-date {
    font-size: 2.4vw;
    width: 19vw;
    margin-right: 1.5vw;
  }
}

.news__item-category {
  width: 8vw;
  max-width: 160px;
  height: 1.5vw;
  max-height: 30px;
  font-size: 0.9vw;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  color: #BC1A29;
  background-color: #fff;
  border-radius: 5px;
  margin-right: 2.5vw;
  text-align: center;
  line-height: 1.5vw;
}

@media screen and (max-width: 735px) {
  .news__item-category {
    width: 16vw;
    height: 3vw;
    border-radius: 1.5vw;
    font-size: 1.8vw;
    line-height: 3vw;
    margin-right: 1.5vw;
  }
}

.news__item-text {
  font-size: 1.2vw;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
}

@media screen and (max-width: 735px) {
  .news__item-text {
    font-size: 1.8vw;
  }
}

.news-btn {
  background-color: #fff;
  margin-top: 2vw;
}

.news-btn-link {
  color: #BC1A29;
  position: relative;
}

.news-btn-triangle {
  width: 10vw;
  max-width: 19px;
  height: 10vw;
  max-height: 21px;
  position: absolute;
  top: 35%;
  left: 20%;
}

@media screen and (max-width: 1024px) {
  .news-btn-triangle {
    top: 27%;
    left: 16%;
  }
}

@media screen and (max-width: 735px) {
  .news-btn-triangle {
    width: 2vw;
    height: 2vw;
    top: 23%;
    left: 15%;
  }
}


.top-contact {
  height: 41.7vw;
  max-height: 802px;
}

@media screen and (max-width: 735px) {
  .top-contact {
    height: 100vw;
  }
}

.contact__title {
  white-space: pre-wrap;
  padding-top: 3.8vw;
  margin-bottom: 1vw;
  line-height: 3.5vw;
}

@media screen and (max-width: 735px) {
  .contact__title {
    margin-bottom: 2vw;
  }
}

.contact__container {
  width: 66.5%;
  margin-left: 14.7%;
  margin-right: 18.7%;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 735px) {
  .contact__container {
    display: block;
  }
}

.contact-img {
  animation: fuwafuwa 3s infinite ease-in-out .8s alternate;
  background: url(../img/ico-apple.svg) no-repeat center center/60px auto;
  display: inline-block;
  transition: 1.5s ease-in-out;
}

@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(-7deg);
  }
  50% {
    transform: translate(0, -7px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(7deg);
  }
}

.contact-img {
  width: 49%;
  height: 23.4vw;
  max-height: 451px;
}

@media screen and (max-width: 735px) {
  .contact-img {
    width: 100%;
    height: 46vw;
  }
}

.contact__inner {
  width: 29vw;
  max-width: 561px;
  margin-top: 4.5vw;
}

@media screen and (max-width: 735px) {
  .contact__inner {
    width: 100%;
  }
}

.btn-shadow {
  width: 100%;
  max-width: 570px;
  height: 4.5vw;
  max-height: 88px;
  border: 2px solid #BC1A29;
  border-radius: 5px;
  position: relative;
  z-index: 1;
  margin-bottom: 1.8vw;
}

@media screen and (max-width: 735px) {
  .btn-shadow {
    height: 9vw;
  }
}

.btn-shadow:nth-child(3) {
  width: 100%;
  max-width: 570px;
  height: 4.5vw;
  max-height: 88px;
  border: 2px solid #BC1A29;
  border-radius: 5px;
  position: relative;
  z-index: 1;
  margin-top: 1.9vw;
}

@media screen and (max-width: 735px) {
  .btn-shadow:nth-child(3) {
    height: 9vw;
  }
}

.contact-btn-link {
  font-size: 2.6vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  color: #fff;
  text-align: center;
  line-height: 4.5vw;
  position: relative;
}

@media screen and (max-width: 735px) {
  .contact-btn-link {
    font-size: 5.2vw;
    line-height: 9vw;
  }
}

.contact-tell-btn {
  width: 100%;
  height: 4.5vw;
  max-height: 88px;
  border: 2px solid #BC1A29;
  border-radius: 5px;
  position: absolute;
  top: -0.5vw;
  left: -0.5vw;
  z-index: 10;
}

@media screen and (max-width: 735px) {
  .contact-tell-btn {
    height: 9vw;
    top: -1.2vw;
    left: -1vw;
  }
}

.contact-tell-btn-link {
  font-size: 2.6vw;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  background-color: #fff;
  color: #BC1A29;
  text-align: center;
  line-height: 4.2vw;
  letter-spacing: 2px;
}

@media screen and (max-width: 735px) {
  .contact-tell-btn-link {
    font-size: 5.2vw;
    line-height: 8.4vw;
  }
}

.contact-btn-triangle1 {
  width: 10vw;
  max-width: 19px;
  height: 10vw;
  max-height: 21px;
  position: absolute;
  top: 40%;
  left: 8%;
}

@media screen and (max-width: 1024px) {
  .contact-btn-triangle1 {
    top: 30%;
    left: 6%;
  }
}

@media screen and (max-width: 735px) {
  .contact-btn-triangle1 {
    top: 35%;
    left: 12%;
  }
}

.contact-btn-triangle2 {
  width: 10vw;
  max-width: 19px;
  height: 10vw;
  max-height: 21px;
  position: absolute;
  top: 40%;
  left: 4%;
}

@media screen and (max-width: 1024px) {
  .contact-btn-triangle2 {
    top: 30%;
    left: 2%;
  }
}
@media screen and (max-width: 735px) {
  .contact-btn-triangle2 {
    top: 35%;
    left: 8%;
  }
}


.top-btn {
  width: 10vw;
  max-width: 190px;
  height: 10vw;
  max-height: 190px;
  position: fixed;
  bottom: 100px;
  right: 14%;
  z-index: 100;
}

.top-btn-img {
  width: 100%;
}

/*202106-*/

.clock-box:hover {
    background: linear-gradient( 90deg, #ff5523 0%, #bc1a29 100%);
}
.frontWrap .method-guide .method-item .contantArea .more_btn a:hover,
.frontWrap .seminar-guide .post-list .post-items .more_btn a:hover {
	background: #da5414;
}
.frontWrap .front-news .block_btn .btn:hover {
    background-color: #ddd;
}
.bottom-contact .contact_box .block_btn .link_tel .btn:hover {
    background: #ffebeb;
}