@charset utf-8;

/*reset*/
html {height: 100%;}
body {height: 100%; margin: 0 auto;}
main {display: block;}
h1, h2, h3, p ,ul ,ol, dl, table {margin-top: 0;}
h2, h3, h4, h5 {clear: both;}
address {font-style: normal;}
img {display: block; vertical-align: middle;border: 0; max-width: 100%; height: auto;}
table {border-collapse: collapse;width: 100%;}
ul {padding-left: 1em;}
ol {padding-left: 2em;}
ul li {list-style-type: none;}
ol li {list-style-type:decimal;}
.address {font-style: normal;}
.clearfix:after {clear: both; content: ' '; display: block; line-height: 0; visibility: hidden; width: 0;height: 0;}
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
/*base*/
html {
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic Pro", "メイリオ", dMeiryo, sans-serif;
	line-height: 1.8;
	color: #231815;
	font-size: 100%;
}
header, main, aside, footer, article {
	margin: auto;
}
.wrapper {
	padding: 1.25em;
}
.wrapper.inner {
	padding: 1em;
	background: #fff;
	border-radius: .5em;
	margin: 1em .5em;
}
header {
	background: center bottom repeat-x url("images/bg-header.png"),
				center bottom repeat-x url("images/bg-header-gradation.png");
	background-size: 50%;
	border-top: #cc0022 6px solid;
	padding-bottom: 3em;
}
header .header-title {
	position: relative;
}
main {
	position: relative;
	background: #F6F3E9;
}
main .wrapper {
	background: #fff;
	box-shadow: 6px 0 4px -4px rgba(90, 85, 69, .2), -6px 0 4px -4px rgba(90, 85, 69, .2);
}
aside {
	background: #F6F3E9;
}
footer {
	background: #cc0022;
	padding: 1em 0;
}
article {
	padding: 0;
}
address {
	font-size: .5em;
	text-align: center;
	color: #fff;
}
footer address a {
	font-size: .5em;
}
p {
	text-align: justify;
}
/*header*/
header h1 {
	position: absolute;
	top: 0;
	z-index: 100;
	width: 100%;
	background: rgba(255, 255, 255, .8);
	padding: .5em;
	border: none;
}
header h1 {
	font-family: "Mplus 1p";
	font-size: 1.65em;
	line-height: 1.4;
	margin: 0 0 .5em;
	text-align: center;
}
header h1 span.copy-shoulder,
header h1 span.copy-sub {
	display: block;
	font-size: .65em
}
.excerpt {
	margin-bottom: 1em;
}
header .excerpt p {
	font-size: .875em;
	margin-bottom: .25em;
}
h1 {
	font-size: 1.25em;
	padding: .25em .5em;
	border-left: 10px solid #c8dd04;
	background: #eae3cc;
	line-height: 1.4;
}
h2 {
	font-size: 1.35em;
	line-height: 1.6;
	padding: 0 .5em;
	margin: .5em 0;
}
main h2 {
	display: inline-block;
}
h3 {
	font-size: 1.25;
	border-bottom: 2px solid #333;
	padding: .25em 0;
	margin: 0 0 .75em;
}

/*table*/
td, th {
	border-top: 2px solid #333;
	padding: 0 .5em;
	margin: .25em;
	font-size: .875em;
	background: #fff;
	line-height: 1.4;
}
table {
	border-bottom: 2px solid #333;
	border-spacing: .25em;
}
th {
	border-collapse: separate;
	border-spacing: .25em;
	background: #F6F3E9;
}
.tr-program ul {
	margin: 0;
	padding: 0;
}
.tr-program th, .tr-program td {
	border-width: 1px;
}
.tr-program li:before {
	font-family: "Font Awesome 5 pro";
	content: "\f101";
	padding-right: .5em;
}
@media screen and (max-width: 480px) {
th, td {
	width: 100%;
	display: block;
	margin: 0;
}
th {
	padding: 0;
}
td {
	padding: .25em 0 .5em;
}
}
/*anchor*/
a {
	text-decoration: underline;
	font-weight: bold;
	color: #333;
}
a:hover {
	color: #e5ef70;
}
footer a {
	text-decoration: none;
	font-size: small;
	font-weight: bold;
	color: #fff;
}
footer a:hover {
	text-decoration: underline;
}

/*element*/
img.alignleft, img.alignright {
	float: none;
	margin: 1em auto;
}
/*element*/
.wf-mplus1p {
	font-family: "Mplus 1p";
}
.speaker {
	background: #F6F3E9;
	margin: 3em 0 1em;
	padding: 0 0 1em;
	border-radius: 1em;
	font-weight: bold;
	overflow: hidden;
}
section.sect-openning > h1,
h1 + article > .speaker,
article#cont-talk h1 + .speaker {
	margin-top: 1em;
}
article#cont-talk h1 + .speaker ul {
	padding-left: 0;
}
.speaker img {
	max-width: 300px;
	margin: auto;
}
.person {
	padding: .5em 1em .25em;
}
.person ul {
	padding: 0;
}
.name {
	font-size: 1em;
	display: block;
	border-bottom: 3px solid #cc0022;
	margin: .5em 0;
}
.sect-part1 .name {
	border-bottom: 3px solid #b8c433
}
.name-episode {
	display: block;
	padding: 0 .5em;
	font-weight: bold;
	border-bottom: 2px solid #333;
}
.kyusei {
	font-size: .65em;
	font-weight: normal;
}
.status {
	font-size: .875em;
}
.year {
	display: block;
	font-size: .75em;
	background: #fff;
	margin: .5em 0;
	padding: .05em .5em;
	border-radius: .5em;
}
#cont-talk .year {
	display: inline-block;
}
#page-top {
	position: fixed;
	bottom: 0;
	right: .25em;
	color: #ed556e;
	font-size: 3em;
}
/*img*/
.img-vertical {
	max-width: 220px;
}
/*------------------------------------1024------------------------*/
@media screen and (min-width: 1024px) {
html {
	font-size: 100%;
}
.wrapper {
	width: 800px;
	margin: auto;
	padding: 1em 2em;
}
.wrapper.inner {
	margin: 1em auto;
}
header {
	background-size: auto;
	padding-bottom: 1em;
}
main {
	position: relative;
	background: #F6F3E9;
}
article.episode {
	margin-bottom: 1em;
	overflow: hidden;
	border-bottom: 1px dotted grey;
}
article.episode:last-child {
	border-bottom: none;
}
#page-top {
	bottom: 0;
	left: auto;
	right: auto;
	margin: 0 0 0 750px;
}
header h1 {
	font-size: 2.5em;
	line-height: 1.4;
	margin: 0 0 .5em;
}
header h1 span.copy-shoulder,
header h1 span.copy-sub {
	font-size: .5em
}
h1 {
	font-size: 1.5em;
	padding: .25em .5em .25em 1.5em;
	margin: 2em -1.35em 1em -1.75em;
}
h2 {
	font-size: 1.5em;
	line-height: 1.2;
	padding: 0 .5em 0 .25em;
	margin: 1em 0 .25em .5em;
}
.speaker img {
	float: right;
	border-radius: 0 1em 1em 0;
	width: 300px;
}
/*table*/
td, th {
	padding: .5em;
	margin: .25em;
	font-size: .875em;
}
th {
	border-collapse: separate;
	border-spacing: .25em;
	border-right: 1px solid grey;
}
/*element*/
p.br-cancel {
	overflow: hidden;
}
.speaker {
	margin: 6em 0 1em;
	padding: 0;
}
.name-episode {
	display: inline-block;
	background: #f7c5cc;
	padding: 0 .5em;
	font-weight: bold;
	margin-right: .5em;
	border-radius: .5em;
	border: none;
}
.status {
	font-size: .875em;
}
.name {
	margin: .25em 0;
}
.year {
	display: inline-block;
}
#cont-talk .year {
	display: inline-block;
	margin-left: .5em;
}
#cont-part1-4-2 {
	margin-top: 2em;
}
img.alignleft {
	float: left;
	margin: .5em 1em 1em 0;
}
img.alignright {
	float: right;
	margin: .5em 0 1em 1em;
}
img.alingn-center-2in1 {
	margin: .5em auto 1em;
	border-radius: 1em;
}
/*img*/
.img-vertical {
	max-width: 180px;
}
.img-holizontal {
	max-width: 280px;
}
address {
	font-size: .75em;
}
footer address a {
	font-size: .65em;
}
}