@charset "UTF-8";

@import url("//fonts.googleapis.com/css?family=Timmana");

/* ---------------------------------------------
*   audiojs
--------------------------------------------- */

/*　プレイヤー（再生バー）　*/

.audiojs {
	overflow: hidden;
	margin: auto;
	padding: auto;
	width: auto;
	height: auto;
	background: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	font-family: monospace;

	-o-box-shadow: none;
}

/*　再生・停止ボタン　*/

.audiojs .play-pause {
	float: none;
	clear: both;
	margin: auto;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	width: auto;
	height: auto;
}

/*　再生・停止ボタンなどの p 要素　*/

.audiojs p {
	display: none;
	width: auto;
	height: auto;
	background-image: none;
	cursor: pointer;
}

/*　進行状態・ロードの状態を表示する部分(グレー)　*/

.audiojs .scrubber {
	display: none;
}

/*　進行状態を表示するバーの部分(薄いグレー)　*/

.audiojs .progress {
	display: none;
}

/* ロード状態を表示するバーの部分（黒） */

/*　現在の再生時間/総再生時間　フォント　*/

.audiojs .time {
	display: none;
	border-left: none;
	color: #666;
	text-shadow: none;
}

/*　現在の再生時間　フォント　*/

.audiojs .time em {
	display: none;
	padding: 0px 2px 0px 0px;
	font-style: normal;
}

/*　時間　/の部分　*/

.audiojs .time strong {
	display: none;
	font-weight: normal;
}

.audiojs .error-message {
	display: none;
	float: none;
	margin: 0;
	width: auto;
	height: auto;
	color: #000;
	line-height: 1.8;
}

.audiojs .error-message a {
	color: #eee;
	text-decoration: none;
	white-space: wrap;
}

/*　再生ボタン　*/

.audiojs .play {
	display: block;
	background-image: none;
}

/*　読み込み中ボタン　*/

.audiojs .loading {
	display: none;
}

/*　エラーボタン　*/

.audiojs .error {
	display: none;
}

/*　停止ボタン　*/

.playing .play, .playing .loading, .playing .error {
	display: none;
	background-image: none;
}

.playing .pause {
	display: block;
	background-size: contain;
}

.loading .play, .loading .pause, .loading .error {
	display: none;
}

.loading .loading {
	display: block;
}

.error .time, .error .play, .error .pause, .error .scrubber, .error .loading {
	display: none;
}

.error .error {
	display: block;
}

.error .play-pause p {
	cursor: auto;
}

.error .error-message {
	display: block;
}

.tRight {
	text-align: right;
}

.tCenter {
	text-align: center;
}

.shadow {
	-webkit-box-shadow: 0 0 5px 3px rgba(0, 0, 0, .15);
	box-shadow: 0 0 5px 3px rgba(0, 0, 0, .15);
}

.pageheader {
	position: relative;
	z-index: 10;
	height: 200px;
	background: url(../img/pageheader-bg.jpg) 50% 50% no-repeat;
	background-size: cover;
	color: #fff;
}

.pageheader > p {
	margin-bottom: 24px;
	padding: 5px 5px 0;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1;
}

.pageheader .inner {
	text-align: center;
}

.pageheader .inner p {
	margin-bottom: 12px;
	text-indent: 2px;
	letter-spacing: 2px;
	font-weight: bold;
	font-size: 19px;
	font-size: 1.9rem;
}

.pageheader .inner .catch {
	margin-bottom: 45px;
}

.pageheader .inner .catch img {
	width: 515px;
	height: 40px;
}

.pageheader .inner .logo {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	-ms-flex-align: center;
	margin: 0 auto -30px;
	padding: 15px 20px;
	width: 260px;
	background: url(../img/icn-cross.png) 50% 50% no-repeat, -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: url(../img/icn-cross.png) 50% 50% no-repeat, -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: url(../img/icn-cross.png) 50% 50% no-repeat, -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: url(../img/icn-cross.png) 50% 50% no-repeat, linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	background-size: 30px,100%;
	line-height: 0;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.pageheader .inner .logo a {
	display: block;
}

.pageheader .inner .logo img {
	vertical-align: middle;
}

.pageheader .inner .logo img.kawaijuku {
	padding: 5px 0;
	width: 86px;
}

.pageheader .inner .logo img.asahi {
	width: 89px;
}

.lead {
	padding: 90px 0;
}

.lead .flex figure {
	position: relative;
}

.lead .flex figure:after {
	position: absolute;
	top: 170px;
	left: 0;
	display: block;
	width: 100px;
	height: 2px;
	background: -webkit-gradient(linear, right top, left top, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to left, #53afb3 0%, #2d71b5 100%);
	content: "";
}

.lead .flex figure .svg {
	margin-bottom: 0;
}

.lead .flex .txt {
	font-size: 15px;
	font-size: 1.5rem;
}

.article-header {
	position: relative;
	overflow: hidden;
}

.article-header .bg {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	overflow: hidden;
	width: 100%;
	height: 900px;
	-webkit-transform: translateY(50%) skewY(-5deg);
	-ms-transform: translateY(50%) skewY(-5deg);
	transform: translateY(50%) skewY(-5deg);
}

.article-header .bg:before {
	position: absolute;
	top: -4.5vw;
	right: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 900px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	background-size: 100% 65%;
	content: "";
	-webkit-transform: skewY(5deg);
	-ms-transform: skewY(5deg);
	transform: skewY(5deg);
}

.article-header .inner {
	max-width: 900px;
}

.article-header .img {
	position: relative;
}

.article-header .img .caption {
	position: absolute;
	bottom: -20px;
	left: 50px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: justify;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 35px;
	width: 225px;
	height: 225px;
	background-color: #fff;
	-webkit-box-shadow: 0 0 10px 5px rgba(0, 0, 0, .1);
	box-shadow: 0 0 10px 5px rgba(0, 0, 0, .1);

	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.article-header .img .caption .ttl span {
	position: relative;
	display: inline-block;
	padding-bottom: 10px;
	letter-spacing: 1px;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: .4;
}

.article-header .img .caption .ttl span:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 2px;
	background: -webkit-gradient(linear, right top, left top, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to left, #53afb3 0%, #2d71b5 100%);
	content: "";
}

.article-header .img .caption .name {
	line-height: 1.5;
}

.article-header .img .caption .name p {
	font-size: 25px;
	font-size: 2.5rem;
}

.article-header .img .caption .name small {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.45;
}

.article-header .img .caption .name > small {
	display: block;
}

.article-header h1 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	padding: 80px 0;
	color: #fff;

	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.article-header h1 .icn {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: end;
	-ms-flex-align: center;
	margin-right: 20px;
	width: 70px;
	height: 66px;
	background: url(../img/icn-page.png) 0 0 no-repeat;
	background-size: 49px;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.article-header h1 .icn span {
	margin-bottom: -.7em;
	letter-spacing: 1px;
	font-size: 19px;
	font-size: 1.9rem;
	font-family: "Timmana", -apple-system, "Yu Gothic", YuGothic, BlinkMacSystemFont, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Helvetica, Arial, "メイリオ", "Meiryo", Osaka, sans-serif;
}

.article-header h1 .icn span strong {
	font-size: 30px;
	font-size: 3rem;
}

.article-header h1 p {
	position: relative;
	letter-spacing: 1px;
}

.article-header h1 p small {
	text-indent: -.3em;
	font-size: 18px;
	font-size: 1.8rem;
}

.article-header h1 p strong {
	display: block;
	font-weight: bold;
	font-size: 28px;
	font-size: 2.8rem;
	line-height: 1.4;
}

.article-header.talk-header .caption {
	bottom: -60px;
	padding: 20px 35px;
	width: 435px;
	height: 176px;
}

.article-header.talk-header .caption .names {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.article-header.talk-header .caption .names .cross {
	position: absolute;
	top: 35%;
	left: 50%;
	width: 60px;
	height: 60px;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.article-header.talk-header .caption .names .cross:before, .article-header.talk-header .caption .names .cross:after {
	position: absolute;
	top: 50%;
	display: block;
	width: 60px;
	height: 1px;
	background-color: #000;
	content: "";
}

.article-header.talk-header .caption .names .cross:before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.article-header.talk-header .caption .names .cross:after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.article-header.talk-header h1 {
	padding-top: 120px;
}

article {
	padding: 100px 0;
}

article .inner {
	max-width: 800px;
}

article .block {
	margin-bottom: 100px;
	font-size: 15px;
	font-size: 1.5rem;
}

article .block h2 {
	position: relative;
	margin-bottom: 30px;
	padding-top: 30px;
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem;
}

article .block h2:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100px;
	height: 2px;
	background: -webkit-gradient(linear, right top, left top, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(right, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to left, #53afb3 0%, #2d71b5 100%);
	content: "";
}

article .block h3.gradttl {
	margin-bottom: 10px;
	text-align: center;
}

article .block h3.gradttl span {
	display: inline-block;
	padding: 5px 25px;
	border-radius: 30px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

article .block h3.gradttl.gradttl2 span {
	background: #215588;
}

article .block h3.gradttl + figure {
	margin-top: 40px;
}

article .block h3:not(:first-child) {
	margin-top: 60px;
}

article .block p:not(:last-child) {
	margin-bottom: 1.7em;
}

article .block p strong {
	font-weight: bold;
}

article .block p em {
	color: #2e73b5;
	font-weight: bold;
}

article .block p small {
	display: inline-block;
	font-size: 10px;
	font-size: 1rem;
}

article .block p sup {
	vertical-align: super;
	font-size: 10px;
	font-size: 1rem;
}

article .block p > a {
	color: #2d71b5;
	text-decoration: underline;
}

article .block > figure {
	margin: 70px 0;
	text-align: center;
}

article .block > figure:last-child {
	margin-bottom: 0;
}

article .block > figure figcaption {
	display: block;
	margin-top: 1.6em;
	text-align: left;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.5;
}

article .block ul.notice {
	margin-bottom: 1.7em;
	color: #2d71b5;
	font-weight: bold;
}

article .block ul.notice li {
	padding-left: 1em;
	text-indent: -1em;
}

article .block i {
	font-style: italic;
}

article .block .figures {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	margin: 40px 0;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .block .figures figure {
	min-width: 48%;
}

article .block .figures figure small {
	display: block;
	margin-top: 10px;
	font-size: 9px;
	font-size: .9rem;
	line-height: 1.2;
}

article .block .figures figure:last-of-type {
	text-align: right;
}

article .block .table {
	width: 100%;
}

article .block .table th, article .block .table td {
	padding: 3px 10px;
	border: 1px solid #999;
	text-align: left;
}

article .block .table th {
	width: 16%;
	background-color: #e1e9ed;
	text-align: center;
	font-weight: bold;
}

article .block .table th:nth-child(3) {
	width: auto;
}

article .block .table td:last-child {
	color: #2d71b5;
	text-align: right;
	font-weight: bold;
}

article .block .underline {
	padding-bottom: 2px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #ff0));
	background: -webkit-linear-gradient(transparent 40%, #ff0 40%);
	background: -o-linear-gradient(transparent 40%, #ff0 40%);
	background: linear-gradient(transparent 40%, #ff0 40%);
	text-decoration: none;
}

article .block .question + p {
	margin-top: 4em;
}

article .block .question dl {
	padding: 24px;
	background-color: #e1e9ed;
}

article .block .question dl dt {
	margin-bottom: 10px;
	padding: 10px 20px;
	background-color: #fff;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

article .block .question dl dt:not(:first-child) {
	margin-top: 24px;
}

article .block .question dl dd {
	padding: 15px 24px;
	background-color: #fff;
}

article .block .question dl dd strong {
	font-weight: bold;
}

article .block .question dl dd em {
	display: inline-block;
	background: url(../img/wave.png) bottom repeat-x;
	background-size: 20px;
}

article .block .question dl dd .symbol {
	position: relative;
	display: inline-block;
	margin: -3px 2px 0;
	padding: 3px;
	width: 28px;
	border: 1px solid #000;
	vertical-align: middle;
	text-align: center;
	line-height: 0;
}

article .block .question dl dd .symbol img {
	width: 10px;
}

article .block .question dl dd figure {
	margin-top: 24px;
}

article .block .question dl dd .datas {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #000;

	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

article .block .question dl dd .datas a {
	display: block;
	margin-right: .6%;
	margin-bottom: 10px;
	color: #000;
}

article .block .question dl dd .datas a span {
	display: block;
	font-weight: bold;
}

article .block .question dl dd .datas a img {
	max-height: 140px;
}

article .block .question dl dd .datas a:last-child img {
	max-height: 86px;
}

article .block .question dl dd .btns {
	margin: 24px 0;
}

article .block .question dl dd .btns a img {
	margin-top: -3px;
	vertical-align: middle;
}

article .block .question dl dd ul li {
	padding-left: 1em;
	text-indent: -1em;
}

article .block .question small {
	display: block;
	margin-top: 6px;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.5;
}

article .block .question .notice {
	margin-top: 30px;
	text-align: center;
}

article .block .question .notice span {
	position: relative;
	display: inline-block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px 14px;
	max-width: 100%;
	width: 400px;
	background-color: yellow;
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem;
}

article .block .question .notice span:before {
	position: absolute;
	top: -30px;
	right: 30%;
	display: block;
	width: 0;
	height: 0;
	border: 12px solid transparent;
	border-top: 0;
	border-bottom: 30px solid yellow;
	content: "";
}

article .block .question > div {
	padding: 24px;
	background-color: #e1e9ed;
}

article .block .question > div p {
	margin: 0;
	padding: 15px 24px;
	background-color: #fff;
}

article .block.accordion {
	margin-top: -30px;
	margin-bottom: 70px;
}

article .block.accordion h3 {
	position: relative;
	padding: 12px 20px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
	cursor: pointer;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

article .block.accordion h3:after, article .block.accordion h3:before {
	position: absolute;
	top: 50%;
	right: 24px;
	display: block;
	width: 14px;
	height: 0;
	border-bottom: 2px solid #fff;
	content: "";
}

article .block.accordion h3:after {
	opacity: 1;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

article .block.accordion h3.close:after {
	opacity: 0;
}

article .block.accordion > div {
	display: none;
}

article .block.accordion.accordion2 {
	margin-bottom: 100px;
}

article .block.marksheet {
	margin-bottom: 70px;
}

article .block.marksheet h3 {
	margin-bottom: 24px;
	text-align: center;
}

article .block.marksheet h3 span {
	display: inline-block;
	padding: 5px 25px;
	border-radius: 30px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

article .block.marksheet p em {
	padding-bottom: 2px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #ff0));
	background: -webkit-linear-gradient(transparent 40%, #ff0 40%);
	background: -o-linear-gradient(transparent 40%, #ff0 40%);
	background: linear-gradient(transparent 40%, #ff0 40%);
}

article .block .imgR {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .block .imgR p {
	margin-bottom: 0;
	line-height: 1.9;

	-webkit-box-flex: 0;
	-webkit-flex-grow: 0;
	flex-grow: 0;
	-ms-flex-positive: 0;
}

article .block .imgR figure {
	margin: 0 0 .5em 1.5em;

	-ms-flex-negative: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

article .block .imgR figure figcaption {
	margin-top: 4px;
	text-align: right;
	font-size: 12px;
	font-size: 1.2rem;
}

article .figure-block {
	margin-bottom: 100px;
}

article .figure-block.graph1 dl {
	text-align: center;
}

article .figure-block.graph1 dl dt {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	-ms-flex-align: center;
	margin-bottom: 15px;
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

article .figure-block.graph1 dl dt span {
	display: inline-block;
	margin-right: 20px;
	width: 50px;
	height: 50px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	vertical-align: middle;
	font-size: 30px;
	font-size: 3rem;
	font-family: "Timmana", -apple-system, "Yu Gothic", YuGothic, BlinkMacSystemFont, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Helvetica, Arial, "メイリオ", "Meiryo", Osaka, sans-serif;
	line-height: 58px;
}

article .figure-block.graph1 dl dt small {
	font-size: 15px;
	font-size: 1.5rem;
}

article .figure-block.graph1 dl dt div {
	display: inline;
	text-align: left;
	line-height: 1.3;
}

article .figure-block.graph1 dl dd p {
	margin-bottom: 30px;
}

article .figure-block.graph1 dl dd p small {
	font-size: 10px;
	font-size: 1rem;
}

article .figure-block.graph1 dl dd .desc {
	margin-bottom: 30px;
}

article .figure-block.graph1 dl dd .desc span {
	position: relative;
	display: inline-block;
	margin: 0 15px;
}

article .figure-block.graph1 dl dd .desc span:before {
	display: inline-block;
	margin-top: -3px;
	margin-right: 5px;
	width: 20px;
	height: 20px;
	content: "";
	vertical-align: middle;
}

article .figure-block.graph1 dl dd .desc span.s1:before {
	background-color: #53afb3;
}

article .figure-block.graph1 dl dd .desc span.s2:before {
	background-color: #2d71b5;
}

article .figure-block.graph2 p {
	margin-bottom: 70px;
}

article .figure-block.graph2 figure {
	margin: 0 auto;
	max-width: 100%;
	width: 600px;
}

article .figure-block.graph2 figure figcaption {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	margin: 0 auto 20px;
	max-width: 100%;
	width: 600px;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .figure-block.graph2 figure figcaption div {
	width: 41.6%;
	text-align: center;
}

article .figure-block.graph2 figure figcaption div span {
	display: inline-block;
	width: 150px;
	border-radius: 30px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

article .dl-list {
	margin-top: 50px;
	padding: 50px;
	background-color: #e1e9ed;
}

article .dl-list dt {
	margin-bottom: 12px;
	padding: 2px;
	background-color: #fff;
	color: #2d71b5;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

article .dl-list dd {
	line-height: 1.7;
}

article .dl-list dd:not(:last-of-type) {
	margin-bottom: 30px;
}

article .dl-list dd.flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .dl-list dd.flex p {
	margin: 0;
	width: 55%;
}

article .dl-list dd.flex figure {
	width: 40%;
}

article .dl-list dd.flex figure a {
	position: relative;
	display: block;
}

article .dl-list dd.flex figure a:after {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	width: 30px;
	height: 30px;
	background: url(../img/icn-zoom.png) 50% 50% no-repeat, -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: url(../img/icn-zoom.png) 50% 50% no-repeat, -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: url(../img/icn-zoom.png) 50% 50% no-repeat, -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: url(../img/icn-zoom.png) 50% 50% no-repeat, linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	background-size: 15px,100%;
	content: "";
}

article .dl-list dd.flex figure figcaption {
	margin-top: 4px;
	text-align: right;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.4;
}

article .dl-list:not(:last-child) {
	margin: 30px auto 50px;
}

article .dl-list.dl-list2 dt {
	padding: 2px 10px;
	text-align: left;
}

article .dl-list.dl-list2 dt small {
	font-weight: normal;
	font-size: 15px;
	font-size: 1.5rem;
}

article .dl-list.dl-list2 dd div {
	margin-top: .5em;
	padding-top: .5em;
	border-top: 1px solid #fff;
}

article small.notice {
	display: block;
	margin-top: -60px;
	margin-bottom: 70px;
	font-size: 10px;
	font-size: 1rem;
}

article .profile {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	-ms-flex-align: center;
	margin-bottom: 70px;
	padding: 30px;
	background-color: #e1e9ed;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .profile .ttl {
	width: 100px;
	height: 80px;
	letter-spacing: 1px;
	font-size: 14px;
	font-size: 1.4rem;
	font-family: "Timmana", -apple-system, "Yu Gothic", YuGothic, BlinkMacSystemFont, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Helvetica, Arial, "メイリオ", "Meiryo", Osaka, sans-serif;

	-ms-flex-negative: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

article .profile figure {
	margin-right: 10px;
	width: 124px;

	-ms-flex-negative: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

article .profile .txt {
	font-size: 13px;
	font-size: 1.3rem;
}

article .profile.profile2 {
	-ms-flex-align: start;

	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-box-align: start;
}

article .profile.profile2 ul {
	width: 100%;
}

article .profile.profile2 li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;

	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

article .profile.profile2 li:not(:last-child) {
	margin-bottom: 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid #000;
}

article .share {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	padding: 20px 0;
	border-top: 2px solid #2d71b5;
	border-bottom: 2px solid #2d71b5;

	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

article .share figure {
	margin-right: 15px;
	width: 150px;
}

article .share .snswrap {
	text-align: center;
}

article .share .snswrap p {
	text-indent: 1px;
	letter-spacing: 1px;
	font-family: "Timmana", -apple-system, "Yu Gothic", YuGothic, BlinkMacSystemFont, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Helvetica, Arial, "メイリオ", "Meiryo", Osaka, sans-serif;
}

article .share .snswrap > div {
	display: inline-block;
	margin: 0 3px;
	width: 150px;
	line-height: 0;
}

article .share .snswrap > div a {
	display: block;
	padding: 5px;
}

article .share .snswrap > div a img {
	width: 15px;
}

article .share .snswrap > div.fb a {
	background-color: #3b5998;
}

article .share .snswrap > div.tw a {
	background-color: #1da1f2;
}

.pagenav {
	margin-bottom: 20px;
	padding: 70px 0;
	background-color: #e1e9ed;
}

.pagenav .flex {
	-ms-flex-pack: center;

	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.pagenav .flex .col {
	overflow: hidden;
	min-height: 120px;
	width: 49.6%;
	background-color: #fff;
}

.pagenav .flex .col:not(:last-of-type) {
	margin-right: 5px;
}

.pagenav .flex .col:not(:last-of-type) a {
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;

	-webkit-box-direction: reverse;
	-webkit-box-orient: horizontal;
}

.pagenav .flex .col a {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	-ms-flex-align: center;
	width: 100%;
	height: 220px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.pagenav .flex .col a:hover {
	opacity: 1;
}

.pagenav .flex .col a:hover figure img {
	-webkit-transform: translate(-50%, -50%) scale(1.2);
	-ms-transform: translate(-50%, -50%) scale(1.2);
	transform: translate(-50%, -50%) scale(1.2);
}

.pagenav .flex .col a:hover figure img.vol2img {
	-webkit-transform: translate(-55%, -50%) scale(1.2);
	-ms-transform: translate(-55%, -50%) scale(1.2);
	transform: translate(-55%, -50%) scale(1.2);
}

.pagenav .flex .col a:hover figure:after {
	opacity: 0;
}

.pagenav .flex .col a.comingsoon {
	padding: 0 !important;
}

.pagenav .flex .col a.comingsoon > p {
	font-size: 15px;
	font-size: 1.5rem;
}

.pagenav .flex .col a.comingsoon > p small {
	font-size: 17px;
	font-size: 1.7rem;
}

.pagenav .flex .col a.comingsoon > p .timmana {
	font-size: 20px;
	font-size: 2rem;
}

.pagenav .flex .col a.home figure {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.pagenav .flex .col a.home figure:after {
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	opacity: .8;
}

.pagenav .flex .col a.home .txt {
	position: static;
	max-height: 100px;
	width: 88%;
}

.pagenav .flex .col a.home .txt .ttl {
	margin-bottom: 0;
}

.pagenav .flex .col a.home .txt .ttl .icn {
	left: -50px;
	width: 40px;
	height: 38px;
	background-size: 28px;
}

.pagenav .flex .col a.home .txt .ttl p {
	margin-right: 0;
	letter-spacing: .06em;
	font-weight: bold;
	font-size: 19px;
	font-size: 1.9rem;
}

.pagenav .flex .col a.home .txt .ttl p strong {
	margin-top: .5em;
}

.pagenav .flex .col a.home .txt .arrow {
	bottom: 15px;
}

.pagenav .flex .col a.home:hover figure:after {
	opacity: .4;
}

.pagenav .flex .col figure {
	position: relative;
	overflow: hidden;
	width: 40.33%;
	height: 100%;
}

.pagenav .flex .col figure img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: none;
	height: 100%;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.pagenav .flex .col figure img.vol2img {
	-webkit-transform: translate(-55%, -50%);
	-ms-transform: translate(-55%, -50%);
	transform: translate(-55%, -50%);
}

.pagenav .flex .col figure:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #2e73b5;
	content: "";
	opacity: .3;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}

.pagenav .flex .col .txt {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: justify;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 14px 8px 25px 60px;
	width: 59.66%;
	line-height: 1.4;

	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.pagenav .flex .col .arrow {
	position: absolute;
	bottom: 10px;
	left: 20px;
	width: 96px;
	height: 0;
	border-bottom: 1px solid #fff;
}

.pagenav .flex .col .arrow:after {
	position: absolute;
	left: 0;
	display: block;
	width: 22px;
	height: 0;
	border-bottom: 1px solid #fff;
	content: "";
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
	-webkit-transform-origin: left;
	-ms-transform-origin: left;
	transform-origin: left;
}

.pagenav .flex .col .icn {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: end;
	-ms-flex-align: center;
	margin-right: 12px;
	width: 34px;
	height: 30px;
	background: url(../img/icn-page.png) 0 0 no-repeat;
	background-size: 22px;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: end;
	-ms-flex-negative: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.pagenav .flex .col .icn span {
	margin-bottom: -.7em;
	letter-spacing: .04em;
	font-size: 8px;
	font-size: .8rem;
	font-family: "Timmana", -apple-system, "Yu Gothic", YuGothic, BlinkMacSystemFont, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Helvetica, Arial, "メイリオ", "Meiryo", Osaka, sans-serif;
}

.pagenav .flex .col .icn span strong {
	font-size: 14px;
	font-size: 1.4rem;
}

.pagenav .flex .col .ttl {
	position: relative;
	margin-bottom: 12px;
}

.pagenav .flex .col .ttl .icn {
	position: absolute;
	top: 0;
	left: -40px;
	margin: 0;
}

.pagenav .flex .col .ttl .icn strong {
	display: inline;
}

.pagenav .flex .col p {
	margin-right: -1em;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.3;
}

.pagenav .flex .col p small {
	display: block;
	margin-bottom: 4px;
	text-indent: -.3em;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.2;
}

.pagenav .flex .col p strong {
	display: block;
	margin-top: 2px;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

.pagenav .flex .col p .timmana {
	display: inline-block;
	margin-bottom: -.8em;
	letter-spacing: 1px;
	font-size: 16px;
	font-size: 1.6rem;
}

.pagenav .flex .col .name {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.3;
}

.pagenav .flex .col .name small {
	display: block;
	margin-bottom: 3px;
	font-size: 11px;
	font-size: 1.1rem;
}

.pagenav .flex .col .name small:not(:first-of-type) {
	margin-top: 5px;
}

.pagenav .flex .col .name.name2 {
	font-size: 14px;
	font-size: 1.4rem;
}

.pagenav .flex .col .name.name2 small {
	font-size: 10px;
	font-size: 1rem;
}

.pagenav .flex .col.prev {
	margin-right: 5px;
}

.pagenav .flex .col.prev a {
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;

	-webkit-box-direction: reverse;
	-webkit-box-orient: horizontal;
}

.pagenav .flex .col.next figure {
	right: auto;
	left: 0;
}

.pagenav .flex .col.next .txt .arrow {
	right: 20px;
	left: auto;
}

.pagenav .flex .col.next .txt .arrow:after {
	right: 0;
	left: auto;
	-webkit-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);
	-webkit-transform-origin: right;
	-ms-transform-origin: right;
	transform-origin: right;
}

article.vol2 .figure-block.graph1 dl {
	margin: 60px 0;
}

article.vol2 .mondai1-2 img {
	max-width: 60%;
}

article.vol4 .block.notes {
	padding: 12px 20px;
	border: 1px solid #2d71b5;
	color: #2d71b5;
}

article.vol4 .block.notes a {
	color: #2d71b5;
	text-decoration: underline;
}

article.vol5 .block ul.notice {
	padding: 10px 20px;
	max-width: 480px;
	border: 1px solid #000;
	color: #000;
	font-weight: normal;
}

article.vol5 .block ul.notice li {
	margin: 6px 0;
	padding-left: 1.8em;
	text-indent: -1.8em;
	line-height: 1.6;
}

article.vol5 .block .taisaku a {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto 20px;
	padding: 12px;
	max-width: 100%;
	width: 400px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

article.vol5 .block .taisaku a img {
	margin-top: -3px;
	vertical-align: middle;
}

article.vol5 .block figure.table .ttl {
	text-align: left;
	font-weight: bold;
}

article.vol5 .block figure.table figcaption {
	margin-top: 1em;
	text-align: right;
	font-size: 12px;
	font-size: 1.2rem;
}

article.vol5 .block figure.table figcaption em {
	color: #78ad07;
}

.article-header-vol6.talk-header .caption .names .cross {
	left: 47.2%;
}

article.vol9 .btn {
	margin-bottom: 70px;
}

article.vol9 .btn a {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 12px;
	max-width: 100%;
	width: 400px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

.listen {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	-ms-flex-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	margin-bottom: 30px;
	max-width: 100%;
	width: 560px;

	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.listen .audio_contents {
	margin-right: 10px;
	width: 118px;

	-ms-flex-negative: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

.listen .listen-txt {
	color: #2d71b5;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
	cursor: pointer;
}

.listen .audiojs .play-pause p {
	margin: 0;
	width: 118px;
	height: 118px;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

.listen .audiojs .play-pause .play, .listen .audiojs .play-pause .loading {
	background: url(../img/btn-icn-play.png) 0 0 no-repeat;
	background-size: 100%;
}

.listen .audiojs .play-pause .play:hover, .listen .audiojs .play-pause .loading:hover {
	background: url(../img/btn-icn-play_o.png) 0 0 no-repeat;
	background-size: 100%;
}

.listen .audiojs .play-pause .pause {
	background: url(../img/btn-icn-pause.png) 0 0 no-repeat;
	background-size: 100%;
}

.listen .audiojs .play-pause .pause:hover {
	background: url(../img/btn-icn-pause_o.png) 0 0 no-repeat;
	background-size: 100%;
}

.hide {
	display: none;
}

#data .slider {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 40px;
	max-width: 100%;
	width: 780px;
	height: 680px;
}

#data .slider .bx-wrapper {
	height: 100%;
	background-color: transparent;
}

#data .slider .bx-wrapper .bx-viewport {
	height: 90%;
}

#data .slider .bx-wrapper .bx-controls-direction > a {
	position: absolute;
	top: 50%;
	overflow: hidden;
	margin-top: -23px;
	width: 40px;
	height: 46px;
	color: #2d71b5;
	font-size: 30px;
	font-size: 3rem;
	line-height: 46px;
}

#data .slider .bx-wrapper .bx-controls-direction > a.bx-prev {
	left: 0;
	text-align: left;
	text-indent: -10px;
}

#data .slider .bx-wrapper .bx-controls-direction > a.bx-next {
	right: 0;
	text-align: right;
	text-indent: 20px;
}

#data .slider .bx-wrapper .bx-pager {
	margin-top: 8px;
	text-align: center;
}

#data .slider .bx-wrapper .bx-pager > div {
	display: inline-block;
	margin: 0 5px;
	width: 8px;
	height: 8px;
}

#data .slider .bx-wrapper .bx-pager > div a {
	display: block;
	overflow: hidden;
	padding-top: 100%;
	width: 100%;
	height: 0;
	border: 1px solid #000;
	border-radius: 50%;
	background-color: #fff;
	font-size: 0;
	line-height: 0;
	line-height: 0;
}

#data .slider .bx-wrapper .bx-pager > div a.active {
	border-color: #2d71b5;
	background-color: #2d71b5;
}

#data .slider ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
}

#data .slider ul li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: center;
	float: none !important;

	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

#data .slider ul li span {
	display: block;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
}

#data .slider ul li figure {
	text-align: center;
}

#data .slider ul li figure img {
	max-height: 550px;
}

#data .slider ul li small {
	display: block;
	text-align: right;
	font-size: 10px;
	font-size: 1rem;
}

#mondai1, #mondai2 {
	text-align: center;
}

#mondai1 figure.mondai, #mondai2 figure.mondai {
	display: inline-block;
	margin: 10px 50px;
	max-width: 500px;
}

#mondai1 figure.mondai img, #mondai2 figure.mondai img {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #000;
}

#mondai1 figure.mondai figcaption, #mondai2 figure.mondai figcaption {
	margin-top: 4px;
	text-align: right;
	font-size: 10px;
	font-size: 1rem;
}

.modalbox {
	margin: 0 50px;
	min-height: 200px;
	border: 40px solid #e1e9ed;
	background-color: #fff;
}

.modalbox > div {
	padding: 30px 40px 50px;
}

.modalbox > div:not(:last-child) {
	border-bottom: 12px solid #e1e9ed;
}

.modalbox > div > div {
	position: relative;
	margin-bottom: 1.8em;
	padding-top: 12px;
}

.modalbox > div > div:last-child {
	margin-bottom: 0;
}

.modalbox > div > div:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100px;
	height: 2px;
	background: -webkit-gradient(linear, left top, left bottom, from(#53afb3), to(#2d71b5));
	background: -webkit-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: -o-linear-gradient(top, #53afb3 0%, #2d71b5 100%);
	background: linear-gradient(to bottom, #53afb3 0%, #2d71b5 100%);
	content: "";
}

.modalbox h3 {
	position: relative;
	margin-bottom: 30px;
	text-align: center;
	font-weight: bold;
	font-size: 24px;
	font-size: 2.4rem;
}

.modalbox h4 {
	display: inline-block;
	color: #2d71b5;
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem;
}

.modalbox h4:after {
	margin-left: .05em;
	color: #000;
	content: "／";
}

/*
    Colorbox Style:
*/

#cboxOverlay {
	background: #fff;
}

#colorbox {
	outline: 0;
}

#cboxContent {
	background: transparent;
}

#cboxLoadingGraphic {
	background: transparent;
}

#cboxLoadedContent {
	padding: 0;
	border: 0;
	background: transparent;
}

#cboxLoadingOverlay {
	background: transparent;
}

/*
#cboxContent {
	margin: 0 54px 46px !important;
}
#cboxTitle{
	top:auto;
	bottom:-46px;
	width: 100%;
	text-align: center;
	color: #fff;
	line-height: 1.2;
	height: 40px;
	text-shadow: 0 0 4px rgba(0,0,0,1);
	font-weight: bold;
	@include max-screen($breakpoint-s){
	font-size: 11px;
	}
}*/

.cboxPhoto {
	max-width: 100%;
	height: auto !important;
}

#cboxCurrent, #cboxClose {
	display: none !important;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */

#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
	overflow: hidden;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent none;
	text-indent: -9999px;
}

#cboxPrevious:hover, #cboxNext:hover, #cboxSlideshow:hover, #cboxClose:hover {
	background-position: 0 0;
}

#cboxPrevious.hover, #cboxNext.hover, #cboxSlideshow.hover, #cboxClose.hover {
	background-position: 0 0;
}

#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active, #cboxPrevious:focus, #cboxNext:focus, #cboxSlideshow:focus, #cboxClose:focus {
	outline: 0;
}

#cboxPrevious, #cboxNext {
	position: absolute;
	top: 0;
	width: 12%;
	height: 100%;
	cursor: pointer;
}

#cboxPrevious:after, #cboxNext:after {
	position: absolute;
	top: 50%;
	display: none;
	margin-top: -10px;
	width: 0;
	height: 0;
	border-top: 18px solid transparent;
	border-bottom: 18px solid transparent;
	content: "";
}

#cboxPrevious {
	left: 0;
}

#cboxPrevious:after {
	left: 50%;
	margin-left: -10px;
	border-right: 12px solid #fff;
}

#cboxNext {
	right: 0;
}

#cboxNext:after {
	right: 50%;
	margin-right: -10px;
	border-left: 12px solid #fff;
}

#cboxClose {
	top: -28px;
	right: 50px;
	display: block !important;
	width: 28px;
	height: 28px;
	border: 1px solid #000;
}

#cboxClose:before, #cboxClose:after {
	position: absolute;
	top: 13px;
	left: 4px;
	display: block;
	width: 18px;
	height: 1px;
	background: #000;
	content: "";
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

#cboxClose:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media all and (min-width: 759px) {
	article .block.accordion h3:hover {
		opacity: .7;
	}

	.article-header-vol9.talk-header .caption {
		padding: 18px 20px 12px 35px;
	}

	.article-header-vol9.talk-header .caption .names .cross {
		left: 45%;
	}

	#cboxPrevious:hover, #cboxNext:hover {
		background: rgba(255, 255, 255, .3);
	}

	#cboxPrevious:hover:after, #cboxNext:hover:after {
		display: block;
	}
}

@media all and (max-width: 758px) {
	.pageheader {
		height: 150px;
		background: url(../img/pageheader-bg_sp.jpg) 50% 50% no-repeat;
		background-size: cover;
	}

	.pageheader > p {
		margin-bottom: 12px;
		font-size: .9rem;
	}

	.pageheader .inner p {
		margin-bottom: 6px;
		font-size: 1.3rem;
	}

	.pageheader .inner .catch {
		margin-bottom: 12px;
	}

	.pageheader .inner .catch img {
		width: 208px;
		height: 62px;
	}

	.pageheader .inner .logo {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		margin-bottom: 16px;
		padding: 10px 20px;
		width: 187px;
		background-size: 20px,100%;
	}

	.pageheader .inner .logo img.kawaijuku {
		padding: 2px 0;
		width: 54px;
	}

	.pageheader .inner .logo img.asahi {
		width: 55px;
	}

	.lead {
		padding: 75px 0;
	}

	.lead .flex figure {
		margin-bottom: 80px;
	}

	.lead .flex figure .svg {
		width: 323px;
		height: 141px;
	}

	.article-header .bg {
		height: 640px;
		-webkit-transform: translateY(50%) skewY(-10deg);
		-ms-transform: translateY(50%) skewY(-10deg);
		transform: translateY(50%) skewY(-10deg);
	}

	.article-header .bg:before {
		top: -8.9vw;
		height: 640px;
		-webkit-transform: skewY(10deg);
		-ms-transform: skewY(10deg);
		transform: skewY(10deg);
	}

	.article-header .img figure {
		position: relative;
		overflow: hidden;
		padding-bottom: 65%;
		height: 0;
	}

	.article-header .img figure img {
		position: absolute;
		left: 50%;
		max-width: 130%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.article-header .img .caption {
		position: relative;
		bottom: auto;
		left: 15px;
		margin-top: -40px;
		padding: 10px 20px;
		width: 240px;
		height: auto;
	}

	.article-header .img .caption .ttl span {
		padding-bottom: 6px;
		font-size: 1.3rem;
	}

	.article-header .img .caption .name p {
		font-size: 1.9rem;
	}

	.article-header .img .caption .name small {
		font-size: .9rem;
	}

	.article-header h1 {
		-ms-flex-pack: start;
		-ms-flex-align: center;
		padding: 20px 0 30px;

		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}

	.article-header h1 .icn {
		width: 56px;
		height: 45px;
		background-size: 34px;
	}

	.article-header h1 .icn span {
		font-size: 1.4rem;
	}

	.article-header h1 .icn span strong {
		font-size: 2.2rem;
	}

	.article-header h1 p {
		width: calc(100% - 48px);
	}

	.article-header h1 p small {
		margin-bottom: 5px;
		font-size: 1.5rem;
	}

	.article-header h1 p strong {
		font-size: 2rem;
	}

	.article-header.talk-header .caption {
		max-width: 270px;
		width: 90%;
	}

	.article-header.talk-header .caption .names .cross {
		width: 30px;
		height: 30px;
	}

	.article-header.talk-header .caption .names .cross:before, .article-header.talk-header .caption .names .cross:after {
		width: 30px;
	}

	.article-header.talk-header h1 {
		padding: 20px 0 30px;
	}

	.article-header.talk-header h1 p {
		letter-spacing: 0;
	}

	article {
		padding: 45px 0;
	}

	article .block {
		margin-bottom: 60px;
	}

	article .block h2 {
		line-height: 1.5;
	}

	article .block h3:not(:first-child) {
		margin-top: 40px;
	}

	article .block > figure {
		margin: 45px 0;
	}

	article .block .figures {
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}

	article .block .figures figure {
		min-width: none;
		text-align: center;
	}

	article .block .figures figure:last-of-type {
		margin-top: 20px;
		text-align: center;
	}

	article .block .table th, article .block .table td {
		padding: 3px 5px;
		font-size: 1rem;
		line-height: 1.3;
	}

	article .block .table th:nth-child(3) {
		width: auto;
	}

	article .block .table th:nth-child(4) {
		width: 12%;
	}

	article .block .question dl {
		padding: 10px;
	}

	article .block .question dl dt {
		padding: 8px 12px;
	}

	article .block .question dl dd {
		padding: 12px;
	}

	article .block .question dl dd .datas a img {
		max-height: 85px;
	}

	article .block .question dl dd .datas a:last-child img {
		max-height: 46px;
	}

	article .block .question dl dd ul {
		margin-top: 24px;
	}

	article .block .question > div {
		padding: 10px;
	}

	article .block .question > div p {
		padding: 12px;
	}

	article .block.accordion h3 {
		padding: 12px 30px 12px 12px;
		font-size: 1.6rem;
	}

	article .block.accordion h3:after, article .block.accordion h3:before {
		right: 18px;
	}

	article .block .imgR {
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}

	article .block .imgR p {
		margin-bottom: 1.6em;
		line-height: 1.8;
	}

	article .block .imgR figure {
		margin-bottom: 1.6em;
		text-align: center;
	}

	article .block .imgR figure img {
		max-width: 45%;
	}

	article .block .imgR figure figcaption {
		text-align: center;
	}

	article .figure-block {
		margin-bottom: 60px;
	}

	article .figure-block.graph1 dl dt {
		font-size: 1.7rem;
		line-height: 1.5;
	}

	article .figure-block.graph1 dl dt span {
		margin-right: 15px;
		width: 42px;
		height: 42px;
		text-align: center;
		font-size: 2.6rem;
		line-height: 50px;

		-ms-flex-negative: 0;
		-webkit-flex-shrink: 0;
		flex-shrink: 0;
	}

	article .figure-block.graph1 dl dd p {
		margin-bottom: 14px;
		margin-left: -.5em;
		font-size: 1.3rem;

		-webkit-font-feature-settings: "palt";
		font-feature-settings: "palt";
	}

	article .figure-block.graph1 dl dd .desc {
		margin-bottom: 20px;
	}

	article .figure-block.graph1 dl dd .desc span {
		font-size: 1.3rem;
	}

	article .figure-block.graph1 dl dd .desc span:before {
		width: 14px;
		height: 14px;
	}

	article .figure-block.graph2 p {
		margin-bottom: 45px;
	}

	article .figure-block.graph2 figure figcaption div span {
		width: 100px;
		font-size: 1.4rem;
	}

	article .dl-list {
		padding: 15px;
	}

	article .dl-list dd.flex {
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}

	article .dl-list dd.flex p {
		width: 100%;
	}

	article .dl-list dd.flex figure {
		margin-top: 20px;
		width: 100%;
	}

	article small.notice {
		margin-top: -40px;
		margin-bottom: 45px;
	}

	article .profile {
		position: relative;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		margin-bottom: 45px;
		padding: 20px;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}

	article .profile .ttl {
		position: absolute;
		top: 20px;
		left: 20px;
	}

	article .profile figure {
		margin: 0 0 10px;
	}

	article .profile .txt {
		font-size: 1.2rem;
	}

	article .profile.profile2 li {
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-align: center;

		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}

	article .share figure {
		position: relative;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-pack: center;
		overflow: hidden;
		width: 45%;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
	}

	article .share .snswrap {
		width: 45%;
	}

	article .share .snswrap p {
		margin-bottom: -.7em;
	}

	article .share .snswrap > div {
		margin: 10px 0 0;
		max-width: 150px;
		width: 100%;
	}

	.pagenav {
		padding: 50px 0;

		-webkit-font-feature-settings: "palt";
		font-feature-settings: "palt";
	}

	.pagenav .flex .col {
		min-height: 170px;
		width: 100%;
		height: 170px;
	}

	.pagenav .flex .col:not(:last-of-type) {
		margin-right: 0;
		margin-bottom: 15px;
	}

	.pagenav .flex .col a {
		height: 170px;
	}

	.pagenav .flex .col a.comingsoon > p {
		font-size: 1.4rem;
	}

	.pagenav .flex .col a.comingsoon > p small {
		font-size: 1.4rem;
	}

	.pagenav .flex .col a.home {
		padding: 0 !important;
	}

	.pagenav .flex .col a.home .txt .ttl p {
		letter-spacing: 0;
		font-size: 1.4rem;
	}

	.pagenav .flex .col a.home .txt .ttl p strong img {
		height: 19px;
	}

	.pagenav .flex .col figure {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		width: 38%;

		-ms-flex-negative: 0;
		-webkit-flex-shrink: 0;
		flex-shrink: 0;
	}

	.pagenav .flex .col .txt {
		-ms-flex-pack: distribute;
		padding: 10px 8px 20px 45px;
		width: auto;
		height: 100%;

		-webkit-justify-content: space-around;
		justify-content: space-around;
	}

	.pagenav .flex .col .arrow {
		bottom: 10px;
		left: 10px;
		width: 60px;
	}

	.pagenav .flex .col .arrow:after {
		width: 12px;
	}

	.pagenav .flex .col .icn {
		margin-right: 8px;
		width: 28px;
		height: 28px;
		background-size: 20px;
	}

	.pagenav .flex .col .icn span strong {
		font-size: 1.2rem;
	}

	.pagenav .flex .col .ttl {
		margin-bottom: 5px;
	}

	.pagenav .flex .col .ttl .icn {
		left: -35px;
	}

	.pagenav .flex .col p {
		font-size: 1.1rem;
	}

	.pagenav .flex .col p small {
		font-size: 1rem;
	}

	.pagenav .flex .col p strong {
		font-size: 1.4rem;
	}

	.pagenav .flex .col .name {
		font-size: 1.3rem;
	}

	.pagenav .flex .col .name small {
		font-size: 1rem;
	}

	.pagenav .flex .col .name.name2 {
		font-size: 1.2rem;
	}

	.pagenav .flex .col .name.name2 small {
		margin-bottom: 2px;
		font-size: .9rem;
	}

	.pagenav .flex .col.prev a {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding-right: 38%;
	}

	.pagenav .flex .col.next a {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding-left: 38%;
	}

	.pagenav .flex .col.next .txt .arrow {
		right: 15px;
	}

	.article-header-vol6.talk-header .caption {
		padding: 10px 16px;
		max-width: 91%;
		width: 91%;
	}

	.article-header-vol6.talk-header .caption .names .cross {
		left: 46%;
	}

	.article-header-vol9.talk-header .caption {
		padding: 10px 15px 10px 20px;
	}

	article.vol9 .btn {
		margin-bottom: 40px;
	}

	.listen .audio_contents {
		width: 88px;
	}

	.listen .listen-txt {
		width: calc(100% - 98px);
	}

	.listen .audiojs {
		margin: 0 auto;
		width: 140px;
	}

	.listen .audiojs .play-pause p {
		width: 88px;
		height: 88px;
	}

	#data .slider {
		margin: 0 auto;
		min-height: 440px;
		height: 100vw;
	}

	#data .slider ul li span {
		font-size: 1.5rem;
		line-height: 1.4;
	}

	#data .slider ul li figure img {
		max-height: 430px;
	}

	#data .slider ul li small {
		font-size: .9rem;
	}

	#mondai1 figure.mondai, #mondai2 figure.mondai {
		margin: 10px 00px;
	}

	.modalbox {
		margin: 0;
		padding: 0;
		border-width: 15px;
	}

	.modalbox > div {
		padding: 15px;
	}

	.modalbox h3 {
		margin-bottom: 20px;
		font-size: 2.2rem;
		line-height: 1.5;
	}

	.modalbox h4 {
		font-size: 1.8rem;
		line-height: 1.5;
	}

	#cboxPrevious, #cboxNext {
		top: auto;
		bottom: -42px;
		width: 42px;
		height: 42px;
	}

	#cboxPrevious:after, #cboxNext:after {
		display: block;
		margin-top: -18px;
		border-top: 18px solid transparent;
		border-bottom: 18px solid transparent;
	}

	#cboxPrevious {
		left: 0;
	}

	#cboxPrevious:after {
		border-right: 16px solid #fff;
	}

	#cboxNext {
		left: 42px;
	}

	#cboxNext:after {
		border-left: 16px solid #fff;
	}

	#cboxClose {
		right: 20px;
	}
}
