@charset "utf-8";
/* CSS Document */

#content-inner {/*★共有cssを上書き */
	width: 100% !important;
}
p {/*★共有cssを上書き*/
	margin: 0;
}

.hdg-h3 {/*★背景を広げる場合に、上部特集画像の配置調整が必要*/
	line-height: 16px;
}
/*---original text color on this page ---*/
#all-wrap img{
height: auto;
max-width:100%;
width: 100%;
}
img {
	margin: 0px;
	padding: 0px;
	vertical-align: middle;
}
.hdg-1-02 {
	width: 980px;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	height: 63px;
	line-height:1.4;
}
.hdg-1-02 img {
	vertical-align: middle;
}
.hdg-1-02 p {
    color: #00a8e6;
    font-size: 250%;
    margin: 0;
    padding-bottom: 15px;
    padding-top: 0px;
    width: 980px;
}
#main{
 font-size: 1.5rem;
 background: #ececec;
}
a:hover {
  text-decoration: none;
}
.txtLink {
  color: #00a2e6 !important;
}
@keyframes Ltxt {
  100% {
    transform: translateX(100%);
  }
}
@keyframes Rtxt {
  100% {
    transform: translateX(-100%);
  }  
}
figure {
 margin: 0;
}

.hdg-1-02 #snsBtn {
 font-size: 1.4rem !important;
}
/* END【基本】------------------------------------------------------------*/

/*SNSエリア
------------------------------------------------------------
*/
#sns {
	bottom: 20px;
	position: absolute;
	right: 0;
}
#snsBtn {
	margin: 0;
	padding: 10px 0;
	width: auto !important;
}
#snsBtn li {
	float: left;
	list-style: none outside none;
	margin-right: 10px;
}
#snsBtn li#twitterbtn {
	height: 22px;
	width: 90px;
}
#snsBtn li#facebookbtn {
	height: 22px;
	width: 100px;
}
#snsBtn li#googlebtn {
	height: 22px;
	width: 90px;
}

#contents_ALLrwap {
	width: 100%;
	margin:0px;
	padding:0px;
}

/*applyエリア
------------------------------------------------------------
/*apply*/
#apply {
 margin: 0 auto 0;
 text-align: center;
 background-color: #E3E3E3;
}
#apply .inner {
 padding: 60px 20px 35px;
}
#apply h2 {
 font-size: 2.5rem;
 letter-spacing: -2.0px;
 color: #535353;
/* font-weight: bold;*/
}
#apply .size_1 {
 font-size: 3.0rem;
}
#apply .size_2 {
 font-size: 3.6rem;
}
#apply .size_3 {
 font-size: 3.3rem;
}
#apply .size_4 {
 font-size: 2.0rem;
}
.apply_lead {
 margin-top: 30px;
 font-size: 1.8rem;
 color: #00a2e6;
}
.apply_btn {
 width: 645px;
 margin: 15px auto 0;
 border-radius: 100px;
}
#all-wrap .apply_btn a {
 position: relative;
 display: block;
 padding: 10px 15px 8px;
 background: #fff002;
 border-radius: 100px;
 color: #00a2e6;
 font-size: 2.7rem;
/* font-weight: bold;*/
}
.apply_btn a::before {
 position: absolute;
 display: block;
 content: '';
 right: 20px;
 top: 53%;
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
 width: 25px;
 height: 15px;
 background: url("/resources_v2/hikari/all/sp/remake-jissha/images/arrow_bottom.png") no-repeat 0 0/25px 15px;
}
#apply .apply_notes {
 width: 590px;
 margin: 20px auto 0;
 font-family: "AxisStd-Light";
 font-size: 1.2rem;
 color: #535353;
 text-align: left;
}

/***--------------------------------------------

共通

-----------------------------------------------*/
.flex {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.small-only {
 display: none;
}
.font_add {
 font-family: "fot-cezanne-pron", sans-serif;
font-weight: 500;
font-style: normal;
}
/***---------------------------------------------
●本特集PC設定
-----------------------------------------------*/
.font {
 font-family: "nitalago-ruika", sans-serif;
}
/*all*/
#all-wrap {
background: #e3e3e3;
 color: #2B2B2B;
}
#all-wrap a {
 color: #fff;
}
/*fv*/
#fv {
 text-align: center;
 text-align: center;
 position: relative;
 width: 100%;
 height: 250px; /* 画像の高さに合わせて調整 */
 background-image: url('/resources_v2/hikari/all/sp/harudrama2025/images/mv_bg.png');
 background-size: cover;
 background-position: center;
}
#fv .fv_inner {
 margin: auto;
 max-width: 1170px;
 width: 100%;
}
#fv .fv_inner h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  max-width: 600px;
  width: 100%;
  text-align: center;
}
.content img {
  max-width: 100%;
  max-height: 100%;
}
.bg_block {
  background-color: #FFF8DF;
  padding: 80px 20px;
}

.bg_inner {
  max-width: 1170px;
  margin: 0 auto;
}
.bg_block section:nth-child(n+2){
  margin-top:150px;
}
h2.h_border {
  position: relative;
  font-size: 40px;
  text-align: center;
  overflow: hidden;
  padding: 0 20px;
  font-family: "Noto Sans CJK JP", sans-serif;
  font-weight: bold;
}
h2.h_border span {
  position: relative;
  z-index: 1;
  background-color: #FFF8DF;
  padding: 0 80px;
}
h2.h_border::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #FCBCAB;
  z-index: 0;
}
.movie-flex {
  margin-top: 30px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.movie-flex > li{
  width: 32%;
  margin-right: 2%;
}
.movie-flex > li:nth-of-type(3n){
  margin-right: 0;
}
.movie-flex > li:nth-child(n+4){
  margin-top: 40px;
}
#all-wrap  .movie-flex > li a {
  color: #333;
}
#all-wrap  .movie-flex > li a:hover {
  opacity: .8;
}
#all-wrap  .movie-flex > li a:hover h3 {
  text-decoration: underline;
}
.movie-flex .movie-inner{
  padding: 10px 10px 20px;
}
.movie-flex > li h3{
  font-size: 18px;
  font-weight: bold;
  font-family: noto-sans-cjk-jp, sans-serif;
}
.movie-flex > li ul.tag{
  display: flex;
  margin-top: 10px;
}
.movie-flex > li ul.tag li{
  margin-right: 10px;
  color: #2B2B2B;
  font-size: 12px; 
  padding: 3px 0;
}
.movie-flex > li ul.tag li.red {
  background-color: #F0003C;
  color: #FFF;
  padding: 3px 10px;
  
}
.movie-flex > li ul.tag li.blue {
  background-color: #3091F2;
  color: #FFF;
  padding: 3px 10px;
}
.movie-flex > li ul.tag li.image {
  padding: 0;
  background-color: unset;
}
.movie-flex > li p.kikan{
  margin-top: 10px;
  font-size: 16px;
  font-family: noto-sans-cjk-jp, sans-serif;
}
.movie-flex > li p.num,
.movie-flex > li p.caution {
  margin-top: 10px;
}
.movie-flex > li p.copy {
  margin-top: 10px;
  font-size: 10px;
}
.movie-flex > li p.day {
  font-size: 17px;
  margin-top: 5px;
}
.movie-flex > li a:hover dl.ch {
  text-decoration:underline;
}
.movie-flex > li dl.ch {
  display: flex;
  align-items: center;
  margin-top: 20px;
}
.movie-flex > li dl.ch dt {
  margin-right: 10px;
}
.movie-flex > li dl.ch dd {
  font-size: 15px;
}

.coution-list{
  margin-top: 10px;
  font-size: 16px;
  text-align: center;
}

.pc {
  display: block;
}
.sp {
  display: none;
}

/*============================================================================
●本特集SP設定
============================================================================*/
@media screen and (max-width: 768px){
  .bg_block section:nth-child(n+2){
    margin-top:80px;
  }
  .wrap {
    padding: 3.88%;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .bg_block {
    padding: 12% 3.6%;
  }
  .bg_block h2 {
    font-size: 20px;
  }
  h2.h_border span {
  padding: 0 40px;
}
  .movie-flex {
    display: flex;
    margin-top: 20px;
  }
  .movie-flex > li{
    width: 48.06%;
    margin-right: 0;
  }
  .movie-flex > li:nth-child(odd){
    margin-right: 3.88%;
  }
  .movie-flex > li img {
    width: 100%;
  }
  .movie-flex > li:nth-child(n+3){
    margin-top: 40px;
  }
  .movie-flex > li h3 {
    font-size: 11px;
    
  }
  .movie-flex > li p.num,
  .movie-flex > li p.caution {
    font-size: 12px;
  }
  .introduction .text .cast {
    margin-top: 20px;
  }
  .movie-flex > li ul.tag {
    flex-wrap: wrap;
  }
  .movie-flex > li ul.tag li {
    width: fit-content;
    margin-bottom: 5px;
    font-size: 10px;
  }
  .movie-flex > li p.kikan {
    font-size: 10px;
  }
  .movie-flex > li p.copy {
    margin-top: 5px;
    font-size: 8px;
  }
  .movie-flex > li p.day {
    font-size: 13px;
  }
  .movie-flex > li dl.ch {
    flex-flow: column;
    align-items: start;
    margin-top: 10px;
  }
  .movie-flex > li dl.ch dt img {
    width: 90%;
  }
  .movie-flex > li dl.ch dd {
    font-size: 12px;
    margin-top: 5px;
  }
  .coution-list{
    font-size: 10px;
    text-align: left;
  }

  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

/*メディアクエリ～768▼PCのみ*/
/*============================================================================
●tablet.css 画面の横幅が768pxまで---SPのみ
============================================================================*/
@media screen and (max-width: 768px){
 .inner {
  padding: 0;
 }
img{
  max-width: 100%;
  height: auto;
  width /***/: auto;
}
 body,
 #main {
  font-size: 1.4rem;
 }
 .hdg-1-02 {
  background-color: #ececec;
 }
.hdg-1-02 p {padding-bottom:0px;}
	
#m_contents{
  overflow: hidden;
	}
.section_in { width:100%; padding:2%;}	
.heading {text-align: center;margin-bottom:20px;}
.text_box {font-size:1.4rem;}
/* ここから*/
 #hikari-header-area {
  background-color: #fff;
 }
 .sp-none {
  display: none;
 }
/*all*/
/*fv*/
#fv {
  height:0;
  padding-top: 43.59%;
  background-image: url('/resources_v2/hikari/all/sp/harudrama2025/images/mv_bg_sp.png');
  background-size: cover;
}
#fv .fv_inner {
 width: 100%;
 -webkit-flex-direction: column;
 flex-direction: column;
}
#fv .fv_inner img{
  max-width: 300px;
}
#fv .fv_info {
 width: 100%;
}
#fv h1 {
 padding: 0;
 text-align: center; 
}
#fv .fv_im {
 width: 100%;
 max-width: 100%;
}
/*contents*/
.contents_inner {
 width: 90%;
}
.banner {
 margin-top: 50px;
-webkit-flex-direction: column;
flex-direction: column;
}
.banner li {
 width: 80%;
 margin: auto;
}
.banner li:nth-of-type(n+2) {
 margin-top: 20px;
}
#lead {
 font-size: 1.6rem;
 line-height: 160%;
}
#lead p:nth-of-type(n+2) {
 margin-top: 25px;
}
#lead .red {
 font-size: 1.8rem;
 line-height: 160%;
}
.works_wrap > li >.contents_inner {
 padding: 85px 0;
 background: url("/resources_v2/hikari/all/sp/mfg-anime/images/episode.png") no-repeat top 50px left 0/100%;
}
 .works_wrap > li:nth-of-type(n+2) >.contents_inner {
 background: url("/resources_v2/hikari/all/sp/mfg-anime/images/special_program.png") no-repeat top 55px left 0/100%;
}
.works_wrap > li:nth-of-type(3) {
 background: #762022;
}
.works_wrap > li > .contents_inner > .flex {
 -webkit-flex-direction: column;
 flex-direction: column;
}
.works_im {
 width: 80%;
 max-width: 455px;
 margin: 20px auto 0;
}
.flex .info {
 width: 100%;
}
.date {
 margin-top: 30px;
 font-size: 1.7rem;
}
.date span {
 font-size: 1.5rem;
}
#all-wrap .ch a {
 font-size: 1.5rem;
}
.caption {
 font-size: 1.4rem;
}
#all-wrap h2.works_title.non_link.pc-only,#all-wrap h2.works_title.pc-only a {
 display: none;
}
#all-wrap h2.works_title.non_link,#all-wrap h2.works_title a {
 font-size: 2.2rem;
}

.official {
 padding: 15px 0 15px 20px;
 font-size: 1.4rem;
}
.official_link {
 margin-top: 10px;
}
#all-wrap .official_link a {
 font-size: 1.6rem;
}
.contents_lead {
 font-size: 1.7rem;
}
.all-btn {
  margin-top: 50px;
}
 /*apply*/
#apply {
 margin: auto;
 padding: 75px 10px 35px;
}
 #apply .inner {
  padding: 0;
  background: none;
 }
#apply h2 {
 font-size: 2.3rem;
 line-height: 160%;;
}
#apply .size_1 {
 font-size: 2.7rem;
}
#apply .size_2 {
 font-size: 3.3rem;
}
#apply .size_3 {
 font-size: 3.0rem;
}
#apply .size_4 {
 font-size: 1.7rem;
}
.apply_lead {
 margin-top: 30px;
 font-size: 1.7rem;
}
.apply_btn {
 width: 95%;
}
.apply_btn a {
 padding: 10px 13px 8px;
 font-size: 2.5rem;
}
#apply .apply_notes {
 width: 95%;
}
}
/*============================================================================
●共通 600↓
============================================================================*/

@media screen and (max-width:600px){
.js-target {padding:20px;}
 .small_none {
  display: none;
 }
 .small-only {
  display: block;
 }
#fv .channel::before {
    top: -20px;
    border: 10px solid transparent;
    border-bottom: 15px solid #fff;
}
.ch_logo {
 width: 50px;
}
#all-wrap .channel a p {
 font-size: 1.3rem;
}
.contents_inner {
 width: 93%;
}
 .banner li {
 width: 95%;
}
 .banner li:nth-of-type(n+2) {
 margin-top: 5px;
}
 #lead {
 padding: 55px 0;
 font-size: 1.3rem;
}
#lead p:nth-of-type(n+2) {
 margin-top: 25px;
}
#lead .red {
 font-size: 1.4rem;
}
 .works_wrap > li >.contents_inner {
 padding: 40px 0;
}
 #all-wrap h2.works_title.non_link,#all-wrap h2.works_title a {
margin-top: 0;
 font-size: 1.6rem;
}
 .works_im {
 margin-top: 10px;
}
 .date {
 margin-top: 20px;
 font-size: 1.4rem;
}
.date span {
 font-size: 1.2rem;
}
 #all-wrap .ch a {
 font-size: 1.1rem;
 color: #e7a008;
}
 .caption {
 margin-top: 10px;
 font-size: 1.2rem;
}
.contents_lead {
 font-size: 1.4rem;
}
 /*apply*/
#apply {
 padding: 60px 10px 35px;
}
#apply h2 {
 font-size: 1.5rem;
 line-height: 180%;
 letter-spacing: -1px;
}
#apply .size_1 {
 font-size: 1.8rem;
}
#apply .size_2 {
 font-size: 2.5rem;
}
#apply .size_3 {
 font-size: 1.8rem;
}
#apply .size_4 {
 font-size: 1.2rem;
}
.apply_lead {
 margin-top: 30px;
 font-size: 1.4rem;
}
.apply_btn {
 width: 100%;
}
#all-wrap .apply_btn a {
 padding: 7px 10px 3px;
 font-size: 1.5rem;
 font-weight: bold;
}
#apply .apply_notes {
 width: 100%;
 font-size: 1.1rem;
}
 .apply_btn a::before {
 right: 15px;
 width: 15px;
 height: 9px;
 background: url("/resources_v2/hikari/all/sp/new-hanryu-ajiadrama2022/images/arrow_bottom.png") no-repeat 0 0/15px 9px;
}
}
@media screen and (max-width:966px){
.hdg-1-02 {
  width: 100%;
	display:flex;
	flex-wrap: wrap;
	background:#ececec;
	height:auto;
	padding:0 10px 10px;
	align-items:center;
	justify-content: space-between;
	box-sizing:border-box;
}	
.hdg-1-02 p {
    width: 302px;
	margin-bottom:0;
}
.hdg-1-02 #sns {
	position:static;
}
/*～以下、画面の横幅が768pxまでの場合のスタイル記入～*/
#mainImg { position:static; height:auto; width:100%;}
#mainImg img { width:100%;}
#mainImg .main01 { display:block;}
}

@media screen and (max-width:360px){
.js-target {padding:20px;}
  /*apply*/
#apply {
 padding: 40px 5px 30px;
}
#apply h2 {
 font-size: 1.3rem;
 line-height: 180%;
 letter-spacing: -1px;
}
#apply .size_1 {
 font-size: 1.5rem;
}
#apply .size_2 {
 font-size: 2.0rem;
}
#apply .size_3 {
 font-size: 1.5rem;
}
#apply .size_4 {
 font-size: 1.1rem;
}
.apply_lead {
 margin-top: 30px;
 font-size: 1.3rem;
}
.apply_btn a {
 font-size: 1.4rem;
}
}