@charset "UTF-8";
html {
  font-size: 10px;
}
@media (max-width: 375px) {
  html {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 0.8333333333vw;
  }
}
@media (min-width: 1200px) {
  html {
    font-size: 10px;
  }
}

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

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

body {
  word-wrap: break-word;
  color: #000;
  counter-reset: number 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
  overflow-wrap: break-word;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

.container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  overflow: hidden;
}

.footer {
  margin-top: auto;
}

span,
a {
  display: inline-block;
}

.pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ul,
ol {
  padding: 0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeSpeed;
  min-height: 100vh;
}

ul,
ol {
  list-style: none;
}

img {
  height: auto;
  vertical-align: middle;
  width: 100%;
}

article > * + * {
  margin-top: 1em;
}

address,
strong,
em {
  font-style: normal;
}

input,
button,
textarea,
select {
  font: inherit;
}

img:not([alt]) {
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  opacity: 0;
  position: absolute;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select {
  color: #000;
}

select::-ms-expand {
  display: none;
}

.culture__container {
  padding: 8rem 0;
}
@media screen and (min-width: 768px) {
  .culture__container {
    padding: 14rem 0 20rem;
  }
}

.culture__media {
  display: flex;
  position: relative;
}

.culture__media._club {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .culture__media._club {
    margin-top: 13rem;
  }
}

.culture__media._vaccination {
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .culture__media._vaccination {
    margin-top: 16rem;
  }
}

.culture__media._normal {
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .culture__media._normal {
    flex-direction: row-reverse;
  }
}

.culture__media._reverse {
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .culture__media._reverse {
    flex-direction: row;
  }
}

.culture__media::after,
.culture__media::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  width: 100vw;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .culture__media::after,
.culture__media::before {
    width: 100%;
  }
}

.culture__media._relation::before {
  background-image: url(../../sankyo/img/culture/culture-bg1.jpg);
  min-height: 21.8rem;
  right: 7rem;
  top: 5rem;
}
@media screen and (min-width: 768px) {
  .culture__media._relation::before {
    min-height: 28.3rem;
    right: 76rem;
    top: 18rem;
  }
}

.culture__media._club::after {
  background-image: url(../../sankyo/img/culture/culture-bg2.jpg);
  left: 7rem;
  min-height: 32.2rem;
  top: 3rem;
}
@media screen and (min-width: 768px) {
  .culture__media._club::after {
    left: 76rem;
    min-height: 42.5rem;
    top: 18rem;
  }
}

.culture__media._vaccination::before {
  background-image: url(../../sankyo/img/culture/culture-bg3.jpg);
  min-height: 25.3rem;
  right: 7rem;
  top: 1.3rem;
}
@media screen and (min-width: 768px) {
  .culture__media._vaccination::before {
    min-height: 28.3rem;
    right: 76rem;
    top: 18rem;
  }
}

.culture__mediaBody {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .culture__mediaBody {
    margin-top: 0;
    width: 50%;
  }
}

.culture__mediaHeading {
  color: #00D1CF;
  font-family: "ff-market-web", sans-serif;
  font-size: 3.2rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .culture__mediaHeading {
    font-size: 6rem;
  }
}

.culture__mediaLead {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 2.8rem;
}
@media screen and (min-width: 768px) {
  .culture__mediaLead {
    font-size: 2.8rem;
  }
}

.culture__mediaText {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .culture__mediaText {
    font-size: 1.8rem;
  }
}

.culture__mediaText + .culture__mediaText {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .culture__mediaText + .culture__mediaText {
    margin-top: 3.6rem;
  }
}

.culture__mediaThumb {
  position: relative;
}
@media screen and (min-width: 768px) {
  .culture__mediaThumb {
    max-width: 46%;
  }
}

@media screen and (min-width: 768px) {
  .culture__media._normal .culture__mediaThumb {
    margin-right: 4%;
  }
}

@media screen and (min-width: 768px) {
  .culture__media._reverse .culture__mediaThumb {
    margin-left: 4%;
  }
}

.culture__mediaThumb::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
}

.culture__mediaThumb._relation::before {
  background-image: url(../../sankyo/img/culture/culture-icon1.png);
  height: 5.2rem;
  left: 1rem;
  top: -2rem;
  width: 6.6rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .culture__mediaThumb._relation::before {
    height: 12rem;
    left: 1.9rem;
    top: -6rem;
    width: 15.4rem;
  }
}

.culture__mediaThumb._club::before {
  background-image: url(../../sankyo/img/culture/culture-icon2.png);
  height: 10rem;
  right: 2rem;
  top: -3rem;
  width: 8.8rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .culture__mediaThumb._club::before {
    height: 15rem;
    top: -6rem;
    width: 11.8rem;
  }
}

.culture__mediaThumb._vaccination::before {
  background-image: url(../../sankyo/img/culture/culture-icon3.png);
  height: 8.4rem;
  left: 1rem;
  top: -3rem;
  width: 16.5rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .culture__mediaThumb._vaccination::before {
    height: 12.4rem;
    left: 2rem;
    top: -6rem;
    width: 24.5rem;
  }
}

.entry__inner {
  padding: 6rem 0;
}
@media screen and (min-width: 768px) {
  .entry__inner {
    padding: 10rem 0;
  }
}

.entry__text {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .entry__text {
    font-size: 1.6rem;
    text-align: center;
  }
}

.factory__map {
  padding: 5rem 0 0;
}
@media screen and (min-width: 768px) {
  .factory__map {
    padding: 8rem 0 0;
  }
}

/* -------------------------------
  factory__mapInner
------------------------------- */
.factory__mapInner {
  padding: 2rem 0 5rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .factory__mapInner {
    padding: 4rem 0 8rem;
  }
}

.factory__icon {
  display: none;
}
@media screen and (min-width: 768px) {
  .factory__icon {
    cursor: pointer;
    display: block;
    position: absolute;
    width: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._1 {
    -webkit-transform: translateX(360%);
    left: 50%;
    top: 0.8rem;
            transform: translateX(360%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._1 {
    -webkit-transform: translateX(380%);
            transform: translateX(380%);
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._2 {
    -webkit-transform: translate(580%, -50%);
    bottom: 50%;
    right: 50%;
            transform: translate(580%, -50%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._2 {
    -webkit-transform: translate(620%, -60%);
            transform: translate(620%, -60%);
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._3 {
    -webkit-transform: translate(160%, 105%);
    left: 50%;
    top: 50%;
            transform: translate(160%, 105%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._3 {
    -webkit-transform: translate(160%, 115%);
            transform: translate(160%, 115%);
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._4 {
    -webkit-transform: translate(-600%, -340%);
    left: 50%;
    top: 50%;
            transform: translate(-600%, -340%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._4 {
    -webkit-transform: translate(-630%, -350%);
            transform: translate(-630%, -350%);
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._5 {
    -webkit-transform: translateY(-330%);
    left: 11.3rem;
    top: 50%;
            transform: translateY(-330%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._5 {
    -webkit-transform: translateY(-350%);
            transform: translateY(-350%);
  }
}

@media screen and (min-width: 768px) {
  .factory__icon._6 {
    bottom: 41.8rem;
    right: 12.3rem;
  }
}
@media screen and (min-width: 1024px) {
  .factory__icon._6 {
    -webkit-transform: translateY(-5%);
            transform: translateY(-5%);
  }
}
@media screen and (min-width: 1440px) {
  .factory__icon._6 {
    -webkit-transform: translateY(-30%);
            transform: translateY(-30%);
  }
}

/* -------------------------------
  factory__slider
------------------------------- */
.factory__modal {
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: 0;
  transition: all 0.5s ease-in 0s;
  width: 100%;
  z-index: 1000;
}

.factory__modal.js-sliderActive {
  background-color: rgba(30, 38, 120, 0.75);
  height: 100%;
  opacity: 1;
  pointer-events: visible;
}

.factory__sliderWrap {
  align-items: center;
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
}

.factory__slider {
  margin: 0 auto;
  max-width: 33.5rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__slider {
    margin-top: 0;
    max-width: 103rem;
  }
}

body.js-sliderActive {
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
}

.factory__sliderItem {
  background-color: #FFF;
  margin-top: 3rem;
  max-width: 33.5rem;
  padding: 2rem 1rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__sliderItem {
    margin-top: 0;
    max-width: 103rem;
    padding: 6rem 4rem;
  }
}

.factory__sliderInner {
  display: flex;
  flex-direction: column-reverse;
  max-width: 32rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__sliderInner {
    flex-direction: row;
    justify-content: space-between;
    max-width: none;
    min-height: 28.5rem;
  }
}

.factory__sliderBody {
  max-width: 32rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__sliderBody {
    max-width: none;
    width: calc(100% - 64rem);
  }
}

.factory__sliderTitle {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.factory__sliderTitle .num {
  align-items: center;
  color: #FFF;
  display: inline-flex;
  font-size: 2rem;
  font-weight: 700;
  height: 4rem;
  justify-content: center;
  letter-spacing: 0.05em;
  width: 4rem;
}
@media screen and (min-width: 768px) {
  .factory__sliderTitle .num {
    font-size: 2.2rem;
    height: 4.4rem;
    width: 4.4rem;
  }
}

.factory__sliderTitle .num._orange {
  background-color: #FF9D00;
}

.factory__sliderTitle .num._blue {
  background-color: #1D7FFF;
}

.factory__sliderTitle .num._pink {
  background-color: #EE80CC;
}

.factory__sliderTitle .num._purple {
  background-color: #946EE2;
}

.factory__sliderTitle .num._turquoise {
  background-color: #00D1CF;
}

.factory__sliderTitle .num._yellow {
  background-color: #EFCC0E;
}

.factory__sliderTitle .name {
  font-size: 1.8rem;
  font-weight: 700;
  margin-left: 1.8rem;
}
@media screen and (min-width: 768px) {
  .factory__sliderTitle .name {
    font-size: 2rem;
  }
}

.factory__sliderText {
  font-size: 1.6rem;
  line-height: 1.78;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .factory__sliderText {
    font-size: 1.8rem;
    margin-top: 2rem;
  }
}

.factory__sliderThumb {
  display: none;
}
@media screen and (min-width: 768px) {
  .factory__sliderThumb {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._1 img {
    width: 13.2rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._2 img {
    width: 15.8rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._3 img {
    width: 29rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._4 img {
    width: 21rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._5 img {
    width: 16.4rem;
  }
}

@media screen and (min-width: 768px) {
  .factory__sliderThumb._6 img {
    width: 22.8rem;
  }
}

.factory__sliderMovie {
  margin-top: 3rem;
  max-width: 32rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__sliderMovie {
    margin-top: 0;
    max-width: 60rem;
  }
}

.factory__sliderMovieItem {
  min-height: 26.8rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__sliderMovieItem {
    min-height: 33.8rem;
  }
}

.factory__sliderMovieItem iframe {
  border: none;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.factory__sliderAttention {
  font-size: 1.3rem;
  margin-top: 0.4rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .factory__sliderAttention {
    font-size: 1.6rem;
    margin-top: 0.8rem;
  }
}

.factory__slider .slick-prev,
.factory__slider .slick-next {
  background-color: #1E2678 !important;
  top: 50% !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-prev,
.factory__slider .slick-next {
    top: 50% !important;
  }
}

.factory__slider .slick-prev {
  left: -1rem !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-prev {
    left: -6rem !important;
  }
}

.factory__slider .slick-next {
  right: -1rem !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-next {
    right: -6rem !important;
  }
}

.factory__slider .slick-arrow {
  background-color: #1E2678 !important;
  display: block;
  height: 4.4rem !important;
  width: 4.4rem !important;
  z-index: 2 !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-arrow {
    background-color: transparent !important;
  }
}

.factory__slider .slick-prev::before,
.factory__slider .slick-next:before {
  background-color: transparent !important;
  border-left: 4px solid #FFF !important;
  border-top: 4px solid #FFF !important;
  content: "" !important;
  height: 2rem !important;
  opacity: 1 !important;
  position: absolute !important;
  top: 50% !important;
  width: 2rem !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-prev::before,
.factory__slider .slick-next:before {
    height: 4.2rem !important;
    width: 4.2rem !important;
  }
}

.factory__slider .slick-prev::before {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg) !important;
  left: 2.6rem !important;
          transform: translate(-50%, -50%) rotate(-45deg) !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-prev::before {
    -webkit-transform: translate(-50%) rotate(-45deg) !important;
    left: 3rem !important;
            transform: translate(-50%) rotate(-45deg) !important;
  }
}

.factory__slider .slick-next::before {
  -webkit-transform: translate(-50%, -50%) rotate(135deg) !important;
  right: 0.5rem !important;
          transform: translate(-50%, -50%) rotate(135deg) !important;
}
@media screen and (min-width: 768px) {
  .factory__slider .slick-next::before {
    -webkit-transform: translate(-50%) rotate(135deg) !important;
    right: -1rem !important;
            transform: translate(-50%) rotate(135deg) !important;
  }
}

.factory__sliderClose {
  -webkit-transform: translate(-50%, -530%);
  align-items: center;
  border: 0.3rem solid #FFF;
  border-radius: 50%;
  display: flex;
  height: 6rem;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
          transform: translate(-50%, -530%);
  width: 6rem;
}
@media screen and (min-width: 768px) {
  .factory__sliderClose {
    -webkit-transform: translate(-50%, -400%);
    border-width: 0.4rem;
    height: 10rem;
    top: 50%;
            transform: translate(-50%, -400%);
    width: 10rem;
  }
}

.factory__sliderClose span {
  color: #FFF;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  margin-top: -0.4rem;
}
@media screen and (min-width: 768px) {
  .factory__sliderClose span {
    font-size: 4.8rem;
    margin-top: -0.8rem;
  }
}

/* -------------------------------
  factory__navWrap
------------------------------- */
.factory__navWrap {
  background-color: #E5F0FF;
  padding: 6rem 2rem;
}
@media screen and (min-width: 768px) {
  .factory__navWrap {
    padding: 8rem 0;
  }
}

.factory__nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: -2rem auto 0;
  max-width: 48rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .factory__nav {
    max-width: 112rem;
  }
}

.factory__navItem {
  cursor: pointer;
  display: block;
  margin-top: 2rem;
  max-width: 48%;
}
@media screen and (min-width: 768px) {
  .factory__navItem {
    margin-top: 2rem;
    max-width: none;
    transition: box-shadow 0.3s ease-in 0s;
    width: calc((100% - 4rem) / 3);
  }
}

@media screen and (min-width: 768px) {
  .factory__mapIcon:hover {
    box-shadow: 0.4rem 0.4rem 0.8rem #B9B3B0;
  }
}

.introduce-child__bg {
  position: relative;
}

.introduce-child__bg::before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  min-height: 108rem;
  position: absolute;
  top: 28rem;
  width: 100%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .introduce-child__bg::before {
    min-height: 108rem;
    top: 28rem;
  }
}

.introduce-child__bg._a::before {
  background: url(../../sankyo/img/introduce-child/introduce_a-bg1.jpg) no-repeat center/cover;
}

.introduce-child__bg._b::before {
  background: url(../../sankyo/img/introduce-child/introduce_b-bg1.jpg) no-repeat center/cover;
}

.introduce-child__list {
  padding: 8rem 0 12rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__list {
    padding: 10rem 0 15rem;
    position: relative;
    z-index: 1;
  }
}

.introduce-child__list .inner {
  position: relative;
  z-index: 5;
}

.introduce-child__item {
  display: block;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .introduce-child__item {
    transition: all 0.3s ease-in 0s;
  }
}

.introduce-child__item + .introduce-child__item {
  margin-top: 10rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__item + .introduce-child__item {
    margin-top: 11rem;
  }
}

.introduce-child__img {
  left: 0;
  position: absolute;
  top: 0;
  z-index: 1;
}

.introduce-child__img img {
  -o-object-fit: cover;
  -o-object-position: right 24% bottom 10%;
  aspect-ratio: 560/240;
  height: auto;
     object-fit: cover;
     object-position: right 24% bottom 10%;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .introduce-child__img img {
    -o-object-position: 50% 50%;
    aspect-ratio: 1200/360;
       object-position: 50% 50%;
  }
}

.introduce-child__item._childA::before,
.introduce-child__item._childB::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  right: 1rem;
  top: -1rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .introduce-child__item._childA::before,
.introduce-child__item._childB::before {
    right: 2rem;
    top: -2rem;
  }
}

.introduce-child__item._childA::before {
  background-image: url(../../sankyo/img/introduce/introduce-icon1.png);
  height: 7.5rem;
  width: 4rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__item._childA::before {
    height: 14.6rem;
    width: 8rem;
  }
}

.introduce-child__item._childB::before {
  background-image: url(../../sankyo/img/introduce/introduce-icon2.png);
  height: 7.2rem;
  width: 5.2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__item._childB::before {
    height: 14rem;
    width: 10rem;
  }
}

.introduce-child__itemName {
  -webkit-transform: translateY(-2rem);
  font-family: "ff-market-web", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  position: relative;
  text-transform: uppercase;
          transform: translateY(-2rem);
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .introduce-child__itemName {
    -webkit-transform: translateY(-4rem);
    font-size: 6rem;
            transform: translateY(-4rem);
  }
}

.introduce-child__name .kana._orange,
.introduce-child__itemName._orange {
  color: #FF9D00;
}

.introduce-child__name .kana._blue,
.introduce-child__itemName._blue {
  color: #1D7FFF;
}

.introduce-child__body {
  -webkit-transform: translateY(7rem);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin-left: 4%;
  max-width: 24.4rem;
  padding: 1.2rem 1.6rem;
  position: relative;
          transform: translateY(7rem);
  width: 100%;
  z-index: 2;
}
@media screen and (min-width: 480px) {
  .introduce-child__body {
    -webkit-transform: translateY(0rem);
            transform: translateY(0rem);
  }
}
@media screen and (min-width: 768px) {
  .introduce-child__body {
    background-size: cover;
    margin-left: 10.8%;
    max-width: 48.8rem;
    padding: 4.6rem 6rem 5rem;
  }
}

.introduce-child__body._orange {
  background-image: url(../../sankyo/img/introduce/introduce-name1.png);
}

.introduce-child__body._blue {
  background-image: url(../../sankyo/img/introduce/introduce-name2.png);
}

.introduce-child__name {
  padding-bottom: 0.8rem;
}

.introduce-child__name._orange {
  border-bottom: 1px solid #FF9D00;
}

.introduce-child__name._blue {
  border-bottom: 1px solid #1D7FFF;
}

.introduce-child__name .kanji {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .introduce-child__name .kanji {
    font-size: 2.8rem;
  }
}

.introduce-child__name .kana {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .introduce-child__name .kana {
    display: inline-block;
    font-size: 1.6rem;
    margin-left: 2rem;
  }
}

.introduce-child__info {
  font-size: 1.4rem;
  padding-top: 0.6rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__info {
    font-size: 1.8rem;
  }
}

.introduce-child__desc {
  color: #FFF;
  padding: 0 0 8rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__desc {
    padding: 0 0 10rem;
  }
}

.introduce-child__title {
  background: url(../../sankyo/img/introduce-child/introduce-ttl-pop.png) no-repeat center/100% 80%;
  font-size: 1.8rem;
  font-weight: 700;
  height: 16rem;
  padding: 4.4rem 1rem 3rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .introduce-child__title {
    background-size: 100% 100%;
    font-size: 2.8rem;
    padding: 4.4rem 1rem 4.8rem;
  }
}

.introduce-child__media {
  display: flex;
  flex-direction: column-reverse;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__media {
    flex-direction: row;
    margin-top: 4rem;
  }
}

.introduce-child__mediaBody {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__mediaBody {
    margin-top: 0;
    width: 50%;
  }
}

.introduce-child__mediaText {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .introduce-child__mediaText {
    font-size: 1.8rem;
  }
}

.introduce-child__mediaText + .introduce-child__mediaText {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__mediaText + .introduce-child__mediaText {
    margin-top: 3rem;
  }
}

@media screen and (min-width: 768px) {
  .introduce-child__mediaImg {
    margin-left: 5%;
    width: 45%;
  }
}

/* ------------------------------
  introduce-child__schedule
------------------------------ */
.introduce-child__schedule {
  background-color: #E5F0FF;
  padding: 8rem 0 10rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__schedule {
    padding: 8.6rem 0 10rem;
  }
}

.introduce-child__sec-title {
  text-align: center;
}

.introduce-child__scheduleFlow {
  background-color: #FFF;
  margin: -6.5rem auto 0;
  max-width: 48rem;
  padding: 10rem 0 8rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleFlow {
    margin: -8rem auto 0;
    max-width: 90rem;
    padding: 11.1rem 0 8rem;
  }
}

.introduce-child__scheduleInner {
  margin: 0 auto;
  width: 94%;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleInner {
    max-width: 63rem;
    width: 100%;
  }
}

.introduce-child__scheduleItem {
  display: flex;
  margin-top: 2.6rem;
  position: relative;
}
.introduce-child__scheduleItem:not(:last-of-type)::before {
  background-color: #1E2678;
  bottom: -3rem;
  content: "";
  display: block;
  height: 100%;
  left: 4rem;
  position: absolute;
  width: 0.2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem:not(:last-of-type)::before {
    left: 5rem;
  }
}

.introduce-child__scheduleItem dt {
  position: relative;
  width: 40%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem dt {
    width: 46%;
  }
}

.introduce-child__scheduleItem dt span {
  color: #FFF;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 0.5rem;
  position: relative;
  text-align: center;
  width: 8rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem dt span {
    font-size: 1.8rem;
    width: 10rem;
  }
}

.introduce-child__scheduleItem dt span::after {
  -webkit-transform: translateY(-50%);
  border-bottom: 0.2rem dotted #1E2678;
  content: "";
  display: block;
  height: 0.2rem;
  position: absolute;
  right: -66%;
  right: -8rem;
  top: 50%;
          transform: translateY(-50%);
  width: 100%;
  z-index: -1;
}
@media screen and (min-width: 480px) {
  .introduce-child__scheduleItem dt span::after {
    right: -104%;
    width: 110%;
  }
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem dt span::after {
    right: -17rem;
    width: 17rem;
  }
}

.introduce-child__scheduleItem dd {
  background-color: #FFF;
  position: relative;
  width: 60%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem dd {
    width: 54%;
  }
}

.introduce-child__scheduleItem dt span._orange,
.introduce-child__scheduleItem .text._orange::before {
  background-color: #FF9D00;
}

.introduce-child__scheduleItem dt span._blue,
.introduce-child__scheduleItem .text._blue::before {
  background-color: #1D7FFF;
}

.introduce-child__scheduleItem dt span._pink,
.introduce-child__scheduleItem .text._pink::before {
  background-color: #EE80CC;
}

.introduce-child__scheduleItem dt span._purple,
.introduce-child__scheduleItem .text._purple::before {
  background-color: #946EE2;
}

.introduce-child__scheduleItem dt span._turquoise,
.introduce-child__scheduleItem .text._turquoise::before {
  background-color: #00D1CF;
}

.introduce-child__scheduleItem dt span._yellow,
.introduce-child__scheduleItem .text._yellow::before {
  background-color: #EFCC0E;
}

.introduce-child__scheduleItem .text {
  background-color: #FFF;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  margin-left: -1rem;
  margin-top: 0.9rem;
  padding-left: 1rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem .text {
    font-size: 2rem;
    margin-left: 0;
    margin-top: 0.8rem;
    padding-left: 0;
  }
}

.introduce-child__scheduleItem .img {
  margin-top: 1.2rem;
}

.introduce-child__scheduleItem .text::before {
  -webkit-transform: translateY(-50%);
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.2rem;
  left: -0.6rem;
  position: absolute;
  top: 50%;
          transform: translateY(-50%);
  width: 1.2rem;
}
@media screen and (min-width: 768px) {
  .introduce-child__scheduleItem .text::before {
    left: -2rem;
  }
}

.introduce__list {
  padding: 8rem 0 12rem;
}
@media screen and (min-width: 768px) {
  .introduce__list {
    padding: 10rem 0 30rem;
    position: relative;
    z-index: 1;
  }
}

.introduce__list .inner {
  position: relative;
  z-index: 5;
}

.introduce__item {
  display: block;
  height: 18rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .introduce__item {
    height: 36rem;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .introduce__item:hover {
    opacity: 0.8;
  }
}

.introduce__item + .introduce__item {
  margin-top: 10rem;
}
@media screen and (min-width: 768px) {
  .introduce__item + .introduce__item {
    margin-top: 11rem;
  }
}

.introduce__img {
  left: 0;
  position: absolute;
  top: 0;
  z-index: 1;
}

.introduce__img img {
  -o-object-fit: cover;
  -o-object-position: right 24% bottom 10%;
  aspect-ratio: 560/240;
  height: auto;
     object-fit: cover;
     object-position: right 24% bottom 10%;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .introduce__img img {
    -o-object-position: 50% 50%;
    aspect-ratio: 1200/360;
       object-position: 50% 50%;
  }
}

.introduce__item._right::before,
.introduce__item._left::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  right: 1rem;
  top: -1rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .introduce__item._right::before,
.introduce__item._left::before {
    right: 2rem;
    top: -2rem;
  }
}

.introduce__item._left::before {
  background-image: url(../../sankyo/img/introduce/introduce-icon1.png);
  height: 7.5rem;
  width: 4rem;
}
@media screen and (min-width: 768px) {
  .introduce__item._left::before {
    height: 14.6rem;
    width: 8rem;
  }
}

.introduce__item._right::before {
  background-image: url(../../sankyo/img/introduce/introduce-icon2.png);
  height: 7.2rem;
  width: 5.2rem;
}
@media screen and (min-width: 768px) {
  .introduce__item._right::before {
    height: 14rem;
    width: 10rem;
  }
}

.introduce__item._right::after,
.introduce__item._left::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 18rem;
  position: absolute;
  top: 2rem;
  width: 100vw;
  z-index: 0;
}
@media screen and (min-width: 480px) {
  .introduce__item._right::after,
.introduce__item._left::after {
    top: 6rem;
  }
}
@media screen and (min-width: 768px) {
  .introduce__item._right::after,
.introduce__item._left::after {
    height: 36rem;
    top: 18rem;
  }
}

.introduce__item._left::after {
  background-image: url(../../sankyo/img/introduce/introduce-item-bg1.jpg);
  right: 2rem;
}
@media screen and (min-width: 768px) {
  .introduce__item._left::after {
    right: 13rem;
  }
}

.introduce__item._right::after {
  background-image: url(../../sankyo/img/introduce/introduce-item-bg2.jpg);
  left: 2rem;
}
@media screen and (min-width: 768px) {
  .introduce__item._right::after {
    left: 13rem;
  }
}

.introduce__itemName {
  -webkit-transform: translateY(-2rem);
  font-family: "ff-market-web", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  position: relative;
  text-transform: uppercase;
          transform: translateY(-2rem);
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .introduce__itemName {
    -webkit-transform: translateY(-4rem);
    font-size: 6rem;
            transform: translateY(-4rem);
  }
}

.introduce__name .kana._orange,
.introduce__itemName._orange {
  color: #FF9D00;
}

.introduce__name .kana._blue,
.introduce__itemName._blue {
  color: #1D7FFF;
}

.introduce__body {
  -webkit-transform: translateY(7rem);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin-left: 4%;
  max-width: 24.4rem;
  padding: 1.2rem 1.6rem;
  position: relative;
          transform: translateY(7rem);
  width: 100%;
  z-index: 2;
}
@media screen and (min-width: 480px) {
  .introduce__body {
    -webkit-transform: translateY(0rem);
            transform: translateY(0rem);
  }
}
@media screen and (min-width: 768px) {
  .introduce__body {
    background-size: cover;
    margin-left: 10.8%;
    max-width: 48.8rem;
    padding: 4.6rem 6rem 5rem;
  }
}

.introduce__body::before {
  -webkit-transform: scale(0, 1);
  -webkit-transform-origin: left top;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
          transform: scale(0, 1);
          transform-origin: left top;
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  width: 100%;
  z-index: -1;
}

.introduce__body._orange::before {
  background: #FF9D00;
}

.introduce__body._blue::before {
  background: #1D7FFF;
}

@media screen and (min-width: 768px) {
  .introduce__item:hover .introduce__body::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.introduce__body._orange {
  background-image: url(../../sankyo/img/introduce/introduce-name1.png);
}

.introduce__body._blue {
  background-image: url(../../sankyo/img/introduce/introduce-name2.png);
}

.introduce__name {
  padding-bottom: 0.8rem;
}

.introduce__name._orange {
  border-bottom: 1px solid #FF9D00;
}

.introduce__name._blue {
  border-bottom: 1px solid #1D7FFF;
}

.introduce__name .kanji {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .introduce__name .kanji {
    font-size: 2.8rem;
  }
}

.introduce__name .kana {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .introduce__name .kana {
    display: inline-block;
    font-size: 1.6rem;
    margin-left: 2rem;
  }
}

.introduce__info {
  font-size: 1.4rem;
  padding-top: 0.6rem;
}
@media screen and (min-width: 768px) {
  .introduce__info {
    font-size: 1.8rem;
  }
}

.message__wrap {
  padding: 8rem 0 6rem;
}
@media screen and (min-width: 768px) {
  .message__wrap {
    padding: 10rem 0 22rem;
    position: relative;
    z-index: 1;
  }
}

.message__wrap .inner {
  position: relative;
  z-index: 5;
}

.message__item {
  display: block;
  height: 23rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .message__item {
    height: 46rem;
    transition: all 0.3s ease-in 0s;
  }
}

.message__img {
  left: 0;
  position: absolute;
  top: 0;
  z-index: 1;
}

.message__img img {
  -o-object-fit: cover;
  -o-object-position: right 0 bottom 10%;
  aspect-ratio: 560/240;
  height: auto;
     object-fit: cover;
     object-position: right 0 bottom 10%;
  width: 100%;
}
@media screen and (min-width: 480px) {
  .message__img img {
    -o-object-position: right 24% bottom 10%;
       object-position: right 24% bottom 10%;
  }
}
@media screen and (min-width: 768px) {
  .message__img img {
    -o-object-position: 50% 50%;
    aspect-ratio: 1200/460;
       object-position: 50% 50%;
  }
}

.message__item::before {
  background-image: url(../../sankyo/img/message/message-icon1.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 5.8rem;
  position: absolute;
  right: 1rem;
  top: -1rem;
  width: 6rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .message__item::before {
    height: 12.6rem;
    right: 2rem;
    top: -2rem;
    width: 12.9rem;
  }
}

.message__item::after {
  background-image: url(../../sankyo/img/message/message-item-bg1.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 18rem;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 2rem;
  width: 100vw;
  z-index: 0;
}
@media screen and (min-width: 480px) {
  .message__item::after {
    top: 6rem;
  }
}
@media screen and (min-width: 768px) {
  .message__item::after {
    height: 33rem;
    top: 23rem;
  }
}

.message__itemName {
  -webkit-transform: translateY(-2rem);
  font-family: "ff-market-web", sans-serif;
  font-size: 2.4rem;
  position: relative;
  text-transform: uppercase;
          transform: translateY(-2rem);
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .message__itemName {
    -webkit-transform: translateY(-4rem);
    font-size: 6rem;
            transform: translateY(-4rem);
  }
}

.message__name .kana._d-blue,
.message__itemName._d-blue {
  color: #1E2678;
  letter-spacing: 0.05em;
}

.message__body {
  -webkit-transform: translateY(7rem);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin-left: 4%;
  max-width: 24.4rem;
  padding: 1rem 1.6rem 1.6rem;
  position: relative;
          transform: translateY(7rem);
  width: 100%;
  z-index: 2;
}
@media screen and (min-width: 480px) {
  .message__body {
    -webkit-transform: translateY(2rem);
            transform: translateY(2rem);
  }
}
@media screen and (min-width: 768px) {
  .message__body {
    -webkit-transform: translateY(-50%);
    background-size: cover;
    margin-left: 10.8%;
    max-width: 48.8rem;
    padding: 4rem 6rem 5.2rem;
    position: absolute;
    top: 50%;
            transform: translateY(-50%);
  }
}

.message__body._d-blue {
  background-image: url(../../sankyo/img/message/message-name1.png);
}

.message__name {
  padding-top: 0.8rem;
}

.message__name._orange {
  border-bottom: 1px solid #FF9D00;
}

.message__name .kanji {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .message__name .kanji {
    font-size: 2.8rem;
  }
}

.message__name .kana {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .message__name .kana {
    display: inline-block;
    font-size: 1.6rem;
    margin-left: 2rem;
  }
}

.message__info {
  border-bottom: 1px solid #1E2678;
  font-size: 1.4rem;
  padding-bottom: 0.8rem;
}
@media screen and (min-width: 768px) {
  .message__info {
    font-size: 1.8rem;
  }
}

.message__media {
  margin-top: 8rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .message__media {
    display: flex;
    margin-top: 0;
  }
}

.message__desc1 .message__media._normal,
.message__desc2 .message__media._normal:first-of-type {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .message__media + .message__media {
    margin-top: 5.4rem;
  }
}

.message__media._normal {
  flex-direction: row-reverse;
}

@media screen and (min-width: 768px) {
  .message__media + .message__media._normal._bg3 {
    margin-top: 10rem;
  }
}

.message__media._reverse {
  flex-direction: row;
}

@media screen and (min-width: 768px) {
  .message__mediaBody {
    width: 55%;
  }
}

@media screen and (min-width: 768px) {
  .message__mediaBody._normal {
    margin-left: 3%;
  }
}

@media screen and (min-width: 768px) {
  .message__mediaBody._reverse {
    margin-right: 3%;
  }
}

.message__title {
  color: #00D1CF;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .message__title {
    font-size: 2.8rem;
  }
}

.message__text {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .message__text {
    font-size: 1.8rem;
  }
}

.message__title + .message__text {
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .message__title + .message__text {
    margin-top: 1.7rem;
  }
}

.message__text + .message__text {
  margin-top: 3.3rem;
}
@media screen and (min-width: 768px) {
  .message__text + .message__text {
    margin-top: 3.3rem;
  }
}

.message__thumb {
  margin-top: 4rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .message__thumb {
    margin-top: 0;
    max-width: 50rem;
    width: 42%;
  }
}

.message__sectionBg {
  display: flex;
  flex-direction: column;
  margin: 12rem auto 0;
  max-width: 48rem;
}
@media screen and (min-width: 480px) {
  .message__sectionBg {
    flex-direction: row;
    margin-top: 10rem;
    max-width: none;
  }
}

@media screen and (min-width: 768px) {
  .message__sectionImg {
    width: 33.3333333333%;
  }
}

.message__desc2 {
  overflow: hidden;
  padding: 8rem 0 14rem;
}
@media screen and (min-width: 768px) {
  .message__desc2 {
    padding: 10rem 0 29.6rem;
  }
}

.message__thumbs {
  margin-top: 4rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .message__thumbs {
    margin-top: 0;
    max-width: 50rem;
    width: 42%;
  }
}

.message__thumbItem {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .message__thumbItem {
    max-width: 50rem;
  }
}

.message__thumbsInner {
  display: flex;
  justify-content: space-between;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .message__thumbsInner {
    margin-top: 1.4rem;
  }
}

.message__thumbItemChild {
  width: 48%;
}
@media screen and (min-width: 768px) {
  .message__thumbItemChild {
    max-width: 50rem;
  }
}

.message__media._bg1::before,
.message__media._bg2::before,
.message__media._bg3::before {
  background-color: #E5F0FF;
  content: "";
  display: block;
  position: absolute;
  width: 100vw;
}
.message__media._bg1::before {
  height: 33rem;
  right: 4rem;
  top: 19rem;
}
@media screen and (min-width: 768px) {
  .message__media._bg1::before {
    height: 50rem;
    right: 12rem;
    top: 18rem;
  }
}

.message__media._bg2::before {
  height: 66.5rem;
  left: 5rem;
  top: 17rem;
}
@media screen and (min-width: 768px) {
  .message__media._bg2::before {
    left: 12rem;
    top: 17rem;
  }
}

.message__media._bg3::before {
  height: 34.8rem;
  right: 8rem;
  top: 17rem;
}
@media screen and (min-width: 768px) {
  .message__media._bg3::before {
    right: 23rem;
    top: 17rem;
  }
}

.newsDetail__wrap {
  padding: 8rem 0;
}
@media screen and (min-width: 768px) {
  .newsDetail__wrap {
    padding: 10rem 0;
  }
}

.newsDetail__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 90rem;
  width: 100%;
}
.newsDetail__date {
  color: #00D1CF;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .newsDetail__date {
    font-size: 1.6rem;
  }
}

.newsDetail__title {
  border-bottom: 1px solid #D6D6D6;
  border-top: 1px solid #D6D6D6;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 1.2rem;
  padding: 2rem 0;
}
@media screen and (min-width: 768px) {
  .newsDetail__title {
    font-size: 2rem;
    margin-top: 2rem;
    padding: 3rem 0;
  }
}

.newsDetail__btn {
  margin-top: 8rem;
  position: relative;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .newsDetail__btn {
    margin-top: 10rem;
    max-width: 36rem;
  }
}

.newsDetail__btn::before {
  -webkit-transform: translateY(-80%);
  -webkit-filter: grayscale(0);
  background-image: url(../../sankyo/img/common/arrow-back.svg);
  background-size: cover;
  content: "";
  display: block;
          filter: grayscale(0);
  height: 1rem;
  left: 2.4rem;
  position: absolute;
  top: 50%;
          transform: translateY(-80%);
  width: 4.8rem;
}
@media screen and (min-width: 768px) {
  .newsDetail__btn::before {
    transition: all 0.3s ease-in 0s;
    width: 5.6rem;
  }
}

@media screen and (min-width: 768px) {
  .newsDetail__btn:hover::before {
    background-image: url(../../sankyo/img/common/arrow-back-w.svg);
  }
}

.newsDetail__btn a {
  background-color: #00D1CF;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 2.4rem 1rem;
  text-transform: uppercase;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .newsDetail__btn a {
    font-size: 1.7rem;
    padding: 3.6rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .newsDetail__btn:hover a {
    background-color: #1E2678;
    color: #FFF;
  }
}

.news__article {
  padding: 8rem 0;
}
@media screen and (min-width: 768px) {
  .news__article {
    padding: 10rem 0;
  }
}

.news__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 90rem;
  width: 100%;
}
.news__item {
  border-top: 1px solid #D6D6D6;
}
@media screen and (min-width: 768px) {
  .news__item {
    transition: background-color 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .news__item:hover {
    background-color: #C5DEFF;
  }
}

.news__link {
  display: flex;
  flex-direction: column;
  padding: 2rem 0;
}
@media screen and (min-width: 768px) {
  .news__link {
    align-items: center;
    flex-direction: row;
    padding: 3rem 0;
  }
}

.news__date {
  color: #00D1CF;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .news__date {
    font-size: 1.6rem;
  }
}

.news__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 1.6rem;
  font-weight: 400;
  margin-top: 0.4rem;
  max-width: 100%;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .news__title {
    -webkit-line-clamp: 1;
    font-size: 1.8rem;
    margin-left: 3rem;
    margin-top: 0;
    max-width: 78rem;
  }
}

.news__pagenavi {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .news__pagenavi {
    flex-direction: row;
    margin-top: 8rem;
  }
}

.news__btn {
  margin: 2rem 0;
}
@media screen and (min-width: 768px) {
  .news__btn {
    margin: 0 2rem;
  }
}

.nf404 {
  align-items: center;
  background-color: rgba(197, 222, 255, 0.6);
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  height: 90vh;
  height: 90dvh;
  justify-content: center;
  text-align: center;
}
.nf404__title {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 2.4rem;
}
@media screen and (min-width: 768px) {
  .nf404__title {
    font-size: 3.2rem;
    margin-top: 6.4rem;
  }
}

.nf404__sub-title {
  color: rgba(29, 127, 255, 0.2);
  font-family: "ff-market-web", sans-serif;
  font-size: 4.8rem;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-top: 2rem;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .nf404__sub-title {
    font-size: 12.8rem;
    margin-top: -19.4rem;
  }
}

.nf404__sub-title span {
  display: block;
  font-size: 3.6rem;
}
@media screen and (min-width: 768px) {
  .nf404__sub-title span {
    font-size: 12.8rem;
  }
}

.nf404__btn {
  margin-top: 5rem;
  max-width: 24rem;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .nf404__btn {
    margin-top: 10rem;
    transition: all 0.3s ease-in 0s;
  }
}

.nf404__btn a {
  background-color: #1E2678;
  color: #FFF;
  display: inline-block;
  max-width: 28.4rem;
  padding: 3.7rem 1rem;
  position: relative;
  text-transform: uppercase;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .nf404__btn a {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .nf404__btn a::before {
    -webkit-transform: scale(0, 1);
    -webkit-transform-origin: right top;
    background-color: #FFF;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
            transform: scale(0, 1);
            transform-origin: right top;
    transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
    width: 100%;
    z-index: -1;
  }
}

@media screen and (min-width: 768px) {
  .nf404__btn a:hover {
    color: #1E2678;
  }
}

@media screen and (min-width: 768px) {
  .nf404__btn a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.person__container {
  padding: 6rem 0;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .person__container {
    padding: 10rem 0;
  }
}

.person__container::before,
.person__container::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 48rem;
  position: absolute;
  top: 10rem;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .person__container::before,
.person__container::after {
    height: 84rem;
  }
}

.person__container::before {
  background-image: url(../../sankyo/img/person/person-bg-left.png);
  left: 0;
  opacity: 0.2;
  width: 12rem;
}
@media screen and (min-width: 1280px) {
  .person__container::before {
    opacity: 1;
    width: 25.8rem;
  }
}

.person__container::after {
  background-image: url(../../sankyo/img/person/person-bg-right.png);
  opacity: 0.2;
  right: 0;
  width: 13rem;
}
@media screen and (min-width: 1280px) {
  .person__container::after {
    opacity: 1;
    width: 28.6rem;
  }
}

.person__thumbsInner {
  display: flex;
}

.person__lead {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .person__lead {
    margin-top: 6rem;
    text-align: center;
  }
}

.person__leadText {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .person__leadText {
    font-size: 1.8rem;
  }
}

.person__leadText + .person__leadText {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .person__leadText + .person__leadText {
    margin-top: 3.4rem;
  }
}

.person__leadText span {
  display: inline;
}
@media screen and (min-width: 768px) {
  .person__leadText span {
    display: inline-block;
  }
}

.person__leadText .blue {
  color: #1D7FFF;
  font-weight: 700;
}

.person__leadText em {
  display: inline;
  font-weight: 700;
}

.person__point {
  background-image: url(../../sankyo/img/person/person-point-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 108rem;
  padding: 6rem 0 8rem;
}
@media screen and (min-width: 768px) {
  .person__point {
    padding: 10rem 0 12rem;
  }
}

.person__figureWrap {
  position: relative;
  width: 100%;
}

.person__heading {
  margin-top: 2rem;
  text-align: center;
}

.person__heading .en {
  color: rgba(0, 209, 207, 0.4);
  font-family: "ff-market-web", sans-serif;
  font-size: 6rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}

.person__heading .jp {
  color: #FFF;
  display: block;
  font-size: 2.4rem;
  margin-top: -2rem;
}

.person__figure {
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  max-width: 80rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .person__figure {
    margin-top: 0;
  }
}

.person__pointTitle {
  background-color: #FFF;
  font-weight: 700;
  margin-top: 4rem;
  padding: 0.8rem 0.8rem;
}

.person__pointTitle._orange {
  border-left: solid 0.8rem #FF9D00;
  color: #FF9D00;
}

.person__pointTitle._purple {
  border-left: solid 0.8rem #946EE2;
  color: #946EE2;
}

.person__pointTitle._turquoise {
  border-left: solid 0.8rem #00D1CF;
  color: #00D1CF;
}

.person__figureText {
  color: #FFF;
  display: inline-block;
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 1rem;
  max-width: 42rem;
}
@media screen and (min-width: 768px) {
  .person__figureText {
    font-size: 1.8rem;
    line-height: 1.78;
    margin-top: 0;
    position: absolute;
  }
}

@media screen and (min-width: 768px) {
  .person__figureText._top {
    -webkit-transform: translateX(44%);
    left: 50%;
    top: 8rem;
            transform: translateX(44%);
  }
}

@media screen and (min-width: 768px) {
  .person__figureText._left {
    bottom: -9rem;
    left: 0;
  }
}

@media screen and (min-width: 768px) {
  .person__figureText._right {
    bottom: -15rem;
    right: 0;
  }
}

.sitemap__btns {
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 10rem 0 6rem;
  row-gap: 2rem;
}
@media screen and (min-width: 768px) {
  .sitemap__btns {
    grid-template-columns: repeat(4, 1fr);
  }
}

.sitemap__btn {
  display: inline-block;
  text-align: center;
}

.sitemap__btn a {
  border: 1px solid #00D1CF;
  color: #00D1CF;
  display: inline-block;
  max-width: 28.4rem;
  padding: 2.4rem 1rem;
  position: relative;
  text-transform: uppercase;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sitemap__btn a {
    padding: 3.7rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

.sitemap__btn a::before {
  -webkit-transform: scale(0, 1);
  -webkit-transform-origin: left top;
  background: #00D1CF;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
          transform: scale(0, 1);
          transform-origin: left top;
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  width: 100%;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .sitemap__btn a:hover {
    color: #1E2678;
  }
}

@media screen and (min-width: 768px) {
  .sitemap__btn a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.sitemap__links {
  background-color: #1E2678;
  color: #FFF;
}
.sitemap__listWrap {
  padding: 8rem 0;
}
@media screen and (min-width: 768px) {
  .sitemap__listWrap {
    -webkit-column-gap: 6rem;
       -moz-column-gap: 6rem;
            column-gap: 6rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 10rem 0;
  }
}

.sitemap__list {
  margin: 0 auto;
  max-width: 40rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sitemap__list {
    max-width: 40rem;
  }
}

.sitemap__list + li {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .sitemap__list + li {
    margin-top: 3rem;
  }
}

.sitemap__list + .sitemap__list {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .sitemap__list + .sitemap__list {
    margin-top: 0;
  }
}

.sitemap__title {
  color: #00D1CF;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sitemap__title {
    font-size: 2.8rem;
  }
}

.sitemap__title::before {
  -webkit-transform: translateY(-50%);
  background-color: #00D1CF;
  content: "";
  display: block;
  height: 0.4rem;
  position: absolute;
  right: 0;
  top: 50%;
          transform: translateY(-50%);
  width: 100%;
  z-index: 1;
}

.sitemap__title span {
  background-color: #1E2678;
  padding: 0 1rem;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .sitemap__title span {
    padding: 0;
  }
}

.sitemap__itemChild,
.sitemap__item {
  border: 1px solid #00D1CF;
  margin-top: 2.2rem;
  width: 100%;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sitemap__item {
    max-width: 36rem;
  }
}

.sitemap__itemChild a,
.sitemap__item a {
  display: block;
  padding: 2.4rem 2rem;
}
@media screen and (min-width: 768px) {
  .sitemap__itemChild a,
.sitemap__item a {
    padding: 3.5rem 3rem;
    position: relative;
    transition: all 0.3s ease-in 0s;
    z-index: 1;
  }
}

.sitemap__itemChild a::before,
.sitemap__item a::before {
  -webkit-transform: scale(0, 1);
  -webkit-transform-origin: left top;
  background: #00D1CF;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
          transform: scale(0, 1);
          transform-origin: left top;
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  width: 100%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .sitemap__itemChild a:hover,
.sitemap__item a:hover {
    color: #1E2678;
  }
}

@media screen and (min-width: 768px) {
  .sitemap__itemChild a:hover::before,
.sitemap__item a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.sitemap__listChild {
  padding-left: 6rem;
}
@media screen and (min-width: 768px) {
  .sitemap__listChild {
    padding-left: 6rem;
  }
}

.sitemap__itemChild {
  position: relative;
}
.sitemap__itemChild::before {
  -webkit-transform: translateY(-50%);
  background-color: #00D1CF;
  content: "";
  display: block;
  height: 0.1rem;
  left: -5rem;
  position: absolute;
  top: 50%;
          transform: translateY(-50%);
  width: 2.6rem;
}
.sitemap__entry {
  padding: 6rem 0 10rem;
}
@media screen and (min-width: 768px) {
  .sitemap__entry {
    padding: 6rem 0 10rem;
  }
}

.sitemap__entryBtn {
  color: #1E2678;
  margin: 0 auto;
  max-width: 90rem;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sitemap__entryBtn {
    max-width: 90rem;
  }
}

.sitemap__entryBtn a {
  background-color: #00D1CF;
  display: block;
  font-weight: 700;
  padding: 2.4rem 1rem;
}
@media screen and (min-width: 768px) {
  .sitemap__entryBtn a {
    padding: 3.7rem 2rem;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .sitemap__entryBtn a:hover {
    background-color: #C5DEFF;
    color: #1E2678;
  }
}

.sitemap__sns {
  margin-top: 4rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .sitemap__sns {
    margin-top: 4rem;
  }
}

.sitemap__sns a {
  display: inline-block;
  height: 4.4rem;
  width: 4.4rem;
}
@media screen and (min-width: 768px) {
  .sitemap__sns a {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .sitemap__sns a:hover {
    -webkit-transform: rotate(45deg);
    opacity: 0.6;
            transform: rotate(45deg);
  }
}

.sitemap__insta {
  margin-left: 3rem;
}

.system__education {
  background: url(../../sankyo/img/system/system-bg1.jpg) no-repeat center/cover;
  background-color: #E5F0FF;
  margin-top: 6rem;
  min-height: 48rem;
  padding: 2rem 0 8rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .system__education {
    margin-top: 12rem;
    padding: 2rem 0 10rem;
  }
}

.system__educationContents {
  margin: 0 auto;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .system__educationContents {
    max-width: 90rem;
  }
}

.system__educationHeading {
  -webkit-transform: translateY(-4rem);
          transform: translateY(-4rem);
}
@media screen and (min-width: 768px) {
  .system__educationHeading {
    -webkit-transform: translateY(-5.2rem);
            transform: translateY(-5.2rem);
  }
}

.system__educationItem {
  background-color: #FFF;
  border-left: 8px solid #00D1CF;
  padding: 1.6rem 1.6rem;
}
@media screen and (min-width: 768px) {
  .system__educationItem {
    padding: 3rem 3.3rem;
  }
}

.system__educationItem + .system__educationItem {
  margin-top: 4rem;
}

.system__educationTitle {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .system__educationTitle {
    font-size: 2rem;
  }
}

.system__educationText {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .system__educationText {
    font-size: 1.8rem;
  }
}

.system__welfare {
  padding: 3.2rem 0 10rem;
}
@media screen and (min-width: 768px) {
  .system__welfare {
    padding: 4.8rem 0 20rem;
  }
}

.system__welfareLead {
  margin-top: 4rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .system__welfareLead {
    margin-top: 6rem;
  }
}

.system__welfareList {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: repeat(auto-fill, 1fr);
  margin-top: 4rem;
  row-gap: 2rem;
}
@media screen and (min-width: 480px) {
  .system__welfareList {
    gap: 0rem 3rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .system__welfareList {
    gap: 0rem 2.4rem;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 6rem;
  }
}
@media screen and (min-width: 1280px) {
  .system__welfareList {
    gap: 0rem 6rem;
  }
}

.system__welfareCard {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  max-width: 36rem;
  width: 100%;
}
@media screen and (min-width: 480px) {
  .system__welfareCard {
    margin-top: 2rem;
  }
}
.system__welfareText {
  color: #FFF;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 0.6rem 0.4rem 0.8rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .system__welfareText {
    font-size: 2rem;
    padding: 0.8rem 0.4rem 1rem;
  }
}

.system__welfareText._orange {
  background-color: #FF9D00;
}

.system__welfareText._blue {
  background-color: #1D7FFF;
}

.system__welfareText._pink {
  background-color: #EE80CC;
}

.system__welfareText._turquoise {
  background-color: #00D1CF;
}

.system__welfareText._purple {
  background-color: #946EE2;
}

.system__welfareText._yellow {
  background-color: #EFCC0E;
}

.system__welfareAttention {
  font-size: 1.5rem;
  margin-top: 0.4rem;
}
@media screen and (min-width: 768px) {
  .system__welfareAttention {
    font-size: 1.6rem;
    margin-top: 1rem;
  }
}

.talk__introBg {
  background-image: url(../../sankyo/img/talk/talk-bg1.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 70rem;
  padding-top: 4rem;
}
@media screen and (min-width: 768px) {
  .talk__introBg {
    min-height: 51.8rem;
    padding-top: 8.2rem;
  }
}

.talk__heading {
  margin-top: 3rem;
  text-align: center;
}

.talk__heading .en {
  color: rgba(0, 209, 207, 0.4);
  font-family: "ff-market-web", sans-serif;
  font-size: 6rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .talk__heading .en {
    font-size: 12rem;
  }
}

.talk__heading .jp-sub,
.talk__heading .jp-main {
  color: #FFF;
  display: block;
}
.talk__heading .jp-main {
  font-size: 2.4rem;
  margin-top: -2rem;
}
@media screen and (min-width: 768px) {
  .talk__heading .jp-main {
    font-size: 3.6rem;
    margin-top: -5rem;
  }
}

.talk__heading .jp-sub {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .talk__heading .jp-sub {
    font-size: 1.8rem;
  }
}

.talk__cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -50rem;
}
@media screen and (min-width: 768px) {
  .talk__cards {
    flex-wrap: nowrap;
    margin-top: -21.6rem;
  }
}

.talk__card {
  background-color: #FFF;
  box-shadow: 0.4rem 0.4rem 0.8rem rgba(170, 170, 170, 0.5);
  display: flex;
  flex-direction: column;
  margin-top: 2rem;
  width: calc((100% - 2rem) / 2);
}
@media screen and (min-width: 768px) {
  .talk__card {
    background-color: transparent;
    box-shadow: none;
    width: calc((100% - 9rem) / 4);
  }
}
@media screen and (min-width: 1280px) {
  .talk__card {
    width: calc((100% - 16rem) / 4);
  }
}

.talk__cardBody {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  overflow: hidden;
  padding: 1.2rem 1.2rem 1.2rem;
}
@media screen and (min-width: 768px) {
  .talk__cardBody {
    padding: 1.2rem 2rem 1.2rem;
  }
}

.talk__cardYear {
  font-size: 1.5rem;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .talk__cardYear {
    font-size: 1.6rem;
  }
}

.talk__cardYear._blue {
  color: #1D7FFF;
}

.talk__cardYear._purple {
  color: #946EE2;
}

.talk__cardYear._pink {
  color: #EE80CC;
}

.talk__cardYear._orange {
  color: #FF9D00;
}

.talk__cardName {
  display: flex;
  flex-direction: column;
  margin-top: 0.8rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .talk__cardName {
    align-items: center;
    flex-direction: row;
    margin-top: 1rem;
  }
}

.talk__cardName .wrap {
  display: inline-block;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .talk__cardName .wrap {
    margin-left: 1rem;
  }
}

.talk__cardName .jp {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .talk__cardName .jp {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1280px) {
  .talk__cardName .jp {
    font-size: 2.8rem;
  }
}

.talk__cardName .en {
  color: #AAA;
  display: inline;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .talk__cardName .en {
    font-size: 1.2rem;
  }
}

.talk__cardPost {
  color: #FFF;
  font-size: 1.5rem;
  padding: 0.6rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .talk__cardPost {
    font-size: 1.8rem;
    margin-top: -0.5rem;
    padding: 0.8rem;
  }
}

.talk__cardPost._purple {
  background-color: #946EE2;
}

.talk__cardPost._pink {
  background-color: #EE80CC;
}

.talk__cardPost._orange {
  background-color: #FF9D00;
}

.talk__cardPost._blue {
  background-color: #1D7FFF;
}

.talk__section1,
.talk__section2,
.talk__section3,
.talk__section4 {
  margin-top: 8rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .talk__section1,
.talk__section2,
.talk__section3,
.talk__section4 {
    margin-top: 10rem;
  }
}

.talk__section4 {
  padding-bottom: 14rem;
}
@media screen and (min-width: 768px) {
  .talk__section4 {
    padding-bottom: 20rem;
  }
}

.talk__sectionTitle {
  position: relative;
}

.talk__sectionTitle span {
  background-color: #FFF;
  border-left: 1rem #00D1CF solid;
  color: #00D1CF;
  font-size: 2rem;
  line-height: 1.2;
  padding: 0 1rem;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .talk__sectionTitle span {
    font-size: 2.8rem;
  }
}

.talk__sectionTitle::after {
  -webkit-transform: translateY(-50%);
  background-color: #00D1CF;
  content: "";
  display: block;
  height: 0.2rem;
  left: 0;
  position: absolute;
  top: 50%;
          transform: translateY(-50%);
  width: 100vw;
  z-index: 1;
}

.talk__sectionLead {
  font-size: 1.6rem;
  font-weight: 700;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .talk__sectionLead {
    font-size: 1.8rem;
  }
}

.talk__mediaWrap {
  margin-top: -6rem;
}
.talk__media {
  display: flex;
  margin-top: 6rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .talk__media {
    margin-top: 14rem;
  }
}

@media screen and (min-width: 768px) {
  .talk__mediaWrap > .talk__media {
    margin-top: 12rem;
  }
}

@media screen and (min-width: 768px) {
  .talk__media + .talk__media {
    margin-top: 6rem;
  }
}

.talk__media._normal {
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .talk__media._normal {
    flex-direction: row-reverse;
  }
}

.talk__media._reverse {
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .talk__media._reverse {
    flex-direction: row;
  }
}

.talk__mediaBody {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .talk__mediaBody {
    margin-top: 0;
    width: 55.4%;
  }
}

@media screen and (min-width: 768px) {
  .talk__mediaBody._normal {
    margin-left: 3%;
  }
}

@media screen and (min-width: 768px) {
  .talk__mediaBody._reverse {
    margin-right: 3%;
  }
}

.talk__text,
.talk__mediaText {
  font-size: 1.5rem;
  line-height: 2;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .talk__text,
.talk__mediaText {
    font-size: 1.8rem;
    margin-top: 2rem;
  }
}

.talk__mediaText + .talk__mediaText {
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .talk__mediaText + .talk__mediaText {
    margin-top: 3.4rem;
  }
}

.talk__textName,
.talk__mediaName {
  color: #FFF;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  min-width: 6rem;
  padding: 1.6rem 1.2rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .talk__textName,
.talk__mediaName {
    font-size: 1.8rem;
    min-width: 10rem;
    padding: 1.2rem 0.8rem;
  }
}

.talk__textName._blue,
.talk__mediaName._blue {
  background-color: #1D7FFF;
}

.talk__textName._purple,
.talk__mediaName._purple {
  background-color: #946EE2;
}

.talk__textName._pink,
.talk__mediaName._pink {
  background-color: #EE80CC;
}

.talk__textName._orange,
.talk__mediaName._orange {
  background-color: #FF9D00;
}

@media screen and (min-width: 768px) {
  .talk__mediaThumb {
    width: 41.6%;
  }
}

.talk__img {
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .talk__img {
    margin-top: 14rem;
  }
}

.talk__textBox {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .talk__textBox {
    flex-direction: row;
    justify-content: space-between;
  }
}

.talk__textBody {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .talk__textBody {
    margin-top: 6rem;
    width: calc((100% - 8rem) / 2);
  }
}

.talk__textWrap {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .talk__textWrap {
    margin-top: 6rem;
  }
}

.talk__section1._bg1::before,
.talk__section2._bg2::before,
.talk__section3._bg3::before,
.talk__section4._bg4::before {
  background-color: #E5F0FF;
  content: "";
  display: block;
  position: absolute;
  width: 100vw;
}

.talk__section1._bg1::before {
  height: 140rem;
  right: 5rem;
  top: 15rem;
}
@media screen and (min-width: 480px) {
  .talk__section1._bg1::before {
    top: 13rem;
  }
}
@media screen and (min-width: 768px) {
  .talk__section1._bg1::before {
    right: 50rem;
    top: 15rem;
  }
}

.talk__section2._bg2::before {
  height: 150rem;
  left: 5rem;
  top: 15rem;
}
@media screen and (min-width: 480px) {
  .talk__section2._bg2::before {
    top: 13rem;
  }
}
@media screen and (min-width: 768px) {
  .talk__section2._bg2::before {
    left: 49rem;
    top: 15rem;
  }
}

.talk__section3._bg3::before {
  height: 63rem;
  right: 5rem;
  top: 13rem;
}
@media screen and (min-width: 768px) {
  .talk__section3._bg3::before {
    right: 49rem;
    top: 15rem;
  }
}

.talk__section4._bg4::before {
  height: 83rem;
  left: 5rem;
  top: 13rem;
}
@media screen and (min-width: 768px) {
  .talk__section4._bg4::before {
    left: 49rem;
    top: 15rem;
  }
}

.fv {
  align-items: center;
  display: flex;
  height: 80vh;
  height: 80dvh;
  justify-content: center;
  max-height: 108rem;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .fv {
    height: 100vh;
    height: 100dvh;
  }
}

.fv video {
  -o-object-fit: cover;
  aspect-ratio: 1920/1080;
  height: 100%;
  left: 0;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.fv__message {
  position: relative;
}

.fv__text {
  -webkit-transform: translate(-50%, -57%);
  color: #00D1CF;
  font-family: "ff-market-web", sans-serif;
  font-size: 9rem;
  font-weight: 700;
  left: 50%;
  letter-spacing: 0.05em;
  opacity: 0.3;
  position: absolute;
  text-transform: uppercase;
  top: 50%;
          transform: translate(-50%, -57%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .fv__text {
    font-size: 31.6rem;
  }
}

.fv__text .item {
  display: inline;
}

.fv__heading {
  color: #FFF;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.3em;
  margin-bottom: -11rem;
  position: relative;
  text-align: center;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .fv__heading {
    font-size: 2.8rem;
    line-height: 2;
    margin-bottom: -11rem;
  }
}

.fv__heading span:nth-of-type(3) {
  display: block;
}

.topNews__article {
  display: flex;
  flex-direction: column;
  padding: 1.5rem 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .topNews__article {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 1rem 0;
  }
}

.topNews__container {
  display: flex;
  flex-direction: column;
  padding: 0.8rem 1rem;
}
@media screen and (min-width: 768px) {
  .topNews__container {
    align-items: center;
    background-color: transparent;
    flex-direction: row;
    padding: 0;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .topNews__container:hover {
    color: #00D1CF;
    opacity: 1;
  }
}

@media screen and (min-width: 768px) {
  .topNews__inner {
    display: contents;
  }
}

.topNews__em {
  color: #00D1CF;
  font-family: "ff-market-web", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .topNews__em {
    font-size: 4rem;
  }
}

.topNews__time {
  color: #B9B3B0;
  font-size: 1.5rem;
  font-weight: 700;
  margin-left: 0;
  margin-left: 2rem;
}
@media screen and (min-width: 768px) {
  .topNews__time {
    font-size: 1.6rem;
    margin-left: 4rem;
  }
}

.topNews__title {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 1.5rem;
  font-weight: 700;
  margin-left: 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .topNews__title {
    -webkit-line-clamp: 1;
    font-size: 1.6rem;
    margin-left: 2rem;
  }
}

.topNews__link {
  margin-top: 0.4rem;
  padding-right: 1.5rem;
  position: relative;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .topNews__link {
    padding-right: 1.6rem;
  }
}

.topNews__link::after {
  -webkit-transform: translateY(-50%) rotate(45deg);
  background-color: transparent;
  border-right: 1px solid #008E5C;
  border-top: 1px solid #008E5C;
  content: "";
  display: block;
  height: 0.8rem;
  position: absolute;
  right: 0;
  top: 50%;
          transform: translateY(-50%) rotate(45deg);
  width: 0.8rem;
}
@media screen and (min-width: 768px) {
  .topNews__link::after {
    border-color: #000;
  }
}

.topNews__link a {
  color: #008E5C;
}
@media screen and (min-width: 768px) {
  .topNews__link a {
    color: #000;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .topNews__link:hover a {
    color: #008E5C;
    opacity: 1;
    text-decoration: underline;
    text-underline-offset: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .topStripe {
    background-image: url(../../sankyo/img/top/strip-bg.png);
    background-position-x: 6rem;
    background-repeat: repeat;
    background-size: 94% 100%;
    height: 100%;
  }
}

.topMessage {
  background-image: url(../../sankyo/img/top/message-bg.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  min-height: 91.2rem;
  padding: 4rem 0 11rem;
  position: relative;
  z-index: 80;
}
@media screen and (min-width: 768px) {
  .topMessage {
    background-size: cover;
    height: 47.5vw;
    padding: 12.2rem 0 10rem;
  }
}

.topMessage__media {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .topMessage__media {
    flex-direction: row;
  }
}

.topMessage__media .sectionTitle {
  order: -1;
}
@media screen and (min-width: 768px) {
  .topMessage__media .sectionTitle {
    order: 0;
  }
}

.topMessage__body {
  color: #FFF;
  display: contents;
}
@media screen and (min-width: 768px) {
  .topMessage__body {
    display: block;
    width: 44%;
  }
}
@media screen and (min-width: 1024px) {
  .topMessage__body {
    width: 38%;
  }
}

.topMessage__title {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .topMessage__title {
    font-size: 2rem;
    margin-top: 6rem;
  }
}

.topMessage__text {
  line-height: 2;
  margin-top: 2rem;
  order: 1;
}
@media screen and (min-width: 768px) {
  .topMessage__text {
    margin-top: 3.3rem;
    order: 0;
  }
}

.topMessage__img {
  margin-top: 2rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .topMessage__img {
    margin-left: 4%;
    margin-right: 2%;
    margin-top: 0;
    width: 50%;
  }
}
@media screen and (min-width: 1024px) {
  .topMessage__img {
    margin-left: 8%;
  }
}

.topMessage__thumb {
  max-width: 60rem;
  width: 100%;
}

.topMessage__btn {
  bottom: -1rem;
  position: absolute;
  right: -1rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .topMessage__btn {
    bottom: -1rem;
    right: -3rem;
  }
}
@media screen and (min-width: 1024px) {
  .topMessage__btn {
    bottom: 0rem;
  }
}
@media screen and (min-width: 1280px) {
  .topMessage__btn {
    bottom: -4rem;
  }
}

.topMessage__btn a {
  background-color: #00D1CF;
  color: #000;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 1.4rem 1rem;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.3s ease-in 0s;
  width: 16rem;
}
@media screen and (min-width: 768px) {
  .topMessage__btn a {
    font-size: 1.7rem;
    padding: 2.6rem 1rem;
    position: relative;
    transition: all 0.3s ease-in 0s;
    width: 24rem;
    z-index: 1;
  }
}

@media screen and (min-width: 768px) {
  .topMessage__btn a::before {
    -webkit-transform: scale(0, 1);
    -webkit-transform-origin: left top;
    background: #1E2678;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
            transform: scale(0, 1);
            transform-origin: left top;
    transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
    width: 100%;
    z-index: -1;
  }
}

@media screen and (min-width: 768px) {
  .topMessage__btn a:hover {
    color: #FFF;
  }
}

@media screen and (min-width: 768px) {
  .topMessage__btn a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.topLinks1 {
  padding: 4rem 0 4rem;
}
@media screen and (min-width: 768px) {
  .topLinks1 {
    padding: 10rem 0 6.4rem;
    position: relative;
    z-index: 1;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1::after,
.topLinks1::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 100%;
    opacity: 0.4;
    position: absolute;
    z-index: -1;
  }
}
@media screen and (min-width: 1440px) {
  .topLinks1::after,
.topLinks1::before {
    opacity: 1;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1::before {
    background-image: url(../../sankyo/img/top/bgItem-left.png);
    left: 0;
    top: 0;
    width: 25.8rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1::after {
    background-image: url(../../sankyo/img/top/bgItem-right.png);
    right: 0;
    top: -8.3rem;
    width: 28.6rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__btmContainer,
.topLinks1__midContainer,
.topLinks1__topContainer {
    display: flex;
    justify-content: space-between;
  }
}

.topLinks1__midContainer {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__midContainer {
    margin-top: 0;
  }
}

.topLinks1__btmContainer .topLinks1__item {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__btmContainer .topLinks1__item {
    margin-top: 2.6rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item {
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._60 {
    width: 60%;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._35 {
    width: 35%;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._65 {
    width: 65%;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._30 {
    width: 30%;
  }
}

.topLinks1__item._mt-60 {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__item._mt-60 {
    margin-top: -6rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._mt60 {
    margin-top: 8.6rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__item._mt140 {
    margin-top: 14.6rem;
  }
}

.topLinks1__item._absolute {
  margin-top: 4rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .topLinks1__item._absolute {
    margin-top: 0;
  }
}

.topLinks1__item._absolute .topLinks1__thumb img {
  -o-object-fit: cover;
  -o-object-position: top;
  aspect-ratio: 360/360;
  height: 100%;
     object-fit: cover;
     object-position: top;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .topLinks1__item._absolute .topLinks1__thumb img {
    aspect-ratio: 780/552;
  }
}

.topLinks1__item._absolute .sectionTitle {
  left: 0;
  position: absolute;
  top: 0;
}
@media screen and (min-width: 768px) {
  .topLinks1__item._absolute .sectionTitle {
    top: 5rem;
  }
}

.topLinks1__item._absolute .sectionTitle .main {
  font-size: 4.4rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__item._absolute .sectionTitle .main {
    font-size: 8rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__cardWrap {
    display: flex;
    flex-direction: row;
    margin-top: -1rem;
  }
}

.topLinks1__card {
  display: block;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .topLinks1__card:hover .topLinks1__thumb img {
    -webkit-transform: scale(1.1);
    -webkit-filter: blur(3px);
            filter: blur(3px);
            transform: scale(1.1);
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__card:hover .topLinks1__thumb::before {
    font-size: 4.8rem;
    opacity: 1;
  }
}

.topLinks1__card._mt60 {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__card._mt60 {
    margin-top: 5.2rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__card._w360 {
    max-width: 36rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__card._w420 {
    max-width: 42rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__card._w780 {
    max-width: 78rem;
  }
}

.topLinks1__badge {
  border: 2px solid #FF766B;
  color: #FF766B;
  font-size: 1.6rem;
  font-weight: 700;
  left: 0;
  max-width: 12rem;
  padding: 0.8rem 0.4rem;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .topLinks1__thumb {
    overflow: hidden;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__thumb::before {
    -webkit-transform: translate(-50%, -50%);
    color: #FFF;
    content: "more…";
    display: block;
    font-family: "ff-market-web", sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    left: 50%;
    opacity: 0;
    position: absolute;
    text-transform: uppercase;
    top: 50%;
            transform: translate(-50%, -50%);
    transition: all 0.3s ease-in 0s;
    z-index: 2;
  }
}

@media screen and (min-width: 768px) {
  .topLinks1__thumb img {
    transition: all 0.3s ease-in 0s;
  }
}

.topLinks1__thumb._bg {
  background-image: linear-gradient(to right bottom, #FFC6C2, #FFDFDC);
}

.topLinks1__thumb._bg:nth-child(2) {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__thumb._bg:nth-child(2) {
    margin-top: 0;
  }
}

.topLinks1__title {
  color: #FFF;
  padding: 1.6rem 2rem;
  text-align: right;
}
.topLinks1__title._fz18 {
  font-size: 1.7rem;
}
@media screen and (min-width: 768px) {
  .topLinks1__title._fz18 {
    font-size: 1.8rem;
  }
}

.topLinks1__title._red {
  background-color: #FF766B;
}

.topLinks1__title._yellow {
  background-color: #EFCC0E;
}

.topLinks1__title._turquoise {
  background-color: #00D1CF;
}

.topLinks1__title._blue {
  background-color: #1D7FFF;
}

.topLinks1__title._purpule {
  background-color: #946EE2;
}

.topLinks1__title._orange {
  background-color: #FF9D00;
}

.topLinks1__title._pink {
  background-color: #EE80CC;
}

.topLinks2 {
  align-items: center;
  background-image: url(../../sankyo/img/top/topLinks2-bg.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  height: 100%;
  justify-content: center;
  min-height: 63rem;
  position: relative;
  z-index: 80;
}
@media screen and (min-width: 768px) {
  .topLinks2 {
    height: 32.8125vw;
  }
}

.topLinks2__inner {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .topLinks2__inner {
    flex-direction: row;
    justify-content: space-between;
    margin-top: 9rem;
  }
}

.topLinks2__item {
  display: block;
  margin: 6rem auto 0;
  max-width: 36rem;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .topLinks2__item {
    margin: 0;
    max-width: 48rem;
  }
}
@media screen and (min-width: 1024px) {
  .topLinks2__item {
    max-width: 54rem;
  }
}

@media screen and (min-width: 768px) {
  .topLinks2__item:hover img {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}

@media screen and (min-width: 768px) {
  .topLinks2__item:hover::before {
    left: 6rem;
    opacity: 0;
    top: -6rem;
  }
}

.topLinks2__item::before {
  background-color: rgba(1, 109, 108, 0.5);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transition: all 0.3s ease-in 0s;
  width: 100%;
  z-index: 2;
}

.topLinks2__item img {
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
  max-width: 54rem;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .topLinks2__item img {
    transition: all 0.3s ease-in 0s;
  }
}

.topLinks2__item .sectionTitle {
  -webkit-transform: translate(-50%, -50%);
  left: 50%;
  position: absolute;
  text-align: center;
  top: 50%;
          transform: translate(-50%, -50%);
  z-index: 2;
}

.topLinks2__item .sectionTitle .main {
  font-size: 4.8rem;
}
@media screen and (min-width: 768px) {
  .topLinks2__item .sectionTitle .main {
    font-size: 6rem;
  }
}

.work__container {
  padding: 10rem 0 10.4rem;
}
@media screen and (min-width: 768px) {
  .work__container {
    padding: 18rem 0;
    position: relative;
    z-index: 1;
  }
}

.work__item {
  display: flex;
  width: 100%;
}
.work__item._left {
  flex-direction: column-reverse;
  position: relative;
}
@media screen and (min-width: 768px) {
  .work__item._left {
    flex-direction: row;
    min-height: 40.8rem;
  }
}

.work__item._right {
  flex-direction: column-reverse;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .work__item._right {
    flex-direction: row-reverse;
    max-height: 38rem;
  }
}

@media screen and (min-width: 768px) {
  .work__img {
    width: 50%;
  }
}

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

.work__item._right::before,
.work__item._left::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  top: -1rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .work__item._right::before,
.work__item._left::before {
    top: -2rem;
  }
}

.work__item._left::before {
  background-image: url(../../sankyo/img/work/work-bg-icon1.png);
  height: 7.5rem;
  right: 1rem;
  width: 5rem;
}
@media screen and (min-width: 768px) {
  .work__item._left::before {
    height: 13.2rem;
    right: 2rem;
    width: 10rem;
  }
}

.work__item._right::before {
  background-image: url(../../sankyo/img/work/work-bg-icon2.png);
  height: 7.8rem;
  left: 1rem;
  width: 6rem;
}
@media screen and (min-width: 768px) {
  .work__item._right::before {
    height: 13.2rem;
    left: 2rem;
    width: 10rem;
  }
}

.work__item._right::after,
.work__item._left::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100vw;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .work__item._right::after,
.work__item._left::after {
    height: 100%;
  }
}

.work__item._left::after {
  background-image: url(../../sankyo/img/work/work-bg1.jpg);
  min-height: 67.8rem;
  padding: 10rem 0;
  right: 7rem;
  top: -4rem;
}
@media screen and (min-width: 768px) {
  .work__item._left::after {
    min-height: 60.8rem;
    right: 13rem;
    top: -10rem;
  }
}

.work__item._right::after {
  background-image: url(../../sankyo/img/work/work-bg2.jpg);
  left: 7rem;
  min-height: 54.8rem;
  padding: 10rem 0 8rem;
  top: -5rem;
}
@media screen and (min-width: 768px) {
  .work__item._right::after {
    left: 13rem;
    min-height: 53.9rem;
    top: -10rem;
  }
}
@media screen and (min-width: 1280px) {
  .work__item._right::after {
    min-height: 56.9rem;
  }
}

.work__body {
  background-color: #FFF;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 2rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .work__body {
    padding: 4rem;
    width: 50%;
  }
}
@media screen and (min-width: 1280px) {
  .work__body {
    padding: 6rem;
  }
}

.work__body::before {
  -webkit-transform: scale(0, 1);
  -webkit-transform-origin: left top;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
          transform: scale(0, 1);
          transform-origin: left top;
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  width: 100%;
  z-index: -1;
}

.work__text {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .work__text {
    font-size: 1.8rem;
  }
}

.work__text em {
  color: #00D1CF;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 0.4rem;
}
@media screen and (min-width: 768px) {
  .work__text em {
    font-size: 2.4rem;
  }
}

.work__text + .work__text {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .work__text + .work__text {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .work__thumbs {
    display: flex;
    flex-direction: row;
  }
}

.breadcrumbWrap {
  background-color: #008E5C;
  padding: 1.6rem 2rem 1.5rem;
}
@media screen and (min-width: 768px) {
  .breadcrumbWrap {
    padding: 1.3rem 2rem 1.1rem;
  }
}

.breadcrumb {
  font-size: 1.3rem;
  font-weight: 400;
  margin: 0 auto;
  max-width: 114rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .breadcrumb {
    font-size: 1.4rem;
  }
}

.breadcrumb span {
  color: #FFF;
  font-size: 1.4rem;
}

.breadcrumbArrow {
  display: inline-block;
  padding-left: 0.6rem;
  padding-right: 0.6rem;
}

.breadcrumb span:first-of-type {
  padding-left: 0;
}

.breadcrumb a {
  text-decoration: underline;
  transition: all 0.3s ease-in 0s;
}

.breadcrumb a:hover {
  opacity: 0.7;
  text-decoration: underline;
}

.breadcrumb .current-item {
  color: #FFF;
}

.breadcrumbs span[property=name] {
  display: inline-block;
  margin-top: -0.3rem;
  max-width: 11rem;
  overflow: hidden;
  padding: 0;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.btnTop {
  background-color: #C5DEFF;
  display: block;
  height: 5.6rem;
  padding: 1rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .btnTop {
    height: 8rem;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .btnTop:hover {
    background-color: #FFF;
  }
}

.btnTop::before,
.btnTop::after {
  background-color: #1E2678;
  content: "";
  display: block;
  height: 0.2rem;
  position: absolute;
  right: 50%;
  top: 50%;
  width: 2rem;
}
@media screen and (min-width: 768px) {
  .btnTop::before,
.btnTop::after {
    height: 0.2rem;
    transition: all 0.3s ease-in 0s;
    width: 3.2rem;
  }
}

.btnTop::before {
  -webkit-transform: translate(81%, -50%) rotate(-135deg);
          transform: translate(81%, -50%) rotate(-135deg);
}
@media screen and (min-width: 768px) {
  .btnTop::before {
    -webkit-transform: translate(81%, -70%) rotate(-135deg);
            transform: translate(81%, -70%) rotate(-135deg);
  }
}

.btnTop::after {
  -webkit-transform: translate(12%, -50%) rotate(135deg);
          transform: translate(12%, -50%) rotate(135deg);
}
@media screen and (min-width: 768px) {
  .btnTop::after {
    -webkit-transform: translate(12%, -70%) rotate(135deg);
            transform: translate(12%, -70%) rotate(135deg);
  }
}

@media screen and (min-width: 768px) {
  .btnTop:hover::after,
.btnTop:hover::before {
    background-color: #1E2678;
  }
}

.commonTitle {
  display: inline-block;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
  position: relative;
}
@media screen and (min-width: 768px) {
  .commonTitle {
    font-size: 2.2rem;
  }
}

[data-subtitle]::before {
  color: #00D1CF;
  content: attr(data-subtitle);
  display: block;
  font-family: "ff-market-web", sans-serif;
  font-size: 5.6rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  [data-subtitle]::before {
    font-size: 8rem;
  }
}

.footer {
  background-color: #1E2678;
  color: #FFF;
}

.footer__container {
  display: flex;
  flex-direction: column;
  padding-top: 6rem;
}
@media screen and (min-width: 768px) {
  .footer__container {
    flex-direction: row;
    padding-top: 8rem;
  }
}

.footer__toTop {
  background-color: #C5DEFF;
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer__info {
    width: 26%;
  }
}

.footer__logo {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer__logo {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .footer__logo:hover {
    opacity: 0.6;
  }
}

.footer__logo::before {
  background-image: url(../../sankyo/img/common/logo-w.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 3.2rem;
  left: -0.5rem;
  position: absolute;
  top: -0.2rem;
  width: 4.6rem;
}
@media screen and (min-width: 768px) {
  .footer__logo::before {
    height: 3.2rem;
    left: -1rem;
    width: 4.6rem;
  }
}
@media screen and (min-width: 1280px) {
  .footer__logo::before {
    height: 3.8rem;
    left: 0;
    width: 5.2rem;
  }
}

.footer__logoName {
  line-height: 1.2;
  margin-left: 5rem;
}
@media screen and (min-width: 768px) {
  .footer__logoName {
    margin-left: 0;
    text-align: right;
  }
}

.footer__logoName .main {
  font-size: 2rem;
  letter-spacing: 0.075em;
}
@media screen and (min-width: 768px) {
  .footer__logoName .main {
    font-size: 2.6rem;
  }
}

.footer__logoName .sub {
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin-top: -0.8rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .footer__logoName .sub {
    font-size: 1.6rem;
    margin-top: 1.7rem;
  }
}

.footer__btn {
  margin-top: 4rem;
  max-width: 24rem;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer__btn {
    border: 2px solid #1E2678;
    margin-top: 12rem;
    max-width: none;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .footer__btn:hover a {
    background-color: #C5DEFF;
    color: #1E2678;
  }
}

.footer__btn a {
  background-color: #00D1CF;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 2.4rem 1rem;
  text-transform: uppercase;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer__btn a {
    font-size: 1.7rem;
    padding: 3.6rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

.footer_sns {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .footer_sns {
    display: block;
    margin-top: 3rem;
  }
}

.footer_snsItem {
  display: inline-block;
  height: 3.8rem;
  width: 3.8rem;
}
@media screen and (min-width: 768px) {
  .footer_snsItem {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .footer_snsItem:hover {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

.footer_snsItem:not(:first-of-type) {
  margin-left: 2rem;
}

@media screen and (min-width: 768px) {
  .footer__links {
    margin-left: 14%;
    width: 60%;
  }
}
@media screen and (min-width: 1440px) {
  .footer__links {
    margin-left: 21%;
    width: 53%;
  }
}

.footer__linksTop {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 4rem;
  position: relative;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .footer__linksTop {
    border-bottom: 1px solid #FFF;
    flex-direction: row;
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksTop::before {
    background-color: #FFF;
    content: "";
    display: block;
    height: 0.1rem;
    left: 0;
    position: absolute;
    top: 6rem;
    width: 100%;
  }
}

.footer__linksTopItem {
  padding-bottom: 4rem;
  width: 45%;
}
@media screen and (min-width: 768px) {
  .footer__linksTopItem._1 {
    width: 22%;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksTopItem._2 {
    width: 28%;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksTopItem._3 {
    margin-left: 3%;
    width: 25%;
  }
}

.footer__linksItem {
  font-size: 1.5rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer__linksItem {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksItem a {
    display: inline-block;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksItem a::before {
    -webkit-transform: scale(0, 1);
    -webkit-transform-origin: left top;
    background-color: #FFF;
    bottom: -3px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
            transform: scale(0, 1);
            transform-origin: left top;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksItem a:hover::before {
    -webkit-transform: scale(1, 1);
    opacity: 1;
            transform: scale(1, 1);
  }
}

.footer__linksItem._mt {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .footer__linksItem._mt {
    margin-top: 1.3rem;
  }
}

.footer__linksItem._pl {
  padding-left: 1rem;
}
@media screen and (min-width: 768px) {
  .footer__linksItem._pl {
    padding-left: 1rem;
  }
}

.footer__linksTilte {
  color: #00D1CF;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .footer__linksTilte {
    font-size: 2.1rem;
    margin-top: 6rem;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksBtm {
    display: flex;
    margin-top: 3rem;
    position: relative;
  }
}

.footer__linksBtm._sp {
  margin-left: auto;
  width: 45%;
}
@media screen and (min-width: 768px) {
  .footer__linksBtm._sp {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .footer__linksItem._border::after {
    -webkit-transform: translateY(-50%);
    background-color: #FFF;
    content: "";
    display: block;
    height: 1.6rem;
    position: absolute;
    right: -2rem;
    top: 50%;
            transform: translateY(-50%);
    width: 0.1rem;
  }
}

.footer__linksItem._border-btm {
  border-bottom: 1px solid #FFF;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .footer__linksItem._border-btm {
    border-bottom: none;
    padding-bottom: 0;
  }
}

.footer__linksItem._arrow {
  display: inline-block;
  margin-top: 1rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer__linksItem._arrow {
    margin-left: 4rem;
    margin-top: 0;
  }
}

.footer__linksItem._arrow::after {
  -webkit-transform: translateY(-29%);
  background-image: url(../../sankyo/img/common/arrow-tc.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 1.2rem;
  position: absolute;
  right: -1.6rem;
  top: 50%;
          transform: translateY(-29%);
  width: 1.2rem;
}

.footer__copy {
  font-size: 1.1rem;
  letter-spacing: 0.2em;
  margin-top: 6rem;
  padding-bottom: 2rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .footer__copy {
    margin-top: 12rem;
  }
}

.form {
  border-bottom: 1px solid #ccc;
  margin: 6rem auto 0;
  max-width: 108rem;
}
@media screen and (min-width: 768px) {
  .form {
    margin-top: 10rem;
  }
}

.form-row {
  border-top: 1px solid #ccc;
  display: flex;
  flex-direction: column;
  padding: 1.4rem 0 2rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form-row {
    align-items: center;
    flex-direction: row;
    padding: 3rem 2rem;
  }
}

.form-row label {
  align-items: center;
  cursor: default;
  display: flex;
  font-weight: 700;
  justify-content: space-between;
  line-height: 1;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form-row label {
    max-width: 32.2rem;
  }
}

.form-row .item {
  font-size: 1.6rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .form-row .item {
    font-size: 1.8rem;
  }
}

.form-row .validation {
  background-color: #00D1CF;
  color: #FFF;
  font-size: 1.4rem;
  padding: 0.6rem 1rem 0.6rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .form-row .validation {
    font-size: 1.6rem;
    padding: 1rem 1.4rem 1rem;
  }
}

.form-select,
.form-style,
.form-textarea {
  background-color: #FFF;
  border: 1px solid #999999;
  font-size: 1.6rem;
  margin-top: 1rem;
  padding: 1.3rem 0.8rem 1.3rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form-select,
.form-style,
.form-textarea {
    margin-top: 0;
    padding: 1.5rem 1.4rem 1.5rem;
  }
}

.form-select {
  max-width: 60rem;
}

.form-style {
  max-width: 50rem;
  width: 100%;
}

.form-style._wide {
  max-width: 67.8rem;
}

.form-style._addr-num1 {
  display: inline-block;
  margin-left: 0.4rem;
  margin-top: 0;
  width: 10rem;
}

.form-style._addr-num2 {
  display: inline-block;
  margin-left: 0.4rem;
  margin-top: 0;
  width: 14.4rem;
}

.form__addr-numWrap {
  align-items: center;
  display: flex;
  margin-left: 0;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .form__addr-numWrap {
    margin-top: 0;
  }
}

.form__selectBox .form-style {
  margin-left: 2rem;
  margin-top: 0;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0.4rem;
  margin-top: 1.6rem;
}
@media screen and (min-width: 768px) {
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 1rem;
    margin-top: 0;
  }
}

.mwform-radio-field:first-of-type {
  margin-top: 1.6rem;
}
@media screen and (min-width: 768px) {
  .mwform-radio-field:first-of-type {
    margin-top: 0;
  }
}

.form__attention {
  font-size: 1.4rem;
  margin-top: 0.8rem;
}
@media screen and (min-width: 768px) {
  .form__attention {
    font-size: 1.6rem;
  }
}

.mw_wp_form_preview .form__attention {
  display: none;
}

.form-row._check-box {
  margin-top: 5rem;
}
@media screen and (min-width: 768px) {
  .form-row._check-box {
    margin-top: 4rem;
  }
}

.mwform-file-delete {
  border: 1px solid #000;
  padding: 0.1rem 0.6rem 0.2rem;
}

.form-textarea {
  max-width: 67.8rem;
  padding: 1.2rem 1.6rem 1.4rem;
}
@media screen and (min-width: 768px) {
  .form-textarea {
    min-height: 19.5rem;
    padding: 1.7rem 1.6rem 1.8rem;
  }
}

.form-radio__qus span {
  font-weight: 700;
}

/* ------------------------------
  form__btn
------------------------------ */
.form__btnWrap {
  margin-top: 6rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .form__btnWrap {
    margin-top: 10rem;
  }
}

.mw_wp_form_preview .form__btnWrap._back {
  margin-top: 4rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .mw_wp_form_preview .form__btnWrap._back {
    margin-top: 6rem;
  }
}

.form__btn._back,
.form__btn {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  max-width: 36rem;
  padding: 2.4rem 1rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form__btn._back,
.form__btn {
    font-size: 1.7rem;
    max-width: 36rem;
    padding: 3.7rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

.form__btn {
  background-color: #00D1CF;
  color: #000;
}

@media screen and (min-width: 768px) {
  .form__btn:hover {
    background-color: #C5DEFF;
  }
}

.form__btn._back {
  background-color: #1E2678;
  color: #FFF;
}

@media screen and (min-width: 768px) {
  .form__btn._back:hover {
    background-color: #00D1CF;
    color: #000;
  }
}

/* ------------------------------
  file reset
------------------------------ */
input[type=file] {
  opacity: 0;
  position: absolute;
  visibility: hidden;
}

.form__fileWrap {
  align-items: center;
  background-color: #FFF;
  border: 1px solid #999999;
  display: flex;
  margin-top: 1rem;
  max-width: 40rem;
  padding: 1.3rem 0.8rem 1.3rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form__fileWrap {
    margin-top: 0;
    padding: 1.5rem 1.4rem 1.5rem;
  }
}

.form__fileWrap label {
  -webkit-transform: translateY(-50%);
  background-color: #000;
  color: #FFF;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  max-width: none;
  padding: 0.8rem 0.2rem;
  position: absolute;
  right: 1rem;
  top: 50%;
          transform: translateY(-50%);
  width: 6.2rem;
}
@media screen and (min-width: 768px) {
  .form__fileWrap label {
    right: -8rem;
  }
}

.form__file-name {
  margin-left: 0.8rem;
}
@media screen and (min-width: 768px) {
  .form__file-name {
    margin-left: 1.6rem;
  }
}

.mw_wp_form_preview .form__file-name {
  display: none;
}

/* ------------------------------
  radio btn
------------------------------ */
.form__radioContainer {
  display: flex;
  flex-wrap: wrap;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
@media screen and (min-width: 768px) {
  .form__radioContainer {
    align-items: center;
    flex-direction: row;
  }
}

.radio-btn + span {
  cursor: pointer;
  display: inline-block;
  font-weight: 400;
  margin: 0 0.2em 0;
  padding: 0 0 0 1.4em;
  position: relative;
}

.radio-btn + span::before {
  -webkit-transform: translateY(-50%);
  background: #FFF;
  border: 1px solid #B9B3B0;
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.6rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1.6rem;
}

.radio-btn + span::after {
  -webkit-transform: translateY(-50%);
  background-color: #1E2678;
  border: 1px solid transparent;
  border-radius: 50%;
  content: "";
  height: 0.8rem;
  left: 0.4rem;
  opacity: 0;
  padding: 0.2rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease 0s;
  width: 0.8rem;
}

.radio-btn:checked + span::after {
  opacity: 1;
}

.form-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #FFF url(../../sankyo/img/common/contact-arrow.svg) no-repeat center right 16px/12px 10px;
  color: #000;
  width: 10.2rem;
}

.form-select._large {
  margin-top: 1.6rem;
  width: 24rem;
}
@media screen and (min-width: 768px) {
  .form-select._large {
    margin-top: 0;
  }
}

.form-select._short {
  margin-top: 1.6rem;
}
@media screen and (min-width: 768px) {
  .form-select._short {
    margin-top: 0;
  }
}

.form-select._1 {
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .form-select._1 {
    margin-left: 2.6rem;
  }
}

.form-select._2 {
  margin-left: 1.4rem;
}
@media screen and (min-width: 768px) {
  .form-select._2 {
    margin-left: 2.6rem;
  }
}

.form-select::-ms-expand {
  display: none;
}

.form-select:focus {
  border: 1px solid rgba(0, 0, 0, 0.32);
  box-shadow: none;
  outline: none;
}

.form-style::-webkit-input-placeholder, .form-textarea::-webkit-input-placeholder {
  color: #999999;
  font-size: 1.3rem;
}

.form-style::-moz-placeholder, .form-textarea::-moz-placeholder {
  color: #999999;
  font-size: 1.3rem;
}

.form-style:-ms-input-placeholder, .form-textarea:-ms-input-placeholder {
  color: #999999;
  font-size: 1.3rem;
}

.form-style::-ms-input-placeholder, .form-textarea::-ms-input-placeholder {
  color: #999999;
  font-size: 1.3rem;
}

.form-style::placeholder,
.form-textarea::placeholder {
  color: #999999;
  font-size: 1.3rem;
}
@media screen and (min-width: 768px) {
  .form-style::-webkit-input-placeholder, .form-textarea::-webkit-input-placeholder {
    font-size: 1.6rem;
  }
  .form-style::-moz-placeholder, .form-textarea::-moz-placeholder {
    font-size: 1.6rem;
  }
  .form-style:-ms-input-placeholder, .form-textarea:-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .form-style::-ms-input-placeholder, .form-textarea::-ms-input-placeholder {
    font-size: 1.6rem;
  }
  .form-style::placeholder,
.form-textarea::placeholder {
    font-size: 1.6rem;
  }
}

/* ------------------------------
  MW WP Form error bg
------------------------------ */
.mw_wp_form .error {
  font-size: 1.6rem;
  margin-top: 0.8rem;
  padding: 0.2rem;
  padding-left: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mw_wp_form .error {
    max-width: none;
  }
}

.form__addr-numWrap span.error {
  margin-left: 1.6rem;
}

.js-error .form-style,
.js-error .form-textarea,
.js-error .form-select {
  background-color: #FFDCDC;
}

.form__errorWrap {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form__errorWrap {
    margin-left: 4.2rem;
  }
}

/* ------------------------------
  確認画面
------------------------------ */
.mw_wp_form_preview label {
  color: #000;
}

.mw_wp_form_preview .form__fileWrap label {
  color: #FFF;
}

.mw_wp_form_preview .contact__text {
  display: none;
}

.mw_wp_form_preview .form-radio__qus {
  color: #000;
}

.mw_wp_form_preview .form-radio label,
.form-row__check-box label {
  color: #000;
}

.form__confirm {
  display: none;
}

.mw_wp_form_preview .entry__text {
  display: none;
}

.mw_wp_form_preview .form__confirm {
  color: #1E2678;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .mw_wp_form_preview .form__confirm {
    font-size: 1.7rem;
  }
}

.mw_wp_form_preview .form__confirm span {
  display: inline-block;
}

.mw_wp_form_preview .form__errorWrap {
  margin-left: 2rem;
}

/* ------------------------------
  送信完了画面
------------------------------ */
.form__verification {
  padding: 20% 0;
  text-align: center;
}

.form__verificationTitle {
  color: #00D1CF;
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .form__verificationTitle {
    font-size: 2.4rem;
  }
}

.form__verificationText {
  font-size: 1.6rem;
  margin-top: 3rem;
}
@media screen and (min-width: 768px) {
  .form__verificationText {
    font-size: 1.8rem;
    margin-top: 4rem;
  }
}

.vertification__btn {
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .vertification__btn {
    margin-top: 10rem;
  }
}

.vertification__btn a {
  background-color: #00D1CF;
  display: inline-block;
  font-size: 1.6rem;
  max-width: 33.5rem;
  padding: 2.4rem 1rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .vertification__btn a {
    font-size: 1.7rem;
    max-width: 36rem;
    padding: 3.7rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

.vertification__btn a::before {
  -webkit-transform: scale(0, 1);
  -webkit-transform-origin: right top;
  background-color: #1E2678;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
          transform: scale(0, 1);
          transform-origin: right top;
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  width: 100%;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .vertification__btn a:hover {
    color: #FFF;
  }
}

@media screen and (min-width: 768px) {
  .vertification__btn a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.gnav__bg {
  background-color: rgba(30, 38, 120, 0.6);
  height: 100vh;
  height: 100dvh;
  max-height: 108rem;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  right: -100%;
  top: 0;
  transition: all 0.3s ease-out 0s;
  visibility: hidden;
  width: 100%;
  z-index: 200;
}
.gnav__bg.js-active {
  opacity: 1;
  right: 0;
  visibility: visible;
}

.gnav {
  -webkit-transform: translateX(100%);
  background-color: #1E2678;
  color: #FFF;
  height: inherit;
  margin-left: auto;
  margin-right: 0;
  opacity: 0;
  padding: 2rem 2rem;
  pointer-events: none;
          transform: translateX(100%);
  transition: all 0.5s ease-in-out 0.4s;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .gnav {
    padding: 14rem 8rem;
    width: 80%;
  }
}
@media screen and (min-width: 1440px) {
  .gnav {
    padding: 20rem 12rem;
    width: 60%;
  }
}

.gnav.js-active {
  -webkit-transform: translateX(0);
  height: 100%;
  opacity: 1;
  overflow-y: scroll;
  pointer-events: visible;
          transform: translateX(0);
}

body.js-fixed {
  overflow: hidden;
}

.gnav__logo {
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .gnav__logo {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .gnav__logo:hover {
    opacity: 0.6;
  }
}

.gnav__logo::before {
  background-image: url(../../sankyo/img/common/logo-w.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 3.2rem;
  left: -0.5rem;
  position: absolute;
  top: -0.2rem;
  width: 4.6rem;
}
@media screen and (min-width: 768px) {
  .gnav__logo::before {
    height: 3.2rem;
    left: -1rem;
    width: 4.6rem;
  }
}
@media screen and (min-width: 1280px) {
  .gnav__logo::before {
    height: 3.8rem;
    left: 0;
    width: 5.2rem;
  }
}

.gnav__logoName {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  line-height: 1.4;
  margin-left: 4.8rem;
  padding-top: 0.5rem;
}
@media screen and (min-width: 768px) {
  .gnav__logoName {
    align-items: center;
    flex-direction: row;
    line-height: 1;
    margin-left: 6rem;
  }
}

.gnav__logoName .main {
  font-size: 1.8rem;
  letter-spacing: 0.075em;
}
@media screen and (min-width: 768px) {
  .gnav__logoName .main {
    font-size: 2.6rem;
  }
}

.gnav__logoName .sub {
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin-left: auto;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .gnav__logoName .sub {
    font-size: 1.6rem;
    margin-left: 3rem;
  }
}

.gnav__linksTop {
  display: flex;
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksTop {
    margin-top: 6rem;
  }
}

.gnav__link {
  border-bottom: 1px solid #FFF;
  border-top: 1px solid #FFF;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  padding: 2rem 0.4rem;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  width: 33.3333333333%;
}
@media screen and (min-width: 768px) {
  .gnav__link {
    font-size: 1.8rem;
    padding: 3.8rem 1rem;
  }
}

.gnav__link:not(:first-of-type):before {
  -webkit-transform: translateY(-50%);
  background-color: #FFF;
  content: "";
  display: block;
  height: 1.8rem;
  left: 0;
  position: absolute;
  top: 50%;
          transform: translateY(-50%);
  width: 0.1rem;
}

.gnav__linksMid {
  border-bottom: 1px solid #FFF;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 3rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksMid {
    margin-top: 4.5rem;
    padding-bottom: 5rem;
    padding-right: 4rem;
  }
}

.gnav__linksMidItem {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksMidItem {
    margin-top: 0;
  }
}

.gnav__linksMidItem._sp {
  padding-right: 2rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksMidItem._sp {
    display: none;
  }
}

.gnav__linksTitle {
  color: #00D1CF;
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksTitle {
    font-size: 2.8rem;
  }
}

.gnav__links {
  font-size: 1.5rem;
  margin-top: 1.6rem;
  padding-left: 2rem;
  position: relative;
  position: relative;
}
@media screen and (min-width: 768px) {
  .gnav__links {
    font-size: 1.8rem;
    margin-top: 3rem;
  }
}

@media screen and (min-width: 768px) {
  .gnav__link a,
.gnav__linksItem a,
.gnav__links a {
    display: inline-block;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .gnav__link a::before,
.gnav__linksItem a::before,
.gnav__links a::before {
    -webkit-transform: scale(0, 1);
    -webkit-transform-origin: left top;
    background-color: #FFF;
    bottom: -3px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
            transform: scale(0, 1);
            transform-origin: left top;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .gnav__link a:hover::before,
.gnav__linksItem a:hover::before,
.gnav__links a:hover::before {
    -webkit-transform: scale(1, 1);
    opacity: 1;
            transform: scale(1, 1);
  }
}

.gnav__links._circle::before {
  -webkit-transform: translateY(-50%);
  background-color: #00D1CF;
  content: "";
  display: inline-block;
  height: 0.8rem;
  left: 0;
  position: absolute;
  top: 50%;
          transform: translateY(-50%);
  width: 0.8rem;
}

.gnav__linksBtm {
  display: none;
}
@media screen and (min-width: 768px) {
  .gnav__linksBtm {
    display: flex;
    justify-content: space-between;
    margin-top: 6rem;
  }
}

.gnav__links._pl {
  padding-left: 1rem;
}
@media screen and (min-width: 768px) {
  .gnav__links._pl {
    padding-left: 1rem;
  }
}

.gnav__linksBtmItem-right {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  max-width: 40rem;
  width: 100%;
}

.gnav__linksItem {
  position: relative;
}

.gnav__linksItem._arrow {
  margin-top: 1rem;
  position: relative;
}

.gnav__linksItem._arrow::after {
  -webkit-transform: translateY(-29%);
  background-image: url(../../sankyo/img/common/arrow-tc.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 1rem;
  position: absolute;
  right: -1.6rem;
  top: 50%;
          transform: translateY(-29%);
  width: 1rem;
}
@media screen and (min-width: 768px) {
  .gnav__linksItem._arrow::after {
    height: 1.2rem;
    width: 1.2rem;
  }
}

.gnav__snsWrap {
  margin-top: 2rem;
}

.gnav__snsItem {
  display: inline-block;
  height: 3.2rem;
  width: 3.2rem;
}
@media screen and (min-width: 768px) {
  .gnav__snsItem {
    height: 4.4rem;
    transition: all 0.3s ease-in 0s;
    width: 4.4rem;
  }
}

@media screen and (min-width: 768px) {
  .gnav__snsItem:hover {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

.gnav__snsItem:not(:first-of-type) {
  margin-left: 2rem;
}

.gnav__entryBtn {
  display: inline-block;
  margin-top: 2rem;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .gnav__entryBtn {
    border: 2px solid #1E2678;
    margin-left: 2rem;
    margin-top: 0;
    max-width: 24rem;
    transition: all 0.3s ease-in 0s;
  }
}

.gnav__entryBtn a {
  background-color: #00D1CF;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 2.4rem 1rem;
  text-transform: uppercase;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .gnav__entryBtn a {
    font-size: 1.7rem;
    padding: 2.6rem 1rem;
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .gnav__entryBtn a:hover {
    background-color: #C5DEFF;
    color: #1E2678;
  }
}

.hamburgerBtn {
  background-color: #FFF;
  height: 4rem;
  padding: 0;
  position: relative;
  transition: all 0.3s ease-in 0s;
  width: 4rem;
  z-index: 210;
}
@media screen and (min-width: 768px) {
  .hamburgerBtn {
    height: 10rem;
    width: 10rem;
  }
}

.bar {
  -webkit-transform: translate(-50%, -50%);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background-color: #1E2678;
  border-radius: 0.5rem;
  display: block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
          transform: translate(-50%, -50%);
  transition-duration: 0.3s;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  width: 2.4rem;
}
@media screen and (min-width: 768px) {
  .bar {
    height: 0.4rem;
    width: 4.8rem;
  }
}

.bar:nth-of-type(2) {
  margin-top: -0.7rem;
}
@media screen and (min-width: 768px) {
  .bar:nth-of-type(2) {
    margin-top: -1.4rem;
  }
}

.bar:nth-of-type(3) {
  margin-top: 0.7rem;
}
@media screen and (min-width: 768px) {
  .bar:nth-of-type(3) {
    margin-top: 1.4rem;
  }
}

.hamburgerBtn.js-active .bar {
  margin-top: 0;
}

.hamburgerBtn.js-active .bar:nth-of-type(1) {
  width: 0rem;
}

.hamburgerBtn.js-active .bar:nth-of-type(2) {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.hamburgerBtn.js-active .bar:nth-of-type(3) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.header {
  height: 8.4rem;
  left: 0;
  padding: 2rem;
  position: fixed;
  top: 0;
  transition: background-color 0.3s ease-in 0s;
  width: 100%;
  z-index: 120;
}
@media screen and (min-width: 768px) {
  .header {
    height: 14rem;
    padding: 2rem;
  }
}

.header.js-bgColor {
  background-color: #1E2678;
}

.header__inner {
  display: flex;
  justify-content: space-between;
}
.header__logo {
  color: #FFF;
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header__logo {
    transition: all 0.3s ease-in 0s;
  }
}

@media screen and (min-width: 768px) {
  .header__logo:hover {
    opacity: 0.6;
  }
}

.header__logo::before {
  background-image: url(../../sankyo/img/common/logo-w.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 3.2rem;
  left: -0.5rem;
  position: absolute;
  top: -0.2rem;
  width: 4.6rem;
}
@media screen and (min-width: 768px) {
  .header__logo::before {
    height: 3.2rem;
    left: -1rem;
    top: 0.2rem;
    width: 4.6rem;
  }
}
@media screen and (min-width: 1280px) {
  .header__logo::before {
    height: 3.8rem;
    left: 0;
    top: 0;
    width: 5.2rem;
  }
}

.header__logoName {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  line-height: 1.4;
  margin-left: 4.8rem;
}
@media screen and (min-width: 768px) {
  .header__logoName {
    align-items: center;
    flex-direction: row;
    margin-left: 6rem;
  }
}

.header__logoName .main {
  font-size: 2rem;
  letter-spacing: 0.075em;
}
@media screen and (min-width: 768px) {
  .header__logoName .main {
    font-size: 2.6rem;
  }
}

.header__logoName .sub {
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin-left: auto;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .header__logoName .sub {
    font-size: 1.6rem;
    margin-left: 3rem;
  }
}

.header__btnWrap {
  display: flex;
}
.header__entryBtn {
  display: none;
}
@media screen and (min-width: 768px) {
  .header__entryBtn {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .header__entryBtn a {
    align-items: center;
    background-color: #00D1CF;
    color: #000;
    display: flex;
    height: 10rem;
    justify-content: center;
    text-transform: uppercase;
    transition: all 0.3s ease-in 0s;
    width: 10rem;
  }
}

@media screen and (min-width: 768px) {
  .header__entryBtn:hover a {
    background-color: #C5DEFF;
    color: #1E2678;
  }
}

.inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 520px;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 1250px;
    padding-left: 25px;
    padding-right: 25px;
  }
}

.inner._narrow {
  max-width: 520px;
}
@media screen and (min-width: 768px) {
  .inner._narrow {
    max-width: 950px;
  }
}

.js-fadeUp,
.js-fadeUp2,
.js-fadeUp3 {
  -webkit-transform: translateY(2rem);
  opacity: 0;
          transform: translateY(2rem);
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
}

.js-fadeUp.js-inview,
.js-fadeUp2.js-inview,
.js-fadeUp3.js-inview {
  -webkit-transform: translateY(0rem);
  opacity: 1;
          transform: translateY(0rem);
}

.js-fadeUp.js-inview {
  transition-delay: 0.3s;
}

.js-fadeUp2.js-inview {
  transition-delay: 0.4s;
}

.js-fadeUp3.js-inview {
  transition-delay: 0.5s;
}

.js-fadeRight {
  -webkit-transform: translateX(3rem);
  opacity: 0;
          transform: translateX(3rem);
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
}

.js-fadeRight.js-inview {
  -webkit-transform: translateX(0rem);
  opacity: 1;
          transform: translateX(0rem);
  transition-delay: 0.5s;
}

.js-fadeRight2 {
  -webkit-transform: translateX(3rem);
  opacity: 0;
          transform: translateX(3rem);
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
}

.js-fadeRight2.js-inview {
  -webkit-transform: translateX(0rem);
  opacity: 1;
          transform: translateX(0rem);
  transition-delay: 0.8s;
}

.js-fadeLeft {
  -webkit-transform: translateX(-3rem);
  opacity: 0;
          transform: translateX(-3rem);
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
}

.js-fadeLeft.js-inview {
  -webkit-transform: translateX(0rem);
  opacity: 1;
          transform: translateX(0rem);
  transition-delay: 0.5s;
}

.js-fadeLeft2 {
  -webkit-transform: translateX(-3rem);
  opacity: 0;
          transform: translateX(-3rem);
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
}

.js-fadeLeft2.js-inview {
  -webkit-transform: translateX(0rem);
  opacity: 1;
          transform: translateX(0rem);
  transition-delay: 0.8s;
}

.mv__wrap {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  width: 100%;
}

.mv {
  align-items: center;
  display: flex;
  margin: 0 auto;
  min-height: 36rem;
  padding: 0 2rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mv {
    max-width: 124rem;
  }
}

.factory__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/factory-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .factory__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/factory-bg.jpg);
  }
}

.culture__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/culture-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .culture__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/culture-bg.jpg);
  }
}

.person__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/person-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .person__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/person-bg.jpg);
  }
}

.talk__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/talk-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .talk__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/talk-bg.jpg);
  }
}

.work__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/work-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .work__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/work-bg.jpg);
  }
}

.newsDetail__mv.mv__wrap,
.news__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/news-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .newsDetail__mv.mv__wrap,
.news__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/news-bg.jpg);
  }
}

.entry__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/entry-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .entry__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/entry-bg.jpg);
  }
}

.message__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/message-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .message__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/message-bg.jpg);
  }
}

.introduce__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/introduce-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .introduce__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/introduce-bg.jpg);
  }
}

.system__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/system-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .system__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/system-bg.jpg);
  }
}

.sitemap__mv.mv__wrap {
  background-image: url(../../sankyo/img/mv/sitemap-bg_sp.jpg);
}
@media screen and (min-width: 768px) {
  .sitemap__mv.mv__wrap {
    background-image: url(../../sankyo/img/mv/sitemap-bg.jpg);
  }
}

.mv::before {
  background-color: rgba(0, 209, 207, 0.1);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}

.mv__title {
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .mv__title {
    margin-top: 3rem;
  }
}

.mv__title .main {
  color: #00D1CF;
  display: block;
  font-family: "ff-market-web", sans-serif;
  font-size: 5.6rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .mv__title .main {
    font-size: 8rem;
  }
}

.mv__title .sub {
  color: #FFF;
  font-size: 1.7rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .mv__title .sub {
    font-size: 1.8rem;
  }
}

.sectionTitle {
  display: inline-block;
  font-weight: 700;
  line-height: 1;
}
.sectionTitle .main {
  color: #00D1CF;
  display: block;
  font-family: "ff-market-web", sans-serif;
  font-size: 5.6rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .sectionTitle .main {
    font-size: 8rem;
  }
}

.sectionTitle .sub {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .sectionTitle .sub {
    font-size: 1.8rem;
  }
}

.sectionTitle .sub._white {
  color: #FFF;
}

.sectionTitle .sub._black {
  color: #000;
}

/*---------------------------------
single-content default
---------------------------------*/
.wp-block-heading,
.wp-block-gallery,
.wp-block-media-text,
.wp-block-table {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .wp-block-heading,
.wp-block-gallery,
.wp-block-media-text,
.wp-block-table {
    margin-top: 6rem;
  }
}

.wp-block-table table {
  border: 0.2rem solid #ccc;
  border-collapse: collapse;
}

.wp-block-table table caption {
  font-size: 1.5em;
  margin-top: 2.4rem;
  text-align: center;
}

.wp-block-table table th,
.wp-block-table table td {
  border: 0.1rem solid #ccc;
}

.wp-block-table table thead {
  border-bottom: 0.2rem solid #ccc;
}

.wp-block-table table thead th,
.wp-block-table table thead td {
  padding: 0.6rem 0.8rem;
}

.wp-block-table table thead th:first-child {
  width: 9.6rem;
}

.wp-block-table table thead th:nth-child(2) {
  width: 9.6rem;
}

.wp-block-table table tbody th,
.wp-block-table table tbody td {
  padding: 0.4rem 0.8rem;
}

.wp-block-table table tbody tr:nth-child(even) {
  background-color: #C5DEFF;
}

.wp-block-quote,
.wp-block-pullquote blockquote {
  background-color: #C5DEFF;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 5rem;
  padding-bottom: 4.7rem;
  padding-left: 6.7rem;
  padding-right: 6.7rem;
  padding-top: 2.5rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .wp-block-quote,
.wp-block-pullquote blockquote {
    margin-top: 4rem;
  }
}

.wp-block-quote::before,
.wp-block-pullquote blockquote::before {
  color: #B4B4B4;
  content: "“";
  font-size: 9rem;
  left: 1.4rem;
  position: absolute;
  top: -2rem;
}

.wp-block-quote::after,
.wp-block-pullquote blockquote::after {
  bottom: -6rem;
  color: #B4B4B4;
  content: "”";
  font-size: 9rem;
  position: absolute;
  right: 1.4rem;
}

.wp-block-quote p,
.wp-block-pullquote blockquote p {
  font-size: 1.6rem;
  margin-top: 0;
  padding-top: 1.6rem;
}

.wp-block-quote p:first-of-type,
.wp-block-pullquote blockquote p:first-of-type {
  margin-top: 2rem;
  padding-top: 0;
}

.wp-block-quote p + p {
  margin-top: 2rem;
  padding-top: 0;
}

.wp-block-quote cite,
.wp-block-pullquote blockquote cite {
  font-size: 1.6rem;
  margin-top: 2rem;
  text-align: right;
}

.wp-block-pullquote blockquote {
  margin-top: 0;
}

.wp-block-image {
  height: auto;
  margin: 5rem auto 0;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .wp-block-image {
    margin-top: 5rem;
  }
}

.wp-element-caption {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .wp-element-caption {
    font-size: 1.8rem;
  }
}

.single-content p img {
  height: auto;
  max-width: 100%;
}

.wp-block-heading {
  font-weight: 700;
  line-height: 1.5;
}
h1.wp-block-heading {
  border-bottom: 1px solid #D6D6D6;
  font-size: 1rem;
  margin-top: 0;
  padding-bottom: 2.8rem;
}
@media screen and (min-width: 768px) {
  h1.wp-block-heading {
    font-size: 2rem;
    padding-bottom: 3.4rem;
  }
}

h2.wp-block-heading {
  border-left: 0.4rem solid #00D1CF;
  font-size: 1.8rem;
  padding-left: 1.6rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  h2.wp-block-heading {
    font-size: 1.9rem;
  }
}

h3.wp-block-heading {
  border-bottom: 1.8px solid #00D1CF;
  font-size: 1.7rem;
  padding-bottom: 1.6rem;
}
@media screen and (min-width: 768px) {
  h3.wp-block-heading {
    font-size: 1.8rem;
  }
}

h4.wp-block-heading {
  border-bottom: 2px dotted #B9B3B0;
  font-size: 1.6rem;
  padding-bottom: 1.6rem;
}
@media screen and (min-width: 768px) {
  h4.wp-block-heading {
    font-size: 1.7rem;
  }
}

h5.wp-block-heading {
  font-size: 1.6rem;
  margin-bottom: 0;
  padding-left: 1.4rem;
  position: relative;
}

h5.wp-block-heading::after {
  background-color: transparent;
  border-color: transparent transparent transparent #00D1CF;
  border-radius: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  content: "";
  display: inline-block;
  height: 0;
  left: -0.2rem;
  position: absolute;
  top: 1rem;
  width: 0;
}

.wp-block-heading h6 {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.35;
  margin-bottom: 0;
  padding-left: 1.4rem;
  position: relative;
}

.wp-block-heading h6::after {
  background-color: #00D1CF;
  content: "";
  display: block;
  height: 0.6rem;
  left: -0.2rem;
  position: absolute;
  top: 1rem;
  width: 0.6rem;
}

.single-content p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .single-content p {
    font-size: 1.6rem;
    margin-top: 5rem;
  }
}

.single-content dd,
.single-content dt {
  padding: 0.8rem 1.6rem;
}

.single-content dt {
  border-left: 0.2rem solid #00D1CF;
  margin-top: 2.4rem;
}

.single-content dd {
  padding-left: 3.4rem;
}

.single-content ol {
  counter-reset: ol;
}

.single-content ul,
.single-content ol {
  line-height: 1.5;
  list-style-type: none;
  margin-top: 4rem;
  padding-left: 2rem;
}
@media screen and (min-width: 768px) {
  .single-content ul,
.single-content ol {
    margin-top: 5rem;
  }
}

.single-content ul ul,
.single-content ol ol {
  margin-top: 0.8rem;
}

.single-content ul li,
.single-content ol li {
  margin-top: 2rem;
}

.single-content ol li {
  padding-left: 2rem;
}

.single-content ul > li {
  position: relative;
}

.single-content ul > li::before {
  background-color: #00D1CF;
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.1rem;
  left: -2rem;
  position: absolute;
  top: 0.6rem;
  width: 1.1rem;
}
@media screen and (min-width: 768px) {
  .single-content ul > li::before {
    top: 0.8rem;
  }
}

.single-content ul li ul > li {
  position: relative;
  text-decoration: none;
}

.single-content ul li ul > li::before {
  background-color: transparent;
  border-color: transparent transparent transparent #00D1CF;
  border-radius: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  content: "";
  display: inline-block;
  height: 0;
  left: -1.6rem;
  position: absolute;
  top: 0.8rem;
  width: 0;
}

.single-content ul li ul li ul li {
  position: relative;
}

.single-content ul li ul li ul li::before {
  background-color: #00D1CF;
  border-radius: 5%;
  content: "";
  display: block;
  height: 1.1rem;
  left: -2rem;
  position: absolute;
  top: 0.8rem;
  width: 1.1rem;
}

.single-content ol > li {
  counter-increment: ol;
  position: relative;
}

.single-content ol li::before {
  color: #00D1CF;
  content: "0" counter(ol);
  font-weight: 700;
  left: -2rem;
  position: absolute;
  top: 0;
}

.single-content ol li ol > li::before {
  left: -2.8rem;
}

.single-content ol li ol li ol > li::before {
  left: -3.2rem;
}

.single-content a {
  color: #00D1CF;
  text-decoration: underline;
}

.single-content address {
  margin-top: 3rem;
}

.underPageTitle {
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
}
.underPageTitle .main {
  color: #00D1CF;
  display: block;
  font-family: "ff-market-web", sans-serif;
  font-size: 3.2rem;
  font-weight: 400;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .underPageTitle .main {
    font-size: 5rem;
  }
}

.underPageTitle .sub {
  display: block;
  font-size: 1.5rem;
  margin-top: -1rem;
}
@media screen and (min-width: 768px) {
  .underPageTitle .sub {
    font-size: 1.6rem;
  }
}

.system__educationHeading .sub {
  color: #FFF;
}

.wp-pagenavi__wrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  width: 33rem;
  z-index: 50;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi__wrap {
    flex-direction: row;
    justify-content: center;
    width: 100%;
  }
}

.wp-pagenavi {
  margin-left: -1.6rem;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi {
    margin-left: 0;
  }
}

/* --------------------------------
  一覧ページ用
-------------------------------- */
.wp-pagenavi .page,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi span.current,
.wp-pagenavi .back-blog,
.wp-pagenavi .page.smaller,
.wp-pagenavi .page.larger {
  align-items: center;
  background-color: #00D1CF;
  color: #000;
  display: inline-flex;
  font-size: 1.6rem;
  font-weight: 700;
  height: 4.4rem;
  justify-content: center;
  margin-left: 1.6rem;
  padding: 0.2rem 0.4rem 0.2rem;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease-in 0s;
  width: 4.4rem;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi .page,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi span.current,
.wp-pagenavi .back-blog,
.wp-pagenavi .page.smaller,
.wp-pagenavi .page.larger {
    font-size: 1.7rem;
    height: 5.4rem;
    margin-left: 1.6rem;
    width: 5.4rem;
  }
  .wp-pagenavi .page:hover,
.wp-pagenavi .last:hover,
.wp-pagenavi .first:hover,
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi span.current:hover,
.wp-pagenavi .back-blog:hover,
.wp-pagenavi .page.smaller:hover,
.wp-pagenavi .page.larger:hover {
    background-color: #1E2678;
    color: #FFF;
    opacity: 1;
  }
}

.wp-pagenavi .first,
.wp-pagenavi .last {
  display: none;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi .first,
.wp-pagenavi .last {
    align-items: center;
    display: inline-flex;
    justify-content: center;
  }
}

.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink,
.wp-pagenavi span.current {
  background-color: #1E2678;
  color: #FFF;
}

.wp-pagenavi .pages {
  display: none;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  display: none;
}

/* --------------------------------
  詳細ページ用
-------------------------------- */
.single-columnContent .back-listWrap a,
.single-columnContent .previousPost a,
.single-columnContent .nextPost a {
  border-radius: 4px;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
  padding: 2.2rem 1rem 2.1rem;
  text-align: center;
  text-decoration: none;
  width: 28rem;
}
@media screen and (min-width: 768px) {
  .single-columnContent .back-listWrap a,
.single-columnContent .previousPost a,
.single-columnContent .nextPost a {
    transition: all 0.3s ease-in 0s;
    width: 20rem;
  }
}

.single-columnContent .previousPost a,
.single-columnContent .nextPost a {
  background-color: #FFF;
  border: 2px solid #008E5C;
  color: #008E5C;
  position: relative;
}
.single-columnContent .back-listWrap a {
  background-color: #008E5C;
  border: 2px solid transparent;
  color: #FFF;
}
@media screen and (min-width: 768px) {
  .single-columnContent .previousPost a:hover,
.single-columnContent .nextPost a:hover {
    background-color: #008E5C;
    color: #FFF;
  }
}

@media screen and (min-width: 768px) {
  .single-columnContent .back-listWrap a:hover {
    background-color: #FFF;
    border: 2px solid #008E5C;
    color: #008E5C;
  }
}

.single-columnContent .back-listWrap {
  margin: 0 3rem;
  padding: 4rem 0;
}

span.extend {
  border: none;
  padding: 0;
}
@media screen and (min-width: 768px) {
  span.extend {
    padding: 0.3rem 1.2rem;
  }
}

.wp-pagenavi span.extend {
  display: none;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi span.extend {
    color: #000;
    display: inline-block;
    margin-left: 1.6rem;
  }
}

.single-columnContent .previousPost a::before,
.single-columnContent .nextPost a::before {
  background-color: transparent;
  border-right: 2px solid #008E5C;
  border-top: 2px solid #008E5C;
  content: "";
  display: inline-block;
  height: 0.8rem;
  position: absolute;
  top: 50%;
  width: 0.8rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .single-columnContent .previousPost a::before,
.single-columnContent .nextPost a::before {
    height: 1rem;
    transition: all 0.3s ease-in 0s;
    width: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .previousPost a:hover::before,
.nextPost a:hover::before {
    border-right: 2px solid #FFF;
    border-top: 2px solid #FFF;
  }
}

.single-columnContent .previousPost a::before {
  -webkit-transform: translateY(-50%) rotate(-135deg);
  left: 1.2rem;
          transform: translateY(-50%) rotate(-135deg);
}
@media screen and (min-width: 768px) {
  .single-columnContent .previousPost a::before {
    left: 2rem;
  }
}

.single-columnContent .nextPost a::before {
  -webkit-transform: translateY(-50%) rotate(45deg);
  right: 1.2rem;
          transform: translateY(-50%) rotate(45deg);
}
@media screen and (min-width: 768px) {
  .single-columnContent .nextPost a::before {
    right: 2rem;
  }
}
/*# sourceMappingURL=sourcemaps/style.css.map */