@charset "UTF-8";
.pc {
  display: inline-block;
}

@media only screen and (min-width: 481px) and (max-width: 766px),
  only screen and (max-width: 480px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}

@media only screen and (min-width: 481px) and (max-width: 766px),
  only screen and (max-width: 480px) {
  .sp {
    display: inline-block;
  }
}

.sp-only {
  display: none;
}

@media only screen and (max-width: 480px) {
  .sp-only {
    display: inline-block;
  }
}

@font-face {
  font-family: "KozuGoPro";
  src: url(../fonts/KozGoPro-Regular.otf);
}

@keyframes move_smoke {
  0% {
    transform: translate(-5px, -5px);
  }
  50% {
    transform: translate(5px, 5px);
  }
  100% {
    transform: translate(0, 0);
  }
}

@keyframes scale {
  0% {
    transform: scale(0.9);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    transform: scale(1);
  }
  75% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(0.9);
  }
}

@keyframes fadeInTitle {
  0% {
    opacity: 0;
    top: 55%;
  }
  25% {
    opacity: 0.15;
  }
  50% {
    opacity: 0.2;
  }
  75% {
    opacity: 0.75;
  }
  100% {
    opacity: 1;
  }
}

.top {
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 1101px) {
  .top {
    margin-bottom: 15rem;
  }
}

@media only screen and (max-width: 480px) {
  .top {
    margin-bottom: 8rem;
  }
}

.top::after {
  content: "";
  position: absolute;
  background-image: url(../img/common/mv_bg.png);
  top: 0;
  left: 0;
  width: 100%;
  padding-bottom: 42%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-position: bottom;
  z-index: -1;
}

@media only screen and (min-width: 1400px) {
  .top::after {
    height: 553px;
    padding-bottom: 0;
  }
}

.top .inner {
  position: relative;
  z-index: 99;
}

.top .mv {
  background-image: url(../img/top-page/mv_img.png);
  padding-bottom: 68.35%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  margin-bottom: 4.1rem;
}

@media only screen and (max-width: 1164px) {
  .top .mv {
    max-width: 1164px;
  }
}

.top .mv .mv_text {
  width: 337px;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  /* animation-name: fadeInTitle;
  animation-duration: 1.5s;
  transition: 0.3s; */
}

.-fade-in_title {
  animation-name: fadeInTitle;
  animation-duration: 1.5s;
  transition: 0.3s;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .mv_text {
    width: 200px;
  }
}

.top .mv .mv_text img {
  width: 100%;
}

.top .mv .mv_message_sp {
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: "A1ゴシック B", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  line-height: 1.642;
  text-shadow: #ffffff 0px 0 10px, #ffffff 0px 0 10px, #ffffff 0px 0 10px,
    #ffffff 0px 0 10px;
  text-align: center;
  width: 100%;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .mv_message_sp {
    font-size: 1.4rem;
  }
}

@media only screen and (min-width: 1101px) {
  .top .mv .mv_message_sp {
    display: none;
  }
}

/* イベントcoming soon */
/*.top .mv .event_info {
  position: absolute;
  bottom: -3.3rem;
  right: -10.4rem;
  background-color: #000000;
  color: #ffffff;
  width: 265px;
  height: 265px;
  border-radius: 50%;
  text-align: center;
  padding: 2rem 5rem 2.4rem;
  animation: scale 3s linear infinite;
}*/
/* イベント2デイズ */
.top .mv .event_info {
  position: absolute;
  bottom: -3.3rem;
  right: -10.4rem;
  background-color: #000000;
  color: #ffffff;
  width: 285px;
  height: 265px;
  border-radius: 50%;
  text-align: center;
  padding: 1rem 4rem 2.4rem;
  animation: scale 3s linear infinite;
}

.top .mv .event_info a {
  color: white;
}
.top .mv .event_info a:visited {
  color: inherit;
}

@media only screen and (max-width: 1284px) {
  .top .mv .event_info {
    right: -1rem;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info {
    width: 200px;
    height: 200px;
    padding-top: 4.2rem;
    bottom: -8rem;
    right: 0;
    left: 0;
    margin: auto;
  }
}

@media only screen and (max-width: 480px) {
  .top .mv .event_info {
    width: 120px;
    height: 120px;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.top .mv .event_info .event_info_date {
  border-top-left-radius: 50%;
  position: absolute;
  top: 2rem;
}

.top .mv .event_info .event_info_date .month,
.top .mv .event_info .event_info_date .day {
  font-size: 5.2rem;
  line-height: 1;
  font-family: "A1ゴシック B", sans-serif;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info .event_info_date .month,
  .top .mv .event_info .event_info_date .day {
    font-size: 3.2rem;
  }
}

.top .mv .event_info .event_info_date .month {
  position: absolute;
  top: 0;
  left: 12px;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info .event_info_date .month {
    left: 19px;
  }
}

.top .mv .event_info .event_info_date .day {
  position: absolute;
  right: -128px;
  letter-spacing: -0.15em;
  top: 33px;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info .event_info_date .day {
    right: -82px;
  }
}

.top .mv .event_info .event_info_date .slash {
  position: absolute;
  font-size: 8rem;
  font-weight: 500;
  left: 5.5rem;
  top: 0;
  transform: rotate(35deg);
  width: 2px;
  height: 100px;
  background-color: #ffffff;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info .event_info_date .slash {
    height: 60px;
    left: 4.5rem;
  }
}

.top .mv .event_info .event_info_date .day_of_week {
  font-size: 3rem;
  line-height: 1;
  letter-spacing: -0.1em;
  position: absolute;
  right: -203px;
  top: 50px;
  font-family: "A1ゴシック B", sans-serif;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info .event_info_date .day_of_week {
    font-size: 2rem;
    right: -131px;
    top: 43px;
  }
}

/*.top .mv .event_info_text {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-top: -2rem;
}*/
/*Coming Soonの時はこっち*/
/*.top .mv .event_info_text {
  font-size: 3.6rem;
  line-height: 1.4;
  margin-top: 2rem;
}*/
/*ワンデイ開催の時はこっち*/
.top .mv .event_info_text {
  font-size: 3.6rem;
  line-height: 1.3;
  padding-top: 2.8rem;
}
.youbi_size{
  font-size: 3rem;
}
/*ツーデイ開催の時はこっち*/
/*.top .mv .event_info_text {
  font-size: 3.6rem;
  line-height: 1.4;
  margin-top: -1.5rem;
}*/

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.top .mv .event_info {
  position: absolute;
  bottom: -3.3rem;
  right: -1.4rem;
  background-color: #000000;
  color: #ffffff;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  text-align: center;
  padding: 6.2rem 2rem 2.4rem;
  animation: scale 3s linear infinite;
}
.top .mv .event_info_text {
  font-size: 1.9rem;
  line-height: 1.4;
  margin-top: -3.4rem;
}
/*Coming Soonの時はこっち*/
/*.top .mv .event_info_text {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-top: -3rem;
}*/
/*ワンデイ開催の時はこっち*/
.top .mv .event_info_text {
  font-size: 2.6rem;
  line-height: 1.3;
  margin-top: -5.5rem;
}
/*ツーデイ開催の時はこっち*/
/*.top .mv .event_info_text {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-top: -6.5rem;
}*/
	 }

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv .event_info_text {
    font-size: 1.1rem;
    line-height: 1.3;
  }
}

@media only screen and (max-width: 480px) {
  /*.top .mv .event_info_text {
    font-size: 1.4rem;
	    margin-top: -3.4rem;
  }*/
/*Coming Soonの時はこっち*/
 /*.top .mv .event_info_text {
    font-size: 1.8rem;
	    margin-top: -2.4rem;
  }*/
/*ワンデイ開催の時はこっち*/
  .top .mv .event_info_text {
    font-size: 1.8rem;
	margin-top: -5.2rem;
  }
.youbi_size{
  font-size: 1rem;
}
/*ツーデイ開催の時はこっち*/
 /*.top .mv .event_info_text {
    font-size: 1.8rem;
	margin-top: -4.5rem;
  }*/
}

.top .mv_message {
  text-align: center;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  font-weight: 500;
  margin-bottom: 6.1rem;
  font-family: "A1ゴシック B", sans-serif;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .top .mv_message {
    font-size: 2rem;
    margin-bottom: 0;
    margin-top: 10rem;
  }
}

@media only screen and (max-width: 480px) {
  .top .mv_message {
    font-size: 1.3rem;
    letter-spacing: 0.05em;
  }
}

.reason {
  position: relative;
  z-index: 1;
}

.reason::after {
  content: "";
  position: absolute;
  background-color: #f4e9ce;
  height: 246px;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: -1;
}

.reason .inner {
  padding-bottom: 9.8rem;
  max-width: 1105px;
}

.reason .common_title {
  position: relative;
  z-index: 120;
}

.reason .reason_flex {
  background-image: url(../img/top-page/reason_bg.png);
  padding: 11.5rem 4.7rem 6.4rem;
  margin-top: -6rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  position: relative;
}

@media only screen and (max-width: 1101px) {
  .reason .reason_flex {
    padding-left: 2.3rem;
    padding-right: 2.3rem;
    margin-top: -4.5rem;
  }
}

@media only screen and (max-width: 900px) {
  .reason .reason_flex {
    flex-direction: column;
  }
}

.reason .reason_flex .reason_flex_item {
  width: 31.216%;
  position: relative;
  padding: 3.9rem 1.9rem 2.4rem;
  text-align: center;
  z-index: 100;
}

@media only screen and (max-width: 900px) {
  .reason .reason_flex .reason_flex_item {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .reason .reason_flex .reason_flex_item:not(:last-child) {
    margin: 0 auto 8rem;
  }
}

.reason .reason_flex .reason_flex_item::after {
  content: "";
  position: absolute;
  background-color: #ffffff;
  width: 100%;
  height: 100%;
  top: 5px;
  left: 5px;
  z-index: -100;
}

.reason .reason_flex .reason_flex_item::before {
  content: "";
  position: absolute;
  background-color: transparent;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
  border: 1.5px solid #231815;
}

.reason .reason_flex .item_label {
  background-color: #fdd000;
  font-size: 2.4rem;
  width: 91.86%;
  padding: 0.8rem 6.1% 1.8rem 6rem;
  position: relative;
  border-top-left-radius: 20px;
  position: absolute;
  letter-spacing: 0.2em;
  -webkit-text-stroke: 1px #251e1c;
  text-stroke: 1px #000000;
  top: 0;
  left: 0;
  transform: translate(-10px, -50%);
  z-index: 1000;
  color: transparent;
  text-align: center;
}

@media only screen and (max-width: 1101px) {
  .reason .reason_flex .item_label {
    font-size: 2.1rem;
  }
}

@media only screen and (max-width: 900px) {
  .reason .reason_flex .item_label {
    width: 192px;
    font-size: 1.7rem;
    padding-right: 1rem;
    padding-left: 5rem;
  }
}

.reason .reason_flex .item_label::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/label_triangle.svg);
  width: 8.3px;
  height: 9px;
  bottom: -0.9rem;
  left: 0.17rem;
}

.reason .reason_flex .item_label .label_border {
  padding-bottom: 1.1rem;
  position: relative;
  letter-spacing: 0.4rem;
}

.reason .reason_flex .item_label .label_border::after {
  content: "";
  position: absolute;
  background-color: #231815;
  width: 100%;
  height: 4px;
  bottom: 0;
  left: 0;
}

.reason .reason_flex .item_label .item_label_number {
  position: absolute;
  background-image: url(../img/top-page/reason_flex_number_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  top: -10px;
  left: -10px;
  width: 61px;
  height: 61px;
  border-radius: 50%;
  color: #ffffff;
  display: black;
  text-align: center;
  font-size: 3.9rem;
  font-family: "A1ゴシック B", sans-serif;
  padding-left: 0.5rem;
}

@media only screen and (max-width: 900px) {
  .reason .reason_flex .item_label .item_label_number {
    font-size: 2.8rem;
    width: 53px;
    height: 53px;
    padding-top: 0.3rem;
  }
}

.reason .reason_flex .reason_flex_img {
  height: 173px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-bottom: 1.7rem;
}

.reason .reason_flex .reason_flex_text {
  font-size: 1.5rem;
  line-height: 1.5333;
  /*letter-spacing: 0.11em;*/
  letter-spacing: 0.09em;
}

.mission {
  background-color: #3e3a39;
  color: #ffffff;
  position: relative;
}

.mission::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/mission_botom_line.jpg);
  height: 29px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.mission .inner {
  padding-top: 19.9rem;
  padding-bottom: 9.7rem;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 1024px) {
  .mission .inner {
    padding-top: 16rem;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .mission .inner {
    padding-top: 6rem;
  }
}

@media only screen and (max-width: 480px) {
  .mission .inner {
    padding-top: 3rem;
    padding-bottom: 5rem;
  }
}

.mission .inner::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/mission_img_pc.png);
  right: 0;
  top: 12px;
  width: 564px;
  height: 580px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-size: contain;
}

@media only screen and (max-width: 1024px) {
  .mission .inner::after {
    width: 450px;
    height: 462px;
    top: 123px;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .mission .inner::after {
    display: none;
  }
}

.mission .inner .mission_title {
  position: absolute;
  top: -60px;
  left: 0;
  width: 495px;
  z-index: 100;
}

@media only screen and (max-width: 1024px) {
  .mission .inner .mission_title {
    width: 400px;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .mission .inner .mission_title {
    width: 290px;
  }
}

@media only screen and (max-width: 480px) {
  .mission .inner .mission_title {
    width: 246px;
  }
}

.mission .inner .mission_title img {
  width: 100%;
  height: auto;
}

.mission .inner .mission_img_sp {
  width: 95%;
  margin: 0 auto 3rem;
}

.mission .mission_article {
  padding-left: 3.4rem;
  max-width: 481px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  line-height: 1.8;
  position: relative;
  z-index: 100;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media only screen and (max-width: 1024px) {
  .mission .mission_article {
    padding-left: 0;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .mission .mission_article {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
}

@media only screen and (max-width: 480px) {
  .mission .mission_article {
    font-size: 1.3rem;
    text-align: left;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}

.mission .mission_article .mission_article_title {
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  color: #ffffff;
  margin-bottom: 2.9rem;
  font-weight: normal;
  line-height: 1;
}

@media only screen and (max-width: 480px) {
  .mission .mission_article .mission_article_title {
    text-align: center;
  }
}

.works .inner {
  padding-top: 10.8rem;
  padding-bottom: 8.4rem;
}

@media only screen and (max-width: 1132px) {
  .works .inner {
    overflow-x: hidden;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works .inner {
    padding-bottom: 5rem;
  }
}

.works .common_title {
  position: relative;
}

.works .common_title::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/works_side.svg);
  width: 399px;
  height: 65px;
  top: 0;
  left: 50%;
  transform: translate(-50%, -2rem);
}

.works .works_flex {
  padding-top: 3rem;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-bottom: 2.9rem;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works .works_flex {
    flex-direction: column;
  }
}

.works .works_flex::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/works_side_bar.svg);
  width: 30%;
  height: 10px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  top: -10px;
  left: 0;
}

.works .works_flex::before {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/works_side_bar.svg);
  width: 30%;
  height: 10px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  top: -10px;
  right: 0;
}

.works .works_flex .works_flex_item {
  width: 31.84%;
  display: block;
  position: relative;
  transition: 0.3s;
  opacity: 1;
}

.works .works_flex .works_flex_item:hover {
  opacity: 0.8;
  transition: 0.3s;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works .works_flex .works_flex_item {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .works .works_flex .works_flex_item:not(:last-child) {
    margin-bottom: 5rem;
  }
  .works .works_flex .works_flex_item:last-child {
    margin-bottom: 3rem;
  }
}

.works .works_flex .works_flex_item .works_number {
  position: absolute;
  width: 63px;
  top: -20px;
  left: -20px;
}

.works .works_flex .works_flex_item .works_number img {
  width: 100%;
}

.works .works_flex .works_flex_item .item_img {
  width: 100%;
  margin-bottom: 1.4rem;
}

.works .works_flex .works_flex_item .item_img img {
  width: 100%;
}

.works .works_flex .works_flex_item .item_title {
  font-size: 1.5376rem;
  color: #000000;
  text-align: center;
  line-height: 1;
  padding: 1rem;
  border: 3px solid #000000;
  position: relative;
}

.works .works_flex .works_flex_item .item_title::after {
  content: "";
  position: absolute;
  background-color: transparent;
  border: dotted 1px #000000;
  width: 99%;
  height: 87%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.works .to_works {
  max-width: 415px;
  margin: 0 auto 8rem;
  display: block;
  transition: 0.3s;
  opacity: 1;
}

.works .to_works:hover {
  opacity: 0.8;
  transition: 0.3s;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works .to_works {
    max-width: 50%;
    min-width: 249px;
    margin-bottom: 3rem;
  }
}

.works .works_details:not(:last-child) {
  margin-bottom: 15.3rem;
}

@media only screen and (max-width: 1132px) {
  .works .works_details:not(:last-child) {
    margin-bottom: 3rem;
  }
}

.works .works_details:last-child {
  margin-bottom: 20rem;
}

@media only screen and (max-width: 1132px) {
  .works .works_details:last-child {
    margin-bottom: 13rem;
  }
}

.works .works_details .works_details_flex {
  position: relative;
  display: block;
  padding-bottom: 300px;
  margin-left: 3.9rem;
  z-index: 100;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex {
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    margin-left: 0;
  }
}

.works .works_details .works_details_flex .yellowtile_title {
  position: absolute;
  z-index: 999;
  left: 47%;
  text-align: center;
  top: 10rem;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex .yellowtile_title {
    order: 1;
    left: 40%;
    transform: translateX(-50%);
    z-index: 1000;
  }
}

.works .works_details .works_details_flex .yellowtile_title .-ja,
.works .works_details .works_details_flex .yellowtile_title .-en {
  z-index: 9999;
  color: #000000;
}

.works .works_details .works_details_flex .yellowtile_title .-en {
  font-size: 4.9rem;
  line-height: 1;
  font-family: "A1ゴシック B", sans-serif;
  letter-spacing: 0.03em;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex .yellowtile_title .-en {
    font-size: 3.8rem;
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works .works_details .works_details_flex .yellowtile_title .-en {
    font-size: 3rem;
  }
}

.works .works_details .works_details_flex .yellowtile_title .-ja {
  font-size: 1.1rem;
  font-family: "A1 Gothic M", sans-serif;
}

.works .works_details .works_details_flex .works_details_img {
  width: 545px;
  padding-bottom: 32%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex .works_details_img {
    position: relative;
    order: 4;
    max-width: 545px;
    margin: 0 auto;
    height: 300px;
    transform: translate(10px 10px);
    background-position: left;
  }
}

@media only screen and (max-width: 768px) {
  .works .works_details .works_details_flex .works_details_img {
    max-width: 500px;
    width: 100%;
    height: 280px;
    /* height: 195px; */
  }
}

@media only screen and (max-width: 480px) {
  .works .works_details .works_details_flex .works_details_img {
    height: 195px;
    max-width: 450px;
  }
}

.works .works_details .works_details_flex .works_details_img::after {
  content: "";
  position: absolute;
  background-color: #000000;
  width: 562px;
  height: 152px;
  left: 2rem;
  bottom: -2rem;
  z-index: -1;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex .works_details_img::after {
    width: 102%;
  }
}

@media only screen and (max-width: 768px) {
  .works .works_details .works_details_flex .works_details_img::after {
    width: 100%;
    left: 1rem;
    bottom: -1rem;
  }
}

.works .works_details .works_details_flex .works_details_img img {
  width: 100%;
}

.works
  .works_details
  .works_details_flex
  .works_details_img
  .works_details_img_text {
  position: absolute;
  right: -7rem;
  bottom: 4.5rem;
  color: #ffffff;
  transform: rotate(-90deg);
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  font-family: "A1 Gothic M", sans-serif;
}

@media only screen and (max-width: 1132px) {
  .works
    .works_details
    .works_details_flex
    .works_details_img
    .works_details_img_text {
    position: relative;
    bottom: -1rem;
    right: -28.5rem;
  }
}

.works
  .works_details
  .works_details_flex
  .works_details_img
  .works_details_img_text::after {
  content: "";
  position: absolute;
  background-color: #ffffff;
  width: 1px;
  height: 33px;
  top: -6px;
  right: -24px;
  transform: rotate(-90deg);
}

@media only screen and (max-width: 1132px) {
  .works
    .works_details
    .works_details_flex
    .works_details_img
    .works_details_img_text::after {
    display: none;
  }
}

.works .works_details .works_details_flex .works_details_yellowtile {
  width: 536px;
  position: absolute;
  right: 0;
  top: 6.5rem;
  background-color: #fdd000;
  z-index: -2;
  padding: 12.7rem 2.4rem 0;
  padding-left: 136px;
  height: 318px;
}

@media only screen and (max-width: 1132px) {
  .works .works_details .works_details_flex .works_details_yellowtile {
    position: relative;
    order: 2;
    max-width: 536px;
    width: 100%;
    margin: 0 auto 6rem;
    padding: 10rem 3rem 5.6rem;
    height: auto;
    transform: translate(-30px, 10px);
    z-index: 999;
  }
}

@media only screen and (max-width: 480px) {
  .works .works_details .works_details_flex .works_details_yellowtile {
    padding: 10rem 3rem 6rem;
  }
}

.works
  .works_details
  .works_details_flex
  .works_details_yellowtile
  .yellowtile_desc {
  color: #000000;
  font-size: 1.4rem;
  line-height: 1.571;
  margin-bottom: 1.42rem;
  letter-spacing: 0.07em;
  min-height: 105px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works
    .works_details
    .works_details_flex
    .works_details_yellowtile
    .yellowtile_desc {
    font-size: 1.3rem;
  }
}

.works
  .works_details
  .works_details_flex
  .works_details_yellowtile
  .more_button {
  width: 164px;
  margin: 0 auto -2rem;
  position: absolute;
  bottom: 0;
  right: 17%;
  transform: translateX(-50%);
  z-index: 1001;
}

@media only screen and (max-width: 1133px) {
  .works
    .works_details
    .works_details_flex
    .works_details_yellowtile
    .more_button {
    right: 2rem;
    transform: translateX(0);
  }
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .works
    .works_details
    .works_details_flex
    .works_details_yellowtile
    .more_button {
    width: 150px;
    bottom: 12px;
  }
}

@media only screen and (min-width: 1133px) {
  .works .works_details .-reverse .works_details_img {
    right: 0 !important;
    left: auto;
    width: 584px;
  }
  .works .works_details .-reverse .works_details_img::after {
    width: 600px;
  }
  .works .works_details .-reverse .works_details_yellowtile {
    left: 0 !important;
    padding: 12.7rem 3rem 0;
    padding-right: 136px;
  }
  .works .works_details .-reverse .more_button {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    right: auto !important;
  }
  .works .works_details .-reverse .yellowtile_title {
    left: 12%;
    right: auto;
  }
}

.news .inner {
  padding-bottom: 30rem;
}

@media only screen and (max-width: 768px) {
  .news .inner {
    padding-bottom: 22rem;
  }
  .pageTop {
    margin-bottom: -2rem;
  }
}

.news .common_title {
  position: relative;
  z-index: 100;
  margin-bottom: 3.8rem;
  margin-left: 15rem;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .news .common_title {
    margin-bottom: 6rem;
    margin-left: 12%;
  }
  .news .common_title .-en {
    font-size: 3.2rem;
  }
}

@media only screen and (max-width: 480px) {
  .news .common_title {
    margin-left: 20%;
  }
}

.news .common_title::after {
  content: "";
  position: absolute;
  background-color: #ffffff;
  width: 257px;
  height: 66px;
  top: 0;
  transform: translateX(-4rem) skew(-25deg);
  z-index: -1;
  border-left: 2px solid #000000;
  border-right: 2px solid #000000;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .news .common_title::after {
    width: 170px;
    height: 50px;
  }
}

.news .common_title .-ja {
  margin-left: 5rem;
}

.news .news_contents {
  background-color: #ededed;
  padding: 0 6rem;
  position: relative;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .news .news_contents {
    padding: 0 2.3rem;
  }
}

.news .news_contents::before {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/news_bg_item_2.png);
  width: 100%;
  height: 101px;
  top: -101px;
  left: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-position: top;
}

.news .news_contents::after {
  content: "";
  position: absolute;
  background-image: url(../img/top-page/news_bg_item_1.png);
  width: 100%;
  height: 116px;
  bottom: -116px;
  left: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-position: bottom;
}

.news .news_contents .news_contents_item {
  color: #231815;
  padding-bottom: 4.1rem;
  padding-left: 4.1rem;
  padding-right: 4.7rem;
  display: block;
  font-size: 1.537rem;
  line-height: 2.1333333;
  transition: 0.3s;
  opacity: 1;
  position: relative;
}

.news .news_contents .news_contents_item:hover {
  opacity: 0.8;
  transition: 0.3s;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .news .news_contents .news_contents_item {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    font-size: 1.4rem;
  }
}

.news .news_contents .news_contents_item:not(:first-child) {
  padding-top: 4.8rem;
}

@media only screen and (max-width: 480px),
  only screen and (min-width: 481px) and (max-width: 766px) {
  .news .news_contents .news_contents_item:not(:first-child) {
    padding-top: 3rem;
  }
}

.news .news_contents .news_contents_item:not(:last-child) {
  border-bottom: 1px solid #dcdcdc;
}
