@charset "UTF-8";
/* CSS Document */

* {
	margin: 0;
	padding: 0;
}
/* ========================================
	フロートの解除
========================================= */

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* ========================================
	全体設計
========================================= */
body {
	background: #b51818;
	color: #fff;
    font-size: 16px;
	font-family: "A-OTF 黎ミンY40 Pro", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,;
	letter-spacing: 0.05em;
	line-height: 1.75;
	text-align: left;
}

.pc {
	display: none;
}

@media (min-width: 520px) {
	body {   
		font-size: 16px;
		line-height: 1.8;
	}
	.pc {
		display: block;
	}
	.sp {
		display: none;
	}
}

img {
    max-width: 100%;
    height: auto;
}

span {
	display: inline-block;
}

/* ----- header ----- */
header {
	background: #858072;
}
.headInner {
	display: flex;
	flex-direction: column;
	background: #b51818;
  border-radius: 0px 0px 25% 25%;
}
.headInner .kab {
	width:60px;
	height:auto;
	margin: 15px;
}
.headInner .kab img {
	height:auto;
}

.senkyo	{
	margin: 0 15px 15px;
    background-color: #fff;
    padding: 10px;
	text-align:center;
	animation-name:rotateXAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
}

@keyframes rotateXAnime{
	from{
		transform: rotateX(0);
		}
	to{
		transform: rotateX(-360deg);
		}
}

.senkyo h1 {
	color: #FF4200;
	font-size: 24px;
}

.senkyo_setumei{
	margin: 0 30px 15px;
}
.senkyo_gaiyou {
	color: #fff;
	text-align:center;
	margin-bottom: 15px;
}

.senkyo_ramen {
	color: #FFE948;
	text-align:center;
	font-weight: bold;
}
.senkyo_ramen span {
	border-bottom: 2px double #FFE948;
}

@media (min-width: 730px) {
	.senkyo {
		width: 100%;
		max-width: 700px;
		margin: 0 auto 30px;
	}
}


.questionnaire	{
	margin: 0 15px 15px;
    background-color: #FFE948;
    padding: 10px;
	text-align:-webkit-center;
}

@media (min-width: 960px) {
	.headInner .kab {
		width:63px;
		margin: 25px;
	}
	.headInner .kab img {
		width:63px;
	}
	.headInner {
    border-radius: 0px 0px 130% 130%;
	}
	.senkyo{
		width: 700px;
		margin: 0 auto 25px;
	}
	.senkyo_setumei {
		margin-bottom: 75px;
	}
	.senkyo_gaiyou{
		width: 700px;
		margin: 0 auto 25px;
		font-size: 25px;
	}
	.senkyo_ramen{
		font-size: 24px;
	}	
  .questionnaire{
		width: 700px;
		margin: 0 auto 25px;
    font-size: 20px;
	}
}

/* ----- main ----- */

/* ----- main ----- */
.btn03{
    /*影の基点とするためrelativeを指定*/
    position: relative;
    /*ボタンの形状*/
  text-decoration: none;
  display: inline-block;
  
    text-align: center;
    background: transparent;
  border-radius: 25px;
  border: solid 1px #333;
    outline: none;
    /*アニメーションの指定*/
    transition: all 0.2s ease;
}

/*hoverをした後のボタンの形状*/
.btn03:hover{
  border-color:transparent; 
}

/*ボタンの中のテキスト*/
.btn03 span {
  position: relative;
  z-index: 2;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
    /*テキストの形状*/
  display: block;
    padding: 10px 30px;
  background:#fff;
  border-radius: 25px;
  color:#333;
    /*アニメーションの指定*/
    transition: all 0.3s ease;
}

/*== 右下に押し込まれる（立体が平面に） */

/*影の設定*/
.pushright:before {
    content: "";
    /*絶対配置で影の位置を決める*/
    position: absolute;
  z-index: -1;
    top: 4px;
    left: 4px;
    /*影の形状*/
    width: 100%;
    height: 100%;
  border-radius: 25px;
    background-color: #333;
}

/*hoverの際にX・Y軸に4pxずらす*/
.pushright:hover span {
  background-color: #333;
  color: #fff;
  transform: translate(4px, 4px);
}



.titleImg {
	height: 250px; 
	background-image: url("../img/ramen_top2.jpg");  
	background-position:50%;
	background-size:cover;
	padding-top: 15px;
	margin-bottom: 30px;
}

.ramen_setumei{
	font-size: 18px;
	color: #fff;
	text-align:center;
	margin: 0 15px 30px;
}

.background{
	margin: 0 15px 30px;
    background-color: #fff;
	color: #1e0000;
    border-radius: 5px;
    padding: 15px;
	display: flex;
    flex-flow: column nowrap;
    align-items: center;
}

.housou {
	font-size: 14px;
}

.housou_time {
	font-size: 26px;
	font-weight: bold;
}
.housou_time small {
	font-size: 18px;
}
.nexttime {
	position:relative;
	width:90%;
	padding-top:56.25%;
	display: flex;
	justify-content: center;
	margin: auto;
	margin-bottom: 30px;
}

.nexttime iframe {
	position:absolute;
	top:0;
	left:0;
	width:100% !important;
	height:100% !important;
}



@media (min-width: 730px) {
	.background{
		max-width: 700px;
		margin: 0 auto 30px;
	}
.titleImg {
	height: 450px; 
}  
  
}

@media (min-width: 960px) {
	main {
		text-align: center;
	}
	.titleImg {
		margin-bottom: 50px;
		height: 500px; 
	}
	.ramen_setumei{
		font-size: 28px;
		margin-bottom: 50px;
	}	
	.background{
		width: 700px;
		margin: 0 auto 50px;
	}	
	.housou{
		font-size: 18px;
	}
	.housou_time{
		font-size: 36px;
	}
	.housou_time small {
		font-size: 24px;
	}
	.nexttime {
	position:relative;
	text-align: center;	
	width: 50%;
    padding-top: 25.25%;
	margin: auto;
	margin-bottom: 50px;
	}
	.nexttime iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
	}
	.reporter{
	 display: flex;	
     width: 40%;
     margin: auto .5rem;
	}
}


/* Twitter area */

#twitter-area {
	text-align: center;
	margin: 35px;	
}


@media (min-width: 960px) {
	#twitter-area a {
		width: 388px;
		height: 134px;
	}
}
.float1{
    color: #333;
    /*アニメーションの指定*/
}

/*hoverをしたらボックスに影がつく*/
.float1:hover {
  box-shadow: 0 7px 10px rgba(0, 0, 0, 0.3);
  border-color: transparent;
}


/* Ramen1 */
.videoList1 {
	width: 90%;
	margin: 0 auto 120px;
}

.videobox{
	width: 70%;
	margin: auto;
}

h2.ramen1 {
  display: inline-block;
  position: relative;
  height: 50px;/*リボンの高さ*/
  line-height: 50px;/*リボンの高さ*/
  text-align: center;
  padding: 0 30px;/*横の大きさ*/
  font-size: 18px;/*文字の大きさ*/
  background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);/*塗りつぶし色*/
  color: #140900;/*文字色*/
  box-sizing: border-box;
}

.ramen1:before, .ramen1:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ramen1:before {
  top: 0;
  left: 0;
  border-width: 25px 0px 25px 15px;
  border-color: transparent transparent transparent #b51818;
  border-style: solid;
}

.ramen1:after {
  top: 0;
  right: 0;
  border-width: 25px 15px 25px 0px;
  border-color: transparent #b51818 transparent transparent;
  border-style: solid;
}

@media (min-width: 960px) {
	
.videoList1 {
	width: 35%;
	margin: 0 auto 50px;
}	
	
h2.ramen1 {
  padding: 0 35px;/*横の大きさ*/
  font-size: 30px;/*文字の大きさ*/
}	
	
}
	

/* Ramen2 */
.videoList2 {
	width: 90%;
	margin: 0 auto 120px;
}

	h2.ramen2 {
  display: inline-block;
  position: relative;
  height: 50px;/*リボンの高さ*/
  line-height: 50px;/*リボンの高さ*/
  text-align: center;
  padding: 0 70px;/*横の大きさ*/
  font-size: 18px;/*文字の大きさ*/
  background: linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%);/*塗りつぶし色*/
  color: #140900;/*文字色*/
  box-sizing: border-box;
}

.ramen2:before, .ramen2:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ramen2:before {
  top: 0;
  left: 0;
  border-width: 25px 0px 25px 15px;
  border-color: transparent transparent transparent #b51818;
  border-style: solid;
}

.ramen2:after {
  top: 0;
  right: 0;
  border-width: 25px 15px 25px 0px;
  border-color: transparent #b51818 transparent transparent;
  border-style: solid;
}

@media (min-width: 960px) {
	
.videoList2 {
	width: 35%;
	margin: 0 auto 120px;
}	
	
h2.ramen2 {
  padding: 0 70px;/*横の大きさ*/
  font-size: 30px;/*文字の大きさ*/
}		
	
	
}
/* Ramen */
.videoList {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto 15px;
}

.videobox{
	width: 100%;
	margin: 0 0 50px;
}

.video {
	position:relative;
	width:100%;
	padding-top:56.25%;
	margin: 0 0 15px;
}

.video iframe {
	position:absolute;
	top:0;
	left:0;
	width:100% !important;
	height:100% !important;
}


.videoTitle {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
	margin: 0 0 15px;
	width: 100%;
}



.videoDetail {
	display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
	padding: 0;
	margin: 0 0 15px;
	text-align: left
}

.videoDetail p {
	margin: 0 10px 0 8px;
	font-size: 16px;
}
	
.videoDetail dl {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	gap:5px;
	margin: 0 auto 20px;
	font-size: 24px;
	}

.videoDetail dd {
	min-width: 100%;
	text-align: right;
	font-size: 18px;
	}
	

.videoDetail img {
	width: 45%;
	height: auto;
}

	h2.ramen {
	  color: #fff;
	  background-color:#140900;
	  padding: 10px;	
		}


	
	
.attention {
    font-size: 0.85em;
    text-align: center;
}

@media (min-width: 960px) {
	.videoList {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 90%;
		max-width: 960px;
		margin: 0 auto 45px;
	}

	.videobox{
		width: 47%;
		margin: 0 0 120px;
	}

	.video {
		position:relative;
		width:100%;
		padding-top:56.25%;
		margin: 0 0 15px;
	}

	.video iframe {
		position:absolute;
		top:0;
		left:0;
		width:100% !important;
		height:100% !important;
	}

	.videoTitle {
		display: flex;
		flex-direction: row;
		justify-content: space-evenly;
		align-items: center;
		flex-wrap: nowrap;
		width: 100%;
		margin: 0 0 15px;
	}

	.videoDetail {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: center;
		padding: 0;
		margin: 0 0 15px;
		gap: 10px;
		text-align: left
	}

.videoDetail p {
	margin: 0 10px 0 8px;
	font-size: 18px;
}	
	
	.videoDetail img {
	width: 50%;
	height: auto;
	}
	.attention {
    width: 100%;
    text-align: right;
	margin: 0 auto 45px;
	font-size: 18px;
}

}


/* cast */
.cast{
    text-align: center;
	color: #b51818;	
	background-color: #ffc127;	
	height: 30px;
	width: 55%;
    margin: auto;
}


.castbackground{
	text-align: center;
    background-color: #ffc127;	
	padding: 50px;
}

.back{
	position: relative;
	background-image: url("../img/back_line.jpg");	
	margin: 0 -50px 25px;
	background-repeat: repeat-x;
	background-position: center; 
}

.point{
	margin-right:10px;
	margin-left:10px;
}

.flexbox {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.line_left{
	text-align:left;
	vertical-align: middle;
}

.line_right{
	text-align:right;
	vertical-align: middle;
}

.castlist{
    max-width: 100%;
    height: auto;
}

.report{
	text-align: center;
	color: #b51818;	
	margin: 20px auto 35px;
}

.reporter{
	display: flex;
	justify-content: space-around;
	margin: 0 auto 50px;
	gap: 6px 20px;
}



/* Twitter */

.twitter {
	padding: 0 25px;
	margin-top: 25px;
}
.twitter h2 {
	text-align: center;
	font-weight: bold;
	margin-bottom: 25px; 
}

@media (min-width: 520px) {
	.titleImg {
		height: 800px; 
	}    
	.twitter {
		margin: 40px;
	}
	.twitter div {
		max-width: 690px;
		margin: 0 auto;
	}
.back{
	background-image: url("../img/back_line3.jpg");	
}	
.cast{
	width:10em;
	height: 30px;
    margin: auto;
    margin-bottom: 30px;
	}
.castlist2{
	margin: 0 auto 10px;
}	
.reporter{
	display: flex;
	min-width: 350px; 
	justify-content: space-around;
	width: 20%;
	margin: 0 auto 50px;
	gap: 6px 20px;
}	
	
}



/* ----- footer ----- */

.kabFooter {
    text-align:center;
	padding:25px 5%;
}
.kabFooter small {
    display: block;
	line-height: 1.5;
    font-size: 0.7em;
}
.kabfull {
	display:block;
	width:70%;
	margin:0 auto 10px;
}
@media (min-width: 960px) {
	footer {
		text-align: center;
	}
	.kabfull {
		width: 300px;
	}

}
