body {
background: #fff;
color: #000;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
font-weight: 400;
width: 100%;
height:100%;
font-size: 14px;
line-height:2em;
margin: 0px;
letter-spacing: 0;
}

#wrap{
width: 100%;
position: relative;
}

.pc{ display: block;}
.sp{ display: none;}
.fontS{ font-size: 80%; letter-spacing: 0.1em;}

[data-ruby] {
    position: relative;
}
[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
	width: 200%;
	text-align: center;
    top: -2.5em;
    left: -50%;
    right: 0;
    margin: 0 auto;
    font-size: 0.5em;
	letter-spacing: 0;
	font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 400;
}

.fontS{ font-size: 80%;}
.fontB{ font-weight: 700;}
.efblock{ width: 100%;}

.txtRed{ color: #B40003;}

.no-wrap { display: inline-block;}
.no-space{ letter-spacing: -0.3em;}

.linkLabel{
margin-top:-60px;
padding-top:60px;
text-indent: -99999px;
line-height: 0;
position:absolute;
}

.newsLabel{
padding-top: 80px;
margin-top: -80px;
text-indent: -999999px;
overflow: hidden;
}

.warningfontL{
padding-left: 1em;
text-indent: -1em;
}

.warningfontS{
font-size: 80%;
line-height: 1.5em;
padding-left: 1em;
text-indent: -1em;
}


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

header

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

header{
width: 100%;
position: relative;
overflow:hidden; 
}

header:before{
content:"";
display: block;
padding-top: 25%;
}


#logoS{
background: url("../images/logoS.png") no-repeat center;
background-size: contain;
width: 50%; height: 85%;
position: absolute;
top: 3%; left: 25%;
z-index: 1;
}

#logoS a{ width: 100%; height: 100%; display: block;}

#logoS2{
background: url("../images/logoS.png") no-repeat center;
background-size: contain;
width: 300px; height: 204px;
margin: 0 auto 50px;
}

#logoS2 a{ width: 100%; height: 100%; display: block;}


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

main

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

#content{
width: 85%;
max-width: 1100px;
line-height: 0;
position: relative;
margin:60px auto 3vw;
}

#contentM{
width: 100%;
margin: 2vw auto 4vw;
text-align: center;
font-size: 3.5vw;
line-height: 1em;
font-weight: 300;
color: #bf1920;
}

.titleMs{ font-size: 50%; letter-spacing: 0.2em;}


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

interview

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

#interview_content{
width: 100%;
position: relative;
padding: 60px 0 0;
}

#interview_main{
width: 85%;
max-width: 1100px;
line-height: 0;
position: relative;
margin:60px auto 80px;
}

#interview_h{
background: url("../images/interview/header_pc.jpg") no-repeat;
background-size: cover;
width: 100%;
position: relative;
overflow:hidden; 
}

#interview_h:before{
content:"";
display: block;
padding-top: 26.66%;
}


.interview_m{
width: 100%;
font-size: 34px;
line-height: 2em;
letter-spacing: 0.2px;
margin-bottom: 0.3em;
color: #bb1d28;
font-weight: 600;
border-bottom: 1px solid #bb1d28;
}

.interview_txt{
width: 100%;
line-height: 2em;
letter-spacing: 0.2px;
}

.interview_img{
width: 100%;
padding: 40px 0;
pointer-events: none;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
}

.interview_img img{ width: 49%;}


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

news

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

.newsKijiAll{
width: 100%;
padding: 1vw 0 2vw;
margin:0 auto;
position: relative;
}

.newsKijidate{
width: 100%;
font-size:300%;
line-height: 1.2em;
color: #bf1920;
}

.newsKijiM{
width:100%;
font-size: 180%;
font-weight: 600;
line-height:1.4em;
padding: 0.6vw 0;
border-top: 1px solid #c39600;
border-bottom: 1px solid #c39600;
}

.newsKijitxt{
width:100%;
padding: 1vw 0;
font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
line-height: 2em;
word-break: break-all;
text-align: justify;
text-justify: inter-ideograph;
}

.newsKijitxt a{
text-decoration: underline;
}

.img100{ width: 100%;}
.img75{ width: 75%;}
.img60{ width: 60%;}
.img50{ width: 50%;}
.img30{ width: 30%;}
.no-click{ pointer-events: none;}
.img30right{
width: 40%;
margin: 1em 0 2em 2em;
float: right;
}

/*

comment area

*/

.comBox{
width: 100%;
margin : 0;
line-height : 1.8em;
border: 3px double #716865;
box-sizing: border-box;
z-index: 2;
}

.comNM{
font-weight: 500;
font-style: normal;
font-size: 120%;
line-height: 1.7em;
}

.comBoxTxt{
width: 95%;
padding: 1.5em 0 1.5em;
margin: 0 auto;
}


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

media

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


#medianav {
width: 100%;
margin: 60px auto 60px;
padding: 0;
overflow: hidden;
position: relative;
}

#medianav ul {
width: 100%;
list-style: none outside none;
float: left;
margin: 0 0 0 0;
padding: 0;
position: relative;
left: 50%;
}

#medianav ul li {
background: #bf1920;
background: linear-gradient(-3deg, #bf1920 50%, #cf2028 51%);
width:32.9%;
height: 40px;
font-size:14px;
color: #fff;
text-align: center;
line-height: 40px;
float: left;
position: relative;
left: -50%;
margin: 0 0.2%;
font-weight: 800;
}

#medianav ul li.line4 {
background: #bf1920;
background: linear-gradient(-3deg, #bf1920 50%, #cf2028 51%);
width:24.6%;
height: 40px;
font-size:14px;
color: #fff;
text-align: center;
line-height: 40px;
float: left;
position: relative;
left: -50%;
margin: 0 0.2%;
font-weight: 800;
}

#medianav ul li.navoff {
background: #bf1920;
background: linear-gradient(-3deg, #bf1920 50%, #cf2028 51%);
width:24.6%;
height: 40px;
font-size:14px;
color: #fff;
text-align: center;
line-height: 40px;
float: left;
position: relative;
left: -50%;
margin: 0 0.2%;
border-radius: 5px;
opacity: 0.5;
font-weight: 800;
}

#medianav ul li a{ width: 100%; height: 100%; display: block; color: #fff;}
#medianav ul li a:hover{ background:#ff0000; }


.mediaKijiM{
width:100%;
font-size: 22px;
line-height:1.6em;
padding: 0.8vw 0;
margin: 0 0 10px;
border-top: 3px double #cba218;
border-bottom: 3px double #cba218;
font-weight: 800;
text-align: center;
}

.mediaKijitxt{
font-size:12px;
width:100%;
padding:10px 0 15px;
line-height:2em;
word-break: break-all;
text-align: justify;
text-justify: inter-ideograph;
font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

.tokubanM{
font-size: 140%;
font-weight: 600;
color: #FF5300;
letter-spacing: 0;
}

.tbList{
width:100%;
border-collapse: collapse;
border-spacing: 0px;
border:0;
}

.tbList th{
padding: 2px;
text-align: center;
font-size:12px;
color: #fff;
background-color: #cba218;
border-bottom: 1px solid #fff;
border-right: 1px solid #fff;
line-height:2em;
}

.tbList td{
padding: 5px 0;
font-size:12px;
border-bottom: 1px dotted #cba218;
border-right: 1px solid #fff;
box-sizing: border-box;
line-height:1.5em;
text-align:center;
}


.tbList td.area01a{width:15%; text-align:center;}
.tbList td.area02a{width:30%; text-align:center;}
.tbList td.area03a{width:55%; text-align:center;}

.tbList td.area01b{width:15%; text-align:center;}
.tbList td.area02b{width:30%; text-align:center;}
.tbList td.area03b{width:55%; text-align:center;}

.tbList td.area01c{width:15%; text-align:center;}
.tbList td.area02c{width:20%; text-align:center;}
.tbList td.area03c{width:30%; text-align:center;}
.tbList td.area03c{width:35%; text-align:center;}

.tbList td.area01d{width:40%; text-align:center;}
.tbList td.area02d{width:60%; text-align:center;}

.tbList td.area01e{width:40%; text-align:center;}
.tbList td.area02e{width:25%; text-align:center;}
.tbList td.area03e{width:35%; text-align:center;}

.tbList td.area01f{width:30%; text-align:center;}
.tbList td.area02f{width:30%; text-align:center;}
.tbList td.area03f{width:40%; text-align:center;}


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

keywords

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

#content_kw{
width: 100%;
line-height: 0;
position: relative;
margin:60px auto 3vw;
}

#kw_m{
width: 80%;
text-align: center;
font-size: 1.2vw;
line-height: 1.6em;
margin: 2em auto 2.5em;
}

#kw_navAll{
width: 70%;
display: flex;
flex-wrap: wrap;
margin: 0 auto 3.5em;
justify-content:space-between;
}

.kw_nav{
background: #a51f26;
width: 49.5%; height: 2.2em;
font-size: 1.4vw;
line-height: 2.2em;
text-align: center;
color: #fff;
}

.kw_nav a{
width: 100%; height: 100%;
display: block;
color: #fff;
}

#kw_enmokuAll{
background: #000;
width: 100%;
padding: 2em 0 4em;
border-top: 1px solid #fff;
box-sizing: border-box;
}

.kw_enmokuM{
width: 70%;
font-size: 2vw;
line-height: 2em;
font-weight: 600;
color: #c6ad4d;
margin: 0 auto;
text-align: center;
}

.kw_enmokuLine{
background: linear-gradient(to left, #000 1%, #c6ad4d 20%, #c6ad4d 80%, #000 100%);
width: 70%; height: 3px;
margin: 0 auto;
}

#kw_mameAll{
background: #fff;
width: 100%;
padding: 2em 0 2.5em;
}

.kw_mameM{
width: 70%;
font-size: 2vw;
line-height: 2em;
font-weight: 600;
color: #a51f26;
margin: 0 auto;
text-align: center;
}

.kw_mameLine{
background: linear-gradient(to left, #fff 1%, #a51f26 20%, #a51f26 80%, #fff 100%);
width: 70%; height: 3px;
margin: 0 auto;
}

.kw_btnAll{
width: 70%; min-width: 540px;
margin: 2em auto 0;
display: flex;
flex-wrap: wrap;
justify-content:space-between;
}

.kw_btn{
width: 33%;
margin: 0 0 0.5%;
transition: all 0.3s ease;
cursor: pointer;
}

.kw_btn:hover{ opacity: 0.7;}

.kw_btnWarning_A{
width: 70%;
margin: 1em auto 0;
text-align: right;
font-size: 0.9vw;
color: #fff;
}

.kw_btnWarning_B{
width: 70%;
margin: 1em auto 0;
text-align: right;
font-size: 0.9vw;
}

#kwA01all,#kwA02all,#kwA03all,#kwA04all,#kwA05all,#kwA06all,#kwB01all,#kwB02all,#kwB03all,#kwB04all,#kwB05all,#kwB06all,#kwB07all,#kwB08all,#kwB09all{
width: 100%; height: 100%;
position: fixed;
top: 0; left: 0;
z-index: 70;
display: none;
}

.kw_contBg_A{
width: 100%; height: 100%;
position: absolute;
top: 0; left: 0;
z-index: 1;
background: #fff;
opacity: 0.9;
}

.kw_contBg_B{
width: 100%; height: 100%;
position: absolute;
top: 0; left: 0;
z-index: 1;
background: #000;
opacity: 0.9;
}

.kw_contA{
background: #000 url("../images/keywords/bgA_pc.jpg") no-repeat;
background-size: cover;
width: 92%;
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%,-50%);
z-index: 10;
}

.kw_contB{
background: #fff url("../images/keywords/bgB_pc.jpg") no-repeat;
background-size: cover;
width: 92%;
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%,-50%);
z-index: 10;
}

.kw_contA:before,.kw_contB:before{
content:"";
display: block;
padding-top: 50%;
}

.kwCloseBtn{
background: url("../images/cast/btn_close.png") no-repeat;
background-size: contain;
width: 3.06%; height: 6.13%;
position: absolute;
top: 0; right: 0;
z-index: 5;
cursor: pointer;
transition: all 0.3s ease;
}

.kwCloseBtn:hover{
opacity: 0.7;
}

.kw_img{
width: 40%; height: 80%;
position: absolute;
top: 10%; left: 4.76%;
z-index: 2;
pointer-events: none;
}

.kw_txtAll{
width: 46%;
position: absolute;
top: 50%; transform: translateY(-50%);
left: 49%; z-index: 2;
}

.kw_txtMM_A{
width: 100%;
line-height: 1.8em;
padding: 0.6em 0;
border-top: 1px solid #c6ad4d;
border-bottom: 1px solid #c6ad4d;
font-size: 2vw;
color: #c6ad4d;
}

.kw_txtMM_B{
width: 100%;
line-height: 1.8em;
padding: 0.6em 0;
border-top: 1px solid #a51f26;
border-bottom: 1px solid #a51f26;
font-size: 2vw;
color: #a51f26;
}

.kw_txt_A{
width: 100%;
padding-top: 1em;
font-size: 1.1vw;
line-height: 1.7em;
color: #fff;
}

.kw_txt_B{
width: 100%;
padding-top: 1em;
font-size: 1.1vw;
line-height: 1.7em;
color: #000;
}


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

footer

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

footer{
background: linear-gradient(to right, #eee9de, #c3baa7);
width: 100%;
padding: 2em 0 8em;
font-size: 10px; 
letter-spacing: 1px;
line-height: 1.5em;
text-align: center;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}


#copyright{
background-size: contain;
width: 100%;
margin: 0 auto 20px;
font-size: 10px;
line-height: 1.6em;
text-align: center;
letter-spacing: 1px;
}

#privacy{
background-size: contain;
width: 100%;
margin: 0 auto;
font-size: 10px;
line-height: 2em;
text-align: center;
letter-spacing: 1px;
}

#privacy a{ color: #000;}

#btnpagetop{
background: #000;
width: 60px; height: 60px;
position: fixed;
bottom: 0; right: 0;
z-index: 20;
line-height: 60px;
text-align: center;
font-size: 18px;
}

#btnpagetop a{
width: 100%; height: 100%;
display: block;
color: #b6181e;
}