@charset "utf-8";
/* Reset styles */
html, body, div, section, article, p, ul, li, h2, img, iframe { margin: 0; padding: 0; }
ul { list-style: none; }
a { cursor: pointer; text-decoration: none; }
img { border: 0; vertical-align: bottom; }
br { letter-spacing: normal; }

/* Global classes */
.center-container {
  display: flex;
  justify-content: center;
  padding: 10px;
  margin: 0;
}
.tokusyu-button {
  display: inline-block;
  padding: 15px 30px;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
  color: #fff;
  background: linear-gradient(90deg, #E50914, #B20710);
  border: none;
  border-radius: 50px;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s, box-shadow 0.2s;
  cursor: pointer;
}
.tokusyu-button:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
}

/* Intro text */
p.intro {
  color: #fff;
  padding: 5px 10px 0;
  line-height: 28px;
  font-size: 16px;
}

/* Main image container */
.tokusyu_main_img {
  width: 100%;
  margin-bottom: 15px;
}

/* News list */
.top_news_all {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  background-color: #fff;
  line-height: 18px;
  margin: 0;
}
.top_news_all li {
  width: 100%;
  padding-bottom: 10px;
  box-sizing: border-box;
  margin: 0 auto;
}
/* Paragraphs inside news list */
.top_news_all p {
  line-height: 28px;
  font-size: 16px;
  padding: 10px 12px;
}

/* Video embed (YouTube) */
.movies {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio */
  margin: 0 auto;
}
.movies iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/* SNS area */
.special_sns_area {
  display: flex;
  align-items: center;
  padding: 10px;
  width: 95%;
  margin: 15px auto;
}
.special_sns_area_img {
  width: 30%;
  overflow: hidden;
}
.special_sns_area_img img {
  width: 100%;
  height: auto;
}
.special_sns_discription-area {
  flex-basis: 80%;
}
.special_sns_spacer {
  margin: 0;
}
.special_button-area {
  text-align: center;
}
.special_button-koushiki {
  display: block;
  background-color: #3f7da0;
  text-decoration: none;
  color: #fff;
  font-size: 14px;
  line-height: 19px;
  padding: 20px 0;
  margin: 0 auto 10px;
  width: 80%;
}

/* Responsive Styles */
/* Tablet & up */
@media screen and (min-width: 768px) {
  .top_news_all li {
    width: 740px;
  }
  .top_news_all p {
    line-height: 30px;
    padding: 10px;
  }
}

/* Mobile */
@media screen and (max-width: 767.98px) {
  .top_news_all li {
    width: 100%;
  }
}
