@charset "UTF-8";

h2 {
	font-size: 20px;
	color: #FFF;
	font-weight: 400;
	line-height: 1.3em;
	margin: 0 0 2em;
	padding: 0.5em 1em;
    border-radius: 8px;
	background: #0099ff;
	box-shadow:0 -20px 20px rgba(0,0,0,.2) inset;
}
h3 {
	font-size: 18px;
	color: #09f;
	line-height: 1.3em;
	border-bottom: 3px solid #09f;
	padding: 0 0.3em 0.3em;
	margin: 0 0 1.5em;
}
h4 {
	font-size: 16px;
	font-size: 18px;
	color: #333;
	line-height: 1.5;
	margin: 0 0 5px;
}
#contents .cbox {
	margin-bottom:45px;
}
#contents p {
	font-size:16px;
	line-height:2em;
	margin-bottom:1em;
}
#contents p .red {
	color:#F00;
	line-height:inherit;
}
#contents p.att {
	font-size:14px;
}
#contents a {
	font-size:16px;
	color:#F60;
}
#contents .svg-inline--fa.fa-file-pdf {
	color:#c00;
	font-size:1.5em;
	margin-left:0.3em;
}


/**table**/
#contents .twrap {
	overflow-x:auto;
}
#contents table {
	min-width:640px;
}
#contents table th,
#contents table td {
	font-size:13px;
	line-height:1.5em;
	padding:1em;
}
#contents table th {
	background-color:#efefef;
}
#contents table.tousenkakuritsu td:not(:first-child) {
	text-align:right;
}
#contents table.problem th {
	text-align:center;
	background-color:#efefef;
}
#contents table.problem td {
	text-align:left;
}
#contents table.problem td:nth-child(odd) {
	text-align:center;
}
#contents table.problem2 td:nth-child(odd) {
	text-align:center;
}

/**votinglate**/
#vlink {
	margin-bottom:30px;
}
#vlink li {
	margin-bottom:0.3em;
}
#vlink li a {
	font-size:16px;
	line-height:1.3em;
}

/**young**/
#young1 .cbox {
	letter-spacing:-0.4em;
}
#young1 .cbox > div {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
}
#young1 .cbox > div.img {
	width:240px;
	margin-right:30px;
}
#young1 .cbox > div.txt {
	width:calc(100% - 240px - 31px);
}
#young2 table th,
#young2 table td {
	font-size:14px;
}

/**local**/

#smenu {
	letter-spacing:-0.4em;
	margin:0 auto 30px;
	border-bottom:3px solid #06f;
}
#smenu li {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
}
#smenu li a {
	display:block;
	text-align:center;
	line-height:1.3em;
	padding:0.5em;
	box-sizing:border-box;
	background:#efefef;
	color:#06f;
	text-decoration:none;
	border:1px solid #ccc;
	border-bottom:none;
	border-radius:4px 4px 0 0;
	margin:0 2px;
	font-size:16px;
}
#smenu.current li:first-child a,
#smenu li.current a,
#smenu li a:hover {
	background-color:#06f;
	color:#FFF;
}

#poster ul,
#goods ul,
#meisuikun ul {
	letter-spacing:-0.4em;
	margin:0 -15px;
}
#poster ul li,
#goods ul li,
#meisuikun ul li {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
	width:calc(25% - 31px);
	margin:0 15px 30px;
}
#contents #poster ul li h3,
#contents #goods ul li h3,
#contents #meisuikun ul li h3 {
 	color:#000;
 	padding:0;
 	margin-bottom:1em;
 	border:none;
 	font-size:16px;
 	text-align:center;
}

/**movie**/

#main.movie #contents ul:not(#smenu) {
	letter-spacing:-0.4em;
	margin:0 -15px;
}
#main.movie #contents ul:not(#smenu) li {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
	width:calc((100% / 3) - 31px);
	margin:0 15px 30px;
}
#main.movie #contents ul li h3 {
 	color:#000;
 	padding:0;
 	margin-bottom:1em;
 	border:none;
 	font-size:16px;
 	text-align:left;
}
#main.movie #contents ul li .movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom:30px;
}
#main.movie #contents ul li .movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/**link**/

#main.link #contents ul {
	letter-spacing:-0.4em;
}
#main.link #contents ul li {
	display:inline-block;
	letter-spacing:normal;
	vertical-align:top;
	width:calc(20% - 31px);
	margin:0 15px 30px;
}
#main.link #contents ul li a {
	text-decoration:none;
}
#main.link #contents ul li a .svg-inline--fa {
	margin-left:0.4em;
}


@media screen and (max-width:640px){

h2 {
	font-size: 18px;
	margin: 0 0 1.5em;
	padding: 0.5em;
}
h3 {
	font-size: 16px;
}
h4 {
	font-size: 16px;
}
#contents .cbox {
	margin-bottom:30px;
}
#contents p {
	font-size:14px;
	line-height:1.5em;
	margin-bottom:0.5em;
}
#contents p .red {
	color:#F00;
	line-height:inherit;
}
#contents p.att {
	font-size:12px;
}
#contents a {
	font-size:14px;
}


/**table**/
#contents table th,
#contents table td {
	font-size:12px;
	line-height:1.3em;
	padding:0.5em;
}

/**votinglate**/
#vlink {
	margin-bottom:20px;
}
#vlink li a {
	font-size:12px;
}

/**young**/
#young1 .cbox {
}
#young1 .cbox > div.img {
	width:120px;
	margin-right:15px;
}
#young1 .cbox > div.txt {
	width:calc(100% - 120px - 16px);
}
#young2 table th,
#young2 table td {
	font-size:12px;
}

/**local**/
#smenu {
	border-bottom:none !important;
	text-align:center;
}
#smenu li {
	width:49.5%;
}
#smenu li a {
	font-size:14px;
	margin:0;
	border-radius:0;
}
#smenu li:nth-last-child(2n) a {
	border-right:none;
}
#smenu li:nth-last-child(-n+2) a {
	border-bottom:1px solid #ccc;
}

#poster ul,
#goods ul,
#meisuikun ul {
	margin:0 -5px;
	text-align:center;
}
#poster ul li,
#goods ul li,
#meisuikun ul li {
	width:calc(33.3% - 11px);
	margin:0 5px 20px;
	min-width:140px;
}
#contents #poster ul li h3,
#contents #goods ul li h3,
#contents #meisuikun ul li h3 {
 	margin-bottom:0.5em;
 	font-size:14px;
}

/**movie**/
#main.movie #contents ul {
	margin:0 -10px;
}
#main.movie #contents ul li {
	width:calc((100% / 2) - 21px);
	margin:0 10px 15px;
}
#main.movie #contents ul li h3 {
 	margin-bottom:0.5em;
 	font-size:14px;
}
#main.movie #contents ul li .movie {
  margin-bottom:15px;
}

/**link**/
#main.link #contents ul li {
	width:10em;
	margin:0 0 1em;
}
#main.link #contents ul li a {
	font-size:13px;
}
	
}