@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Noto+Sans:400,400italic,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* CSS Document */

body {
	font-family: 'Noto Sans','Noto Sans JP',  Meiryo, "MS PGothic", "Hiragino Kaku Gothic Pro", sans-serif;
	background:#fff url(../images/pc_premium_back.png) repeat-y fixed top center;
	background-size:cover;
	color:#444;
	-moz-background-size:cover;
}

a {
	/*text-decoration:underline;*/
	text-decoration: none;
	color: #f70;
	transition: 0.3s;
}

a:hover {
	opacity: 0.4;
	transition: 0.3s;
}

dd,p {
	color:#666;	
}

/* margin / padding
------------------------------------------ */
.mt0 { margin-top:0 !important;}
.mt5 { margin-top:5px !important; }
.mt10 { margin-top:10px !important; }
.mt15 { margin-top:15px !important; }
.mt20 { margin-top:20px !important; }
.mt30 { margin-top:30px !important; }
.mt40 { margin-top:40px !important; }
.mt50 { margin-top:50px !important; }
.mt1em { margin-top:1em !important; }
.mt2em { margin-top:2em !important; }

.mb0 { margin-bottom:0 !important; }
.mb5 { margin-bottom:5px !important; }
.mb10 { margin-bottom:10px !important; }
.mb15 { margin-bottom:15px !important; }
.mb20 { margin-bottom:20px !important; }
.mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; }
.mb50 { margin-bottom:50px !important; }

.ml0{ margin-left: 0 !important;}
.ml10{ margin-left: 10px !important;}
.ml1em{ margin-left: 1em !important;}
.ml1_5em{ margin-left: 1.5em !important;}
.ml2em{ margin-left: 2em !important;}
.ml2_5em{ margin-left: 2.5em !important;}
.ml3em{ margin-left: 3em !important;}
.ml3_5em{ margin-left: 3.5em !important;}
.ml4em{ margin-left: 4em !important;}
.ml4_5em{ margin-left: 4.5em !important;}
.ml5em{ margin-left: 5em !important;}
.ml5_5em{ margin-left: 5.5em !important;}
.ml6em{ margin-left: 6em !important;}
.ml6_5em{ margin-left: 6.5em !important;}

.mr10{ margin-right: 10px !important;}

@media screen and (min-width: 650px){	
  .br-pc { display:block !important;}
  .br-sp { display:none !important;}
}
@media screen and (max-width: 650px){	
  .br-pc { display:none !important;}
  .br-sp { display:block !important;}
}

@media screen and (min-width: 961px) {
	body{
		font-size:16px;
		line-height:16px;
	}
}


@media screen and (min-width: 751px) and (max-width: 960px) {
	body{
		font-size:14px;
		line-height:14px;
	}
}

@media screen and (max-width: 750px) {
	body{
		font-size:13px;
		line-height:13px;
	}
	
	body::before {
       background:#fff url(../images/sp_premium_back.png) repeat-y top center;
       background-size: 122% auto;
       display: block;
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       padding-bottom: 108px;
       content: "";
       z-index: -1;
   }
}


#contents{
	width:100%;
}


header{
	
}

header #header{

	width:100%;
	/*background:url(../images/starlight.jpg) repeat-y fixed top center;*/
	background-size:cover;
	/*max-height:850px;*/
	margin:0 auto;
}

header #header #headline{
	height: auto;
    width: 100%;
    color: #fff;
    font-size: 120%;
    text-align: center;
    vertical-align: middle;
    background: rgba(9,86,151,1);
    padding: 1% 0;
}

header #header #headline p{
	padding:0 2%;
	color:#fff;
}

header #header #keyvisual{
	position:relative;
	width:100%;
	height:auto;
}

header #header #keyvisual .logo img{
position: absolute;
    display: block;
    top: 3%;
    left: 2%;
    max-width: 100%;
    width: 13%;
    /* padding: 51.5px 549px; */
    /*zoom: 1;*/
}

header #header #keyvisual .title img {
    /* position: absolute; */
    display: block;
    max-width: 100%;
    width: 50%;
    /*height: auto;*/
    /* padding: 51.5px 549px; */
    /* zoom: 1; */
    margin: 0 auto;
    padding: 2% 1.8%;
}

header #header #keyvisual h1,
header #header #keyvisual p{
	display:none;	
}

header #header #report ul{
	width: 100%;
    /*height: 50px;*/
	/*margin: 0 auto 20px;*/
	text-align: center;
}

header #header #report ul a{
	color:<strong>#4D4397</strong>;
	text-decoration:none;
	/*display:block;*/
}

header #header #report p{
	/*background:#FFFFFF;*/
	padding:1%;
	margin:0 auto 20px;
	text-align:center;
	font-weight:bold;
	font-size:110%;
	color:#4D4397;
	overflow : hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

header #header #report ul a li{
    display: inline-block;
	background: #FFFFFF;
	/*-moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    /*-ms-border-radius: 20px;
	border-radius: 20px;*/
    /*float: left;*/
    width: 40%;
    text-align: center;
    font-weight: bold;
    font-size: 130%;
    /*height: 50px;*/
    padding: 15px 0;
    margin: 0 80px 20px 80px;
    color: #4D4397;
	line-height: 1.5em;
	vertical-align: top;
}

header #header #report ul a li p{
	font-weight: normal;
    font-size: 70%;
	text-align:left;
	padding:2% 2% 0 2%;
	margin:0;
	line-height: 1.5em;
}

header #header #report ul a li span.more{
	display: block;
    font-weight: normal;
    font-size: 60%;
    text-align: right;
    padding: 0 2% 0 0;
}

header #header #report ul a li span{
	font-weight: bold;
	font-size: 80%;
}

header #header #report ul a:visited{
	color:#FFFFFF;
	text-decoration:none;
	}
	
	
header #header #report ul a:hover li/*,
header #header #report ul a:hover li p*/{
	box-sizing: border-box;
	/*width:100%;*/
	/*color:#FFFFFF;*/
	text-decoration:none;
	/*background:#4D4397;*/
	background:rgba(255,255,255,0.7);
}
	
header #header #report ul a:active{
	color:#FFFFFF;
	text-decoration:none;
	}

header #header nav{
	margin-bottom:50px;
}

header #header nav #nav{
	max-width: 100%;
	width: 1920px;
	margin: 0 auto;
}

header #header nav #nav ul{
	display: flex;
	justify-content: center;
	/*width:100%;
	height:50px;*/
}

header #header nav #nav ul li {
	list-style-type: none;
	background-color: #fff;
	flex-grow: 1;
	margin-bottom: 50px;
}

header #header nav #nav ul li:hover{
	/*background:#4D4397;*/
	background: #f70;
	transition: 0.3s;
}

header #header nav #nav ul li a{
	display: block;
	text-decoration: none;
	/*color: #4D4397;*/
	color: #f70;
	font-weight: bold;
	text-align: center;
	padding: 15px 0;
	transition: 0.3s;
}

header #header nav #nav ul li a:hover{
	color: #fff;
	opacity: 1;
	transition: 0.3s;
}

header #header nav #sp_nav{
	display:none;
	position: relative;
	width: 100%;
	text-align: center;
	height: 60px;
	padding: 25px 0;
	/*color: #4D4397;*/
	color: #f70;
	background-color: #fff;
	cursor: pointer;
	/*width:100%;
	text-align:center;
	height:60px;
	padding:25px 0;
	color:#fff;
	background: rgba(9,86,151,0.8);
	cursor:pointer;*/
}

header #header nav #sp_nav p#nav_btn{
        position: absolute;
        top:0px;
        left:0px;
    }
    
header #header nav #sp_nav p#nav_btn a{
        display: block;
        width: 53px;
        height: 53px;
        padding-top: 20px;
    }

header #header nav #sp_nav span{
	font-size:200%;
	font-weight:bold;
}

@media screen and (max-width: 750px) {
	header #header #headline {
    padding: 2% 0;
    }
	
	header #header #keyvisual {
    margin: 0 auto;
    }	
	header #header #keyvisual .logo img{
    display:none;
    }

    header #header #keyvisual .title img{
    width: 100%;
	padding: 0%;
    }
	
	header #header #headline p {
    font-size: 100%;
    }
	
	header #header nav #sp_nav{
		display:block;
	}
	
	header #header nav #nav{
		display:none;	
	}
	
	header #header nav #nav ul{
		display: block;
		height: auto;
	}
	
	header #header nav #nav ul li{
		margin: 0;
    background-color: #fff;
    /*border-bottom: 1px solid #4D4397;*/
	border-bottom: 1px solid #f70;
	}
	
	header #header nav #nav ul li:hover{
	/*background:#4D4397;*/
	background:#f70;
}

	header #header nav #nav ul li a{
	display: block;
	text-decoration: none;
	/*color: #4D4397;*/
	color: #f70;
	font-weight: bold;
	text-align: center;
	padding: 20px 0;
	font-size: 150%;
}
	
	header #header nav #nav ul li a:hover{
		color: #fff;
	}
}

header #header nav #flow{
	max-width: 100%;
	width: 1920px;
	margin: 0 auto;
	position: fixed;
	display: none;
	top: 0px;
	z-index: 100;
}

header #header nav #flow ul {
    display: flex;
    justify-content: center;
}

header #header nav #flow ul li {
    /*background: rgba(77,67,151,0.8);*/
	background: rgba(255, 119, 0, 0.8);
	/*background: #4D4397;*/
    flex-grow: 1;
    /*height: 50px;*/
    /*float: left;
    width: 20%;
    text-align: center;
    height: 50px;
    padding: 15px 1%;
    color: #fff;
    background: rgba(0,46,79,0.8);*/
}

header #header nav #flow ul li:hover{
	background:rgba(255,255,255,0.4);
}

header #header nav #flow ul a {
	display: block;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 15px 1%;
}

header #header nav #flow ul li a:hover{
	/*color: #4D4397;*/
	color: #f70;
}

header #header nav #flow ul li span {
    display: inline-block;
	font-weight: bold;
}

article{
	clear:both;
	line-height:150%;
}

article #container{
	clear:both;
	width:100%;
	margin:0 auto;
}

article #container #content #block1{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block1 h2{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
}

article #container #content #block1 dl{
	padding:0 2%;	
}

article #container #content #block1 dt{
	clear:both;
	float:left;
	margin:0 20px 0 0;
	font-weight:bold;
	width:80px;
}

article #container #content #block1 dt:after{
	content:"：";	
}

article #container #content #block1 dd{
	float:left;
	margin:0 0 20px 0;
}

@media screen and (max-width: 750px) {	
	article #container #content #block1 dt{
		float:none;
	}
	
	article #container #content #block1 dd{
		float:none;
	}
}

article #container #content #block2{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block2 .block_inner{
	position:relative;
}

article #container #content #block2 #amanoImg{
	position:absolute;
	top:10%;
	right:5%;
	width:20%;
	max-width:200px;
	
}

article #container #content #block2 #amanoImg img{
	width:100%;	
}

article #container #content #block2 #amanoImg p{
	text-align:center;
}

article #container #content #block2 h2{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
}

article #container #content #block2 p{
	margin-bottom:20px;
}

article #container #content #block2 dl{
	padding:0 2%;
}

article #container #content #block2 dt{
    float: left;
    width: 116px;
    clear: left;
    text-align: right;
    /*overflow: hidden;
    text-overflow: ellipsis;*/
    white-space: nowrap;
    font-weight: bold;
}

article #container #content #block2 dt:after{
	content:"：";	
}

article #container #content #block2 dd{
	margin-left: 120px;
	margin-bottom:20px;
	/*padding-left: 4em;*/
    /*text-indent: -4em;*/
}

article #container #content #block2 dd .font_s {
	font-size: 85%;
}

article #container #content #block2 dd div.indent_3em {
    text-indent: 3em;
}

article #container #content #block2 dd div.indent_4em {
    text-indent: 4em;
}

article #container #content #block2 dd div.m3_5em {
	margin-left: 3.5em;
}
article #container #content #block2 dd div.m4em {
	margin-left: 4em;
}
article #container #content #block2 dd div.m0em {
	margin-left: 0em;
	text-indent: 0em;
}
article #container #content #block2 dd div.m-4em {
	margin-left: -4em;
	text-indent: 0em;
}
article #container #content #block2 dd span.title {
    font-size: 115%;
    font-weight: bold;
	text-indent: 2.6em;
    /*color: #30ade2;*/
	line-height: 1.6em;
}
article #container #content #block2 p.section {
    font-size: 115%;
    font-weight: bold;
    color: #444;
}


/*article #container #content #block2 dd span.title br{
	display: none;
}*/

article #container #content #block2 dd span.title span{
	display: inline-block;
	font-weight: bold;
}
article #container #content #block2 dd span.video {
    padding: 1px 8px;
    font-size: 80%;
    color: #fff;
    background: #095697;
    /*margin: -4px 0 0 0;
    white-space: nowrap;
    display: inline-block;
    vertical-align: middle;*/
}

article #container #content #block2 span.affiliation{
    margin: 0 0 0 5em;
    display: inline-block;
}
article #container #content #block2 span.aff{
    margin: 0 0 0 3em;
    display: inline-block;
}
article #container #content #block3{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block3 .block_inner{
	position:relative;
}

article #container #content #block3 h2 {
    font-size: 130%;
    font-weight: bold;
    margin-bottom: 20px;
}

article #container #content #block3 .guest_box {
    margin: 40px 0 40px 0;
    /* padding: 5px; */
    overflow: hidden;
    clear: both;
}

article #container #content #block3 div.guest_prof {
    max-width: 400px;
    width: 100%;
    /* overflow: hidden; */
    _zoom: 1;
    float: left;
    /*border-right: 1px solid #30ade2;
    padding-bottom: 10000px;
    margin-bottom: -10000px;*/
}

article #container #content #block3 div.guest_text {
    max-width: 800px;
    width: 100%;
    float: right;
}

article #container #content #block3 .guest_name {
	font-size: 130%;
	font-weight: bold;
	margin-bottom: 20px;
}

article #container #content #block4{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block4 title{
	display: table-cell;
    vertical-align: middle;
}

article #container #content #block4 h2 {
    font-size: 130%;
    font-weight: bold;
    margin: 0 10px 20px 0;
	display:inline-block;
}

article #container #content #block4 div.free {
	font-size: 90%;
    border: 2px solid #F00;
    color: #f00;
    padding: 3px 10px;
    margin-bottom: 20px;
    display: inline-block;
}

article #container #content #block4 a.formbtn {
    border: 2px solid #23b608;
    color: #23b608;
	background-color: #fff;
    display: inline-block;
	width: 100%;
	text-align: center;
    font-weight: bold;
    font-size: 110%;
	padding: 10px 0;
	margin-bottom: 20px;
    /*margin: 0 80px 20px 80px;*/
}

article #container #content #block4 a.formbtn:hover {
	opacity: 0.4;
}

article #container #content #block4 p{
	padding:0 2%;
	margin-bottom:20px;
}

article #container #content #block4 dl{
	padding:0 2%;
}

article #container #content #block4 dt{
	clear:both;
	float:left;
	font-weight:bold;
	width:200px;
}

article #container #content #block4 dd{
	float:left;
	margin-bottom:20px;
}

article #container #content #block4 h3{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
}

article #container #content #block4 span.notes,
#block5 span.notes{
	display: inline-block;
	padding-left: 1em;
	text-indent: -0.8em;
}

article #container #content #block4 .block_inner span.red{
	color:#F00;
	font-weight:bold;
}

article #container #content #block4 .block_inner span.s_red{
	font-size:80%;
	color:#F00;
}

article #container #content #block4 .block_inner span.indent {
    margin: 0 3em;
}

article #container #content #block4 #formWrap {
	max-width:640px;
	width:100%;
	/*margin:0 auto;*/
	padding: 0 0 0 2%;
	color:#555;
	line-height:120%;
	font-size:90%;
}
article #container #content #block4 table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
article #container #content #block4 table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
article #container #content #block4 table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}

article #container #content #block4 p.tfcfriend{
	margin:10px 0 0 0;
}

article #container #content #block4 p.formButton{
	padding:0 0;
	margin:10px 0 20px;
}

article #container #content #block5{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block5 h2{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
}

article #container #content #block5 h3{
	font-size:120%;
	font-weight:bold;
	/*margin-bottom:20px;*/
}

article #container #content #block5 h4{
	font-size:110%;
	font-weight:bold;
}

article #container #content #block5 p{
	padding:0 2%;
	margin-bottom:20px;
}

article #container #content #block5 p.address{
	padding:0;
}

article #container #content #block5 ul{
	 display:table;
	 table-layout: fixed;
	 border-spacing: 20px 0;
     width:100%;
}

article #container #content #block5 ul li{
	 display:table-cell;
	 vertical-align:middle;
     text-align:center;
}

article #container #content #block5 ul li.iframe{
	 position: relative;
     padding-top: 40%;
     height: 0;
     overflow: hidden;
}

article #container #content #block5 ul li.iframe iframe{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

article #container #content #block5 ul li img{
	width:100%;
    max-width: 100%;
    height: auto;
}

article #container #content #block5 h4 i.fa-solid{
	font-size: 76%;
}

article #container #content #block6{
	width:100%;
	background:#fff;
	padding:2%;
	margin:0 auto 200px;
}

article #container #content #block6 h2{
	font-size:130%;
	font-weight:bold;
	margin-bottom:20px;
}

article #container #content #block6 p{
	padding:0 2%;
	margin-bottom:20px;
}

article #container #content .block_inner{ 
	max-width:820px;
	width:100%;
	margin:0 auto;
}

/* pagetop
-------------------------------------------------- */
.pagetop {
/*display: none;*/
position: fixed;
bottom: 30px;
right: 15px;
}
.pagetop a {
display: block;
z-index: 999;
padding: 5px 5px 6px 5px;
border-radius: 30px;
width: 35px;
height: 35px;
background-color: #f70;
color: #fff;
font-size: 20px;
text-decoration: none;
text-align: center;
/*filter: alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;*/
}
.pagetop a:hover {
display: block;
/*background-color: #35327F;*/
text-align: center;
color: #fff;
font-size: 20px;
text-decoration: none;
opacity: 0.5;
/*filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;*/
}
@media screen and (max-width: 960px) {
 .pagetop a{
 padding: 7px 5px 6px 5px;
 }
}
/*--------------------------------------------------*/
footer{
	line-height:150%;
}

footer #footer{
	position:relative;
	background:#fff;
	width:100%;
}

footer #logo{
	display: flex;
	align-items: center;
	justify-content: space-around;
	/*text-align:center;
	background:rgba(255,255,255,1);*/
}

footer #logo .flex-item{
	flex: 0 1 auto;
}

footer #logo .flex-item-separated{
		flex: 1 0 0%;
	}

footer #logo img{
width:auto;
height:auto;
max-width:100%;
max-height:100%;
	flex-shrink: 0;
}

footer #logo div{
	display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    height: 5em;
    padding: 1%;
}

footer p{
font-size: 120%;
	text-align: center;
	/*color: #4D4397;*/
	color: #f70;
	font-weight: bold;
}

/*footer #footer #footerInner{
	position:relative;
	max-width:1200px;
	width:96%;
	margin:0 auto;
	padding:2%;*/
}

/*footer #footer #footerInner #pagetop{
	position:absolute;
	top:-20px;
	right:10px;
	cursor:pointer;*/
}

footer #footer #footerInner h3{
	font-size:110%;
	font-weight:bold;
	margin-bottom:10px;
}

footer #footer #footerInner p{
	padding:0 2%;
	margin-bottom:20px;
}

footer #back{
	width:100%;
	margin:0 auto;
	background:rgba(255,255,255,0.1);
}

footer #back:hover{
	background:rgba(255,255,255,0.7);
}

footer #back a{
	display: block;
	color:#fff;
	/*font-weight: bold;*/
	/*font-size:85%;*/
	text-align:center;
	padding:1%;
	text-decoration: none;
}

footer #back a:hover{
	/*color: #4D4397;*/
	color: #f70;
}

footer #copyright{
	width:100%;
	margin:0 auto;
	padding:2%;
	color:#fff;
	font-size:85%;
	text-align:center;
	/*background: #4D4397;*/
	background: #f70;
}

@media screen and (max-width: 750px) {	
	header #header #report ul a li {
    width: 80%;
    margin: 0 0 20px 0;
   }
	
    article #container #content #block1,
    article #container #content #block2,
	article #container #content #block4,
	article #container #content #block5,
	article #container #content #block6 {
    margin: 0 auto 100px;
    }
	
	article #container #content .block_inner {
    margin: 10px auto 0;
    }
	
    article #container #content #block2 dt{
    float: none;
    width: 80px;
	text-align: left !important;
	margin-bottom: 4px;
    }
	
	article #container #content #block2 dd {
    margin-left: 0;
    }
	
	article #container #content #block2 dd span.title br{
	display: block;
}
	article #container #content #block3 div.guest_prof {
    max-width: 100%;
    clear: both;
    text-align: center;
		float: none;
}
	
	article #container #content #block3 div.guest_text {
    max-width: 750px;
    width: 100%;
    margin: 20px 0 0 0;
}
	
	article #container #content #block4 #formWrap {
    width: 100%;
    margin: 0 0;
    }
	
	article #container #content #block4 table.formTable td, table.formTable th {
    width:100%;
	display:block;
    }
	
	article #container #content #block4 table.formTable th {
    width: 100%;
    }
	
	article #container #content #block5 p.address {
    padding: 0 8%;
    }
	
    article #container #content #block5 ul {
    display: block;
    }
	
	article #container #content #block5 ul li {
	display: block;
    margin: 0 0 20px 0;
    }
	
	article #container #content #block5 ul li.iframe{
    padding-top: 75%;
    }
	
	footer #footer #footerInner{
	padding: 5% 0;
    }
	
	footer #footer #footerInner #pagetop img{
		width:70%;
	}
	
	footer #logo{
	flex-wrap: wrap;
	justify-content: center;
	}
	
	footer #logo div {
    padding: 1.6%;
}
}

header #header #report ul a li span.more_movie{
	display: block;
    font-weight: normal;
    font-size: 60%;
    text-align: right;
    margin-top:-26px;
    padding: 0 2% 0 0;
}






@media print {
  body {
    width: 1200px;
    transform: scale(0.8);
    -moz-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform-origin: 0 0;
  }
