@charset "UTF-8";

/* ///////////////////////////////////////////////////////// */

/* Base Style
-------------------------------------------------------------*/

* {
	box-sizing: border-box;
}
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
html {
	position: relative;
	font-size:62.5%;
	min-height: 100%;
}

body {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	-webkit-text-size-adjust: 100%; /*  sp横向き文字サイズ固定 */
	font-family: "ヒラギノ角ゴシック","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;/*游ゴシック Windows Chrome　かすれ対策*/
	font-size:16px;
	font-size:1.6rem;
	line-height:1.8;
}

.pc {
	display: block;
}
.sp {
	display: none;
}

/* Images
-------------------------------------------------------------*/
img {
	max-width:100%;
	height: auto;
	vertical-align: middle;
}


/* Link
-------------------------------------------------------------*/
a {
	text-decoration: none;
	transition:0.3s;
    z-index:1;
}
a:hover {
	opacity: 0.8;
	position: relative;
}
a:hover::after{
	display:block;
	content: "";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-color: #ffffff;
	opacity:0.2;
	transition:0.5s;
	margin:0;
	padding:0;
  z-index:0;
  pointer-events: auto;
}

/* Text
-------------------------------------------------------------*/
h1 {
  line-height:1;
}
p {
	margin:0;
}
.no_line_break{
	display:inline-block;
}

/* Site Width
-------------------------------------------------------------*/
.contents_inner,
.header_top_area,
.article_area h2 img,
.department_area,
.thanks_area,
.partner_area,
.special_award_area,
.slider_area{
  max-width:1090px;
}

.side_padding {
  padding:0 30px;
}


/* Block & Column
-------------------------------------------------------------*/
.wrapper {
	min-height: 100vh;
	position: relative;
	margin: 0 auto;
}

.contents_inner {
	width:100%;
	position:relative;
	margin:0 auto;
}

.contents_skew_red,
.contents_skew_yellow,
.contents_skew_blue,
.contents_skew_green,
.contents_skew_purple,
.contents_skew_yellow{
	position:relative;
	z-index: 0;
	padding:40px 0 80px;
}
.contents_skew_blue{
  padding:40px 0 120px;
}
.contents_skew_white {
	padding:0px 0 160px;
}

.contents_skew_red::after,
.contents_skew_yellow::after,
.contents_skew_blue::after,
.contents_skew_green::after,
.contents_skew_purple::after,
.contents_skew_white::after{
	content: "";
	position: absolute;
	left:0;
	top:0;
	transform: skew(0,-3deg);
	transform-origin: bottom left;
	z-index: -1;
  width:100%;
  height:100%;
}
.contents_skew_red::after {
	background-color:#cc3e00;
}
.contents_skew_yellow::before {
	background-color:#f8b800;
}
.contents_skew_green::after {
	background-color:#063a2a;
}
.contents_skew_blue::after{
	background-color:#1b2768;
}
.contents_skew_purple::after {
  background-color:#5b3174;
}
.contents_skew_yellow::after {
  background-color:#f8b800;
}
.contents_skew_white::after {
  transform: skew(0,0deg);
	background-color:#ffffff;
}

.col-xl-4 {
	/*width:31%;*/
  width:calc((100% / 3) - 30px);
  margin-right:15px;
  margin-left:15px;
}

.col-xl-4:nth-child(2n) {
  margin-right:15px;
}

.col-xl-4:nth-child(3n) {
  margin-right:0;
}


.col-xl_6 {
	width:48%;
}
.col-xs-12 {
	width:100%;
}
.col-offset-xl-3 {
	width:25%;
	display: block;
	content:"";
}
.col-offset-xl-4 {
	width:31%;
  display: block;
	content:"";
}
.col-offset-xl-8 {
	width:62%;
  display: block;
	content:"";
}
/* ///////////////////////////////////////////////////////// */


/* ///////////////////////////////////////////////////////// */

/* Contents 
-------------------------------------------------------------*/
.contents {
	width:100%;
	height:auto;
	position:relative;
	opacity: 1;
}


/* Header 
-------------------------------------------------------------*/

.header {
	width:100%;
  display: flex;
  flex-direction:column;
  background-image:url(../images/header_bg.png);
  background-repeat: repeat-x;
  background-size: contain;
	margin:0 auto;
	animation-duration:1.2s;
	animation-delay: 0s;
  position:relative;
  top:0;
  left:0;
  z-index: 1;
}
/*
.header a:hover {
	opacity: 1;
}*/

.header a:hover::after{
	opacity:0;
}

.header_top_area {
  width:100%;
  /*height:120px;*/
  display: flex;
  justify-content: space-between;
  align-content: center;
  margin:0 auto;
}

.header .header_top_area a h1 img {
	width:100%;
	margin:0 auto;
  max-width:204px;
}

.header .header_top_area .header_inner_right {
  display:flex;
  justify-content: flex-end;
  align-items: center;
}

.header .header_top_area .header_inner_right .sns_txt{
  display: block;
  max-width:92px;
}

.header .header_top_area .header_inner_right ul {
  padding:0;
}

.header .header_top_area .header_inner_right ul li {
  display:inline-block;
  list-style:none;
  margin-left:10px;
}

.header .header_top_area .header_inner_right ul li a img {
  max-width:40px;
}

.header_bottom_area {
  display: flex;
  align-items:center;
  width:100%;
  background-color:#efc20f;
  border-bottom:4px solid #ce7700;
}

.header_bottom_area nav {
  width:100%;
  height:100%;
}

.header_bottom_area nav ul {
  width:100%;
  height:100%;
  margin:0 auto;
  padding:0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header_bottom_area nav ul li {
  width:100%;
  height:100%;
  display:inline-flex;
  align-items: center;
  text-align: center;
  position:relative;
}

.header_bottom_area nav ul li a {
  width:100%;
  height: 56px;
  display:block;
  opacity:1;
  transition:all 0.3s;
  background-color:transparent;
  position:relative;
  padding:20px 0;
}

.header_bottom_area nav ul li a:hover {
  opacity:0.7;
  transition:all 0.3s;
  background-color:#FFE582;
}

.header_bottom_area nav ul li a span {
  display:flex;
  justify-content: center;
  align-items: center;
  width:100%;
  /*height:60%;*/
  position:absolute;
  top:50%;
  left:0;
  transform:translateY(-50%);
}

.header_bottom_area nav ul li:first-child a span {
  border-left:1px solid #a17700;
  border-right:1px solid #a17700;
}

.header_bottom_area nav ul li:first-child a span::before {
  display:block;
  content: "";
  width:1px;
  height:100%;
  position:absolute;
  top:50%;
  left:0;
  transform:translateY(-50%);
  background-color:#ffff7d;
}

.header_bottom_area nav ul li:last-child a span {
  border-left:1px solid #ffff7d;
  border-right:1px solid #ffff7d;
}

.header_bottom_area nav ul li:last-child a span::before {
  display:block;
  content: "";
  width:1px;
  height:100%;
  position:absolute;
  top:50%;
  right:0;
  transform:translateY(-50%);
  background-color:#a17700;
}

.header_bottom_area nav ul li a span img {
  max-height:18px;
}

/* Article 
-------------------------------------------------------------*/
.article_area {
	width:100%;
	margin:0 auto;
  padding-top:0;
  padding-bottom:120px;
	text-align: center;
	position: relative;
  background-image: url("../images/gp_bg.png");
	background-size: 100%;
  background-position: top;
  background-repeat: no-repeat;
	opacity: 1;
}

.article_area h2 {
  margin:0;
  padding:0;
  line-height:1;
}

.article_area h2 img {
	width:100%;
  padding-top:50px;
	text-align: center;
	animation-duration:0.8s;
	animation-delay: 1.2s;
}

.article_area p {
  margin-top:30px;
  color:#001b7b;
}

.article_area p span {
  font-size:1.4rem;
}

.cp_period {
  width:100%;
  margin-top:50px;
  margin-bottom:50px;
}

.cp_period img {
  margin: 0 auto;
}

.btn_detail {
  display: block;
}

.btn_detail a{
  opacity:1;
} 
.btn_detail a:hover {
  opacity:0.7;
}

.lightOpacity {
	opacity:0;
	animation: light_opacity;
	z-index:2;
}

.light_01 {
	position:absolute;
	top:14%;
	left:12%;
	width:3%;
	animation: light_opacity ;
	animation-duration:0.6s;
	animation-delay:1.8s;
}

.light_02 {
	position:absolute;
	top:00%;
	right:12%;
	width:3.5%;
	animation: light_opacity;
	animation-duration:0.6s;
	animation-delay:2.2s;
}

.light_03 {
	position:absolute;
	top:20%;
	right:28%;
	width:2%;
	animation: light_opacity;
	animation-duration:0.6s;
	animation-delay:1.6s;
}

.light_04 {
	position:absolute;
	top:0;
	left:21%;
	width:4%;
	animation: light_opacity;
	animation-duration:0.6s;
	animation-delay:1.6s;
}

.light_05{
	position:absolute;
	top:19%;
	left:36%;
	width:4%;
	animation: light_opacity;
	animation-duration:0.6s;
	animation-delay:2.0s;
}

/* ///////////////////////////////////////////////////////// */



/* department 
-------------------------------------------------------------*/

.flex_wrapper{
	display:flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: flex-start;
  margin-left:-15px;
  margin-right:-15px;
}

.department_area,
.special_award_area,
.thanks_area,
.partner_area{
	margin:0 auto;
	position: relative;
}

.department_title,
.special_award_title,
.movie_title,
.thanks_title,
.partner_title{
	position:relative;
  text-align: center;
  margin-bottom:60px;
}

.department_title img,
.special_award_title img,
.movie_title img,
.thanks_title img,
.partner_title img{
  margin:0 auto;
  width:84.271845%;
}

.department{
	height:100%;
	position:relative;
	margin-bottom:30px;
}

.department_green{
  background:#132c22;
}

.department_red{
  background:#481018;
}

.department_blue{
  background:#0e1853;
}

.department_purple {
  background:#46185a;
}

.department .dept_link_top {
  display:block;
  padding:30px 20px;
}
.department .dept_link_bottom {
  display: block;
  padding:0;
  margin-top:5px;
}

.dept_link_green {
  display: block;
	width: 100%;
	height:auto;
  padding:16px;
	background-color:#004a28;
	color:#ffffff;
	font-weight: bold;
	font-size:1.6rem;
  text-align: center;
  vertical-align: middle;
}

.dept_link_red {
  display: block;
	width: 100%;
	height:auto;
  padding:16px;
	background-color:#8c000f;
	color:#ffffff;
	font-weight: bold;
	font-size:1.6rem;
  text-align: center;
  vertical-align: middle;
}

/* banner area */
.bnr_area {
  margin:0 auto;
  margin-top:30px;
  width:100%;
}
.bnr_area a,
.bnr_area div{
  opacity:1;
}

.bnr_area a:hover {
  opacity:0.7;
}

.bnr_area a img,
.bnr_area div img{
  vertical-align:bottom;
}

.bnr_area.bnr_border a img,
.bnr_area.bnr_border div img{
  margin-bottom:60px;
}

.special_award_text,
.thanks_text {
  margin-bottom:60px;
  text-align: justify;
  font-size:1.8rem;
}

.special_award_text {
  font-size:1.4rem;
}

.article_area p span {
  font-size:1.4rem;
}

.special_award_text {
  color:#ffffff;
}

.thanks_area  {
  text-align:center;
}
.thanks_area_link {
  display:inline-block;
  padding:20px;
  text-align:center;
  background-color: #8c000f;
  color:#ffffff;
  margin:60px auto;
  font-weight: bold;
  min-width:370px;
}


.partner_area {
	padding-top:30px;
  padding-bottom:30px;
  background:#ffffff;
	margin-bottom:-120px;
}

.partner_title{
  padding-top:30px;
}

.partner_area p{
  text-align: center;
}


/* ///////////////////////////////////////////////////////// */




/* modal
-------------------------------------------------------------*/
.video_wrapper {
  width:100%;
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  margin-bottom:20px;
}
.video_wrapper iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.remodal {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 20px;
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}
.remodal.tv_movie{
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 20px;
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}
.remodal-cancel {
  min-width: 110px;
  padding: 10px 0;
  line-height: 1;
}
.remodal-cancel {
  color: #fff;
  background: #444444;
}
.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #666666;
}

/* ///////////////////////////////////////////////////////// */



/* Animation
-------------------------------------------------------------*/

@keyframes light_opacity {
	0%{
		opacity:0;
	}
	50%{
		opacity:1;
	}
	100%{
		opacity:0;
	}
}

/* ///////////////////////////////////////////////////////// */


/* slider 
-------------------------------------------------------------*/
.slider_area {
	width:100%;
	position:relative;
	margin:0 auto;
  text-align: center;
}

.slide_inner {
	width:100%;
	height:100%;
	position: relative;
	padding:4% 0;
	background:#ffffff;
	border:4px solid #8a1d00;
	display: block;
	border-radius:16px;
}

.slider_title_area {
  width:100%;
  background-image:url("../images/slider_title_bg.png");
  background-size:120px;
  background-repeat: no-repeat;
  background-position:center;
  text-align: center;
  padding:20px 0;
  margin-bottom:20px;
}

.slider_title_area p {
  position: relative;
  line-height: 1.4;
	padding:0 2%;
}

.slide_award {
	font-weight: bold;
	font-size:1.8rem;
}

.slide_title {
	font-weight: bold;
	font-size:2.4rem;
}

.slide_media {
	display:block;
	padding:0 4%;
}

.slide_media a{
	display:block;
}

.movie_wrapper {
	position:relative;
	width:100%;
	height:0;
	padding-top:56.25%;
}
.movie_wrapper iframe{
	border:none;
	display: block;
	background:#cccccc;
}
.slide_movie {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
.swiper-container{
	position:relative;
}
.swiper-slide {
	width: 100%;
	height: 100%;
	margin:0 auto;
	position: relative;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
}
.swiper-slide-active {
    transition:0.5s;
	overflow: visible;
	z-index:10;
	transform:scale(1) !important;
}
.swiper-pagination {
    position:relative;
    padding-top:20px;
	padding-bottom:0;
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #fff;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #000000;
}

.slider_area_link {
  display:inline-block;
  padding:20px;
  text-align:center;
  background-color: #004a28;
  color:#ffffff;
  margin:60px auto;
  font-weight: bold;
  min-width:370px;
}

/* ///////////////////////////////////////////////////////// */




/* -----------------------------------------

Footer

-------------------------------------------- */

.footer {
	margin-top:auto;
}

.footer::before {
  width:100%;
  display: block;
  content: "";
  border-top:5px solid #1e2864;
}

.footer_inner{
  padding:30px;
}

.footer_contents{
	width:100%;
	height:40px;
	position: relative;
	margin-top:0rem;
}

.footer_contents p {
	position:absolute;
	top:1.4rem;
	left:0;
  font-size:1.2rem;
}

.footer a{
  opacity:1!important;
}

.footer a:hover {
  cursor: pointer!important;
  opacity:1!important;
  position: static!important;
}

.footer a:hover::after {
  display:none!important;
}

.access_logo_area{
	width:160px;
	position:absolute;
	top:0;
	right:0;
}


/* -----------------------------------------

Back to Top

-------------------------------------------- */

.is_page_top {
  display:flex;
  justify-content: center;
  align-items: center;
  width:60px;
  height:60px;
  padding:0;
  position:fixed;
  right:0;
  bottom:100px;
  background-color:#1e2864;
  border-top-left-radius: 8px;
  border-bottom-left-radius:8px;
}

.is_page_top img {
  transform:rotate(180deg);
  vertical-align: middle;
}


@media screen and (max-width:768px){
	
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
  
  /* Site Width
-------------------------------------------------------------*/
  .contents_inner,
  .header_top_area,
  .article_area h2 img,
  .department_area,
  .thanks_area,
  .partner_area,
  .special_award_area,
  .slider_area{
    max-width:736px;
  }

  .side_padding {
    padding:0 20px;
  }
	

	/* Block & Column
	-------------------------------------------------------------*/
  
  .contents_skew_red,
  .contents_skew_yellow,
  .contents_skew_blue,
  .contents_skew_green,
  .contents_skew_purple,
  .contents_skew_yellow{
	  padding:30px 0;
  }
  
  .contents_skew_white {
	  padding:30px 0 160px;
  }
  
  
  .col-xl-4 {
    width:calc((100% / 2) - 20px);
    margin-right:10px;
    margin-left:10px;
  }

  .col-xl-4:nth-child(3n) {
    margin-right:10px;
    margin-left:10px;
  }
  
  .col-xl-4:nth-child(2n) {
    margin-right:0;
  }
  
	.col-xl_6 {
		width:100%;
	}
	.col-xs-12 {
		width:100%;
	}
	.col-offset-xl-3 {
		display: none;
	}
  .col-offset-xl-8 {
	  width:48%;
    display: block;
	  content:"";
  }
	/* ///////////////////////////////////////////////////////// */

  
	/* header 
	-------------------------------------------------------------*/
  .header {
    background-image:url(../images/header_bg_sp.png);
  }
  
  .header_top_area {
    align-items: center;
  }
  
  .header .header_top_area .logo {
    width:37.333333%;
    padding-top:10px;
  }
  
  .header_top_area .header_inner_right {
    width:49%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  
  .header .header_top_area a h1 img {
    max-width:100%;
  }
  
  .header .header_top_area .header_inner_right .sns_txt{
    padding-top:10px;
  }
  
  .header_top_area .header_inner_right ul {
    width:100%;
    display:inline-flex;
    justify-content: center;
    padding:0;
  }
  

  .header .header_top_area .header_inner_right ul li {
    margin-left:30px;
    width:70px;
  }
  
  .header .header_top_area .header_inner_right ul li:first-child {
    margin-left:0;
  }
  
   .header .header_top_area .header_inner_right ul li:last-child {
    margin-right:0;
  }
  
  .header_bottom_area nav ul li a {
   height: auto;
  }
  
  .header .header_top_area .header_inner_right ul li a img {
    max-width:100%;
  }
  
  .header_bottom_area nav ul li:first-child a span {
    border-left:none;
  }

  .header_bottom_area nav ul li:first-child a span::before {
    background-color:transparent;
  }
  
  .header_bottom_area nav ul li:last-child a span {
    border-right:none;
  }

  .header_bottom_area nav ul li:last-child a span::before {
    background-color:transparent;
  }
  
  .header_bottom_area .side_padding {
    padding-left:0;
    padding-right:0;
  }
  
  
	/* ///////////////////////////////////////////////////////// */
	
  
  /* Article 
  -------------------------------------------------------------*/
  
  .article_area {
    padding-bottom:60px;
    background-image: url("../images/gp_bg_sp.png");
  }
  
  .article_area h2 img {
    padding-top:30px;
  }
  
  .article_area p {
    padding-left:60px;
    padding-right: 60px;
    text-align:justify;
  }
  
  .article_area p span {
    font-size:1.25rem;
    line-height: 1.25!important;
  }
  
  .cp_period {
    margin-top:30px;
    margin-bottom:30px;
    padding-left:60px;
    padding-right: 60px;
  }
  
  .btn_detail {
    margin-left:60px;
    margin-right: 60px;
  }
  
  .light_01 {
	  width:8%;
  }

  .light_02 {
	  width:10%;
  }

  .light_03 {
	  width:8%;
  }

  .light_04 {
	  width:10%;
  }

  .light_05{
	  width:10%;
  }
  
  
  /* ///////////////////////////////////////////////////////// */



  /* department 
  -------------------------------------------------------------*/
  .flex_wrapper{
    margin-left:-10px;
    margin-right:-10px;
  }
  
  .department_title,
  .special_award_title,
  .movie_title,
  .thanks_title,
  .partner_title{
	  margin-top:30px;
  }
  
  .department_title img,
  .special_award_title img,
  .movie_title img,
  .thanks_title img,
  .partner_title img{
    margin:0 auto;
    width:78.933333%;
  }
  
  .special_award_text {
    font-size:1.25rem;
  }
  
  .thanks_area_link br {
    line-height:0;
  }
  
  .dept_link_green {
	  font-size:1.4rem;
  }

  .dept_link_red {
	  font-size:1.4rem;
  }
  
  /* banner area */
  .bnr_area {
    margin-bottom:60px;
  }

  .partner_title {
    padding:0;
  }

  
	/* ///////////////////////////////////////////////////////// */
	
  
  /* modal 
	-------------------------------------------------------------*/
  .modal_btn {
    font-size:1.4rem;
  }
  .modal_btn2 {
    font-size:1.4rem;
  }
  .modal_btn img,
  .modal_btn2 img{
    width:30px;
    margin-left:8px;
  }
  
  /* ///////////////////////////////////////////////////////// */

	
  /* -----------------------------------------
  
  Footer
  
  -------------------------------------------- */
  
  .footer_contents p {
	  font-size:1.0rem;
  }
  
  .access_logo_area{
	  width:120px;
  	position:absolute;
	  top:0;
  	right:0;
  }
	
	/* ///////////////////////////////////////////////////////// */
}



@media screen and (max-width:500px){
	
	/* Site Width
  -------------------------------------------------------------*/

  .side_padding {
    padding:0 10px;
  }
	
	/* Block & Column
	-------------------------------------------------------------*/
  .contents_skew_red,
  .contents_skew_yellow,
  .contents_skew_blue,
  .contents_skew_green,
  .contents_skew_purple,
  .contents_skew_yellow{
	  padding:20px 0;
  }

  .contents_skew_white {
	  padding:20px 0 140px;
  }
  
  .contents_skew_white::after {
	  padding:0 0;
  }
  
	/* ///////////////////////////////////////////////////////// */
	
  /* header 
	-------------------------------------------------------------*/
  
  .header_top_area {
    padding-top:0;
    padding-bottom:0;
  }
  
  .header .header_top_area .logo {
    width:40%;
  }
  
  .header_top_area .header_inner_right {
    width:50%;
  }

  .header .header_top_area .header_inner_right .sns_txt{
    width:28.307692%;
    max-width:100%;
  }
  
  .header .header_top_area .header_inner_right ul li {
    margin-left:15px;
    width:auto;
  }
  
   .header_bottom_area nav ul li a span img {
    max-height:12px;
  }
  
  .header_bottom_area nav ul li a span{
    padding:0 10px;
  }


  /* ///////////////////////////////////////////////////////// */
  
  
    /* Article 
  -------------------------------------------------------------*/
  
  .article_area p {
    padding-left: 12%;
    padding-right: 12%;
    font-size:1.4rem;
  }
  
  .article_area p span {
    font-size:1.0rem;
  }
  
  .cp_period {
    margin-top:20px;
    margin-bottom:20px;
    padding-left: 12%;
    padding-right: 12%;
  }
  
  .btn_detail {
    margin-left:12%;
    margin-right: 12%;
  }
  
  
  /* department 
  -------------------------------------------------------------*/
  
  .department .dept_link_top {
    padding:10px 0px;
  }

  .dept_link_green {
    padding:10px;
	  font-size:1.2rem;
  }

  .dept_link_red {
    padding:10px;
	  font-size:1.2rem;
  }
  
  /* banner area */
  .bnr_area {
    margin-top:0;
    margin-bottom:30px;
  }

  .bnr_area.bnr_border a img,
  .bnr_area.bnr_border div img{
    margin-bottom:30px;
  }
  
  .special_award_text,
  .thanks_text {
    margin-bottom:30px;
    font-size:1.4rem;
  }
  
  .special_award_text {
    font-size:1.0rem;
  }
  
  .department_title,
  .special_award_title,
  .movie_title,
  .thanks_title,
  .partner_title{
    margin-bottom:30px;
  }
  
  .thanks_area_link {
    margin:30px 0;
    min-width:260px;
  }

	
	/* slider
	-------------------------------------------------------------*/
	.slide_text {
		font-size:1.4rem;
		padding-bottom:15px;
	}
	.slide_title {
		font-size:1.6rem;
	}
	
  .slider_area_link {
    margin:30px 0;
    min-width:260px;
  }
  
	/* ///////////////////////////////////////////////////////// */
	
  /* modal 
	-------------------------------------------------------------*/
  .modal_btn{
    width:70%;
    padding:10px 0;
  }
  .modal_btn2 {
    font-size:1.2rem;
    padding:10px 0;
  }
  .modal_btn2 img{
    width:22px;
    margin-left:4px;
  }
  /* ///////////////////////////////////////////////////////// */
  
	/* department 
	-------------------------------------------------------------*/

	.thanks_area p {
		font-size:1.4rem;
	}


	.partner_area p {
		font-size:1.3rem;
	}

	.department a {
		padding:15px;
	}

	/* ///////////////////////////////////////////////////////// */
	
	
  
  /* -----------------------------------------
  
  Footer
  
  -------------------------------------------- */
  
  .footer_inner{
    padding:15px;
  }
  
  .footer_contents{
	  width:100%;
	  position: relative;
	  margin-top:10px;
    margin-bottom:20px;
  }
  
  .footer_contents p {
    width:100%;
	  position:absolute;
	  top:45px;
	  left:50%;
    transform:translateX(-50%);
    text-align: center;
    font-size:0.8rem;
  }
  
  .access_logo_area{
	  width:120px;
  	position:absolute;
	  top:0;
  	left:50%;
    transform:translateX(-50%);
  }
  
  /* -----------------------------------------

Back to Top

-------------------------------------------- */

  .is_page_top {
    bottom:100px;
  }
}



/*20211221追加*/
.contact_info {
  background-color:#ececec;
  padding:50px;
  margin-top:60px;
  text-align:center;
}

.contact_info h3 {
  text-align: center;
  line-height: 1;
  font-size:2.4rem;
  margin:0;
  padding:0;
}

.contact_info p{
  margin-top:20px;
}

.contact_info span{
  display:inline-flex;
  font-size:1.4rem;
}

@media screen and (max-width:500px){
  .contact_info {
    padding:30px;
    margin-top:30px;
  }
  
  .contact_info h3 {
    font-size:2rem;
  }
  
  .contact_info span{
    padding-top:10px;
    font-size:1.0rem;
  }
}