/* 2023.5.23 画像の配置調整　西村 */

@charset "utf-8";
/* CSS Document */
body {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  background: #fff;
  color: #191919;
  font-size: 16px;
}

.m_lp_sp {
  display: none;
}

/* 共通 */
.m_lp_flex, .m_lp_report_story, .m_lp_news_list {
  display: flex;
}

.m_lp_report_story_02 {
  flex-direction: row-reverse;
}

.m_lp_introduction {
  justify-content: space-between;
}

.m_lp_report_story_interact_txt, .m_lp_report_story.m_lp_report_story_interact p {
  align-self: center;
}

.m_lp_txt_attention {
  color: #DE1515;
}

.m_lp_link:after {
  content: "";
  background: url("../img/icon_movie_link.png") left top no-repeat;
  background-size: 85px 86px;
  width: 85px;
  height: 86px;
  display: block;
  position: absolute;
}

.m_mb30 {
  margin-bottom: 30px;
}

.m_pt30 {
  padding-top: 30px;
}

.m_pt45 {
  padding-top: 45px;
}

/* ヘッダー */
.m_lp_header {
  padding: 20px;
}

.m_lp_header h1 a {
  display: inline-block;
}

.m_lp_header h1 img {
  width: 118px;
  height: auto;
}

/* キービジュアル */
.m_lp_main {
  width: 100%;
}

.m_lp_main h2 img {
  width: 100%;
  height: auto;
}

/* メイン */
.m_lp_block {
  padding: 90px 0;
}

.m_lp_block:nth-child(2) {
  padding-top: 60px;
}

.m_lp_block:nth-child(3) {
  background: #197de3;
}

.m_lp_block:nth-child(4) {
  background: #f5f5f5;
}

.m_lp_block:nth-child(5) {
  background: #fbe060;
}

.m_lp_block:nth-child(6), .m_lp_interact {
  background: #30b7dd;
}

.m_lp_block:nth-child(7) {
  background: #EB6D6D;
}

.m_lp_inner {
  width: 980px;
  margin: 0 auto;
}

.m_lp_inner h3, .m_lp_interact .m_lp_inner h2 {
  margin-bottom: 45px;
}

.m_lp_inner h3 img, .m_lp_interact .m_lp_inner h2 img {
  width: 100%;
  height: auto;
}

.m_lp_top-note {
  text-align: center;
  line-height: 1.7em;
}

/* 協力学生団体のご紹介 */
.m_lp_introduction_block {
  position: relative;
  width: 307px;
  background: #fff;
  border-radius: 8px;
  padding-bottom: 50px;
}

.m_lp_introduction_logo {
  text-align: center;
  padding: 40px 0;
}

.m_lp_introduction_logo img {
  width: 100%;
  height: auto;
  margin: auto;
}

.m_lp_introduction_inner {
  padding: 0 15px;
  margin-bottom: 40px;
}

.m_lp_introduction_inner p {
  font-size: 13px;
  margin-bottom: 15px;
}

.m_lp_introduction_inner p:last-child {
  margin-bottom: 0;
}

.m_lp_introduction_link {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #fbe060;
  border-radius: 0 0 8px 8px;
}

.m_lp_introduction_link a {
  text-align: center;
  text-decoration: none;
  color: #197DE3;
  font-size: 18px;
  padding: 15px 0;
  line-height: 1.0em;
  font-weight: bold;
  
  position: relative;
  display: table;
  vertical-align: middle;
  margin: auto;
  margin-left: calc(50% / 2 + 10px);
}

.m_lp_introduction_link a::before, .m_lp_introduction_link a::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.m_lp_introduction_link a::before {
  left: -15px;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border: 6px solid transparent;
  border-left: 8px solid #197DE3;
}

.m_lp_introduction_link a:hover {
  text-decoration: underline;
}

/* プロジェクトの概要 */
.m_lp_about_block {
  position: relative;
  width: 100%;
  background: #fff;
  margin-bottom: 120px;
}

.m_lp_about_block::after{
  position: absolute;
  bottom: -125px;
  left: 0;
  margin: auto;
  margin-left: calc(50% - 35px);
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 35px;
  height: 55px;
  border: 35px solid transparent;
  border-top: 55px solid #197DE3;
}

.m_lp_about_block:last-child {
  margin-bottom: 0;
}

.m_lp_about_block:last-child::after {
  width: 0;
  height: 0;
  border: 0;
  margin: 0;
}

.m_lp_about_block_left {
  width: 410px;
  background: #FBE060;
}

.m_lp_about_block_time {
  background: #197DE3;
  padding: 20px 25px;
}

.m_lp_about_block_time h1 {
  font-size: 36px;
  line-height: 1.0em;
  font-weight: bold;
  margin-bottom: 10px;
  color: #FBE060;
}

.m_lp_about_block_time p {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}

.m_lp_about_block_left img {
  width: 100%;
  height: auto;
  margin: auto;
}

.m_lp_about_block_right {
  width: calc(100% - 410px);
  padding: 25px;
}

.m_lp_about_block_right h2, .m_lp_presentation h1 {
  font-size: 32px;
  line-height: 1.0em;
  color: #0E64BC;
  padding-bottom: 5px;
  margin-bottom: calc(25px - 2px);
  border-bottom: 2px solid #197DE3;
}

.m_lp_about_block_right h3 {
  font-size: 28px;
  margin-bottom: 20px;
}

.m_lp_about_block_right p {
  line-height: 1.7em;
}

.m_lp_about_block_right p.m_lp_about_block_program {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

/* MOVIE */
.m_lp_movie_block {
  width: 100%;
  background: #fff;
  padding: 25px;
  margin-bottom: 20px;
}

.m_lp_movie_block:last-child {
  margin-bottom: 0;
}

.m_lp_movie_block.m_lp_movie_block_special {
  background: #ecf0f1;
  position: relative;
  margin-top: 15px;
  display: inline-block;
}

.m_lp_movie_flag {
  position: absolute;
  top: -20px;
  left: -19px;
  width: 315px;
  z-index: 1;
}

.m_lp_movie_flag img {
  width: 100%;
  height: auto;
}

.m_lp_movie_block_left, .m_lp_report_photo, .m_lp_report_photo_right {
  width: 275px;
  margin-right: 20px;
}

.m_lp_report_photo_right {
  margin-right: 0;
  margin-left: 20px;
}

.m_lp_movie_block_left a, .m_lp_report_photo a.m_lp_link {
  border: 1px solid #b9b8b6;
  display: block;
  width: calc(100% - 2px);
  position: relative;
}

.m_lp_movie_block_left a.m_lp_link:after, .m_lp_report_photo a.m_lp_link:after {
  width: 40px;
  height: 40px;
  background-size: 40px 40px;
  top: calc(50% - 20px);
  left: calc(50% - 20px);
}

.m_lp_movie_block.m_lp_movie_block_special .m_lp_movie_block_left a.m_lp_link:after, .m_lp_presentation_inner .m_lp_report_photo a.m_lp_link:after, .m_lp_report_photo.m_lp_judge a.m_lp_link:after {
  width: 64px;
  height: 64px;
  background-size: 64px 64px;
  top: calc(50% - 32px);
  left: calc(50% - 32px);
}
 
.m_lp_movie_block_left img {
  width: 100%;
  height: auto;
}

.m_lp_movie_block_left a:hover img, .m_lp_other a:hover img {
  opacity: 0.6;
}

.m_lp_movie_block_special .m_lp_movie_block_left {
  width: 464px;
  margin-right: 25px;
}

.m_lp_movie_block_right {
  width: calc(100% - 275px);
}

.m_lp_movie_block_special .m_lp_movie_block_right {
  width: calc(100% - 464px);
}

.m_lp_movie_block_right h4 {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 20px;
}

.m_lp_movie_block_right h4 span {
  font-size: 20px;
  margin-bottom: 5px;
}

.m_lp_movie_block_right p {
  font-size: 14px;
}

/* キャンペーンレポート */
.m_lp_report_block {
  width: 100%;
  padding: 50px;
  margin-bottom: 60px;
  background: #fff;
}

.m_lp_report_block:last-child {
  margin-bottom: 0;
}

.m_lp_report_inner h4 {
  font-size: 28px;
  font-weight: bold;
  color: #197DE3;
  margin-bottom: 50px;
}

.m_lp_report_inner p, .m_lp_presentation {
  margin-bottom: 45px;
}

.m_lp_report_inner p:last-child {
  margin-bottom: 0;
}

.m_lp_report_inner h5, .m_lp_interact .m_lp_report_inner h3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}

.m_lp_report_inner h5:before, .m_lp_interact .m_lp_report_inner h3:before {
  content: "●";
  margin-right: 5px;
}

.m_lp_report_inner h6 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.m_lp_report_inner h6:before {
  content: "-";
  margin-right: 5px;
}

.m_lp_report_story {
  margin-bottom: 30px;
}

.m_lp_report_inner .m_lp_report_story.m_lp_last {
  margin-bottom: 45px;
}

.m_lp_report_inner .m_lp_link_top {
  margin-top: 0;
  margin-bottom: 30px;
}

.m_lp_report_photo {
  width: 295px;
}

.m_lp_report_story_interact .m_lp_report_photo {
  width: calc(100% / 4);
  flex: none;
}

.m_lp_report_photo img {
  width: 100%;
  height: auto;
}

.m_lp_report_story_txt {
  width: calc(100% - 295px - 20px);
}

.m_lp_report_story_interact .m_lp_report_story_txt {
  width: auto;
}

.m_lp_report_inner .m_lp_report_story_txt p {
  font-size: 14px;
  margin-bottom: 15px;
}

.m_lp_report_inner .m_lp_report_story_txt p:last-child {
  margin-bottom: 0;
}

.m_lp_report_story.m_lp_report_story_interact {
  width: 100%;
  margin-bottom: 25px;
}

.m_lp_report_story.m_lp_report_story_interact:last-child {
  margin-bottom: 0;
}

.m_lp_report_story_interact_txt ul li {
  margin-bottom: 5px;
}

.m_lp_report_story_interact_txt ul li:last-child {
  margin-bottom: 0;
}

a.m_lp_link_url:after {
  font-family: 'Material Icons';
  content: '\e89e';
}

a.m_lp_link_url:hover {
  text-decoration: none;
}

/* レポート｜ファイナルステージ */
.m_lp_final_slide {
  width: calc(50% - 2px);
  margin: 0 auto 30px;
  border: 1px solid #b9b8b6;
}

.m_lp_final_slide img {
  width: 100%;
  height: auto;
}

.m_lp_final_arrow {
  width: calc(100% / 3);
  margin: 0 auto;
}

.m_lp_final_arrow img {
  width: 100%;
  height: auto;
}

.m_lp_presentation h1 {
  border: none;
  color: #197DE3;
  padding-bottom: 0;
  margin-bottom: 25px;
}

.m_lp_presentation_block {
  background: #F4F4F4;
  width: 100%;
  padding: 25px;
  margin-bottom: 40px;
}

.m_lp_presentation_block:last-child {
  margin-bottom: 0;
}

.m_lp_presentation_inner h2 {
  font-size: 26px;
  color: #197DE3;
  margin-bottom: 20px;
}

.m_lp_presentation_inner .m_lp_report_photo, .m_lp_report_photo.m_lp_judge {
  width: calc(100% / 1.6 - 2px);
  margin: 0 auto 20px;
}

.m_lp_report_photo.m_lp_judge {
  margin-bottom: 45px;
}

.m_lp_other {
  border-top: 1px solid #b9b8b6;
  padding-top: 35px;
}

.m_lp_other p {
  text-align: center;
  font-size: 14px;
  margin-bottom: 10px;
}

.m_lp_other p:before, .m_lp_other p:after {
  content: "▼";
  margin-right: 5px;
  color: #666;
}

.m_lp_other p:after {
  content: "▼";
  margin-right: 0;
  margin-left: 5px;
}

.m_lp_other a {
  width: calc(100% / 3);
  margin: 0 auto;
  display: block;
}

.m_lp_other a img {
  width: 100%;
  height: auto;
}

/* 速報 */
.m_lp_news {
  margin-bottom: 55px;
}

.m_lp_news dl {
  width: 100%;
}

.m_lp_news_list {
  width: 100%;
  padding: 20px 25px;
  margin-bottom: 20px;
  background: #F2F0F0;
  border-radius: 10px;
}

.m_lp_news_list:last-child {
  margin-bottom: 0;
}

.m_lp_news dt {
  width: calc(100% / 5);
  margin-right: 25px;
  background: #f95554;
  box-shadow: 5px 5px #b81515;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.0em;
  padding: 15px 10px;
  margin-top: -5px;
}

.m_lp_news .m_lp_news_list:nth-child(2) dt {
  background: #3fc43c;
  box-shadow: 5px 5px #1d761d;
}

.m_lp_news .m_lp_news_list:nth-child(3) dt {
  background: #30b7dd;
  box-shadow: 5px 5px #00698c;
}

.m_lp_news dd {
  margin-top: 3px;
}

.m_lp_news dd a {
  font-size: 20px;
  color: #191919;
  font-weight: bold;
  text-decoration: none;
  padding-bottom: 3px;
  border-bottom: 1px solid #191919;
}

.m_lp_news dd a:hover, .m_lp_news.m_lp_news_preliminary dd a:hover {
  border-bottom: 0;
}

.m_lp_link_top {
  margin-top: 30px;
}

.m_lp_link_top a {
  width: 100%;
  display: block;
}

.m_lp_link_top img {
  width: 100%;
  height: auto;
}

/* 開催速報！ */
.m_lp_news.m_lp_news_preliminary dt, .m_lp_news.m_lp_news_preliminary dd a {
  font-size: 16px;
}

.m_lp_news.m_lp_news_preliminary dt {
  width: 12%;
  box-shadow: none;
  background: none;
  font-weight: bold;
  margin-right: 15px;
  margin-top: 0;
  padding: 0;
}

.m_lp_news.m_lp_news_preliminary dt span {
  background: #f95554;
  line-height: 1.0em;
  padding: 8px 8px 6px;
  display: block;
}

.m_lp_news.m_lp_news_preliminary dd {
  width: calc(100% - 12% - 15px);
  margin-top: 0;
}

.m_lp_news.m_lp_news_preliminary dd a {
  color: #191919;
  font-weight: bold;
  text-decoration: none;
  border-bottom: 1px solid #191919;
  line-height: 2em;
}

/* 第1部　講師講演会 */
.m_lp_lecture {
  margin-bottom: 50px;
}

.m_lp_lecture p {
  margin-bottom: 20px;
}

.m_lp_lecture p:last-child {
  margin-bottom: 0;
}

.m_lp_lecture_photo {
  display: block;
  float: right;
  margin: 0 0 15px 15px;
  width: 275px;
}

.m_lp_lecture_photo img {
  width: 100%;
  height: auto;
}

/* 交流会ページ */
.m_lp_interact_block h1 {
  font-size: 22px;
  margin-bottom: 5px;
  color: #0E64BC;
}

.m_lp_interact_block p.m_lp_note {
  font-size: 14px;
  margin-bottom: 20px;
}

.m_lp_interact_inner {
  margin-bottom: 15px;
  padding-top: 40px;
}

.m_lp_interact_inner:last-child {
  margin-bottom: 0;
}

.m_lp_interact .m_lp_inner .m_lp_interact_inner h2 {
  font-size: 22px;
  margin-bottom: 30px;
}

.m_lp_interact .m_lp_inner .m_lp_interact_inner h2:after {
  content: '';
  display: block;
  width: 60px;
  height: 2px;
  background: #197DE3;
  margin-top: 15px;
}

.m_lp_interact .m_lp_inner .m_lp_interact_inner p {
  margin-bottom: 15px;
  line-height: 1.7em;
}

.m_lp_interact .m_lp_inner .m_lp_interact_inner p:last-child {
  margin-bottom: 0;
}

.m_lp_name {
  margin-right: 20px;
  font-weight: bold;
  font-size: 1.2rem;
}

.m_lp_name_01 {
  color: #888;
}

.m_lp_name_02 {
  color: #2F9222;
}

.m_lp_name_03 {
  color: #0E64BC;
}

/* 本文内の画像 */
.m_lp_photo_right, .m_lp_photo_left {
  display: block;
  width: calc(100% / 3);
  height: auto;
}

.m_lp_photo_right {
  float: right;
  margin: 0 0 20px 20px;
}

.m_lp_photo_left {
  float: left;
  margin: 0 20px 0 0;
}

.m_lp_photo_right img, .m_lp_photo_left img {
  width: 100%;
  height: auto;
}

/* フッター */
.m_lp_footer {
  background: #efeded;
}

.m_lp_footer_inner {
  padding: 30px 40px;
  margin: auto;
}

.m_lp_footer address, .m_lp_footer_block p {
  font-style: normal;
  font-size: 14px;
  margin-bottom: 15px;
}

.m_lp_footer_block p {
  margin-bottom: 0;
}

.m_lp_footer_block p a {
  color: #191919;
}

.m_lp_footer_block p a:hover {
  text-decoration: none;
}

/* ページトップ */
.m_pagetop {
  position: fixed;
  width: 100px;
  right: 40px;
  bottom: 30px;
}

.m_pagetop img {
  width: 100%;
  height: auto;
}

.m_pagetop:hover {
  opacity: 0.7;
}

@media screen and (max-width:1000px) {
  .m_lp_inner {
    width: 96%;
    margin: 0 auto;
  }
  
  .m_lp_movie_flag {
    left: -19px;
    width: calc(100% / 3);
  }
}

@media screen and (max-width:990px) {
	.m_lp_introduction_block {
    width: calc(100% / 3 - 15px);
  }
}

@media screen and (max-width:950px) {
	.m_lp_news dt {
    width: calc(100% / 4);
  }
}

@media screen and (max-width:900px) {
  .m_lp_introduction_link a {
    margin-left: calc(50% / 2);
  }
  
  .m_lp_movie_flag {
    left: -17px;
  }

  .m_lp_news.m_lp_news_preliminary dt {
    width: 16%;
  }
  
  .m_lp_news.m_lp_news_preliminary dd {
    width: calc(100% - 16% - 15px);
  }
}

@media screen and (max-width:800px) {
  .m_lp_news dt {
    width: calc(100% / 3);
  }
}

/* スマホ用表示 */
@media screen and (max-width:768px) {
  .m_lp_inner h3 .m_lp_pc {
    display: none;
  }
  
  .m_lp_inner h3 .m_lp_sp {
    display: block;
  }
  
  .m_lp_block {
    padding: 60px 0;
  }
  
  .m_lp_inner {
    width: 100%;
    margin: 0;
  }
  
  .m_lp_inner h3 {
    margin-bottom: 60px;
  }
  
  .m_lp_top-note, .m_lp_flex.m_lp_introduction, .m_lp_about, .m_lp_movie, .m_lp_report {
    width: 90%;
    margin: auto;
  }
  
  .m_lp_top-note {
    text-align: left;
  }
  
  .m_lp_flex.m_lp_introduction, .m_lp_about_block_inner.m_lp_flex, .m_lp_movie_block .m_lp_flex, .m_lp_report_story, .m_lp_report_story.m_lp_report_story_interact {
    display: block;
  }
  
  .m_lp_introduction_block {
    width: 100%;
    margin-bottom: 60px;
  }
  
  .m_lp_introduction_block:last-child {
    margin-bottom: 0;
  }
  
  .m_lp_introduction_logo img {
    width: 90%;
  }
  
  .m_lp_introduction_inner {
    width: 90%;
    padding: 0;
    margin: 0 auto 40px;
  }
  
  .m_lp_introduction_link a {
    margin-left: calc( 50% - 70px);
  }
  
  .m_lp_about_block {
    margin-bottom: 160px;
  }
  
  .m_lp_about_block_left, .m_lp_about_block_right, .m_lp_movie_block_left, .m_lp_movie_block_right, .m_lp_movie_block_special .m_lp_movie_block_left, .m_lp_movie_block_special .m_lp_movie_block_right {
    width: 100%;
  }
  
  .m_lp_about_block::after {
    bottom: -150px;
  }
  
  .m_lp_movie_block {
    margin-bottom: 45px;
  }
  
  .m_lp_movie_block_left {
    margin: 0 0 25px;
  }
  
  .m_lp_movie_flag {
    top: -25px;
    left: -20px;
    width: calc(100% / 2);
  }
  
  .m_lp_movie_block_left a.m_lp_link:after, .m_lp_report_photo a.m_lp_link:after,   .m_lp_movie_block.m_lp_movie_block_special .m_lp_movie_block_left a.m_lp_link:after, .m_lp_presentation_inner .m_lp_report_photo a.m_lp_link:after, .m_lp_report_photo.m_lp_judge a.m_lp_link:after{
    background-size: 85px 86px;
    width: 85px;
    height: 86px;
    left: calc(50% - 42px);
    top: calc(50% - 43px);
  }
  
  .m_lp_report_block {
    padding: 25px;
    margin-bottom: 45px;
  }
  
  .m_lp_report_inner h4 {
    font-size: 24px;
    margin-bottom: 30px;
  }
  
  .m_lp_report_inner p {
    margin-bottom: 30px;
  }
  
  .m_lp_report_photo {
    width: 100%;
    margin: 0 0 25px;
  }
  
  .m_lp_report_story {
    margin-bottom: 40px;
  }
  
  .m_lp_report_story_txt, .m_lp_final_slide {
    width: 100%;
  }
  
  .m_lp_report_story_interact_txt ul {
    padding-inline-start: 20px;
  }
  
  .m_lp_block:nth-child(2) {
    padding-top: 30px;
  }
  
  .m_lp_news {
    width: 92%;
    margin: 0 auto 60px;
  }
  
  .m_lp_interact .m_lp_inner .m_lp_interact_inner h2 {
    font-size: 20px;
  }
  
  .m_lp_report_story_interact .m_lp_report_photo {
    width: 100%;
    margin-bottom: 20px;
  }
  
  .m_lp_report_story.m_lp_report_story_interact {
    margin-bottom: 40px;
  }
  
  .m_lp_report_story.m_lp_report_story_interact:last-child {
    margin-bottom: 0;
  }
  
  .m_lp_presentation_inner .m_lp_report_photo, .m_lp_report_photo.m_lp_judge {
    width: calc(100% - 2px);
  }
  
  .m_lp_final_arrow {
    width: calc(100% / 1.8);
  }
  
  .m_lp_presentation h1 {
    font-size: 22px;
  }
  
  .m_lp_report_inner .m_lp_presentation p {
    font-size: 14px;
  }
  
  .m_lp_presentation_inner h2 {
    font-size: 20px;
    text-align: center;
    margin-bottom: 15px;
  }
  
  .m_lp_report_photo.m_lp_judge {
    margin-bottom: 30px;
  }
  
  .m_lp_report_inner .m_lp_other p {
    margin-bottom: 10px;
  }
  
  .m_lp_other {
    padding-top: 20px;
  }
  
  .m_lp_other a {
    width: calc(100% / 2);
  }
  
  .m_pagetop {
    width: 85px;
    right: 20px;
    bottom: 20px;
  }

  .m_lp_news.m_lp_news_preliminary dt, .m_lp_news.m_lp_news_preliminary dd a {
    font-size: 14px;
  }
}

@media screen and (max-width:640px) {
  body {
    font-size: 14px;
  }
  
  .m_lp_header {
    padding: 15px 20px;
  }
  
  .m_lp_header h1{
      line-height: 1.0em;
  }
  
  .m_lp_header h1 img {
    height: 30px;
    width: auto;
  }
  
  .m_lp_main h2 img.m_lp_pc {
    display: none;
  }
  
  .m_lp_main h2 img.m_lp_sp {
    display: block;
  }
  
  .m_lp_block {
    padding: 30px 0 45px;
  }
  
  .m_lp_inner h3 {
    margin-bottom: 30px;
  }

  .m_lp_introduction_block {
    margin-bottom: 30px;
  }
  
  .m_lp_introduction_link a {
    font-weight: normal;
    margin-left: calc( 50% - 60px);
  }
  
  .m_lp_introduction_link a::before {
    left: -20px;
    width: 8px;
    height: 10px;
    border: 8px solid transparent;
    border-left: 10px solid #197DE3;
  }

  .m_lp_about_block {
    margin-bottom: 80px;
  }

  .m_lp_about_block::after {
    bottom: -70px;
    margin-left: calc(50% - 20px);
    width: 25px;
    height: 15px;
    border: 15px solid transparent;
    border-top: 25px solid #197DE3;
  }

  .m_lp_about_block_time {
    padding: 20px 20px;
  }

  .m_lp_about_block_time h1 {
    font-size: 26px;
  }

  .m_lp_about_block_time p {
    font-size: 14px;
  }

  .m_lp_about_block_right {
    padding: 20px;
  }

  .m_lp_inner .m_lp_about_block_right h3 {
    font-size: 16px;
    margin-bottom: 20px;
  }

  .m_lp_about_block_right h2 {
    font-size: 20px;
    margin-bottom: 10px;
  }

  .m_lp_about_block_right p {
    line-height: 1.5em;
  }

  .m_lp_about_block_right p.m_lp_about_block_program {
    font-size: 14px;
  }
  
  .m_lp_movie_flag {
    top: -20px;
    left: -16px;
  }
  
  .m_lp_movie_block_left a.m_lp_link:after, .m_lp_movie_block.m_lp_movie_block_special .m_lp_movie_block_left a.m_lp_link:after, .m_lp_report_photo a.m_lp_link:after, .m_lp_presentation_inner .m_lp_report_photo a.m_lp_link:after, .m_lp_report_photo.m_lp_judge a.m_lp_link:after {
    background-size: 38px 38px;
    width: 38px;
    height: 38px;
    left: calc(50% - 19px);
    top: calc(50% - 19px);
  }
  
  .m_lp_report_inner h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .m_lp_footer_inner {
    padding: 20px 20px;
  }

  .m_lp_footer address, .m_lp_footer_block p {
    font-size: 12px;
  }
  
  .m_lp_interact_block h1 {
    font-size: 20px;
  }
  
  .m_lp_interact_inner {
    padding-top: 30px;
  }
  
  .m_lp_name {
    margin-right: 10px;
  }
  
  .m_lp_news_list {
    width: 100%;
    margin-bottom: 10px;
  }
  
  .m_lp_news dt {
    font-size: 20px;
  }
  
  .m_lp_news dd a {
    font-size: 18px;
  }

  .m_pagetop {
    width: 44px;
    right: 10px;
    bottom: 10px;
  }

  .m_lp_news.m_lp_news_preliminary dt {
    width: 18%;
  }

  .m_lp_news.m_lp_news_preliminary dd {
    width: calc(100% - 18% - 15px);
  }

  .m_lp_news.m_lp_news_preliminary .m_lp_news_list {
    display: block;
  }

  .m_lp_news.m_lp_news_preliminary .m_lp_news_list dt {
    width: auto;
    display: flex;
    margin-bottom: 5px;
  }

  .m_lp_news.m_lp_news_preliminary .m_lp_news_list dd {
    width: 100%;
    text-align: left;
  }
  
  .m_lp_photo_right, .m_lp_photo_left {
    width: calc(100% / 2);
  }
  
  .m_lp_photo_right {
    margin: 0 0 15px 15px;
  }
  
  .m_lp_photo_left {
    margin: 0 15px 15px 0;
  }
  
  h5.m_pt45 {
    padding-top: 0;
  }

  .m_lp_link_top img.m_lp_pc {
    display: none;
  }
  
  .m_lp_link_top img.m_lp_sp {
    display: block;
  }
  
  .m_lp_report_inner .m_lp_lecture p {
    margin-bottom: 20px;
  }
  
  .m_lp_lecture_photo {
    width: calc(100% / 2);
    margin: 0 0 10px 10px;
  }
}

@media screen and (max-width:600px) {
  .m_lp_news dl {
    padding: 15px;
  }
  
  .m_lp_news_list {
    display: block;
    width: 100%;
    margin-bottom: 15px;
  }
  
  .m_lp_news dt {
    width: 100%;
    margin: 0 0 15px;
  }
  
  .m_lp_news dd {
    text-align: center;
    margin: 0;
  }
}
  
@media screen and (max-width:540px) {
  .m_lp_movie_flag {
    top: -15px;
    left: -14px;
  }
  
  .m_lp_interact .m_lp_inner .m_lp_interact_inner h2 {
    font-size: 18px;
  }
  
  .m_lp_interact .m_lp_inner .m_lp_interact_inner h2:after {
    margin-top: 12px;
  }
  
  .m_lp_name {
    font-size: 1.0rem;
  }
  
  .m_lp_report_photo.m_lp_judge, .m_lp_presentation_block {
    margin-bottom: 30px;
  }
  
  .m_lp_other a {
    width: 60%;
  }
  
  .m_lp_news dt {
    font-size: 22px;
  }
}

@media screen and (max-width:416px) {
  .m_lp_movie_flag {
    width: calc(100% / 1.8);
    left: -12px;
  }
  
  .m_lp_block:nth-child(2) {
    padding-top: 20px;
  }
  
  .m_lp_news {
    margin-bottom: 40px;
  }
}

@media screen and (max-width:390px) {
  .m_lp_movie_flag {
    left: -10px;
    top: -13px;
  }
  
  .m_lp_report_story {
    margin-bottom: 25px;
  }
  
  .m_lp_report_inner .m_lp_report_story.m_lp_last {
    margin-bottom: 30px;
  }
  
  .m_lp_report_photo {
    margin-bottom: 20px;
  }
  
  .m_lp_report_inner .m_lp_report_story_txt p {
    margin-bottom: 10px;
  }
}