@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
/* rewrite
------------------------------------------------------------------------- */
#header {
  margin-bottom: 0px !important;
}

/* basic
------------------------------------------------------------------------- */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
}

#wrap {
  background-color: #f9f9f9;
}

.lp_area {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
  color: #333333;
  padding-bottom: 5%;
}
.lp_area img {
  vertical-align: top;
  border: 0;
  width: auto;
  height: auto;
}
.lp_area {
  /* link default */
}
.lp_area a:link {
  color: #333333;
  text-decoration: none;
}
.lp_area a:visited {
  color: #333333;
  text-decoration: none;
}
.lp_area a:hover {
  color: #333333;
  text-decoration: none;
}
.lp_area a:active {
  color: #333333;
  text-decoration: none;
}

.lp_title span {
  display: block;
  font-family: "Barlow", sans-serif;
  font-size: 3.7333333333vw;
  color: #00a084;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .lp_title span {
    font-size: 16px;
  }
}
.lp_title h2 {
  font-size: 6.4vw;
  font-weight: 500;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .lp_title h2 {
    font-size: 32px;
  }
}

p,
form,
ul,
li,
dl,
dt,
dd,
ol,
div,
img,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

/*　カラー　*/
.bg_red {
  background-color: #e50012;
}

.bg_blue {
  background-color: #505fc7;
}

.bg_yellow {
  background: #ffd800;
}

/*　レスポンシブ切り替え　*/
.only_pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .only_pc {
    display: block;
  }
}

.only_sp {
  display: block;
}
@media screen and (min-width: 768px) {
  .only_sp {
    display: none;
  }
}

/* コンテンツ
------------------------------------------------------------------------- */
/*　メインビジュアル　*/
.lp_mainvisual {
  background-color: #f9f9f9;
  padding: 10px;
}
.lp_mainvisual_tohologo {
  width: 34.6666666667vw;
  height: auto;
}
@media screen and (min-width: 768px) {
  .lp_mainvisual_tohologo {
    width: 190px;
  }
}
.lp_mainvisual_tohologo img {
  width: 100%;
}
.lp_mainvisual_inner {
  max-width: 1440px;
  margin: 0 auto;
}
.lp_mainvisual_content {
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 16px;
  margin-top: 16px;
}
@media screen and (min-width: 1200px) {
  .lp_mainvisual_content {
    grid-template-columns: auto auto auto;
    justify-content: center;
    align-items: stretch;
  }
}
@media screen and (min-width: 1440px) {
  .lp_mainvisual_content {
    gap: 80px;
  }
}
.lp_mainvisual_copy {
  justify-self: start;
  align-self: start;
  font-size: 7.4666666667vw;
  font-weight: 500;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .lp_mainvisual_copy {
    font-size: 36px;
  }
}
.lp_mainvisual_image {
  width: min(374px, 100%);
  justify-self: center;
  align-self: center;
}
.lp_mainvisual_image img {
  width: 100%;
}
.lp_mainvisual_text {
  width: min(480px, 100%);
  justify-self: center;
  align-self: center;
}
@media screen and (min-width: 1200px) {
  .lp_mainvisual_text {
    width: min(350px, 100%);
    justify-self: end;
    align-self: end;
  }
}
.lp_mainvisual_text span {
  display: inline-block;
  border-radius: 10px;
  background-color: #00a084;
  color: #fff;
  padding: 0 16px;
}
.lp_mainvisual_text p {
  margin-top: 8px;
}
.lp_mainvisual_title {
  margin-top: 8px;
}
.lp_mainvisual_title img {
  width: 100%;
}

/*　ニュース　*/
.lp_news {
  background-color: #f9f9f9;
  padding: 10px;
}
.lp_news_inner {
  max-width: 1024px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .lp_news_inner {
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    gap: 32px;
  }
}
.lp_news_item {
  display: block;
  cursor: pointer;
}
.lp_news_item:not(:last-child) {
  border-bottom: 1px dotted #e0e0e0;
  padding-bottom: 12px;
  margin-bottom: 12px;
}
.lp_news_item dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18px;
  column-gap: 8px;
  row-gap: 4px;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .lp_news_item dl {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
}
@media screen and (min-width: 1200px) {
  .lp_news_item dl {
    width: 736px;
  }
}
.lp_news_item dl dt {
  font-family: "Barlow", sans-serif;
  grid-column: 1;
}
.lp_news_item dl dd {
  display: block;
  font-size: 3.7333333333vw;
  font-weight: 500;
  line-height: 1.2;
  grid-column: 1;
  min-width: 0;
}
@media screen and (min-width: 768px) {
  .lp_news_item dl dd {
    font-size: 16px;
    flex: 1;
  }
}
.lp_news_item dl::after {
  content: "";
  background: url(../images/icon_arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  height: 24px;
  width: 24px;
  grid-column: 2;
  grid-row: 1/span 2;
  align-self: center;
}
@media screen and (min-width: 768px) {
  .lp_news_item dl::after {
    margin-left: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .lp_news_item dl::after {
    margin-left: auto;
  }
}

/*　スクロール　*/
.lp_scroll {
  position: relative;
  padding-bottom: 64px;
  margin-top: 24px;
}
.lp_scroll p {
  font-size: 12px;
  font-family: "Barlow", sans-serif;
  line-height: 1;
  margin: 0;
  text-align: center;
}
.lp_scroll .lp_scroll_line {
  position: absolute;
  left: 50%;
  top: 20px;
  transform: translateX(-50%);
  width: 1px;
  height: 128px;
  background-color: #bdbdbd;
}

/*　４つの重要課題と取り組み　*/
.lp_materialities {
  background-color: #fff;
  background-image: url(../images/chara05.png), url(../images/chara06.png), url(../images/bg-accent-topleft.png), url(../images/bg-accent-topright.png), url(../images/bg-accent-bottomleft.png), url(../images/bg-accent-bottomright.png);
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: right top, left bottom, left top, right top, left bottom, right bottom;
  background-size: 20.2666666667vw auto, 19.2vw auto, 50% auto, 50% auto, 50% auto, 50% auto;
  padding: 64px 10px;
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .lp_materialities {
    background-position: right 10% top, left 10% bottom, left top, right top, left bottom, right bottom;
    background-size: 130px auto, 130px auto, 50% auto, 50% auto, 50% auto, 50% auto;
    padding: 88px 10px 128px;
    margin-top: 0;
  }
}
.lp_materialities_inner {
  max-width: 800px;
  margin: 0 auto;
}
.lp_materialities .lp_title {
  text-align: center;
}
.lp_materialities_content {
  display: grid;
  justify-items: center;
  gap: 24px;
  margin-top: 32px;
}
@media screen and (min-width: 768px) {
  .lp_materialities_content {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    margin-top: 64px;
  }
}
.lp_materialities_item {
  width: 100%;
  background-repeat: no-repeat;
  background-size: 80px auto;
  background-position: top 5% right;
  position: relative;
  padding-left: 24px;
  display: grid;
  gap: 24px;
}
.lp_materialities_item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 100%;
}
.lp_materialities_item.cheerful {
  background-image: url(../images/chara01.png);
}
.lp_materialities_item.cheerful::before {
  background: linear-gradient(to bottom, #e98c00 0 10%, #ffeacf 10% 100%);
}
.lp_materialities_item.pure {
  background-image: url(../images/chara02.png);
}
.lp_materialities_item.pure::before {
  background: linear-gradient(to bottom, #35acf5 0 10%, #d8f0ff 10% 100%);
}
.lp_materialities_item.correctly {
  background-image: url(../images/chara03.png);
}
.lp_materialities_item.correctly::before {
  background: linear-gradient(to bottom, #5ca571 0 10%, #d4e8d9 10% 100%);
}
.lp_materialities_item.beautifully {
  background-image: url(../images/chara04.png);
}
.lp_materialities_item.beautifully::before {
  background: linear-gradient(to bottom, #de8ec2 0 10%, #fce3f3 10% 100%);
}
@media screen and (min-width: 768px) {
  .lp_materialities_item {
    max-width: 352px;
    padding-left: 32px;
    gap: 32px;
  }
}
.lp_materialities_item span {
  display: inline-block;
  font-size: 24px;
  font-family: "Barlow", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .lp_materialities_item span {
    font-size: 24px;
  }
}
.lp_materialities_item h3 {
  font-size: 32px;
  font-weight: 500;
}
.lp_materialities_item h3.cheerful {
  color: #e98c00;
}
.lp_materialities_item h3.pure {
  color: #35acf5;
}
.lp_materialities_item h3.correctly {
  color: #5ca571;
}
.lp_materialities_item h3.beautifully {
  color: #de8ec2;
}
.lp_materialities_item .explain {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .lp_materialities_item .explain {
    font-size: 20px;
  }
}
.lp_materialities_text {
  display: grid;
  gap: 8px;
}
.lp_materialities_text p {
  background-color: #f9f9f9;
  border-radius: 10px;
  padding: 16px;
}
@media screen and (min-width: 768px) {
  .lp_materialities_text p {
    height: 100px;
    display: flex;
    align-items: center;
  }
}
.lp_materialities_circle {
  max-width: 156px;
  margin: 32px auto;
}
.lp_materialities_circle img {
  width: 70%;
}
@media screen and (min-width: 768px) {
  .lp_materialities_circle img {
    width: 100%;
  }
}

/*　TOHOシネマズのサステナビリティ事例　*/
.lp_case {
  background-color: #f9f9f9;
  padding: 64px 10px;
}
.lp_case_inner {
  max-width: 1280px;
  margin: 0 auto;
}
.lp_case_content {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media screen and (min-width: 1200px) {
  .lp_case_content {
    flex-direction: row;
    gap: 2px;
  }
}
.lp_case_item {
  display: grid;
}
@media screen and (min-width: 1200px) {
  .lp_case_item {
    grid-template-columns: 80px 1fr;
    align-items: stretch;
  }
}
.lp_case_title {
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.8);
  padding: 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 24px;
  grid-template-rows: 1fr;
  column-gap: 8px;
  align-items: center;
  cursor: pointer;
}
@media screen and (min-width: 1200px) {
  .lp_case_title {
    width: 80px;
    min-height: 680px;
    height: auto;
    align-self: stretch;
    padding: 32px 8px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
  }
  .lp_case_title h3 {
    order: 1;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-size: 20px;
    line-height: 1.4;
  }
  .lp_case_title h3 span {
    font-size: 14px;
  }
  .lp_case_title::after {
    order: 2;
    width: 24px;
    height: 24px;
    margin-top: 8px;
    transform: rotate(-90deg);
  }
  .lp_case_title .material {
    order: 3;
    font-size: 14px;
    width: 64px;
    margin-top: auto;
  }
}
.lp_case_title h3 {
  grid-column: 1;
  grid-row: 1;
  font-size: clamp(0.875rem, 0.739rem + 0.68vw, 1.25rem);
  font-weight: 500;
  line-height: 1.2;
}
.lp_case_title h3 span {
  font-size: 12px;
}
.lp_case_title .material {
  grid-column: 2;
  grid-row: 1;
  justify-self: end;
  font-size: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
  letter-spacing: -0.1em;
  line-height: 1;
  border: 1px solid #fff;
  border-radius: 6px;
  padding: 4px 2px;
  width: 60px;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .lp_case_title .material {
    width: 57px;
  }
}
.lp_case_title::after {
  content: "";
  grid-column: 3;
  grid-row: 1;
  justify-self: center;
  width: 16px;
  height: 16px;
  background: url(../images/icon_arrow02.png) center center/contain no-repeat;
  transition: transform 0.2s ease;
}
.lp_case_title.cheerful {
  background-color: #e98c00;
}
.lp_case_title.pure {
  background-color: #35acf5;
}
.lp_case_title.correctly {
  background-color: #5ca571;
}
.lp_case_title.beautifully {
  background-color: #de8ec2;
}
.lp_case_item.is-open .lp_case_title::after {
  transform: rotate(180deg);
}
.lp_case_detail {
  display: none;
  background-color: #fff;
  padding: 16px;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .lp_case_detail {
    padding: 16px 16px 32px;
  }
}
.lp_case_detail img {
  width: 100%;
}
.lp_case_detail h4 {
  font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
  font-weight: 500;
}
.lp_case_detail h4.cheerful {
  color: #e98c00;
}
.lp_case_detail h4.pure {
  color: #35acf5;
}
.lp_case_detail h4.correctly {
  color: #5ca571;
}
.lp_case_detail h4.beautifully {
  color: #de8ec2;
}
.lp_case_text {
  display: grid;
  gap: 24px;
}
@media screen and (min-width: 1200px) {
  .lp_case_text {
    gap: 32px;
  }
}
.lp_case_btnarea {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 24px;
}
.lp_case_btn {
  display: flex;
  align-items: center;
  position: relative;
  background-color: #ececec;
  border-radius: 50px;
  padding: 16px;
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .lp_case_btn {
    width: 48%;
    height: 56px;
  }
}
.lp_case_btn::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
}
.lp_case_btn.cheerful::after {
  background: url(../images/icon_pdf_cheerful.png) center center/contain no-repeat;
}
.lp_case_btn.pure::after {
  background: url(../images/icon_pdf_pure.png) center center/contain no-repeat;
}
.lp_case_btn.correctly::after {
  background: url(../images/icon_pdf_correctly.png) center center/contain no-repeat;
}
.lp_case_btn.beautifully::after {
  background: url(../images/icon_pdf_beautifully.png) center center/contain no-repeat;
}
.lp_case_btn p {
  font-size: 14px;
  line-height: 1.2;
  text-align: left;
}
@media screen and (min-width: 1200px) {
  .lp_case_btn p {
    width: 90%;
  }
}
.lp_case_btn p span {
  font-size: 12px;
}

/*　東宝グループのサステナビリティ活動　*/
.lp_activity {
  background-color: #fff;
  padding: 56px 10px;
}
.lp_activity_inner {
  max-width: 900px;
  margin: 0 auto;
}
.lp_activity_inner h2 {
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .lp_activity_inner h2 {
    font-size: 20px;
  }
}
.lp_activity_btnarea {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 24px;
}
.lp_activity_btn {
  display: flex;
  align-items: center;
  position: relative;
  background-color: #ececec;
  border-radius: 10px;
  padding: 16px;
  width: 100%;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .lp_activity_btn {
    width: 48%;
    height: 56px;
  }
}
.lp_activity_btn::after {
  content: "";
  background: url(../images/icon_arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
}/*# sourceMappingURL=style.css.map */