@charset "utf-8";

/*--調整--*/
html {
	background-color: transparent !important;
}

.h_bar, 
#beltbnr {
	display: none;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix:before {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: block;
}

#specialty {
  text-align: center;
}

#specialty a {
  text-decoration: none;
}

#pagetop {
  z-index: 99;
}

#footer {
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 767px) {
  .sp {
    display: block;
  }

  .pc {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .sp {
    display: none;
  }

  .pc {
    display: block;
  }
}

/*--フォント--*/
:root {
  --leading-trim: calc((1em - 1lh) / 2);
}

@supports not (top: 1lh) {
  :root {
    --leading-trim: 0px;
  }
}

@font-face {
  font-family: "FoundryGridnikMedium";
  src: url('https://ships-50th-mv.s3.ap-northeast-1.amazonaws.com/kv/font.woff2') format('woff2');
}

.fs-jp01 {
  font-family: source-han-sans-vf, sans-serif;
  font-variation-settings: "wght" 400;
  font-style: normal;
}

.fs-jp02 {
  font-family: source-han-sans-vf, sans-serif;
  font-variation-settings: "wght" 700;
  font-style: normal;
}

.fs-en01 {
  font-family: "FoundryGridnikMedium";
  font-weight: 500;
  font-style: normal;
}


/*----------
BG
----------*/
.bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(circle, #000000 1px, transparent 1px);
  background-position: 0 0;
  background-size: 61px 61px;
}


/*----------
MAIN
----------*/
.main__wrapper {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.main__wrapper .lead {
  width: calc(100% - 30px * 2);
  margin: 60px auto 0;
}

.main__wrapper .lead p {
  font-size: min(3.255813953488372vw, 14px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}

.main__wrapper .lead p:nth-of-type(n+2) {
  padding-top: 30px;
}

.main__wrapper .lead p br {
  display: none;
}

@media only screen and (min-width: 768px) {
  .main__wrapper {
    width: 900px;
  }

  .main__wrapper .lead {
    width: 900px;
  }

  .main__wrapper .lead p {
    text-align: center;
  }

  .main__wrapper .lead p br {
    display: block;
  }
}


/*----------
TITLE
----------*/
.title_wrapper {
  width: 100%;
  margin: 60px auto 0;
  position: relative;
  z-index: 2;
}

.title_wrapper .textarea  {
  width: 100%;
  margin: 0 auto 60px;
  padding: 65px 30px 0 30px;
}

.title_wrapper .textarea h2 {
  font-size: min(3.7209302325581395vw, 16px);
  line-height: 2;
  color: #B7CE4A;
  text-align: left;
  margin-block: var(--leading-trim);
}

.title_wrapper .textarea p {
  padding: 60px 0 0 50px;
  font-size: min(3.255813953488372vw, 14px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}

@media only screen and (min-width: 768px) {
  .title_wrapper {
    width: 800px;
    margin: 120px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }

  .title_wrapper .slide__wrapper {
    width: 50%;
    order: 2;
  }

  .title_wrapper .textarea {
    width: 50%;
    order: 1;
    padding: 0 0 90px 0;
  }

  .title_wrapper .textarea p {
    padding: 60px 80px 0 0;
  }
}


/*----------
COMMENT
----------*/
.comment__wrapper {
  width: 100%;
  margin: 60px auto 0;
  position: relative;
  z-index: 2;
}

.comment__wrapper .textarea  {
  width: 100%;
  margin: 0 auto 60px;
  padding: 0 30px 0 80px;
}

.comment__wrapper .textarea h2, 
.comment__wrapper .textarea h3, 
.comment__wrapper .textarea p {
  font-size: min(3.255813953488372vw, 14px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}

.comment__wrapper .textarea h3 {
  padding-top: 40px;
}

.comment__wrapper .textarea p {
  padding-top: 30px;
}

.comment__wrapper .textarea p span {
  font-size: min(3.255813953488372vw, 14px);
  line-height: 2;
  color: #B7CE4A;
  text-align: left;
  margin-block: var(--leading-trim);
}

@media only screen and (min-width: 768px) {
  .comment__wrapper {
    width: 800px;
    margin: 120px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }

  .comment__wrapper.comment01 .textarea {
    width: 55%;
    padding: 160px 30px 0 80px;
    order: 2;
  }

  .comment__wrapper.comment02 .textarea {
    width: 55%;
    padding: 0 80px 0 30px;
    order: 1;
  }

  .comment__wrapper.comment01 .slide__wrapper {
    width: 45%;
    order: 1;
  }

  .comment__wrapper.comment02 .slide__wrapper {
    width: 45%;
    margin-top: 50px;
    order: 2;
  }
}


/*----------
SLIDE
----------*/
.slick-arrow {
  z-index: 5 !important;
  width: 33px !important;
  height: 42px !important;
}

.slick-next {
  right: 0 !important;
}

.slick-prev {
  left: 0 !important;
}

.slick-arrow:before {
  content: "" !important;
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1 !important;
}

.slick-next:before {
  background-image: url(/campaign/2025/shipsmc_0827/images/next_arrow.png) !important;
  background-size: contain !important;
  background-repeat: no-repeat;
  background-position: center;
}

.slick-prev:before {
  background-image: url(/campaign/2025/shipsmc_0827/images/prev_arrow.png) !important;
  background-size: contain !important;
  background-repeat: no-repeat;
  background-position: center;
}


/*----------
BUTTON
----------*/
.btn__wrapper {
  width: calc(100% - 45px * 2);
  margin: 60px auto;
  position: relative;
  z-index: 2;
}

.btn__wrapper a {
  display: block;
  height: 45px;
  background: #B7CE4A;
  border: 1px solid #B7CE4A;
  border-radius: 5px;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  font-size: min(3.255813953488372vw, 14px);
  line-height: 45px;
  color: #000000;
}

.btn__wrapper:hover a {
  background: #ffffff;
  color: #000000;
}

.btn__wrapper p {
  padding-top: 20px;
  font-size: min(2.7906976744186047vw, 12px);
  line-height: 2;
  color: #000000;
  text-align: center;
  margin-block: var(--leading-trim);
}

@media only screen and (min-width: 768px) {
  .btn__wrapper {
    width: 340px;
    margin: 120px auto;
  }
}


/*----------
ARCHIVE
----------*/
.archive__wrapper {
  width: calc(100% - 20px * 2);
  margin: 60px auto;
  position: relative;
  z-index: 2;
}

.archive__wrapper h4 {
  font-size: min(3.255813953488372vw, 20px);
  line-height: 2;
  color: #000000;
  text-align: center;
  margin-block: var(--leading-trim);
}

.archive__wrapper li {
  margin-top: 20px;
}

.archive__wrapper li a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.archive__wrapper li .bnr {
  width: 59.45%;
}

.archive__wrapper li .detail {
  margin: 20px 0 0 20px;
}

.archive__wrapper li .detail p:first-child {
  font-size: min(3.7209302325581395vw, 16px);
  line-height: 2;
  color: #B7CE4A;
  text-align: left;
  margin-block: var(--leading-trim);
}

.archive__wrapper li .detail p:last-child {
  padding-top: 10px;
  font-size: min(2.7906976744186047vw, 12px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}


@media only screen and (min-width: 768px) {
  .archive__wrapper {
    width: 900px;
    margin: 120px auto;
  }

  .archive__wrapper ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .archive__wrapper li {
    width: 48%;
    margin-top: 40px;
  }

  .archive__wrapper li a {
    justify-content: space-between;
    align-items: center;
  }

  .archive__wrapper li .bnr {
    width: 60%;
  }

  .archive__wrapper li .detail {
    width: 36%;
    margin: 0;
  }
}


/*----------
FOOTER
----------*/
.footer__wrapper {
  width: calc(100% - 20px * 2);
  margin: 60px auto 120px;
  position: relative;
  z-index: 2;
}

.footer__wrapper h4 {
  font-size: min(3.7209302325581395vw, 16px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}

.footer__wrapper dt {
  padding-top: 30px;
  font-size: min(3.7209302325581395vw, 16px);
  line-height: 2;
  color: #B7CE4A;
  text-align: left;
  margin-block: var(--leading-trim);
}

.footer__wrapper dd {
  padding-top: 10px;
  font-size: min(2.7906976744186047vw, 12px);
  line-height: 2;
  color: #000000;
  text-align: left;
  margin-block: var(--leading-trim);
}

.footer__wrapper p {
  padding-top: 65px;
  font-size: min(5.5813953488372094vw, 24px);
  line-height: 2;
  color: #000000;
  text-align: center;
  margin-block: var(--leading-trim);
}

@media only screen and (min-width: 768px) {
  .footer__wrapper {
    width: 900px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .footer__inner {
    width: 60%;
  }

  .footer__wrapper p {
    width: 30%;
    padding-top: 0;
  }
}


/*----------
RECOMMEND TOPICS
----------*/
.block-ajax-recommend-topics-202410 {
  position: relative;
  z-index: 2;
}