@charset "UTF-8";
/* =========================================================
 Foundation
========================================================= */
/* ---------------------------------------------------------
 Sanitize
--------------------------------------------------------- */
:root {
	-ms-overflow-style : -ms-autohiding-scrollbar;
	overflow-y : scroll;
	-webkit-text-size-adjust : 100%;
}

audio:not([controls]) {
	display : none;
}

button {
	overflow : visible;
}

details {
	display : block;
}

input[type=number] {
	width : auto;
}
input[type=search] {
	-webkit-appearance : textfield;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance : none;
}

main {
	display : block;
}

summary {
	display : block;
}

pre {
	overflow : auto;
}

progress {
	display : inline-block;
}

small {
	font-size : 75%;
}

template {
	display : none;
}

textarea {
	overflow : auto;
}

[hidden] {
	display : none;
}

*,
::before,
::after {
	box-sizing : inherit;
}

* {
	font-size : inherit;
	line-height : inherit;
}

::before,
::after {
	text-decoration : inherit;
	vertical-align : inherit;
}

*,
::before,
::after {
	border-style : solid;
	border-width : 0;
}

* {
	margin : 0;
	padding : 0;
}

:root {
	box-sizing : border-box;
	cursor : default;
	font : 62.5%/1 sans-serif;
	text-rendering : optimizeLegibility;
}

html {
	background-color : #ffffff;
	color : #000000;
}

a {
	text-decoration : none;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align : middle;
}

button,
input,
select,
textarea {
	background-color : transparent;
}

button,
input,
select,
textarea {
	color : inherit;
	font-family : inherit;
	font-style : inherit;
	font-weight : inherit;
}

button,
[type=button],
[type=date],
[type=datetime],
[type=datetime-local],
[type=email],
[type=month],
[type=number],
[type=password],
[type=reset],
[type=search],
[type=submit],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
select,
textarea {
	min-height : 1em;
}

code,
kbd,
pre,
samp {
	font-family : monospace, monospace;
}

nav ol,
nav ul {
	list-style : none;
}

select {
	   -moz-appearance : none;
	-webkit-appearance : none;
}
select::-ms-expand {
	display : none;
}
select::-ms-value {
	color : currentColor;
}

table {
	border-collapse : collapse;
	border-spacing : 0;
}

textarea {
	resize : vertical;
}

::-moz-selection {
	background-color : #b3d4fc;
	color : #000000;
	text-shadow : none;
}

::selection {
	background-color : #b3d4fc;
	color : #000000;
	text-shadow : none;
}

[aria-busy=true] {
	cursor : progress;
}

[aria-controls] {
	cursor : pointer;
}

[aria-disabled] {
	cursor : default;
}

[hidden][aria-hidden=false] {
	clip : rect(0 0 0 0);
	display : inherit;
	position : absolute;
}
[hidden][aria-hidden=false]:focus {
	clip : auto;
}

/* ---------------------------------------------------------
 Base
--------------------------------------------------------- */
html,
body {
	height : 100%;
	width : 100%;
}

body {
	height : 100%;
	color : #393939;
	background-color : #ffffff;
	word-wrap : break-word;
	font-size : 16px;
	font-family : "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height : 1.5;
	-webkit-text-size-adjust : 100%;
}

address {
	font-style : normal;
}

a {
	color : inherit;
	cursor : pointer;
	color : #414c6e;
}
a:link {
	color : #414c6e;
}
a:hover,
a:focus,
a:active {
	color : #2c67a9;
}

ul,
ol {
	list-style-type : none;
	margin : 0;
	padding : 0;
}

table {
	border-collapse : collapse;
	border-spacing : 0;
}

input[type=radio] {
	margin-left : 16px;
	margin-right : 8px;
}

input::-ms-clear {
	visibility : hidden;
}

select::-ms-expand {
	display : none;
}

img {
	vertical-align : top;
	border : none;
	max-width : 100%;
	height : auto;
}

/* =========================================================
 Layout
========================================================= */
/* ---------------------------------------------------------
 header
--------------------------------------------------------- */
.l_header {
	text-align : left;
	width : 100%;
}
@media screen and (min-width: 750px) {
	.l_header {
		height : 70px;
	}
}

.header {
	position : relative;
	z-index : 999;
}
.header__inner {
	display : flex;
	justify-content : flex-start;
	align-items : flex-start;
	flex-wrap : wrap;
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
}
@media screen and (min-width: 750px) {
	.header__inner {
		height : 70px;
		width : 1210px;
		padding-right : 55px;
		padding-left : 55px;
	}
}
.header--is-scrolled {
	position : fixed;
	left : 0;
	right : 0;
	top : 0;
}

.l_header--sp .header--overlay {
	position : absolute;
	left : 0;
	right : 0;
	top : 0;
	background-color : rgba(255, 255, 255, 0);
	transition : background 0.3s ease;
}
.l_header--sp .header--is-scrolled {
	position : fixed;
	left : 0;
	right : 0;
	top : 0;
	background-color : white;
	height : 4.5rem;
}
@media screen and (min-width: 750px) {
	.l_header--sp {
		display : none;
	}
}

.l_header--pc {
	display : none;
}
@media screen and (min-width: 750px) {
	.l_header--pc {
		display : block;
	}
	.l_header--pc .header {
		background-color : #ffffff;
	}
}

/* ---------------------------------------------------------
 main
--------------------------------------------------------- */
.l_main {
	background-color : #ffffff;
	text-align : left;
	position : relative;
	width : 100%;
}

/* ---------------------------------------------------------
 content
--------------------------------------------------------- */
.l_content {
	position : relative;
	display : flex;
	flex-direction : column;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
@media screen and (min-width: 750px) {
	.l_content {
		flex-direction : row;
	}
}

.l_content + .l_content {
	border-top : 1px solid #dbdbdb;
}

.l_content-main {
	width : 100%;
	padding-right : 15px;
	padding-left : 15px;
	margin-top : 24px;
	margin-bottom : 24px;
}
@media screen and (min-width: 750px) {
	.l_content-main {
		flex-shrink : 0;
		flex-grow : 0;
		width : 859px;
		margin-right : 56px;
		margin-top : 60px;
		margin-bottom : 60px;
		padding-left : 55px;
		padding-right : 0;
		margin-left : auto;
		box-sizing : border-box;
	}
}

.l_content-side {
	width : 100%;
	padding-right : 15px;
	padding-left : 15px;
	margin-bottom : 24px;
}
@media screen and (min-width: 750px) {
	.l_content-side {
		flex-shrink : 0;
		flex-grow : 0;
		width : 295px;
		margin-top : 60px;
		margin-bottom : 60px;
		padding-left : 0;
		padding-right : 55px;
		margin-right : auto;
		box-sizing : border-box;
	}
}

@media screen and (max-width: 749px) {
	.l_content-main--theme {
		order : 1;
		margin-top : 0;
	}
}

@media screen and (max-width: 749px) {
	.l_content-side--theme {
		order : 0;
		margin-top : 24px;
		margin-bottom : 24px;
		padding-top : 43px;
	}
}

.l_content-main > .archive {
	margin-top : 0;
}

/* ---------------------------------------------------------
 footer
--------------------------------------------------------- */
.l_footer {
	position : relative;
	text-align : left;
	width : 100%;
}
.l_footer__top {
	background-color : #ececec;
	padding-top : 6.4%;
	padding-bottom : 6.4%;
}
.l_footer__middle {
	background-color : #26385e;
	padding-top : 24px;
	padding-bottom : 24px;
}
.l_footer__bottom {
	background-color : #ffffff;
	padding : 3.2% 0;
}
@media screen and (min-width: 750px) {
	.l_footer__top {
		padding-top : 48px;
		padding-bottom : 48px;
	}
	.l_footer__middle {
		padding : 48px 0 80px;
	}
	.l_footer__bottom {
		padding : 20px 0;
	}
}

/* ---------------------------------------------------------
 wrapper
--------------------------------------------------------- */
.l_wrapper {
	position : relative;
	overflow : hidden;
}

/* =========================================================
 Object
========================================================= */
/* ---------------------------------------------------------
 Component
--------------------------------------------------------- */
/* accordion
--------------------------------------------------------- */
.accordion-panel .accordion-panel__head {
	width : 100%;
	position : relative;
	font-weight : 700;
	background-color : #f1f1f1;
	padding : 0.4em 1.25em 0.4em 3.125em;
}
.accordion-panel .accordion-panel__head i {
	display : block;
	width : 14px;
	height : 2px;
	background-color : #5f627c;
	position : absolute;
	top : 50%;
	left : 1.65em;
	transform : translate(-50%, -50%);
}
.accordion-panel .accordion-panel__head i:before {
	content : "";
	display : block;
	width : 14px;
	height : 2px;
	background-color : #5f627c;
	transform : rotate(90deg);
}
.accordion-panel .accordion-panel__head.is-accordion-open i:before {
	width : 0px;
	height : 0px;
}
.accordion-panel .accordion-panel__body {
	padding : 15px 15px 0;
}
@media screen and (min-width: 750px) {
	.accordion-panel .accordion-panel__body {
		padding : 20px 15px 0;
	}
}

/* container
--------------------------------------------------------- */
/* .container {
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
@media screen and (min-width: 750px) {
	.container {
		padding-right : 55px;
		padding-left : 55px;
	}
} */

/* .container--tiny {
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
@media screen and (min-width: 750px) {
	.container--tiny {
		width : 830px;
		padding-right : 55px;
		padding-left : 55px;
	}
} */

/* .container--small {
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
@media screen and (min-width: 750px) {
	.container--small {
		width : 1030px;
		padding-right : 55px;
		padding-left : 55px;
	}
} */

/* .container--full {
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
	position : relative;
	width : 100%;
}
@media screen and (min-width: 750px) {
	.container--full {
		width : 1210px;
		padding-right : 55px;
		padding-left : 55px;
	}
}

@media screen and (min-width: 750px) {
	.container--full-large {
		padding-left : 0;
		padding-right : 0;
		width : 100%;
	}
}

@media screen and (max-width: 749px) {
	.container--full-small {
		padding-left : 0;
		padding-right : 0;
		width : 100%;
	}
} */

/* article
--------------------------------------------------------- */
.article__item {
	position : relative;
	border-top : solid 1px #dbdbdb;
	background-image : url("/img/common/article_arrow_sp.png");
	background-position : right center;
	background-repeat : no-repeat;
	background-size : 10px auto;
	padding : 12px 30px 12px 0;
}
.article__item:hover {
	background-image : url("/img/common/article_arrow_sp_on.png");
	color : #2c67a9;
}
.article__item:after {
	display : block;
	clear : both;
	content : "";
}
@media screen and (min-width: 750px) {
	.article__item {
		background-image : url("/img/common/article_arrow_pc.png");
		padding : 25px 50px 25px 15px;
		background-size : 20px auto;
	}
	.article__item:hover {
		background-image : url("/img/common/article_arrow_pc_on.png");
	}
}
.article__thumb {
	float : left;
	width : 110px;
	margin-right : 15px;
}
@media screen and (min-width: 750px) {
	.article__thumb {
		width : 130px;
	}
}
.article__thumb img {
	opacity : 1;
	transition : all 0.2s linear;
}
.article__item:hover .article__thumb img {
	opacity : 0.6;
}
.article__title {
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : bold;
	line-height : 1.3;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.article__title {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 8px;
	}
}
.article__sub-title {
	font-size : 11px;
	font-size : 1.1rem;
	margin-bottom : 4px;
	line-height : 1.5;
}
@media screen and (min-width: 750px) {
	.article__sub-title {
		font-size : 14px;
		font-size : 1.4rem;
		margin-bottom : 8px;
	}
}
.article__content {
	overflow : hidden;
}
.article__content .archive__title {
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : bold;
	line-height : 1.3;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.article__content .archive__title {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 8px;
	}
}
.article__content .archive__sub-title {
	font-size : 11px;
	font-size : 1.1rem;
	margin-bottom : 4px;
	line-height : 1.5;
}
@media screen and (min-width: 750px) {
	.article__content .archive__sub-title {
		font-size : 14px;
		font-size : 1.4rem;
		margin-bottom : 8px;
	}
}
.article__content .archive__number {
	display : none;
}
.article__date {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7a7a7a;
	margin-bottom : 4px;
}
.article__date .label {
	margin-right : 7px;
}
.article__date .text--new {
	margin-left : 7px;
}
@media screen and (min-width: 750px) {
	.article__date {
		font-size : 14px;
		font-size : 1.4rem;
		margin-bottom : 0px;
	}
	.article__date .label {
		margin-right : 14px;
	}
	.article__date .text--new {
		margin-left : 14px;
	}
}
.article__link {
	height : 100%;
	left : 0;
	position : absolute;
	top : 0;
	width : 100%;
}
.article.grid-row {
	margin-top : 0;
}
.article.grid-row > .grid-col {
	margin-top : 0;
}

.article-card {
	width : 100%;
	display : flex;
	flex-wrap : wrap;
}
@media screen and (min-width: 750px) {
	.article-card {
		gap : 56px;
	}
}
.article-card__new {
	position : absolute;
	background-color : #d30085;
	border : 1px solid #ffffff;
	color : #ffffff;
	display : inline-block;
	padding : 0.5em 1em;
	line-height : 1;
	letter-spacing : 0.1em;
	font-weight : bold;
	font-size : 10px;
	font-size : 1rem;
	top : 17px;
	left : -3px;
	z-index : 100;
}
@media screen and (min-width: 750px) {
	.article-card__new {
		font-size : 12px;
		font-size : 1.2rem;
		right : -3px;
		top : -3px;
		left : auto;
	}
}
.article-card__item {
	position : relative;
	display : flex;
	flex-direction : row;
	align-items : flex-start;
}
@media screen and (max-width: 749px) {
	.article-card__item {
		width : 100%;
		border-bottom : solid 1px #dbdbdb;
		padding : 20px 0;
	}
	.article-card__item:first-child {
		border-top : solid 1px #dbdbdb;
	}
}
@media screen and (min-width: 750px) {
	.article-card__item {
		flex-direction : column;
		flex-shrink : 0;
		flex-grow : 0;
	}
}
@media screen and (min-width: 750px) {
	.article-card--2 .article-card__item {
		width : calc((100% - 56px) / 2);
	}
}
@media screen and (min-width: 750px) {
	.article-card--3 .article-card__item {
		width : calc((100% - 112px) / 3);
	}
}
@media screen and (max-width: 749px) {
	.article-card--sm-2 .article-card__item {
		width : calc((100% - 20px) / 2);
		flex-direction : column;
	}
}
@media screen and (max-width: 749px) {
	.article-card--sm-2 .article-card__media {
		width : 100%;
		margin-right : 0;
		margin-bottom : 16px;
	}
}
@media screen and (max-width: 749px) {
	.article-card--no-border {
		gap : 20px;
	}
}
@media screen and (max-width: 749px) {
	.article-card--no-border .article-card__item {
		border-bottom : 0;
		padding : 0;
	}
	.article-card--no-border .article-card__item:first-child {
		border-top : 0;
	}
}
.article-card__media {
	flex : 0 0 auto;
	width : 100px;
	display : block;
	overflow : hidden;
	position : relative;
	z-index : 1;
}
@media screen and (max-width: 749px) {
	.article-card__media {
		margin-right : 16px;
	}
}
@media screen and (min-width: 750px) {
	.article-card__media {
		width : 100%;
		margin-bottom : 24px;
	}
}
.article-card__media:before {
	content : "";
	padding-top : 56.25%;
	/* 16:9 */
	display : block;
}
.article-card__media img {
	opacity : 1;
	transition : all 0.2s linear;
	position : absolute;
	top : 50%;
	left : 50%;
	transform : translate(-50%, -50%);
	width : 100%;
	height : 100%;
	-o-object-fit : cover;
	   object-fit : cover;
}
.article-card__media img:hover {
	opacity : 0.6;
}
.article-card__content {
	flex : 1 1 auto;
}
.article-card__title {
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 16px;
}
.article-card__title::before {
	display : block;
	width : 0;
	height : 0;
	margin-top : calc((1 - 1.5) * 0.5em);
	content : "";
}
.article-card__title::after {
	display : block;
	width : 0;
	height : 0;
	margin-bottom : calc((1 - 1.5) * 0.5em);
	content : "";
}
@media screen and (min-width: 750px) {
	.article-card__title {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 24px;
	}
}
.article-card__title a {
	color : inherit;
}
.article-card__info {
	margin-bottom : 16px;
	display : flex;
	flex-wrap : wrap;
	gap : 4px 4px;
}
.article-card__update {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7e7e7e;
}
.article-card__update::before {
	display : block;
	width : 0;
	height : 0;
	margin-top : calc((1 - 1.5) * 0.5em);
	content : "";
}
.article-card__update::after {
	display : block;
	width : 0;
	height : 0;
	margin-bottom : calc((1 - 1.5) * 0.5em);
	content : "";
}
@media screen and (max-width: 749px) {
	.article-card__update {
		text-align : right;
	}
}
@media screen and (min-width: 750px) {
	.article-card__update {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

.article-related {
	width : 100%;
}
@media screen and (min-width: 750px) {
	.article-related {
		display : flex;
		flex-wrap : wrap;
		gap : 56px;
	}
}
.article-related__item {
	display : flex;
	align-items : center;
}
@media screen and (max-width: 749px) {
	.article-related__item {
		margin-bottom : 24px;
	}
	.article-related__item:last-child {
		margin-bottom : 0px;
	}
}
@media screen and (min-width: 750px) {
	.article-related__item {
		width : calc((100% - 56px) / 2);
	}
}
.article-related__media {
	flex : 0 0 auto;
	width : 100px;
	display : block;
	overflow : hidden;
	position : relative;
	z-index : 1;
	margin-right : 16px;
}
@media screen and (min-width: 750px) {
	.article-related__media {
		width : 233px;
	}
}
.article-related__media:before {
	content : "";
	padding-top : 100%;
	/* 1:1 */
	display : block;
}
@media screen and (min-width: 750px) {
	.article-related__media:before {
		padding-top : 56.25%;
		/* 16:9 */
	}
}
.article-related__media img {
	opacity : 1;
	transition : all 0.2s linear;
	position : absolute;
	top : 50%;
	left : 50%;
	transform : translate(-50%, -50%);
	width : 100%;
	height : 100%;
	-o-object-fit : cover;
	   object-fit : cover;
}
.article-related__media img:hover {
	opacity : 0.6;
}
.article-related__content {
	flex : 1 1 auto;
}
.article-related__title {
	font-size : 14px;
	font-size : 1.4rem;
}
.article-related__title::before {
	display : block;
	width : 0;
	height : 0;
	margin-top : calc((1 - 1.5) * 0.5em);
	content : "";
}
.article-related__title::after {
	display : block;
	width : 0;
	height : 0;
	margin-bottom : calc((1 - 1.5) * 0.5em);
	content : "";
}
@media screen and (min-width: 750px) {
	.article-related__title {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.article-related__title a {
	color : inherit;
}

/* avatar
--------------------------------------------------------- */
.avatar {
	position : relative;
	display : block;
	overflow : hidden;
	margin : 0 auto;
	text-align : center;
	margin-top : 20px;
}
.avatar__img {
	width : 32%;
	height : auto;
	margin-left : auto;
	margin-right : auto;
	margin-bottom : 15px;
}
.avatar__img img {
	border-radius : 100%;
}
.avatar__title {
	font-size : 10px;
	font-size : 1rem;
}
.avatar__name-ja {
	font-size : 16px;
	font-size : 1.6rem;
	font-weight : bold;
}
.avatar__name-en {
	font-size : 8px;
	font-size : 0.8rem;
	margin-top : 4px;
}
@media screen and (min-width: 750px) {
	.avatar {
		margin-top : 0px;
	}
	.avatar__img {
		width : 240px;
		height : 240px;
	}
	.avatar__title {
		font-size : 14px;
		font-size : 1.4rem;
	}
	.avatar__name-ja {
		font-size : 24px;
		font-size : 2.4rem;
	}
	.avatar__name-en {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
.avatar .link {
	text-decoration : none;
}

/* feature
--------------------------------------------------------- */
.feature.grid-row {
	margin-left : -10px;
	margin-right : -10px;
}
.feature.grid-row > .grid-col {
	padding-left : 10px;
	padding-right : 10px;
}
@media screen and (min-width: 750px) {
	.feature.grid-row {
		margin-left : -15px;
		margin-right : -15px;
		margin-top : -48px;
	}
	.feature.grid-row > .grid-col {
		padding-left : 15px;
		padding-right : 15px;
		margin-top : 48px;
	}
}
@media screen and (min-width: 750px) {
	.feature__header {
		margin-bottom : 20px;
		display : flex;
		align-items : center;
		min-height : 60px;
	}
}
@media screen and (max-width: 749px) {
	.feature__body {
		overflow : hidden;
		margin-left : 80px;
	}
}
@media screen and (max-width: 749px) {
	.feature__left {
		float : left;
		margin-right : 16px;
	}
}
@media screen and (min-width: 750px) {
	.feature__left {
		margin-right : 10px;
	}
}
.feature__img--icon {
	width : 64px;
	height : auto;
}
@media screen and (min-width: 750px) {
	.feature__img--icon {
		width : 64px;
		height : auto;
	}
}
.feature__heading {
	font-size : 16px;
	font-size : 1.6rem;
	margin-bottom : 12px;
}
.feature__heading a {
	text-decoration : underline;
}
.feature__heading a:hover {
	text-decoration : none;
}
@media screen and (min-width: 750px) {
	.feature__heading {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 0;
	}
}
.feature__caption {
	color : #7e7e7e;
	font-size : 14px;
	font-size : 1.4rem;
	line-height : 1.5;
	margin-bottom : 12px;
}
@media screen and (min-width: 750px) {
	.feature__caption {
		margin-bottom : 20px;
	}
}

/* bar
--------------------------------------------------------- */
.bar {
	background-color : #ffffff;
	position : relative;
	padding-top : 0;
	z-index : 5;
}
@media screen and (min-width: 750px) {
	.bar {
		background-color : #f1f1f1;
		padding-top : 16px;
		padding-bottom : 16px;
	}
}

.bar__inner {
	padding-right : 15px;
	padding-left : 15px;
	margin-left : auto;
	margin-right : auto;
}
@media screen and (min-width: 750px) {
	.bar__inner {
		display : flex;
		justify-content : flex-start;
		align-items : center;
		width : 1210px;
		padding-right : 55px;
		padding-left : 55px;
	}
}

/* beadcrumb
--------------------------------------------------------- */
.breadcrumb {
	display : none;
	margin-right : auto;
}
@media screen and (min-width: 750px) {
	.breadcrumb {
		display : block;
		position : relative;
		margin-top : 6px;
		margin-bottom : 6px;
		font-size : 12px;
		font-size : 1.2rem;
		color : #7a7a7a;
		line-height : 1.6;
	}
	.breadcrumb a {
		color : inherit;
	}
	.breadcrumb a:hover {
		color : inherit;
	}
	.breadcrumb > li {
		display : inline;
	}
	.breadcrumb > li:before {
		content : "\f105";
		font-family : FontAwesome;
		line-height : inherit;
		vertical-align : inherit;
		color : inherit;
		margin : 0 8px;
	}
	.breadcrumb > li:first-child:before {
		content : "";
		margin : 0;
	}
	.breadcrumb > li a:hover {
		text-decoration : underline;
	}
}

/* btn
--------------------------------------------------------- */
.btn {
	display : inline-block;
	border : 0;
	text-align : center;
	vertical-align : middle;
	touch-action : manipulation;
	cursor : pointer;
	padding : 0 1.5em;
	line-height : 32px;
	outline : none;
	position : relative;
	font-weight : bold;
}
.btn:link,
.btn:active,
.btn:hover,
.btn:visited {
	color : #ffffff;
	text-decoration : none;
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
	cursor : not-allowed;
	opacity : 0.65;
	filter : alpha(opacity=65);
}
@media screen and (max-width: 749px) {
	.btn .br-sp-only {
		display : inline-block;
	}
}
@media screen and (min-width: 750px) {
	.btn {
		white-space : nowrap;
	}
	.btn .br-pc-only {
		display : inline-block;
	}
}

.btn-default--border {
	color : #393939 !important;
	border : #dbdbdb solid 2px;
	border-radius : 5px;
}
.btn-default--border:link {
	color : #393939;
}
.btn-default--border:hover,
.btn-default--border:active,
.btn-default--border:focus {
	color : #ffffff !important;
	background-color : #dbdbdb;
	border : #dbdbdb solid 2px;
}
.btn-default--border.disabled:hover,
.btn-default--border[disabled]:hover,
fieldset[disabled] .btn-default--border:hover {
	border-color : #dbdbdb;
	color : #dbdbdb !important;
}

.btn-primary--border {
	color : #26385e !important;
	border : #26385e solid 2px;
	border-radius : 5px;
}
.btn-primary--border:link {
	color : #26385e;
}
.btn-primary--border:hover,
.btn-primary--border:active,
.btn-primary--border:focus {
	color : #ffffff !important;
	background-color : #26385e;
	border : #26385e solid 2px;
}
.btn-primary--border.disabled:hover,
.btn-primary--border[disabled]:hover,
fieldset[disabled] .btn-primary--border:hover {
	border-color : #26385e;
	color : #26385e !important;
}

.btn-secondary--border {
	color : #7e7e7e !important;
	border : #7e7e7e solid 2px;
	border-radius : 5px;
}
.btn-secondary--border:link {
	color : #7e7e7e;
}
.btn-secondary--border:hover,
.btn-secondary--border:active,
.btn-secondary--border:focus {
	color : #ffffff !important;
	background-color : #7e7e7e;
	border : #7e7e7e solid 2px;
}
.btn-secondary--border.disabled:hover,
.btn-secondary--border[disabled]:hover,
fieldset[disabled] .btn-secondary--border:hover {
	border-color : #7e7e7e;
	color : #7e7e7e !important;
}

.btn-highlight--border {
	color : #2c67a9 !important;
	border : #2c67a9 solid 2px;
	border-radius : 5px;
	background-color : #ffffff;
}
.btn-highlight--border:link {
	color : #2c67a9;
}
.btn-highlight--border:hover,
.btn-highlight--border:active,
.btn-highlight--border:focus {
	color : #ffffff !important;
	background-color : #2c67a9;
	border : #2c67a9 solid 2px;
}
.btn-highlight--border.disabled:hover,
.btn-highlight--border[disabled]:hover,
fieldset[disabled] .btn-highlight--border:hover {
	border-color : #2c67a9;
	color : #2c67a9 !important;
}

.btn-default--flat {
	color : #393939 !important;
	background-color : #ececec;
	border : solid 1px white;
	border-radius : 5px;
}
.btn-default--flat:link {
	color : #393939 !important;
	background-color : #ececec;
}
.btn-default--flat:hover,
.btn-default--flat:active,
.btn-default--flat:focus {
	color : #535353 !important;
	background-color : #fbfbfb;
	border : solid 1px white;
}
.btn-default--flat.disabled,
.btn-default--flat[disabled],
fieldset[disabled] .btn-default--flat {
	background-color : #ececec;
	border-color : white;
}

.btn-primary--flat {
	color : #ffffff !important;
	background-color : #26385e;
	border : solid 1px #26385e;
	border-radius : 5px;
}
.btn-primary--flat:link {
	color : #ffffff !important;
	background-color : #26385e;
}
.btn-primary--flat:hover,
.btn-primary--flat:active,
.btn-primary--flat:focus {
	color : white !important;
	background-color : #2f4574;
	border : solid 1px #2f4574;
}
.btn-primary--flat.disabled,
.btn-primary--flat[disabled],
fieldset[disabled] .btn-primary--flat {
	background-color : #26385e;
	border-color : #26385e;
}

.btn-secondary--flat {
	color : #ffffff !important;
	background-color : #7e7e7e;
	border : solid 1px #7e7e7e;
	border-radius : 5px;
}
.btn-secondary--flat:link {
	color : #ffffff !important;
	background-color : #7e7e7e;
}
.btn-secondary--flat:hover,
.btn-secondary--flat:active,
.btn-secondary--flat:focus {
	color : white !important;
	background-color : #8d8d8d;
	border : solid 1px #8d8d8d;
}
.btn-secondary--flat.disabled,
.btn-secondary--flat[disabled],
fieldset[disabled] .btn-secondary--flat {
	background-color : #7e7e7e;
	border-color : #7e7e7e;
}

.btn-highlight--flat {
	color : #ffffff !important;
	background-color : #2c67a9;
	border : solid 1px #2c67a9;
	border-radius : 5px;
}
.btn-highlight--flat:link {
	color : #ffffff !important;
	background-color : #2c67a9;
}
.btn-highlight--flat:hover,
.btn-highlight--flat:active,
.btn-highlight--flat:focus {
	color : white !important;
	background-color : #3276c1;
	border : solid 1px #3276c1;
}
.btn-highlight--flat.disabled,
.btn-highlight--flat[disabled],
fieldset[disabled] .btn-highlight--flat {
	background-color : #2c67a9;
	border-color : #2c67a9;
}

.btn--large {
	font-size : 12px;
	line-height : 37px;
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.btn--large {
		font-size : 20px;
		line-height : 58px;
		font-size : 20px;
		font-size : 2rem;
	}
}

.btn--middle {
	font-size : 14px;
	font-size : 1.4rem;
	line-height : 1.5;
	padding : 0.5em 1em;
}
.btn--small {
	font-size : 10px;
	font-size : 1rem;
	line-height : 1.3;
	padding : 0.5em;
}
@media screen and (min-width: 750px) {
	.btn--small {
		font-size : 14px;
		font-size : 1.4rem;
		padding : 0.5em 1em;
	}
}

.btn--block {
	display : block;
	width : 100%;
}

.btn-group {
	display : flex;
	flex-wrap : wrap;
	overflow : hidden;
	margin-top : -10px;
}
.btn-group .btn-group__item {
	flex : 0 0 auto;
	margin-right : 10px;
	margin-top : 10px;
}
.btn-group .btn-group__item:last-child {
	margin-right : 0;
}

/* card
--------------------------------------------------------- */
.card {
	display : block;
	position : relative;
	margin-top : 10px;
	margin-bottom : 10px;
}
@media screen and (min-width: 750px) {
	.card {
		max-width : 320px;
	}
}
.card:after {
	display : block;
	clear : both;
	content : "";
}
.card__thumb {
	margin-right : 14px;
	width : 135px;
	float : left;
}
@media screen and (min-width: 750px) {
	.card__thumb {
		float : none;
		width : 100%;
		margin-bottom : 12px;
		overflow : hidden;
		background-color : #333333;
		display : inline-block;
	}
}
.card__thumb a {
	display : block;
}
@media screen and (min-width: 750px) {
	.card__thumb a:hover img {
		transform : scale(1.2);
		opacity : 0.7;
	}
}
.card__thumb img {
	vertical-align : top;
}
@media screen and (min-width: 750px) {
	.card__thumb img {
		transition : all 0.3s linear;
		opacity : 1;
	}
}
.card__heading {
	font-size : 12px;
	font-size : 1.2rem;
	font-weight : bold;
	display : block;
	line-height : 1.7;
	margin-bottom : 0.5em;
}
@media screen and (min-width: 750px) {
	.card__heading {
		font-size : 16px;
		font-size : 1.6rem;
		line-height : 2;
	}
}
.card__heading a {
	line-height : 1.3;
	display : table-cell;
}
.card__heading a:after {
	content : "\f105";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
	margin-left : 4px;
	margin-right : 4px;
	display : inline;
}
@media screen and (min-width: 750px) {
	.card__heading a:after {
		margin-left : 8px;
		margin-right : 8px;
	}
}
.card__content {
	margin-bottom : 0;
	overflow : hidden;
}
@media screen and (min-width: 750px) {
	.card__content {
		width : 100%;
	}
}
.card__text {
	font-size : 13px;
	font-size : 1.3rem;
	line-height : 1.5;
	clear : both;
	margin-top : 4px;
	margin-bottom : 4px;
	font-weight : bold;
}
@media screen and (min-width: 750px) {
	.card__text {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 6px;
	}
}
.card__text a {
	color : #393939;
}
.card__text a:hover {
	text-decoration : underline;
}
.card__date {
	color : #7e7e7e;
	font-size : 11px;
	font-size : 1.1rem;
}
@media screen and (min-width: 750px) {
	.card__date {
		font-size : 14px;
		font-size : 1.4rem;
		margin-top : 4px;
	}
}
.card .label {
	margin-right : 8px;
	float : left;
	line-height : 1.7;
}

/* section
--------------------------------------------------------- */
.section {
	width : 100%;
}
.section .grid-row {
	margin-left : -10px;
	margin-right : -10px;
}
.section .grid-row > .grid-col {
	padding-left : 10px;
	padding-right : 10px;
}
@media screen and (min-width: 750px) {
	.section .grid-row {
		margin-left : -15px;
		margin-right : -15px;
	}
	.section .grid-row > .grid-col {
		padding-left : 15px;
		padding-right : 15px;
	}
}

.section__header-img {
	width : 100%;
	height : 17.5rem;
	margin-left : auto;
	margin-right : auto;
}
@media screen and (min-width: 750px) {
	.section__header-img {
		width : 1210px;
		height : 310px;
		padding-right : 55px;
		padding-left : 55px;
	}
}
.section__header-img .section__header-img__inner {
	display : flex;
	justify-content : center;
	align-items : center;
	position : relative;
	width : 100%;
	height : 100%;
	background-repeat : no-repeat;
	background-size : cover;
	background-position : 50% 50%;
}
.section__header-img .section__header-img__inner > .heading {
	color : #ffffff;
	position : relative;
	z-index : 1;
	font-size : 18px;
	font-size : 1.8rem;
	text-align : center;
	line-height : 1.5;
	letter-spacing : 0.15em;
}
.section__header-img .section__header-img__inner:after {
	content : "";
	background-color : #414c6e;
	position : absolute;
	left : 0;
	top : 0;
	right : 0;
	bottom : 0;
	opacity : 0.5;
}
@media screen and (min-width: 750px) {
	.section__header-img .section__header-img__inner > .heading {
		font-size : 30px;
		font-size : 3rem;
		letter-spacing : 0.15em;
	}
}

/* section__inner */
.section__inner {
	padding-top : 24px;
	padding-bottom : 24px;
	position : relative;
}
@media screen and (min-width: 750px) {
	.section__inner {
		padding-top : 60px;
		padding-bottom : 60px;
	}
}

/* section__header */
.section__header {
	line-height : 1.2;
	margin-bottom : 28px;
}
.section__header .heading {
	font-size : 20px;
	font-size : 2rem;
}
.section__header .heading__sub-text {
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (max-width: 749px) {
	.section__header .heading__sub-text {
		display : block;
		margin-top : 8px;
	}
}
@media screen and (min-width: 750px) {
	.section__header {
		margin-bottom : 48px;
	}
	.section__header .heading {
		font-size : 30px;
		font-size : 3rem;
	}
	.section__header .heading__sub-text {
		font-size : 14px;
		font-size : 1.4rem;
		margin-left : 24px;
	}
}

.section__header--border {
	border-bottom : 1px solid #ececec;
	padding : 8px 0;
}

.section__header--column .heading {
	display : flex;
	flex-direction : column;
	font-size : 20px;
	font-size : 2rem;
}
.section__header--column .heading .heading__sub-text {
	display : block;
	margin-left : 0;
	padding : 8px 0;
}

.section-label {
	margin-bottom : 10px;
}
@media screen and (min-width: 750px) {
	.section-label {
		margin-bottom : 16px;
	}
}

/* section__text */
.section__text {
	margin-top : 4px;
	margin-bottom : 24px;
}
.section__text:after {
	display : block;
	clear : both;
	content : "";
}
.section__text > p {
	margin-bottom : 12px;
	line-height : 1.7;
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.section__text {
		margin-top : 16px;
		margin-bottom : 32px;
	}
	.section__text > p {
		margin-bottom : 14px;
		font-size : 14px;
		font-size : 1.4rem;
	}
}

/* section__link */
.section__link {
	margin-bottom : 12px;
}
.section__link .link {
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.section__link {
		margin-bottom : 14px;
	}
	.section__link .link {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

/* section__list */
.section__list {
	font-size : 14px;
	font-size : 1.4rem;
}
.section__list a {
	text-decoration : underline;
}
.section__list a:hover {
	text-decoration : none;
}
@media screen and (min-width: 750px) {
	.section__list {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

.section__list--two {
	margin-top : 4px;
}
@media screen and (min-width: 750px) {
	.section__list--two {
		-moz-column-count : 2;
		     column-count : 2;
		margin-top : 16px;
	}
	.section__list--two > li {
		padding-right : 1em;
	}
}

@media screen and (min-width: 750px) {
	.section__list--three {
		-moz-column-count : 3;
		     column-count : 3;
	}
}

@media screen and (min-width: 750px) {
	.section__list--four {
		-moz-column-count : 4;
		     column-count : 4;
	}
}

.section__group:after {
	display : block;
	clear : both;
	content : "";
}

.section__group + .section__group {
	margin-top : 20px;
}
@media screen and (min-width: 750px) {
	.section__group + .section__group {
		margin-top : 56px;
	}
}

.section__title--sm {
	margin-bottom : 20px;
}
@media screen and (min-width: 750px) {
	.section__title--sm {
		margin-bottom : 10px;
	}
}

.list + .section__title,
.list + .section__title--sm {
	margin-top : 30px;
}

.section-navi-heading {
	margin-bottom : 12px;
}
@media screen and (min-width: 750px) {
	.section-navi-heading {
		margin-bottom : 24px;
	}
}

.section-navi {
	font-size : 12px;
	font-size : 1.2rem;
	margin-bottom : 0.5em;
}
@media screen and (min-width: 750px) {
	.section-navi {
		font-size : 14px;
		font-size : 1.4rem;
		display : flex;
		flex-wrap : wrap;
		-moz-column-gap : 24px;
		     column-gap : 24px;
		row-gap : 8px;
		margin-bottom : 8px;
	}
	.section-navi li {
		padding-top : 8px;
		padding-bottom : 8px;
		margin-bottom : 0;
		line-height : 1;
	}
	.section-navi li + li {
		padding-left : 38px;
		border-left : 1px solid #dbdbdb;
	}
}
.section-navi:last-of-type {
	margin-bottom : 24px;
}
@media screen and (min-width: 750px) {
	.section-navi:last-of-type {
		margin-bottom : 56px;
	}
}

@media screen and (min-width: 750px) {
	.section--sm {
		padding-top : 18px;
		padding-bottom : 18px;
	}
}

.section--md {
	padding-top : 24px;
	padding-bottom : 24px;
}
@media screen and (min-width: 750px) {
	.section--md {
		padding-top : 40px;
		padding-bottom : 40px;
	}
}
.section--md .section__header {
	margin-bottom : 10px;
}
@media screen and (min-width: 750px) {
	.section--md .section__header {
		margin-bottom : 0;
		font-size : 16px;
		font-size : 1.6rem;
	}
}

@media screen and (min-width: 750px) {
	.section--column {
		display : flex;
		flex-wrap : wrap;
	}
	.section--column .section__header {
		width : 180px;
		padding-right : 1em;
		margin-bottom : 0;
	}
	.section--column .heading__sub-text {
		display : block;
		margin-left : 0;
	}
}
@media screen and (min-width: 750px) and (min-width: 750px) {
	.section--column .heading__sub-text {
		padding : 8px 0;
	}
}
@media screen and (min-width: 750px) {
	.section--column .section__body {
		width : 920px;
		position : relative;
	}
}

.section__body > *:last-child {
	margin-bottom : 0;
}

.section--panel {
	background-color : #ffffff;
	margin-left : 4px;
	margin-right : 4px;
	margin-bottom : 14px;
	padding-bottom : 24px;
	padding-top : 24px;
	position : relative;
	margin-top : 0;
}
@media screen and (min-width: 750px) {
	.section--panel {
		min-width : 1100px;
		margin-left : 55px;
		margin-right : 55px;
		margin-bottom : 55px;
		padding-bottom : 60px;
		padding-top : 60px;
		padding : 18px 0;
	}
	.section--panel .breadcrumb {
		margin : 0 24px;
	}
}

.section--bg {
	background-color : #f1f1f1;
}

/* label
--------------------------------------------------------- */
.label {
	display : inline-block;
	background-color : #989898;
	padding : 0.5em 1.33em;
	border-radius : 0.33em;
	color : #ffffff;
	font-size : 9px;
	font-size : 0.9rem;
	text-align : center;
	font-weight : normal;
	letter-spacing : 0.1em;
	font-weight : bold;
}
.label::before {
	display : block;
	width : 0;
	height : 0;
	margin-top : calc((1 - 1.5) * 0.5em);
	content : "";
}
.label::after {
	display : block;
	width : 0;
	height : 0;
	margin-bottom : calc((1 - 1.5) * 0.5em);
	content : "";
}
@media screen and (min-width: 750px) {
	.label {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
.label-blue {
	background-color : #52b0db;
}
.label-green {
	background-color : #6dbcae;
}
.label-yellow {
	background-color : #d7ba54;
}
.label-purple {
	background-color : #9898fb;
}
.label-pink {
	background-color : #be7fd0;
}

.category-label {
	font-size : 9px;
	font-size : 0.9rem;
	display : inline-block;
	letter-spacing : normal;
	border : 2px solid #cccccc;
	padding : 6px 8px;
	border-radius : 4px;
	line-height : 1;
	color : #ffffff;
}
.category-label a {
	color : inherit;
	display : inline-block;
}
@media screen and (min-width: 750px) {
	.category-label {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
.category-label:hover {
	border-color : inherit;
	background-color : #ffffff;
}
.category-label:hover a {
	color : inherit;
}

.category-label--higher {
	background-color : #c986d5;
	border-color : #c986d5;
}
.category-label--higher:link {
	color : #ffffff;
}
.category-label--higher:hover {
	color : #c986d5;
}

.category-label--secondary {
	background-color : #d9ba3a;
	border-color : #d9ba3a;
}
.category-label--secondary:link {
	color : #ffffff;
}
.category-label--secondary:hover {
	color : #d9ba3a;
}

.category-label--research {
	background-color : #38a6d7;
	border-color : #38a6d7;
}
.category-label--research:link {
	color : #ffffff;
}
.category-label--research:hover {
	color : #38a6d7;
}

.category-label--movie {
	background-color : #57bbab;
	border-color : #57bbab;
}
.category-label--movie:link {
	color : #ffffff;
}
.category-label--movie:hover {
	color : #57bbab;
}

.theme-label {
	font-size : inherit;
	font-size : 9px;
	font-size : 0.9rem;
	display : inline-block;
	letter-spacing : normal;
	border : 2px solid #cccccc;
	padding : 6px 8px;
	border-radius : 4px;
	line-height : 1;
}
.theme-label a {
	display : inline-block;
}
@media screen and (min-width: 750px) {
	.theme-label {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
.theme-label:hover {
	border-color : #2c67a9;
	color : #2c67a9;
	background-color : #ffffff;
}
.theme-label:hover a {
	color : inherit;
}

.new-label {
	background-color : #d30085;
	color : #ffffff;
	display : inline-block;
	padding : 0.35em 0.85em;
	line-height : 1;
	letter-spacing : 0.1em;
	font-weight : bold;
	font-size : 10px;
	font-size : 1rem;
	margin-left : 0.5em;
	margin-right : 0.5em;
	vertical-align : middle;
}

/* link
--------------------------------------------------------- */
.link {
	font-size : inherit;
	text-decoration : underline;
	color : #393939;
}
.link:hover {
	text-decoration : none;
}
.link--more {
	font-weight : bold;
}
.link--more:before {
	content : "→";
	margin-right : 4px;
	display : inline-block;
}

.link--top-right {
	position : absolute;
	top : 0;
	right : 20px;
}

.link--arrow-right:after {
	content : "\f105";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
	margin-left : 4px;
	display : inline-block;
	text-decoration : none;
}

.link--pdf:after {
	content : "";
	background-image : url("/img/common/icon_pdf.png");
	background-position : left top;
	background-repeat : no-repeat;
	background-size : cover;
	margin-left : 8px;
	width : 18px;
	height : 18px;
	display : inline-block;
	vertical-align : -0.25em;
}

.link--external:after {
	content : "\f08e";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	margin-left : 4px;
	display : inline-block;
	text-decoration : none;
}

.link--icon-arrow {
	text-decoration : underline;
}
.link--icon-arrow:before {
	content : "\f138";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : #3485cf;
	margin-right : 4px;
	display : inline-block;
	text-decoration : none;
}

/* list
--------------------------------------------------------- */
.list > li {
	font-size : inherit;
	margin-bottom : 0.5em;
	line-height : 1.5;
}
.list > li:last-child {
	margin-bottom : 0;
}
.list dl {
	margin-top : 0.5em;
	display : table;
}
.list dt {
	font-weight : normal;
	word-break : keep-all;
	display : table-cell;
	padding-right : 1em;
}
.list dd {
	display : table-cell;
}

.list-child {
	margin-top : 0.35em;
}

.list--default {
	font-size : 14px;
	font-size : 1.4rem;
}

/* list--border */
.list--border > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--border > li:before {
	content : "ー";
}

/* list--square */
.list--square > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--square > li:before {
	content : "■";
	margin-right : 0.15em;
}

/* list--box */
.list--box > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--box > li:before {
	content : "□";
	margin-right : 0.15em;
}

/* list--circle */
.list--circle > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--circle > li:before {
	content : "○";
	margin-right : 0.15em;
}

/* list--dotted-decimal ドット付き数字(⒈, ⒉, ⒊...) */
.list--dotted-decimal {
	counter-reset : decimal-counter;
	display : table;
}
.list--dotted-decimal > li {
	display : table-row;
}
.list--dotted-decimal > li:after {
	content : "";
	display : block;
	margin-top : 0.5em;
}
.list--dotted-decimal > li:before {
	content : counter(decimal-counter) ".";
	counter-increment : decimal-counter;
	display : table-cell;
	padding-right : 0.25em;
	text-align : right;
}

/* list--bracket-decimal （1）、（2）、（3）...*/
.list--bracket-decimal {
	counter-reset : bracket-decimal-counter;
	display : table;
}
.list--bracket-decimal > li {
	display : table-row;
}
.list--bracket-decimal > li:after {
	content : "";
	display : block;
	margin-top : 0.5em;
}
.list--bracket-decimal > li:before {
	content : "(" counter(bracket-decimal-counter) ")";
	counter-increment : bracket-decimal-counter;
	display : table-cell;
	padding-right : 0.25em;
	text-align : right;
}

/* list--circled-decimal 丸数字(①, ②, ③...) */
.list--circled-decimal li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--circled-decimal li:before {
	display : marker;
}
.list--circled-decimal li:nth-of-type(1):before {
	content : "①";
}
.list--circled-decimal li:nth-of-type(2):before {
	content : "②";
}
.list--circled-decimal li:nth-of-type(3):before {
	content : "③";
}
.list--circled-decimal li:nth-of-type(4):before {
	content : "④";
}
.list--circled-decimal li:nth-of-type(5):before {
	content : "⑤";
}
.list--circled-decimal li:nth-of-type(6):before {
	content : "⑥";
}
.list--circled-decimal li:nth-of-type(7):before {
	content : "⑦";
}
.list--circled-decimal li:nth-of-type(8):before {
	content : "⑧";
}
.list--circled-decimal li:nth-of-type(9):before {
	content : "⑨";
}
.list--circled-decimal li:nth-of-type(10):before {
	content : "⑩";
}
.list--circled-decimal li:nth-of-type(11):before {
	content : "⑪";
}
.list--circled-decimal li:nth-of-type(12):before {
	content : "⑫";
}
.list--circled-decimal li:nth-of-type(13):before {
	content : "⑬";
}
.list--circled-decimal li:nth-of-type(14):before {
	content : "⑭";
}
.list--circled-decimal li:nth-of-type(15):before {
	content : "⑮";
}
.list--circled-decimal li:nth-of-type(16):before {
	content : "⑯";
}
.list--circled-decimal li:nth-of-type(17):before {
	content : "⑰";
}
.list--circled-decimal li:nth-of-type(18):before {
	content : "⑱";
}
.list--circled-decimal li:nth-of-type(19):before {
	content : "⑲";
}
.list--circled-decimal li:nth-of-type(20):before {
	content : "⑳";
}
.list--circled-decimal li:nth-of-type(21):before {
	content : "㉑";
}
.list--circled-decimal li:nth-of-type(22):before {
	content : "㉒";
}
.list--circled-decimal li:nth-of-type(23):before {
	content : "㉓";
}
.list--circled-decimal li:nth-of-type(24):before {
	content : "㉔";
}
.list--circled-decimal li:nth-of-type(25):before {
	content : "㉕";
}
.list--circled-decimal li:nth-of-type(26):before {
	content : "㉖";
}
.list--circled-decimal li:nth-of-type(27):before {
	content : "㉗";
}
.list--circled-decimal li:nth-of-type(28):before {
	content : "㉘";
}
.list--circled-decimal li:nth-of-type(29):before {
	content : "㉙";
}
.list--circled-decimal li:nth-of-type(30):before {
	content : "㉚";
}
.list--circled-decimal li:nth-of-type(31):before {
	content : "㉛";
}
.list--circled-decimal li:nth-of-type(32):before {
	content : "㉜";
}
.list--circled-decimal li:nth-of-type(33):before {
	content : "㉝";
}
.list--circled-decimal li:nth-of-type(34):before {
	content : "㉞";
}
.list--circled-decimal li:nth-of-type(35):before {
	content : "㉟";
}
.list--circled-decimal li:nth-of-type(36):before {
	content : "㊱";
}
.list--circled-decimal li:nth-of-type(37):before {
	content : "㊲";
}
.list--circled-decimal li:nth-of-type(38):before {
	content : "㊳";
}
.list--circled-decimal li:nth-of-type(39):before {
	content : "㊴";
}
.list--circled-decimal li:nth-of-type(40):before {
	content : "㊵";
}
.list--circled-decimal li:nth-of-type(41):before {
	content : "㊶";
}
.list--circled-decimal li:nth-of-type(42):before {
	content : "㊷";
}
.list--circled-decimal li:nth-of-type(43):before {
	content : "㊸";
}
.list--circled-decimal li:nth-of-type(44):before {
	content : "㊹";
}
.list--circled-decimal li:nth-of-type(45):before {
	content : "㊺";
}
.list--circled-decimal li:nth-of-type(46):before {
	content : "㊻";
}
.list--circled-decimal li:nth-of-type(47):before {
	content : "㊼";
}
.list--circled-decimal li:nth-of-type(48):before {
	content : "㊽";
}
.list--circled-decimal li:nth-of-type(49):before {
	content : "㊾";
}
.list--circled-decimal li:nth-of-type(50):before {
	content : "㊿";
}

/* list--upper-roman 大文字ローマ数字(I, II, III...) */
.list--upper-roman {
	counter-reset : upper-roman-counter;
	display : table;
}
.list--upper-roman > li {
	display : table-row;
}
.list--upper-roman > li:after {
	content : "";
	display : block;
	margin-top : 0.5em;
}
.list--upper-roman > li:before {
	content : counter(upper-roman-counter, upper-roman) ".";
	counter-increment : upper-roman-counter;
	display : table-cell;
	padding-right : 0.25em;
	text-align : right;
}

/* list--lower-roman 小文字ローマ数字(i, ii, iii...) */
.list--lower-roman {
	counter-reset : lower-roman-counter;
	display : table;
}
.list--lower-roman > li {
	display : table-row;
}
.list--lower-roman > li:after {
	content : "";
	display : block;
	margin-top : 0.5em;
}
.list--lower-roman > li:before {
	content : counter(lower-roman-counter, lower-roman) ".";
	counter-increment : lower-roman-counter;
	display : table-cell;
	padding-right : 0.25em;
	text-align : right;
}

/* list--notes 注釈*/
.list--notes > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--notes > li:before {
	content : "※";
}

/* list--notes-counter 注釈複数*/
.list--notes-counter {
	counter-reset : notes-counter;
}
.list--notes-counter > li {
	text-indent : -2em;
	padding-left : 2em;
}
.list--notes-counter > li:before {
	content : "※" counter(notes-counter);
	counter-increment : notes-counter;
	margin-right : 0.25em;
}

/* list--arrow-right */
.list--arrow-right > li:after {
	content : "\f105";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
	margin-left : 4px;
}

/* list--arrow-left */
.list--arrow-left > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--arrow-left > li:before {
	content : "\f105";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : #cfcfcf;
	margin-right : 8px;
}

/* list--arrow-down */
.list--arrow-down > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--arrow-down > li:before {
	content : "\f107";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : #cfcfcf;
	margin-right : 8px;
}

/* list--circle-right */
.list--circle-left > li:before {
	content : "\f138";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
}

/* list--dot */
.list--dot > li {
	text-indent : -1em;
	padding-left : 1em;
}
.list--dot > li:before {
	content : "・";
}

/* list--date */
.list--date {
	font-size : 12px;
	font-size : 1.2rem;
	margin-bottom : 1em;
}
.list--date a {
	color : #393939;
}
.list--date a:hover {
	text-decoration : underline;
}
.list--date dl {
	margin-top : 0.5em;
	display : table;
}
.list--date dt {
	font-weight : normal;
	word-break : keep-all;
	display : table-cell;
	padding-right : 1em;
	color : #7e7e7e;
}
.list--date dd {
	display : table-cell;
}
@media screen and (min-width: 750px) {
	.list--date {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

/* list-link */
.list--link {
	font-size : 13px;
	font-size : 1.3rem;
}
.list--link a {
	color : #393939;
}
.list--link a:hover {
	text-decoration : underline;
}
.list--link > li {
	margin-top : 20px;
}
@media screen and (min-width: 750px) {
	.list--link {
		font-size : 16px;
		font-size : 1.6rem;
	}
	.list--link > li {
		margin-top : 10px;
	}
}

/* list--ranking{*/
.list--ranking,
.ranking-entries {
	counter-reset : number;
}
.list--ranking a:hover,
.ranking-entries a:hover {
	text-decoration : underline;
}
.list--ranking > li,
.ranking-entries > li {
	padding-left : 2em;
	padding-right : 1em;
	margin-bottom : 1em;
	font-size : inherit;
	font-size : 13px;
	font-size : 1.3rem;
	vertical-align : top;
}
.list--ranking > li a,
.ranking-entries > li a {
	color : #393939;
}
.list--ranking > li:before,
.ranking-entries > li:before {
	counter-increment : number;
	content : counter(number) ".";
	display : inline-block;
	font-weight : bold;
	text-indent : -2em;
}
@media screen and (min-width: 750px) {
	.list--ranking,
	.ranking-entries {
		-moz-column-count : 2;
		     column-count : 2;
	}
	.list--ranking > li,
	.ranking-entries > li {
		font-size : 14px;
		font-size : 1.4rem;
	}
	.list--ranking > li a,
	.ranking-entries > li a {
		display : inline-block;
	}
}

/* list--category */
.list.list--category {
	display : flex;
	flex-wrap : wrap;
	gap : 4px 4px;
}
.list.list--category > li {
	font-size : inherit;
	font-size : 9px;
	font-size : 0.9rem;
	display : inline-block;
	letter-spacing : normal;
	border : 2px solid #cccccc;
	padding : 6px 8px;
	border-radius : 4px;
	line-height : 1;
	margin : 0;
}
.list.list--category > li a {
	color : inherit;
	display : inline-block;
}
@media screen and (min-width: 750px) {
	.list.list--category > li {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
.list.list--category > li:hover {
	border-color : #2c67a9;
	color : #2c67a9;
	background-color : #ffffff;
}
.list.list--category > li:hover a {
	color : inherit;
}

/* list-group */
/* .list-panel */
.list-split {
	-moz-column-count : 2;
	     column-count : 2;
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : bold;
}
.list-split:after {
	display : block;
	clear : both;
	content : "";
}
.list-split > li {
	margin-top : 0;
	float : left;
	margin-bottom : 1em;
}
@media screen and (min-width: 750px) {
	.list-split {
		font-size : 16px;
		font-size : 1.6rem;
		-moz-column-count : 3;
		     column-count : 3;
	}
	.list-split > li {
		margin-top : 0;
		float : none;
		margin-bottom : 0.5em;
	}
}

/* list--folder*/
.list--folder > li {
	text-indent : -1.5em;
	padding-left : 1.5em;
}
.list--folder > li:before {
	content : "\f07c";
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : #cfcfcf;
	margin-right : 0.5em;
}

.list-child > li {
	position : relative;
	text-indent : 0em;
	padding-left : 1em;
}
.list-child > li:before {
	content : "";
	display : inline-block;
	position : absolute;
	top : 0.35em;
	left : 0;
	width : 0.65em;
	height : 0.5em;
	border-bottom : 1px solid #cfcfcf;
	border-left : 1px solid #cfcfcf;
}

/* gird
--------------------------------------------------------- */
.grid-row {
	margin-top : -10px;
	margin-left : -5px;
	margin-right : -5px;
	display : flex;
	flex-wrap : wrap;
}
.grid-row + .grid-row {
	margin-top : 0;
}

.grid-row-start--s {
	justify-content : flex-start;
}

@media screen and (min-width: 750px) {
	.grid-row-start--l {
		justify-content : flex-start;
	}
}
.grid-row-center--s {
	justify-content : center;
}

@media screen and (min-width: 750px) {
	.grid-row-center--l {
		justify-content : center;
	}
}
.grid-row-end--s {
	justify-content : flex-end;
}

@media screen and (min-width: 750px) {
	.grid-row-end--l {
		justify-content : flex-end;
	}
}
.grid-row-between--s {
	justify-content : space-between;
}

@media screen and (min-width: 750px) {
	.grid-row-between--l {
		justify-content : space-between;
	}
}
.grid-row-around--s {
	justify-content : space-around;
}

@media screen and (min-width: 750px) {
	.grid-row-around--l {
		justify-content : space-around;
	}
}
.grid-row-reverse--s {
	flex-direction : row-reverse;
}

@media screen and (min-width: 750px) {
	.grid-row-reverse--l {
		flex-direction : row-reverse;
	}
}
[class*=grid-col] {
	margin-top : 10px;
	padding-left : 5px;
	padding-right : 5px;
	flex-grow : 1;
}

.grid-col-10--s {
	flex-basis : 10%;
	max-width : 10%;
}

.grid-col-20--s {
	flex-basis : 20%;
	max-width : 20%;
}

.grid-col-25--s {
	flex-basis : 25%;
	max-width : 25%;
}

.grid-col-30--s {
	flex-basis : 30%;
	max-width : 30%;
}

.grid-col-33--s {
	flex-basis : 33.3333%;
	max-width : 33.3333%;
}

.grid-col-40--s {
	flex-basis : 40%;
	max-width : 40%;
}

.grid-col-50--s {
	flex-basis : 50%;
	max-width : 50%;
}

.grid-col-60--s {
	flex-basis : 60%;
	max-width : 60%;
}

.grid-col-66--s {
	flex-basis : 66.6666%;
	max-width : 66.6666%;
}

.grid-col-70--s {
	flex-basis : 70%;
	max-width : 70%;
}

.grid-col-75--s {
	flex-basis : 75%;
	max-width : 75%;
}

.grid-col-80--s {
	flex-basis : 80%;
	max-width : 80%;
}

.grid-col-90--s {
	flex-basis : 90%;
	max-width : 90%;
}

.grid-col-100--s {
	flex-basis : 100%;
	max-width : 100%;
}

@media screen and (min-width: 750px) {
	.grid-col-10--l {
		flex-basis : 10%;
		max-width : 10%;
	}

	.grid-col-20--l {
		flex-basis : 20%;
		max-width : 20%;
	}

	.grid-col-25--l {
		flex-basis : 25%;
		max-width : 25%;
	}

	.grid-col-30--l {
		flex-basis : 30%;
		max-width : 30%;
	}

	.grid-col-33--l {
		flex-basis : 33.3333%;
		max-width : 33.3333%;
	}

	.grid-col-40--l {
		flex-basis : 40%;
		max-width : 40%;
	}

	.grid-col-50--l {
		flex-basis : 50%;
		max-width : 50%;
	}

	.grid-col-60--l {
		flex-basis : 60%;
		max-width : 60%;
	}

	.grid-col-66--l {
		flex-basis : 66.6666%;
		max-width : 66.6666%;
	}

	.grid-col-70--l {
		flex-basis : 70%;
		max-width : 70%;
	}

	.grid-col-75--l {
		flex-basis : 75%;
		max-width : 75%;
	}

	.grid-col-80--l {
		flex-basis : 80%;
		max-width : 80%;
	}

	.grid-col-90--l {
		flex-basis : 90%;
		max-width : 90%;
	}

	.grid-col-100--l {
		flex-basis : 100%;
		max-width : 100%;
	}
}
.grid-col-top--s {
	align-self : flex-start;
}

.grid-col-center--s {
	align-self : center;
}

.grid-col-bottom--s {
	align-self : flex-end;
}

@media screen and (min-width: 750px) {
	.grid-col-top--l {
		align-self : flex-start;
	}

	.grid-col-center--l {
		align-self : center;
	}

	.grid-col-bottom--l {
		align-self : flex-end;
	}
}
.grid-col > .grid-row {
	margin-top : -10px;
}

.grid-row + .grid-row {
	margin-top : 20px;
}

@media screen and (max-width: 749px) {
	.grid-col + .grid-col {
		margin-top : 20px;
	}
}
/* slide
--------------------------------------------------------- */
.slide-wrapper--home {
	position : relative;
	overflow : hidden;
}
.slide-wrapper--home .slide {
	background : #ffffff;
	width : 100%;
	height : 40vh;
	overflow : hidden;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide {
		width : 100%;
		height : 590px;
	}
}
.slide-wrapper--home .slide__item {
	float : left;
	width : 100%;
	height : 40vh;
	background-position : 50% 50%;
	background-repeat : no-repeat;
	background-size : cover;
	position : relative;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__item {
		width : 1100px;
		height : 450px;
	}
}
.slide-wrapper--home .slide__item:before {
	content : "";
	position : absolute;
	left : 0;
	top : 0;
	width : 100%;
	height : 100%;
	background : linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.3) 100%);
}
.slide-wrapper--home .slide__item--1 {
	background-image : url("../img/top/slide/slide_img1.jpg");
}
.slide-wrapper--home .slide__item--2 {
	background-image : url("../img/top/slide/slide_img2.jpg");
}
.slide-wrapper--home .slide__item--3 {
	background-image : url("../img/top/slide/slide_img3.jpg");
}
.slide-wrapper--home .slide__item--4 {
	background-image : url("../img/top/slide/slide_img4.jpg");
}
.slide-wrapper--home .slide__item--5 {
	background-image : url("../img/top/slide/slide_img5.jpg");
}
.slide-wrapper--home .slide__item--6 {
	background-image : url("../img/top/slide/slide_img6.jpg");
}
.slide-wrapper--home .slide__item--7 {
	background-image : url("../img/top/slide/slide_img7.jpg");
}
.slide-wrapper--home .slide__item--8 {
	background-image : url("../img/top/slide/slide_img8.jpg");
}
.slide-wrapper--home .slide__item--9 {
	background-image : url("../img/top/slide/slide_img9.jpg");
}
.slide-wrapper--home .slide__item--10 {
	background-image : url("../img/top/slide/slide_img10.jpg");
}
.slide-wrapper--home .slide__link {
	display : flex;
	justify-content : center;
	align-items : flex-end;
	width : 100%;
	height : 100%;
	background-color : rgba(45, 54, 107, 0.1);
	text-decoration : none;
	position : relative;
	display : block;
}
.slide-wrapper--home .slide__text {
	color : #ffffff;
	padding-bottom : 9.6%;
	position : absolute;
	margin-right : 5.3333333333%;
	margin-left : 5.3333333333%;
	bottom : 0;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__text {
		margin-left : 30px;
		margin-right : 30px;
		padding-bottom : 54px;
	}
}
.slide-wrapper--home .slide__heading {
	font-weight : bold;
	margin-bottom : 0;
}
.slide-wrapper--home .slide__heading--sm {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__heading--sm {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 4px;
		margin-top : 4px;
	}
}
.slide-wrapper--home .slide__heading--md {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__heading--md {
		font-size : 20px;
		font-size : 2rem;
		margin-bottom : 4px;
		margin-top : 4px;
	}
}
.slide-wrapper--home .slide__heading--lg {
	line-height : 1.2;
	font-size : 25px;
	font-size : 2.5rem;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__heading--lg {
		font-size : 50px;
		font-size : 5rem;
		margin-bottom : 4px;
		margin-top : 4px;
	}
}
.slide-wrapper--home .slide__nav--prev,
.slide-wrapper--home .slide__nav--next {
	width : 50%;
	height : 590px;
	position : absolute;
	top : 0;
	z-index : 1;
}
.slide-wrapper--home .slide__nav--prev {
	left : -550px;
}
.slide-wrapper--home .slide__nav--next {
	right : -550px;
}
.slide-wrapper--home .slide__nav--prev:before,
.slide-wrapper--home .slide__nav--next:before {
	content : "";
	display : block;
	background-color : #414c6e;
	width : 100%;
	height : 590px;
	opacity : 0.5;
	    filter : alpha(opacity=50);
	-ms-filter : "alpha(opacity=50)";
	zoom : 1;
	transition : opacity 0.3s ease;
}
.slide-wrapper--home .slide__nav--prev:hover:before,
.slide-wrapper--home .slide__nav--next:hover:before {
	opacity : 0.2;
	    filter : alpha(opacity=20);
	-ms-filter : "alpha(opacity=20)";
	zoom : 1;
}
.slide-wrapper--home .slide__nav--prev a,
.slide-wrapper--home .slide__nav--next a {
	display : inline-block;
	width : 22px;
	height : 40px;
	position : absolute;
	top : 275px;
}
.slide-wrapper--home .slide__nav--prev:hover a {
	background : url(../img/common/slide_arrow_left.png) 0 center no-repeat;
	right : 30px;
}
.slide-wrapper--home .slide__nav--next:hover a {
	display : block;
	background : url(../img/common/slide_arrow_right.png) 0 center no-repeat;
	left : 30px;
}
.slide-wrapper--home .slide__pager {
	bottom : 10px;
	margin : 0;
	padding : 0;
	position : absolute;
	text-align : center;
	width : 100%;
	text-align : center;
}
.slide-wrapper--home .slide__pager a {
	background : transparent;
	display : inline-block;
	height : 20px;
	width : 20px;
	outline : none;
	line-height : 0px;
	font-size : 0px;
	color : transparent;
	padding : 5px;
	cursor : pointer;
}
.slide-wrapper--home .slide__pager a:before {
	content : "\f10c";
	width : 20px;
	height : 20px;
	font-family : FontAwesome;
	font-size : 8px;
	line-height : 20px;
	text-align : center;
	color : #ffffff;
	opacity : 1;
	-webkit-font-smoothing : antialiased;
	-moz-osx-font-smoothing : grayscale;
	display : inline-block;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--home .slide__pager a:before {
		font-size : 12px;
	}
}
.slide-wrapper--home .slide__pager a:hover {
	opacity : 0.75;
}
.slide-wrapper--home .slide__pager a span {
	display : none;
}
.slide-wrapper--home .slide__pager a.selected:before {
	content : "\f111";
}

.slide-wrapper--publication {
	position : relative;
	padding : 0 10px;
}
.slide-wrapper--publication .slide {
	width : 100%;
	overflow : hidden;
}
.slide-wrapper--publication .slide__item {
	float : left;
	width : 30%;
	margin : 10px 8px 0;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--publication .slide__item {
		width : 220px;
		margin : 10px 0 0;
	}
}
.slide-wrapper--publication .publication {
	text-align : center;
}
.slide-wrapper--publication .publication__thumb {
	margin : 0 auto 8px;
	width : 100%;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--publication .publication__thumb {
		width : 178px;
	}
}
.slide-wrapper--publication .publication__title {
	display : none;
}
.slide-wrapper--publication .publication__link {
	display : none;
}
.slide-wrapper--publication .publication__book {
	display : none;
}
.slide-wrapper--publication .text--new {
	position : relative;
}
.slide-wrapper--publication .slide__nav--prev,
.slide-wrapper--publication .slide__nav--next {
	display : block;
	width : 10px;
	height : 20px;
	position : absolute;
	top : 60px;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--publication .slide__nav--prev,
	.slide-wrapper--publication .slide__nav--next {
		width : 20px;
		height : 30px;
		top : 113px;
	}
}
.slide-wrapper--publication .slide__nav--prev a,
.slide-wrapper--publication .slide__nav--next a {
	display : block;
	position : absolute;
	left : 0;
	top : 0;
}
.slide-wrapper--publication .slide__nav--prev a:before,
.slide-wrapper--publication .slide__nav--next a:before {
	width : 10px;
	height : 20px;
	font-family : FontAwesome;
	font-size : 20px;
	line-height : 20px;
	color : #26385e;
	-webkit-font-smoothing : antialiased;
	-moz-osx-font-smoothing : grayscale;
	display : inline-block;
}
@media screen and (min-width: 750px) {
	.slide-wrapper--publication .slide__nav--prev a:before,
	.slide-wrapper--publication .slide__nav--next a:before {
		width : 20px;
		height : 30px;
		font-size : 30px;
		line-height : 30px;
	}
}
.slide-wrapper--publication .slide__nav--prev {
	left : 0;
}
.slide-wrapper--publication .slide__nav--prev a:before {
	content : "\f104";
	text-align : left;
}
.slide-wrapper--publication .slide__nav--next {
	right : 0;
}
.slide-wrapper--publication .slide__nav--next a:before {
	content : "\f105";
	text-align : right;
}

.slider-link {
	overflow : hidden;
}
@media screen and (min-width: 750px) {
	.slider-link {
		width : 500px;
	}
}
.slider-link .slider-link__item {
	font-size : 12px;
	font-size : 1.2rem;
	height : 1.5;
	overflow : hidden;
}
.slider-link .slider-link__item a {
	color : #000000;
}
@media screen and (min-width: 750px) {
	.slider-link .slider-link__item {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

.ticker {
	padding-right : 20px;
	overflow : hidden;
}
.ticker__inner > li {
	float : left;
	letter-spacing : 1px;
	padding-right : 20px;
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.ticker {
		padding-right : 40px;
		width : 770px;
		overflow : hidden;
	}
	.ticker__inner > li {
		float : left;
		letter-spacing : 1px;
		padding-right : 40px;
		font-size : 16px;
		font-size : 1.6rem;
	}
}

/* tab
--------------------------------------------------------- */
.tab__menu {
	width : 100%;
}
.tab__menu__item {
	display : inline-block;
	vertical-align : top;
	text-align : left;
	text-justify : auto;
}
.tab__menu__item a {
	color : inherit;
}
.tab__content {
	width : 100%;
}
.tab__btn {
	display : block;
	text-decoration : none;
	outline : none;
}

/* tab--border */
.tab--border .tab__menu {
	border-bottom : solid 1px #dbdbdb;
	margin-bottom : 24px;
	overflow : scroll;
	height : 38px;
}
.tab--border .tab__menu__list {
	display : table;
}
.tab--border .tab__menu__item {
	font-size : 12px;
	font-size : 1.2rem;
	font-weight : bold;
	white-space : nowrap;
	color : #7e7e7e;
	display : table-cell;
}
@media screen and (min-width: 750px) {
	.tab--border .tab__menu__item {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.tab--border .tab__content {
	width : 100%;
	margin-bottom : 16px;
	font-size : 14px;
	font-size : 1.4rem;
}
.tab--border .tab__btn {
	color : #7e7e7e;
	padding : 0 10px 16px 0;
}
@media screen and (min-width: 750px) {
	.tab--border .tab__btn {
		padding : 0 24px 10px 0;
		margin-right : 8px;
	}
}
.tab--border .tab__btn:hover {
	color : #2c67a9;
	text-decoration : none;
}
.tab--border .tab__menu__item.tab__menu__item--is-active .tab__btn,
.tab--border .tab__btn[aria-selected=true] {
	border-bottom : solid 4px #26385e;
	color : #26385e;
	position : relative;
}
@media screen and (min-width: 750px) {
	.tab--border .tab__menu {
		overflow : visible;
	}
}

.tab__content.tab__content--is-hidden,
.tab__content[aria-hidden=true] {
	display : none;
}

/* tab-panel */
.tab-panel {
	width : 100%;
}
.tab-panel input[type=radio] {
	display : none;
}
.tab-panel__menu {
	width : 100%;
	display : flex;
	position : relative;
	top : 1px;
	z-index : 2;
}
.tab-panel__menu__item {
	font-weight : bold;
	padding : 12px 15px 8px;
	word-break : break-all;
	font-size : 13px;
	font-size : 1.3rem;
}
.tab-panel__content {
	width : 100%;
	background-color : #f1f1f1;
	border : 1px solid #dbdbdb;
	padding : 15px;
	position : relative;
	z-index : 1;
	font-size : 13px;
	font-size : 1.3rem;
}
.tab-panel__content a {
	color : #393939;
}
.tab-panel__content a:hover {
	text-decoration : underline;
}
.tab-panel__content__item {
	display : none;
}
.tab-panel__content__item > ul li {
	display : inline-block;
	margin : 0.25em 1em 0 0;
}
.tab-panel input:nth-child(1):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(1),
.tab-panel input:nth-child(2):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(2),
.tab-panel input:nth-child(3):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(3) {
	background-color : #f1f1f1;
	border-top : 1px solid #dbdbdb;
	border-left : 1px solid #dbdbdb;
	border-right : 1px solid #dbdbdb;
	border-bottom : 1px solid #f1f1f1;
}
.tab-panel input:nth-child(1):checked ~ .tab-panel__content > .tab-panel__content__item:nth-child(1),
.tab-panel input:nth-child(2):checked ~ .tab-panel__content > .tab-panel__content__item:nth-child(2),
.tab-panel input:nth-child(3):checked ~ .tab-panel__content > .tab-panel__content__item:nth-child(3) {
	display : block;
}
@media screen and (min-width: 750px) {
	.tab-panel {
		background-color : #f1f1f1;
		border : 1px solid #dbdbdb;
		padding : 24px 20px 38px;
	}
	.tab-panel__menu {
		margin-bottom : 16px;
		width : 100%;
	}
	.tab-panel__menu__item {
		width : 33.3333%;
		padding : 0 20px;
		font-size : 16px;
		font-size : 1.6rem;
	}
	.tab-panel__content {
		width : 100%;
		display : flex;
		padding : 0;
		font-size : 14px;
		font-size : 1.4rem;
		border : 0;
	}
	.tab-panel__content__item {
		display : inline-block;
		width : 33.3333%;
		padding : 0 20px;
	}
	.tab-panel input:nth-child(1):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(1),
	.tab-panel input:nth-child(2):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(2),
	.tab-panel input:nth-child(3):checked ~ .tab-panel__menu > .tab-panel__menu__item:nth-child(3) {
		border : 0;
	}
}

@media screen and (min-width: 750px) {
	.tab-panel.tab-panel--career-g .tab-panel__menu__item--trend,
	.tab-panel.tab-panel--career-g .tab-panel__content__item--trend {
		width : 55%;
	}
	.tab-panel.tab-panel--career-g .tab-panel__menu__item--area,
	.tab-panel.tab-panel--career-g .tab-panel__content__item--area {
		width : 20%;
	}
	.tab-panel.tab-panel--career-g .tab-panel__menu__item--school,
	.tab-panel.tab-panel--career-g .tab-panel__content__item--school {
		width : 25%;
	}
}

@media screen and (min-width: 750px) {
	.tab-panel.tab-panel--college-m .tab-panel__menu__item--trend,
	.tab-panel.tab-panel--college-m .tab-panel__content__item--trend {
		width : 75%;
	}
	.tab-panel.tab-panel--college-m .tab-panel__menu__item--area,
	.tab-panel.tab-panel--college-m .tab-panel__content__item--area {
		width : 25%;
	}
}

/* text
--------------------------------------------------------- */
.text--primary {
	font-size : 14px;
	font-size : 1.4rem;
}
@media screen and (min-width: 750px) {
	.text--primary {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

.text--highlight {
	font-size : 16px;
	font-size : 1.6rem;
}

.text--secondary {
	font-size : 14px;
	font-size : 1.4rem;
	color : #9f9f9f;
}
@media screen and (min-width: 750px) {
	.text--secondary {
		font-size : 12px;
		font-size : 1.2rem;
	}
}

.text--new {
	color : #ce2d9f;
	font-weight : bold;
	margin : 0 8px;
	font-size : 11px;
	font-size : 1.1rem;
}
@media screen and (min-width: 750px) {
	.text--new {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

.text--note {
	color : #7a7a7a;
}

/* ルビ */
rt {
	font-size : 0.6em;
}

/* heading
--------------------------------------------------------- */
.heading {
	position : relative;
	font-weight : bold;
	color : #000000;
}
.heading a {
	text-decoration : underline;
}
.heading a:hover {
	text-decoration : none;
}
.heading__sub-text {
	font-weight : normal;
	color : #7e7e7e;
}
.heading--primary {
	font-size : 16px;
	font-size : 1.6rem;
	margin-bottom : 0.5em;
}
.heading--primary .heading__sub-text--primary {
	font-size : 16px;
	font-size : 1.6rem;
}
@media screen and (min-width: 750px) {
	.heading--primary {
		font-size : 20px;
		font-size : 2rem;
	}
	.heading--primary .heading__sub-text--primary {
		font-size : 18px;
		font-size : 1.8rem;
	}
}

.heading--secondary {
	font-size : 16px;
	font-size : 1.6rem;
	margin-bottom : 0.5em;
}
@media screen and (min-width: 750px) {
	.heading--secondary {
		font-size : 18px;
		font-size : 1.8rem;
	}
}

.heading--default {
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 0.5em;
}
@media screen and (min-width: 750px) {
	.heading--default {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

.heading--border {
	border-left : 3px solid #3483cd;
	padding-left : 10px;
}
@media screen and (min-width: 750px) {
	.heading--border {
		padding-left : 12px;
	}
}

.heading-cg--home {
	width : 152px;
	margin-bottom : 8px;
}
@media screen and (min-width: 750px) {
	.heading-cg--home {
		width : 230px;
		margin-bottom : 24px;
	}
}

.heading-cm--home {
	width : 178px;
	margin-bottom : 8px;
}
@media screen and (min-width: 750px) {
	.heading-cm--home {
		width : 268px;
		margin-bottom : 24px;
	}
}

.section__header.section__header--theme {
	margin-bottom : 20px;
}
@media screen and (min-width: 750px) {
	.section__header.section__header--theme {
		margin-bottom : 30px;
	}
}
.section__header.section__header--theme .heading {
	font-size : 16px;
	font-size : 1.6rem;
}
@media screen and (min-width: 750px) {
	.section__header.section__header--theme .heading {
		font-size : 18px;
		font-size : 1.8rem;
	}
}

.section--column .heading--section {
	font-size : 20px;
	font-size : 2rem;
	line-height : 1.2;
}
@media screen and (min-width: 750px) {
	.section--column .heading--section {
		font-size : 20px;
		font-size : 2rem;
	}
}

/* search
--------------------------------------------------------- */
.search-btn {
	font-size : 15px;
	font-size : 1.5rem;
	display : block;
	width : 30px;
	height : 30px;
	line-height : 1;
	text-align : center;
	margin-right : 30px;
	margin-top : 7px;
	cursor : pointer;
	position : relative;
}
.search-btn i {
	color : #ffffff;
	margin : 0;
}
.search-btn .icon--search {
	position : absolute;
	top : 7px;
	left : 7px;
}
.search-btn .icon--close {
	display : none;
	width : 20px;
	height : 2px;
	background : transparent;
	position : absolute;
	left : 5px;
	top : 15px;
}
.search-btn .icon--close:before,
.search-btn .icon--close:after {
	content : "";
	display : block;
	width : 20px;
	height : 2px;
	background : #414c6e;
	position : absolute;
}
.search-btn .icon--close:before {
	transform : translateY(0px) rotate(-45deg);
}
.search-btn .icon--close:after {
	transform : translateY(0px) rotate(45deg);
}
.search-btn.is-opened .icon--close {
	display : block;
}
.search-btn.is-opened .icon--search {
	display : none;
}
@media screen and (min-width: 750px) {
	.search-btn {
		font-size : 30px;
		font-size : 3rem;
		margin-top : 20px;
		margin-right : 20px;
	}
	.search-btn i {
		color : #5f627c;
	}
	.search-btn .icon--search {
		top : 0;
		left : 0;
	}
	.search-btn .icon--close {
		width : 20px;
		height : 2px;
		right : 5px;
		top : 15px;
	}
	.search-btn .icon--close:before,
	.search-btn .icon--close:after {
		width : 20px;
		height : 2px;
	}
}

.l_header--sp .header--is-scrolled i {
	color : #414c6e;
}

.header__search {
	padding-right : 20px;
	padding-left : 20px;
	margin-left : auto;
	margin-right : auto;
	width : 100%;
}
@media screen and (min-width: 750px) {
	.header__search {
		width : 1140px;
		position : relative;
	}
}

/* .search-box {
	display : none;
	position : absolute;
	top : 45px;
	right : 0;
	z-index : 666;
	padding : 18px;
	background-color : #5388d1;
	border : 10px solid #363843;
	width : 100%;
}
.search-box:before {
	content : "";
	position : absolute;
	top : -8px;
	right : 40px;
	display : block;
	width : 0px;
	height : 0px;
	border-width : 0 14px 16px;
	border-style : solid;
	border-color : transparent transparent #5388d1 transparent;
	z-index : 777;
}
.search-box__heading {
	font-weight : bold;
	color : #ffffff;
	font-size : 20px;
	font-size : 2rem;
	margin-bottom : 8px;
}
.search-box__form {
	background-color : #ffffff;
	border-radius : 28px;
	width : 100%;
	height : 5rem;
	padding : 0 24px 0 16px;
	display : flex;
	align-items : center;
}
.search-box__form .icon--search.icon {
	color : rgba(57, 57, 57, 0.5);
	font-size : 24px;
	font-size : 2.4rem;
	margin-right : 10px;
}
.search-box__form .mt-site-search-container {
	width : 100%;
}
.search-box__form .mt-site-search-form {
	width : 100%;
}
.search-box__form .mt-site-search-form__query {
	width : 100%;
	color : #666666;
}
.search-box__form .mt-site-search-form__button {
	display : none;
}
.search-box__keyword {
	color : #ffffff;
	line-height : 2.8;
	font-size : 13px;
	font-size : 1.3rem;
}
.search-box__keyword a {
	color : #ffffff;
}
.search-box__label {
	font-weight : bold;
	margin-bottom : 0;
}
.search-box__list a:hover {
	text-decoration : underline;
}
.search-box__list > li {
	display : inline;
	margin-right : 1em;
}
.search-box__list > li a {
	padding : 1em 0;
}
.search-box--is-opened {
	display : block;
} */
@media screen and (min-width: 750px) {
/* 	.search-box {
		right : 10px;
		top : 20px;
		max-width : 320px;
		padding : 36px 24px;
		border : 0;
	}
	.search-box:before {
		border-width : 0 14px 16px;
		top : -15px;
		right : 10px;
	}
	.search-box__heading {
		font-size : 40px;
		font-size : 4rem;
		line-height : 1;
		margin-bottom : 16px;
	}
	.search-box__form {
		height : 56px;
		padding : 0 32px 0 24px;
		font-size : 16px;
		font-size : 1.6rem;
	}
	.search-box__label {
		font-size : 14px;
		font-size : 1.4rem;
	}
	.search-box__keyword {
		font-size : 14px;
		font-size : 1.4rem;
		line-height : 2;
	} */
}

#s-result .mt-site-search-result__message {
	font-size : 16px;
	font-size : 1.6rem;
	font-weight : bold;
	margin-bottom : 20px;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search-result__message {
		font-size : 24px;
		font-size : 2.4rem;
		margin-bottom : 32px;
	}
}
#s-result .mt-site-search-result__list .mt-site-search-result-item {
	border-bottom : 1px solid #ececec;
	padding-top : 20px;
	padding-bottom : 20px;
	background-color : #ffffff;
	transition : all 0.3s ease;
	margin : 0;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search-result__list .mt-site-search-result-item {
		padding : 24px 20px;
	}
}
#s-result .mt-site-search-result__list .mt-site-search-result-item:first-child {
	border-top : 1px solid #ececec;
}
#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__label {
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : bold;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__label {
		font-size : 20px;
		font-size : 2rem;
		margin-bottom : 4px;
	}
}
#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__url {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__url {
		font-size : 12px;
		font-size : 1.2rem;
	}
}
#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__excerpt {
	font-size : 14px;
	font-size : 1.4rem;
	color : #7a7a7a;
	margin-top : 8px;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search-result__list .mt-site-search-result-item .mt-site-search-result-item__excerpt {
		font-size : 14px;
		font-size : 1.4rem;
	}
}
#s-result .mt-site-search__pagination {
	text-align : center;
	margin-top : 20px;
}
@media screen and (min-width: 750px) {
	#s-result .mt-site-search__pagination {
		margin-top : 48px;
	}
}
#s-result .mt-site-search-pagination-item {
	display : inline-block;
	padding : 0 0.5em;
	font-size : 16px;
	font-size : 1.6rem;
}
#s-result .mt-site-search-pagination-item--current a {
	font-size : 18px;
	font-size : 1.8rem;
	color : #3485cf;
	font-weight : bold;
}

/* icon
--------------------------------------------------------- */
.icon {
	margin : 0 4px;
	font-family : FontAwesome;
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
}
.icon:before {
	content : "";
	font-family : FontAwesome;
}

.icon--search:before {
	content : "\f002";
	color : inherit;
}

.icon--close:before {
	content : "×";
	color : inherit;
}

.icon--arrow-right:before {
	content : "\f105";
	color : inherit;
}

.icon--arrow-left:before {
	content : "\f104";
	color : inherit;
}

.icon--arrow-down:before {
	content : "\f107";
	color : inherit;
}

.icon--arrow-up:before {
	content : "\f106";
	color : inherit;
}

.icon--circle-right:before {
	content : "\f138";
	color : inherit;
}

.icon--circle-down:before {
	content : "\f13a";
	color : inherit;
}

.icon--balloon:before {
	content : "\f27b";
	color : inherit;
}

.icon--graph:before {
	content : "\f080";
	color : inherit;
}

.icon--pc:before {
	content : "\f108";
	color : inherit;
}

.icon--book:before {
	content : "\f02d";
	color : inherit;
}

.icon--tag:before {
	content : "\f02b";
	color : inherit;
}

.icon--clock:before {
	content : "\f017";
	color : inherit;
}

.icon--download:before {
	content : "\f019";
	color : inherit;
}

.icon--dl {
	vertical-align : middle;
	display : inline-block;
	margin-right : 0.5em;
}

/* page-top
--------------------------------------------------------- */
.page-top {
	display : none;
	opacity : 0;
	background-color : #dbdbdb;
	border-radius : 50%;
	color : #ffffff;
	font-size : 30px;
	width : 40px;
	height : 40px;
	position : fixed;
	bottom : 20px;
	right : 20px;
	text-align : center;
	transition : all 0.3s ease-out 0s;
	z-index : 555;
}
.page-top i {
	width : 40px;
	height : 40px;
	position : relative;
	top : -5px;
	color : #ffffff;
}
.page-top:hover {
	background-color : #2c67a9;
}
@media screen and (min-width: 750px) {
	.page-top {
		font-size : 40px;
		width : 60px;
		height : 60px;
		bottom : 30px;
		right : 30px;
	}
	.page-top i {
		width : 60px;
		height : 60px;
		position : relative;
		top : -5px;
		color : #ffffff;
	}
}

.page-top.page-top--is-scrolled {
	display : block;
	opacity : 1;
}

/* page-header
--------------------------------------------------------- */
.l_page-header {
	position : relative;
	background-color : #26385e;
}
.page-header {
	padding-top : 61px;
	padding-bottom : 16px;
	color : #ffffff;
	text-align : center;
	display : flex;
	flex-direction : column;
	align-items : center;
}
.page-header a {
	color : inherit;
}
.page-header a:hover {
	color : inherit;
}
.page-header__lead {
	font-size : 10px;
	font-size : 1rem;
	margin-top : 8px;
}
@media screen and (min-width: 750px) {
	.page-header {
		flex-direction : row;
		padding-top : 48px;
		padding-bottom : 48px;
		text-align : left;
	}
}

/* page-header--index */
.page-header--index .page-header__lead {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	.page-header--index .page-header__lead {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.page-header--index .page-header__text {
	font-size : 11px;
	font-size : 1.1rem;
	margin-top : 16px;
	margin-bottom : 22px;
	text-align : left;
}
@media screen and (min-width: 750px) {
	.page-header--index .page-header__text {
		font-size : 18px;
		font-size : 1.8rem;
		margin-top : 0;
		width : 34em;
		float : right;
		margin-bottom : 18px;
	}
}
.page-header--index .page-header__menu {
	text-align : right;
}
.page-header--index .page-header__menu > li {
	font-size : 10px;
	font-size : 1rem;
	margin-top : 4px;
	font-weight : bold;
}
@media screen and (min-width: 750px) {
	.page-header--index .page-header__menu {
		display : flex;
		justify-content : flex-end;
		clear : both;
	}
	.page-header--index .page-header__menu > li {
		font-weight : bold;
		font-size : 14px;
		font-size : 1.4rem;
		margin-left : 2em;
		margin-top : 0;
	}
	.page-header--index .page-header__menu > li a:hover {
		text-decoration : underline;
	}
}

.page-header__title--en {
	font-size : 20px;
	font-size : 2rem;
}
@media screen and (min-width: 750px) {
	.page-header__title--en {
		font-size : 40px;
		font-size : 4rem;
	}
}

.page-header__title--jp {
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.page-header__title--jp {
		font-size : 16px;
		font-size : 1.6rem;
	}
}

.page-header__summary {
	font-size : 11px;
	font-size : 1.1rem;
	margin-top : 20px;
	margin-bottom : 4px;
	text-align : left;
}
@media screen and (min-width: 750px) {
	.page-header__summary {
		margin-left : 80px;
		font-size : 18px;
		font-size : 1.8rem;
		margin-top : 0;
		margin-bottom : 0;
	}
}

/* page-header--career_g */
.page-header--career_g .page-header__title img {
	width : 172px;
}
@media screen and (min-width: 750px) {
	.page-header--career_g.page-header--index .page-header__title img {
		width : 342px;
	}
	.page-header--career_g.page-header--menu .page-header__title img {
		width : 236px;
	}
}

/* page-header--college-m */
/* page-header--research */
.page-header--research .page-header__title img {
	width : 85px;
}
.page-header--research .page-header__lead {
	margin-top : 0;
}
@media screen and (min-width: 750px) {
	.page-header--research .page-header__title img {
		width : 170px;
	}
	.page-header--research.page-header--index .page-header--right .page-header__text {
		width : 45em;
	}
	.page-header--research.page-header--index .page-header__lead,
	.page-header--research.page-header--menu .page-header__lead {
		margin-top : 8px;
	}
}

/* .page-header--menu */
.page-header--menu .page-header__lead {
	font-size : 10px;
	font-size : 1rem;
}
.page-header--menu .page-header--right {
	display : none;
}
@media screen and (min-width: 750px) {
	.page-header--menu .page-header__lead {
		font-size : 14px;
		font-size : 1.4rem;
		margin-top : 6px;
	}
	.page-header--menu .page-header--right {
		display : flex;
		justify-content : flex-start;
	}
	.page-header--menu .page-header__item {
		border-left : 1px solid #dbdbdb;
		padding-left : 18px;
		margin-left : 40px;
	}
	.page-header--menu .page-header__menu > li {
		font-size : 14px;
		font-size : 1.4rem;
		margin : 8px 0;
	}
	.page-header--menu .page-header__menu > li a:hover {
		border-bottom : 2px solid #ffffff;
	}
	.page-header--menu .page-header__sub-menu {
		margin : 8px 0;
	}
	.page-header--menu .page-header__sub-menu > li {
		display : inline-block;
		text-indent : -1em;
		padding-left : 1em;
		margin-right : 1em;
	}
	.page-header--menu .page-header__sub-menu > li:before {
		content : "ー";
	}
}

/* page-footer
--------------------------------------------------------- */
.l_page-footer {
	position : relative;
	background-color : #f1f1f1;
}
@media screen and (min-width: 750px) {
	.l_page-footer {
		padding-top : 28px;
		padding-bottom : 28px;
	}
}

.page-footer {
	padding-top : 22px;
	padding-bottom : 22px;
}
@media screen and (min-width: 750px) {
	.page-footer {
		padding-top : 0;
		padding-bottom : 0;
		display : flex;
		flex-wrap : wrap;
	}
}
.page-footer__title {
	font-size : 22px;
	font-size : 2.2rem;
}
.page-footer__title img {
	width : 46.1333333333%;
}
.page-footer__title a {
	color : #26385e;
}
@media screen and (min-width: 750px) {
	.page-footer__title img {
		width : 236px;
	}
}
.page-footer__lead {
	font-size : 10px;
	font-size : 1rem;
	margin-top : 1.0666666667%;
}
@media screen and (min-width: 750px) {
	.page-footer__lead {
		font-size : 14px;
		font-size : 1.4rem;
		margin-top : 4px;
	}
}
@media screen and (min-width: 750px) {
	.page-footer__item {
		border-left : 1px solid #dbdbdb;
		padding-left : 18px;
		margin-left : 40px;
	}
}
.page-footer--right > .page-footer__item:first-child {
	border-top : 1px solid #dbdbdb;
}
@media screen and (min-width: 750px) {
	.page-footer--right > .page-footer__item:first-child {
		border-top : 0;
	}
}
.page-footer__menu {
	border-bottom : 1px solid #dbdbdb;
	padding : 18px 0;
	display : table;
	width : 100%;
	font-size : 12px;
	font-size : 1.2rem;
}
.page-footer__menu > li {
	display : table-cell;
	width : 50%;
}
@media screen and (min-width: 750px) {
	.page-footer__menu {
		display : block;
		border-bottom : 0;
		font-size : 14px;
		font-size : 1.4rem;
		padding : 0;
	}
	.page-footer__menu > li {
		margin : 8px 0;
		display : block;
		width : 100%;
	}
	.page-footer__menu > li a:hover {
		border-bottom : 2px solid #2c67a9;
	}
}
.page-footer__sub-menu {
	font-size : 12px;
	font-size : 1.2rem;
}
.page-footer__sub-menu > li {
	display : inline-block;
	text-indent : -1em;
	padding-left : 1em;
	margin-right : 1em;
}
.page-footer__sub-menu > li:before {
	content : "ー";
}
.page-footer__sub-menu > li a:hover {
	border-bottom : 2px solid #2c67a9;
}
@media screen and (min-width: 750px) {
	.page-footer__sub-menu {
		padding : 0;
		border-bottom : 0;
		margin : 8px 0;
		font-size : 14px;
		font-size : 1.4rem;
	}
}
.page-footer--left {
	display : none;
}
@media screen and (min-width: 750px) {
	.page-footer--left {
		display : block;
		margin-right : auto;
	}
}
@media screen and (min-width: 750px) {
	.page-footer--right {
		display : flex;
	}
}
.page-footer--career-g .page-footer__sub-menu {
	padding : 18px 0;
	border-bottom : 1px solid #dbdbdb;
}
@media screen and (min-width: 750px) {
	.page-footer--career-g .page-footer__sub-menu {
		border-bottom : 0;
		padding : 0;
	}
}
.page-footer--research .page-footer__menu {
	padding : 0;
	border-bottom : 0;
}
.page-footer--research .page-footer__menu > li {
	display : block;
	width : 100%;
	border-bottom : 1px solid #dbdbdb;
	padding : 4.5333333333% 0;
}
@media screen and (min-width: 750px) {
	.page-footer--research .page-footer__menu > li {
		border-bottom : 0;
		padding : 0;
	}
}
.page-footer--college-m .page-footer__menu > li {
	width : auto;
}

/* social-share
--------------------------------------------------------- */
.social-share-single {
	display : flex;
	justify-content : center;
	align-items : center;
	padding-top : 20px;
}
.social-share-single > li {
	width : 20px;
	margin : 0 10px;
}
.social-share-single > .google {
	width : 25px;
}
@media screen and (min-width: 750px) {
	.social-share-single {
		margin-left : auto;
		padding-top : 0;
	}
}

/* pager
--------------------------------------------------------- */
.pager {
	width : 100%;
	display : flex;
	justify-content : center;
	align-items : center;
	font-size : 14px;
	font-size : 1.4rem;
	margin-top : 16px;
}
.pager > li {
	color : #7a7a7a;
}
.pager__previous {
	margin-right : 18px;
	margin-left : 18px;
	font-weight : bold;
}
.pager__previous a:before {
	font-family : FontAwesome;
	content : "\f104";
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
	margin-right : 8px;
}
.pager__center {
	margin-right : 18px;
	margin-left : 18px;
	font-weight : bold;
}
.pager__next {
	margin-right : 18px;
	margin-left : 18px;
	font-weight : bold;
}
.pager__next a:after {
	font-family : FontAwesome;
	content : "\f105";
	font-weight : normal;
	font-style : normal;
	line-height : inherit;
	vertical-align : inherit;
	color : inherit;
	margin-left : 8px;
}
@media screen and (min-width: 750px) {
	.pager {
		margin-top : 80px;
		font-size : 16px;
		font-size : 1.6rem;
	}
	.pager__previous {
		margin-right : 35px;
		margin-left : 35px;
	}
	.pager__next {
		margin-right : 35px;
		margin-left : 35px;
	}
}

.pager--border {
	border-top : solid 1px #dbdbdb;
	margin-left : 20px;
	margin-right : 20px;
	padding-top : 24px;
	font-size : 14px;
	font-size : 1.4rem;
}
@media screen and (min-width: 750px) {
	.pager--border {
		font-size : 16px;
		font-size : 1.6rem;
		width : 1100px;
		margin-left : auto;
		margin-right : auto;
		padding-top : 32px;
	}
}

/* panel
--------------------------------------------------------- */
.panel {
	width : 100%;
	padding : 20px;
	margin-top : 20px;
	margin-bottom : 20px;
}
.panel:after {
	display : block;
	clear : both;
	content : "";
}
.panel > p:last-child {
	margin-bottom : 0;
}
.panel > .title-lg:last-child {
	margin-bottom : 0;
}
.panel > *:first-child {
	margin-top : 0 !important;
}
.panel > *:last-child {
	margin-bottom : 0;
}
.panel__title {
	font-weight : bold;
	word-break : break-all;
	font-size : 13px;
	font-size : 1.3rem;
	margin-bottom : 15px;
}
.panel-default--border {
	border : 1px solid #393939;
	padding : 19px;
}
.panel-default--border-bold {
	border : 3px solid #393939;
	padding : 17px;
}
.panel-default--double {
	border : 3px double #393939;
	padding : 17px;
}
.panel--title {
	margin-top : 1.5em;
	margin-bottom : 1.5em;
}
@media screen and (min-width: 750px) {
	.panel {
		padding : 20px 34px;
		margin : 32px 0;
	}
	.panel__title {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 16px;
	}
	.panel--title {
		margin : 52px 0 32px;
	}
	.panel-default--border {
		padding : 19px 33px;
	}
	.panel-default--border-bold,
	.panel-default--double {
		padding : 17px 31px;
	}
}

.panel--bg {
	background-color : #f1f1f1;
}
.panel--bg-border {
	border : 1px solid #dbdbdb;
	padding : 19px;
}
@media screen and (min-width: 750px) {
	.panel--bg-border {
		padding : 19px 33px;
	}
}

.panel--bg-blue {
	border-color : #cbe2f7;
	background-color : #eff6fc;
}

.panel__list-group {
	font-size : 13px;
	font-size : 1.3rem;
}
.panel__list-group a {
	color : #393939;
}
.panel__list-group a:hover {
	text-decoration : underline;
}
@media screen and (max-width: 749px) {
	.panel__list-group .grid-col + .grid-col {
		margin-top : 0.5em;
	}
}

.panel__link .link.link--arrow-right {
	text-decoration : none;
	display : flex;
}
.panel__link .link.link--arrow-right:after {
	margin-left : auto;
	flex : 0 0 auto;
}

/* modal
--------------------------------------------------------- */
/* Colorbox */
#colorbox,
#cboxOverlay,
#cboxWrapper {
	position : absolute;
	top : 0;
	left : 0;
	z-index : 9999;
	overflow : hidden;
	-webkit-transform : translate3d(0, 0, 0);
}

#cboxWrapper {
	max-width : none;
}

#cboxOverlay {
	position : fixed;
	width : 100%;
	height : 100%;
}

#cboxMiddleLeft,
#cboxBottomLeft {
	clear : left;
}

#cboxContent {
	position : relative;
}

#cboxLoadedContent {
	overflow : auto;
	-webkit-overflow-scrolling : touch;
}

#cboxTitle {
	margin : 0;
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 100%;
}

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
	cursor : pointer;
}

.cboxPhoto {
	float : left;
	margin : auto;
	border : 0;
	display : block;
	max-width : none;
	-ms-interpolation-mode : bicubic;
}

.cboxIframe {
	width : 100%;
	height : 100%;
	display : block;
	border : 0;
	padding : 0;
	margin : 0;
}

#colorbox,
#cboxContent,
#cboxLoadedContent {
	        box-sizing : content-box;
	   -moz-box-sizing : content-box;
	-webkit-box-sizing : content-box;
}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#colorbox,
#cboxOverlay,
#cboxWrapper {
	overflow : visible;
}

#cboxOverlay {
	background : #000000;
	opacity : 0.9;
	filter : alpha(opacity=90);
}

#colorbox {
	outline : 0;
}

#cboxContent {
	overflow : visible;
	background : #000000;
}

.cboxIframe {
	background : #ffffff;
}

#cboxError {
	padding : 50px;
}

#cboxLoadedContent {
	background : #ffffff;
	padding : 0;
}

#cboxLoadingGraphic {
	background : url(/img/common/loading.gif) no-repeat center center;
}

#cboxLoadingOverlay {
	background : #000000;
}

#cboxTitle {
	position : absolute;
	top : -22px;
	left : 0;
	color : #000000;
}

#cboxCurrent {
	position : absolute;
	top : -22px;
	right : 205px;
	text-indent : -9999px;
}

#cboxPrevious,
#cboxNext,
#cboxSlideshow {
	border : 0;
	padding : 0;
	margin : 0;
	overflow : visible;
	text-indent : -9999px;
	width : 20px;
	height : 20px;
	position : absolute;
	top : -20px;
	background : url(/img/common/controls.png) no-repeat 0 0;
}

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

#cboxPrevious {
	background-position : 0px 0px;
	right : 44px;
}

#cboxPrevious:hover {
	background-position : 0px -25px;
}

#cboxNext {
	background-position : -25px 0px;
	right : 22px;
}

#cboxNext:hover {
	background-position : -25px -25px;
}

.cboxSlideshow_on #cboxPrevious,
.cboxSlideshow_off #cboxPrevious {
	right : 66px;
}

.cboxSlideshow_on #cboxSlideshow {
	background-position : -75px -25px;
	right : 44px;
}

.cboxSlideshow_on #cboxSlideshow:hover {
	background-position : -100px -25px;
}

.cboxSlideshow_off #cboxSlideshow {
	background-position : -100px 0px;
	right : 44px;
}

.cboxSlideshow_off #cboxSlideshow:hover {
	background-position : -75px -25px;
}

#cboxClose {
	border : 0;
	padding : 0;
	margin : 0;
	overflow : visible;
	text-indent : -9999px;
	width : 37px;
	height : 37px;
	position : absolute;
	top : -17px;
	right : -17px;
	background : url(/img/common/icon_close.png) no-repeat 0 0;
	background-size : cover;
}
@media screen and (min-width: 750px) {
	#cboxClose {
		width : 74px;
		height : 74px;
		top : -34px;
		right : -34px;
	}
}

/* table
--------------------------------------------------------- */
.table {
	width : 100%;
	border : 1px solid #dbdbdb;
	border-collapse : collapse;
	box-sizing : border-box;
}
.table th,
.table td {
	border-right : 1px solid #dbdbdb;
	border-bottom : 1px solid #dbdbdb;
	padding : 10px 20px;
}
@media screen and (min-width: 750px) {
	.table th,
	.table td {
		padding : 20px;
	}
}
.table th a,
.table td a {
	color : #26385e;
	text-decoration : underline;
}
.table th a:hover,
.table td a:hover {
	text-decoration : none;
}
.table th {
	background-color : #eff6fc;
	color : #26385e;
	font-weight : 700;
	white-space : nowrap;
}
.table td {
	word-break : break-all;
}

.table-line-dotted {
	width : 100%;
	border-collapse : collapse;
	box-sizing : border-box;
}
.table-line-dotted th,
.table-line-dotted td {
	border-top : 1px dotted #393939;
	border-bottom : 1px dotted #393939;
	padding : 20px 10px;
}
@media screen and (max-width: 749px) {
	.table-line-dotted th,
	.table-line-dotted td {
		width : 100%;
		display : block;
	}
}
@media screen and (min-width: 750px) {
	.table-line-dotted th,
	.table-line-dotted td {
		padding : 20px;
	}
}
.table-line-dotted th {
	font-weight : 700;
	white-space : nowrap;
}
@media screen and (max-width: 749px) {
	.table-line-dotted th {
		border-bottom : 0;
		padding-bottom : 10px;
	}
}
.table-line-dotted td {
	word-break : break-all;
}
@media screen and (max-width: 749px) {
	.table-line-dotted td {
		border-top : 0;
		padding-top : 0px;
	}
}
@media screen and (min-width: 750px) {
	.table-line-dotted td {
		padding-left : 0px;
	}
}

.table-heading {
	margin-bottom : 24px;
	font-size : 16px;
	font-size : 1.6rem;
}
@media screen and (min-width: 750px) {
	.table-heading {
		font-size : 18px;
		font-size : 1.8rem;
	}
}

.table-koudai {
	margin-bottom : 48px;
}
.table-koudai .table-koudai--name {
	width : 20%;
}
.table-koudai .table-koudai--category01 {
	width : 15%;
}
.table-koudai .table-koudai--category02 {
	width : 20%;
}
.table-koudai .table-koudai--contents {
	width : 30%;
}
.table-koudai .table-koudai--inquiry {
	width : 15%;
}

@media screen and (max-width: 749px) {
	.table-scroll {
		display : block;
		overflow-x : scroll;
		white-space : nowrap;
		-webkit-overflow-scrolling : touch;
	}

	.table-scroll::-webkit-scrollbar {
		/*tableにスクロールバーを追加*/
		height : 5px;
	}

	.table-scroll::-webkit-scrollbar-track {
		/*tableにスクロールバーを追加*/
		background : #f1f1f1;
	}

	.table-scroll::-webkit-scrollbar-thumb {
		/*tableにスクロールバーを追加*/
		background : #bcbcbc;
	}
}
/* figure - utility
--------------------------------------------------------- */
.figure,
.figure-l,
.figure-r {
	padding : 0;
	margin-bottom : 1em;
}
.figure img,
.figure-l img,
.figure-r img {
	margin-bottom : 0.5em;
}
.figure p,
.figure-l p,
.figure-r p {
	font-size : 12px;
	font-size : 1.2rem;
	margin-bottom : 0;
}
@media screen and (min-width: 750px) {
	.figure p,
	.figure-l p,
	.figure-r p {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

.figure-l {
	float : left;
	margin-right : 1em;
}
.figure-r {
	float : right;
	margin-left : 1em;
}
/* group
--------------------------------------------------------- */
.group__header {
	display : flex;
	align-items : flex-end;
	padding : 0 0 6px;
	margin-bottom : 16px;
}
@media screen and (min-width: 750px) {
	.group__header {
		padding : 0 0 10px;
		margin-bottom : 16px;
	}
}
.group__header .heading {
	font-weight : bold;
	font-size : 16px;
	font-size : 1.6rem;
}
@media screen and (min-width: 750px) {
	.group__header .heading {
		font-size : 18px;
		font-size : 1.8rem;
	}
}
.group__header .link {
	font-size : 12px;
	font-size : 1.2rem;
	margin-left : auto;
	white-space : nowrap;
}
@media screen and (min-width: 750px) {
	.group__header .link {
		font-size : 14px;
		font-size : 1.4rem;
	}
}
.group__header .icon {
	color : #3485cf;
	font-weight : normal;
	margin-left : 0;
	margin-right : 8px;
}
.group__header--border {
	border-bottom : 1px solid #dbdbdb;
}
.group__body .link {
	font-size : 12px;
	font-size : 1.2rem;
	margin-left : auto;
	white-space : nowrap;
}
@media screen and (min-width: 750px) {
	.group__body .link {
		font-size : 14px;
		font-size : 1.4rem;
	}
}
.group__title {
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.group__title {
		margin-bottom : 8px;
	}
}
.group__title .link {
	color : #414c6e;
}
.group__title .heading {
	font-size : 14px;
	font-size : 1.4rem;
}
@media screen and (min-width: 750px) {
	.group__title .heading {
		font-size : 18px;
		font-size : 1.8rem;
	}
}
.group__text {
	margin-bottom : 12px;
	line-height : 1.7;
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.group__text {
		margin-bottom : 14px;
		font-size : 14px;
		font-size : 1.4rem;
	}
}
.group__text + .group__link {
	margin-top : -10px;
}
@media screen and (min-width: 750px) {
	.group__text + .group__link {
		margin-top : -6px;
	}
}
.group__img {
	margin-left : auto;
	margin-right : auto;
	margin-top : 28px;
}
@media screen and (min-width: 750px) {
	.group__img {
		margin-top : 0;
	}
}
.group__img--web-s {
	width : 311px;
}
@media screen and (min-width: 750px) {
	.group__img--web-s {
		width : 180px;
		margin-left : 20px;
	}
}
@media screen and (min-width: 750px) {
	.group__row {
		display : flex;
	}
}

@media screen and (max-width: 749px) {
	.group__body > .grid-row .grid-col + .grid-col {
		margin-top : 10px;
	}
}

/* media
--------------------------------------------------------- */
.media__item {
	margin : 20px 0 0;
}
.media__item:after {
	display : block;
	clear : both;
	content : "";
}
@media screen and (min-width: 750px) {
	.media__item {
		margin : 28px 0 0;
	}
}
.media > .media__item:first-child {
	margin-top : 0;
}
.media__left {
	float : left;
	margin-right : 16px;
}
@media screen and (min-width: 750px) {
	.media__left {
		margin-right : 20px;
	}
}
.media__right {
	overflow : hidden;
}
.media__img--icon {
	width : 64px;
	height : auto;
}
@media screen and (min-width: 750px) {
	.media__img--icon {
		width : 76px;
		height : auto;
	}
}
.media__heading {
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 4px;
}
.media__heading a {
	text-decoration : underline;
}
.media__heading a:hover {
	text-decoration : none;
}
@media screen and (min-width: 750px) {
	.media__heading {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 8px;
	}
}
.media__text {
	font-size : 14px;
	font-size : 1.4rem;
	line-height : 1.5;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.media__text {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 8px;
	}
}
.media__date {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7e7e7e;
}
@media screen and (min-width: 750px) {
	.media__date {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

/* theme
--------------------------------------------------------- */
.theme-list {
	box-sizing : border-box;
	border : solid 1px #dbdbdb;
	position : relative;
}
@media screen and (min-width: 750px) {
	.theme-list {
		margin-top : 84px;
	}
}
.theme-list .theme-list__header {
	width : 100%;
	box-sizing : border-box;
	background-color : #f1f1f1;
	padding : 10px 16px;
	font-size : 14px;
	font-size : 1.4rem;
}
.theme-list .theme-list__header::before {
	display : block;
	width : 0;
	height : 0;
	margin-top : calc((1 - 1.5) * 0.5em);
	content : "";
}
.theme-list .theme-list__header::after {
	display : block;
	width : 0;
	height : 0;
	margin-bottom : calc((1 - 1.5) * 0.5em);
	content : "";
}
.theme-list .theme-list__header .icon {
	color : #999999;
}
@media screen and (max-width: 749px) {
	.theme-list .theme-list__header {
		display : flex;
		align-items : center;
	}
	.theme-list .theme-list__header .icon {
		margin-left : auto;
	}
	.theme-list .theme-list__header .icon:before {
		content : "\f107";
		color : inherit;
	}
}
@media screen and (min-width: 750px) {
	.theme-list .theme-list__header {
		font-size : 16px;
		font-size : 1.6rem;
		padding : 12px 16px;
	}
	.theme-list .theme-list__header .icon {
		display : none;
	}
}
.theme-list .theme-list__header.is-theme-accordion--open .icon:before {
	content : "\f106";
}
.theme-list .theme-list__body {
	background-color : #ffffff;
	padding : 16px 16px;
}
@media screen and (min-width: 750px) {
	.theme-list .theme-list__body {
		padding : 20px 16px;
	}
}
.theme-list .theme-list__body .list--folder > li:before {
	color : #3485cf;
}
.theme-list .theme-list__sub-title {
	position : relative;
	font-size : 14px;
	font-size : 1.4rem;
	margin-top : 16px;
	margin-bottom : 8px;
	padding-left : 1.25em;
}
@media screen and (min-width: 750px) {
	.theme-list .theme-list__sub-title {
		font-size : 16px;
		font-size : 1.6rem;
		margin-top : 18px;
		margin-bottom : 8px;
	}
}
.theme-list .theme-list__sub-title .icon {
	position : absolute;
	left : 0;
	top : 0;
	margin : 0;
	color : #3485cf;
	vertical-align : middle;
}
.theme-list .theme-list__sub-title a {
	text-decoration : underline;
}
.theme-list .theme-list__sub-title a:hover {
	text-decoration : none;
}
.theme-list .theme-list__sub-title:first-of-type {
	margin-top : 0px;
}
.theme-list .list {
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (max-width: 749px) {
	.theme-list .list {
		display : flex;
		flex-wrap : wrap;
		align-items : flex-start;
		-moz-column-gap : 16px;
		     column-gap : 16px;
	}
}
@media screen and (min-width: 750px) {
	.theme-list .list {
		font-size : 14px;
		font-size : 1.4rem;
	}
}
.theme-list .list a {
	text-decoration : underline;
}
.theme-list .list a:hover {
	text-decoration : none;
}

.theme-bottom-btn {
	margin-top : 24px;
}
@media screen and (max-width: 749px) {
	.theme-bottom-btn {
		margin-top : 16px;
	}
}
.theme-bottom-btn .btn {
	width : 100%;
	display : block;
	line-height : 1.5;
	padding : 0.5em;
	font-size : 16px;
	font-size : 1.6rem;
}
@media screen and (max-width: 749px) {
	.theme-bottom-btn .btn {
		font-size : 14px;
		font-size : 1.4rem;
	}
}

@media screen and (max-width: 749px) {
	.l_content-side--theme .theme-list {
		width : calc(100% - 30px);
		position : absolute;
		left : 15px;
		right : 15px;
		top : 24px;
		z-index : 200;
	}
}

/* profile
--------------------------------------------------------- */
/* .profile-modal */
.profile-modal {
	overflow : hidden;
}
@media screen and (min-width: 750px) {
	.profile-modal {
		max-height : 680px;
	}
}
.profile-modal__img {
	margin-bottom : 24px;
}
@media screen and (min-width: 750px) {
	.profile-modal__img {
		float : left;
		margin-bottom : 0;
	}
}
@media screen and (min-width: 750px) {
	.profile-modal__content {
		min-height : 680px;
		position : relative;
		overflow : hidden;
	}
}
.profile-modal__top {
	padding-left : 15px;
	padding-right : 15px;
	padding-bottom : 15px;
}
@media screen and (min-width: 750px) {
	.profile-modal__top {
		padding-left : 50px;
		padding-right : 50px;
		padding-top : 45px;
		padding-bottom : 0;
	}
}
.profile-modal__title {
	font-size : 12px;
	font-size : 1.2rem;
	line-height : 1.3;
	text-align : center;
	font-weight : normal;
}
@media screen and (min-width: 750px) {
	.profile-modal__title {
		font-size : 14px;
		font-size : 1.4rem;
		text-align : left;
	}
}
.profile-modal__name-ja {
	font-size : 19px;
	font-size : 1.9rem;
	font-weight : bold;
	text-align : center;
	margin-top : 4px;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.profile-modal__name-ja {
		font-size : 32px;
		font-size : 3.2rem;
		text-align : left;
		margin-top : 0;
		margin-bottom : 0;
	}
}
.profile-modal__name-en {
	font-size : 11px;
	font-size : 1.1rem;
	text-align : center;
}
@media screen and (min-width: 750px) {
	.profile-modal__name-en {
		font-size : 12px;
		font-size : 1.2rem;
		text-align : left;
	}
}
.profile-modal__text {
	font-size : 13px;
	font-size : 1.3rem;
	margin-top : 20px;
	line-height : 1.7;
}
@media screen and (min-width: 750px) {
	.profile-modal__text {
		margin-top : 16px;
		font-size : 14px;
		font-size : 1.4rem;
		line-height : 1.9;
	}
}
.profile-modal__bottom {
	padding-left : 15px;
	padding-right : 15px;
	padding-top : 15px;
	padding-bottom : 15px;
	box-sizing : border-box;
	background-color : #e9f0f6;
	width : 100%;
}
.profile-modal__bottom > p {
	font-size : 14px;
	font-size : 1.4rem;
}
.profile-modal__bottom a {
	color : #2c67a9;
	font-weight : bold;
}
@media screen and (min-width: 750px) {
	.profile-modal__bottom {
		position : absolute;
		bottom : 0;
		padding-left : 50px;
		padding-right : 50px;
		padding-top : 32px;
		padding-bottom : 32px;
	}
	.profile-modal__bottom > p {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.profile-modal__heading {
	font-weight : bold;
	font-size : 14px;
	font-size : 1.4rem;
	color : #000000;
	margin-bottom : 8px;
}
@media screen and (min-width: 750px) {
	.profile-modal__heading {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 8px;
	}
}
.profile-modal__list {
	font-size : 14px;
	font-size : 1.4rem;
}
@media screen and (min-width: 750px) {
	.profile-modal__list {
		font-size : 16px;
		font-size : 1.6rem;
		-moz-column-count : 2;
		     column-count : 2;
	}
	.profile-modal__list > li {
		line-height : 1.3;
		margin-bottom : 0.25em;
	}
}
.profile-modal__link {
	font-size : 14px;
	font-size : 1.4rem;
	text-align : right;
	font-weight : bold;
	margin-top : 6px;
}
.profile-modal__link a {
	color : #2c67a9;
}
@media screen and (min-width: 750px) {
	.profile-modal__link {
		font-size : 16px;
		font-size : 1.6rem;
		margin-top : 0;
	}
}

/* movie
--------------------------------------------------------- */
.ytvisual {
	position : relative;
	margin-left : auto;
	margin-right : auto;
}
@media screen and (min-width: 750px) {
	.ytvisual {
		width : 760px;
		height : auto;
		margin-bottom : 56px;
	}
}
.ytvisual .ytvisual__inner {
	position : relative;
	padding-bottom : 56.25%;
	/*アスペクト比 16:9の場合の縦幅*/
	width : 100%;
	height : 0;
}
.ytvisual .ytvisual__inner .ytvisual-thumbnail {
	cursor : pointer;
	transition : all 0.2s linear;
}
.ytvisual .ytvisual__inner .ytvisual-thumbnail:hover {
	opacity : 0.6;
}
.ytvisual .ytvisual__inner iframe {
	position : absolute;
	top : 0;
	left : 0;
	width : 100% !important;
	height : 100% !important;
}

/* ---------------------------------------------------------
 Project
--------------------------------------------------------- */
/* site-title
--------------------------------------------------------- */
.header .site-title {
	display : block;
	margin-right : auto;
	margin-bottom : 0;
	margin-top : 10px;
	width : 135px;
}
@media screen and (min-width: 750px) {
	.header .site-title {
		width : 184px;
		margin-top : 24px;
	}
}

/* header-nav
--------------------------------------------------------- */
/* .header__nav {
	color : #ffffff;
	margin-right : auto;
}
.header__nav a {
	color : #ffffff;
}
@media screen and (min-width: 750px) {
	.header__nav {
		display : flex;
		flex-wrap : nowrap;
		margin-right : 20px;
		color : #414c6e;
	}
	.header__nav a {
		color : #414c6e;
	}
	.header__nav:after {
		content : "";
		display : block;
		border-right : 1px solid #dbdbdb;
		height : 56px;
	}
} */

/* global-nav
--------------------------------------------------------- */
.global-nav {
	display : none;
	margin-top : 4.2666666667%;
}
@media screen and (min-width: 750px) {
	.global-nav {
		display : flex;
		justify-content : space-between;
		font-size : 16px;
		font-size : 1.6rem;
		margin-top : 28px;
		margin-right : 30px;
		height : 38px;
	}
	.global-nav > .global-nav__item > a {
		font-weight : bold;
		padding : 0 18px;
		display : block;
		color : #7e7e7e;
	}
	.global-nav > .global-nav__item > a > span {
		display : inline-block;
	}
	.global-nav > .global-nav__item:hover > a {
		text-decoration : none;
		color : #333333;
	}
	.global-nav > .global-nav__item:hover > a > span {
		border-bottom : 4px solid #333333;
	}
}

/* sub-nav
--------------------------------------------------------- */
.sub-nav a {
	color : #333333;
}
.sub-nav a:hover {
	text-decoration : underline;
}

.sub-nav.sub-nav--header {
	display : none;
	margin-top : 16px;
	font-weight : bold;
	font-size : 12px;
	font-size : 1.2rem;
}
@media screen and (min-width: 750px) {
	.sub-nav.sub-nav--header {
		font-size : 12px;
		font-size : 1.2rem;
		margin-top : 20px;
		margin-right : 20px;
		display : block;
	}
}

.sub-nav.sub-nav--footer {
	display : flex;
	align-items : center;
	margin-left : auto;
	font-size : 9px;
	font-size : 0.9rem;
}
.sub-nav.sub-nav--footer li {
	font-size : 11px;
	font-size : 1.1rem;
	margin-left : 16px;
}

/* dropdown-menu
--------------------------------------------------------- */
.dropdown-menu {
	display : none;
	position : absolute;
	top : 100%;
	left : 0;
	z-index : 1000;
	width : 100%;
	background-color : #363843;
	color : #ffffff;
}
.dropdown-menu a {
	color : #ffffff;
}
.dropdown-menu a:hover {
	text-decoration : underline;
}
.dropdown-menu__inner {
	width : 1100px;
	margin-left : auto;
	margin-right : auto;
	padding : 40px 0;
}
.dropdown-menu__headding {
	font-size : 14px;
	font-size : 1.4rem;
}
.dropdown-menu .menu--dropdown .menu__list {
	font-size : 16px;
	font-size : 1.6rem;
}
.dropdown-menu .menu--dropdown .menu__list > li {
	line-height : 1.5;
	font-size : 16px;
	font-size : 1.6rem;
	margin-bottom : 8px;
}
.dropdown-menu .menu--dropdown .menu__list > li:last-child {
	margin-bottom : 0;
}
.dropdown-menu .menu--dropdown .menu__sub-list {
	padding-left : 1em;
	margin-top : 8px;
}
.dropdown-menu .menu--dropdown .menu__sub-list > li {
	line-height : 1.5;
	font-size : 14px;
	font-size : 1.4rem;
	text-indent : -1.35em;
	padding-left : 1.35em;
	margin-bottom : 8px;
}
.dropdown-menu .menu--dropdown .menu__sub-list > li:before {
	content : "-";
	display : inline;
	margin-right : 0.35em;
}
.dropdown-menu .menu--dropdown .menu__sub-list > li:last-child {
	margin-bottom : 0;
}

.dropdown-menu__inner {
	display : flex;
}

.dropdown-menu__item--left {
	margin-right : 56px;
}

.dropdown-menu__item--right {
	display : flex;
	-moz-column-gap : 56px;
	     column-gap : 56px;
}

/* drawer-nav
--------------------------------------------------------- */
.drawer-btn {
	width : 30px;
	height : 30px;
	position : absolute;
	top : 7px;
	right : 10px;
	display : block;
	cursor : pointer;
}
.drawer-btn i {
	display : block;
	width : 20px;
	height : 2px;
	background : #ffffff;
	position : absolute;
	right : 5px;
	top : 14px;
}
.drawer-btn i:before,
.drawer-btn i:after {
	content : "";
	display : block;
	width : 20px;
	height : 2px;
	background : #ffffff;
	position : absolute;
	transform : rotate(0deg);
	transition : transform 0.4s !important;
}
.drawer-btn i:before {
	transform : translateY(-5px);
}
.drawer-btn i:after {
	transform : translateY(5px);
}

.header.header--is-scrolled .drawer-btn i {
	background : #414c6e;
}
.header.header--is-scrolled .drawer-btn i:before,
.header.header--is-scrolled .drawer-btn i:after {
	background : #414c6e;
}

.header.header--is-scrolled .drawer-btn--is-opened i {
	background : transparent;
}
.header.header--is-scrolled .drawer-btn--is-opened i:after {
	transform : translateY(0px) rotate(-45deg);
	background : #414c6e;
}
.header.header--is-scrolled .drawer-btn--is-opened i:before {
	transform : translateY(0px) rotate(45deg);
	background : #414c6e;
}

/* drawer */
.drawer {
	position : fixed;
	right : 0;
	bottom : 0;
	left : 0;
	overflow-x : hidden;
	top : 0;
	padding-top : 0;
	height : 0;
	transition : height 0.4s linear;
	z-index : 666;
	-webkit-overflow-scrolling : touch;
}
.drawer__list {
	background-color : #363843;
	color : #ffffff;
}
.drawer__list a {
	color : #ffffff;
}
.drawer__item {
	border-bottom : 1px solid #616161;
	padding : 20px;
	font-size : 16px;
	font-size : 1.6rem;
	font-weight : bold;
}
.drawer__menu {
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : normal;
	padding-left : 1em;
	margin-top : 1em;
}
.drawer__menu > li {
	margin-bottom : 8px;
}
.drawer__menu > li:last-child {
	margin-bottom : 0;
}
.drawer__sub-menu {
	display : flex;
	flex-wrap : wrap;
	-moz-column-gap : 16px;
	     column-gap : 16px;
	font-size : 12px;
	font-size : 1.2rem;
	margin-top : 8px;
}
.drawer__sub-menu > li {
	text-indent : -1.35em;
	padding-left : 1.35em;
}
.drawer__sub-menu > li:before {
	content : "-";
	display : inline;
	margin-right : 0.35em;
}
.drawer__close {
	text-align : right;
	padding-top : 3.2%;
	padding-bottom : 3.2%;
	margin-right : 20px;
	font-size : 16px;
	font-size : 1.6rem;
}
.drawer__close-btn {
	display : inline-block;
}
.drawer__close-btn .icon {
	margin-left : 10px;
	font-size : 24px;
	font-size : 2.4rem;
}
.drawer--is-opened {
	height : 100%;
	padding-top : 4.5rem;
}
@media screen and (min-width: 750px) {
	.drawer {
		display : none;
	}
}

/*  footer-top
--------------------------------------------------------- */
.footer__top {
	display : flex;
	flex-wrap : wrap;
}
.footer__top .banner-list {
	order : 2;
}
@media screen and (min-width: 750px) {
	.footer__top .banner-list {
		width : 640px;
		order : 1;
	}
}
.footer__top .fb-like-box {
	margin-bottom : 4%;
	order : 1;
	width : 100%;
}
@-moz-document url-prefix() {
	.footer__top .fb-like-box {
		margin-bottom : 15px;
	}
}
@media screen and (min-width: 750px) {
	.footer__top .fb-like-box {
		order : 2;
		width : 430px;
		margin-left : 28px;
		margin-bottom : 0;
	}
}

/* footer-middle
--------------------------------------------------------- */
.footer__middle {
	color : #ffffff;
}
.footer__middle a {
	color : #ffffff;
}
.footer__middle a:hover {
	text-decoration : underline;
}
.footer__middle .site-title {
	font-weight : bold;
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 20px;
}
@media screen and (min-width: 750px) {
	.footer__middle .site-title {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 24px;
	}
}
.footer__middle .footer-menu {
	display : flex;
	-moz-column-gap : 16px;
	     column-gap : 16px;
}
.footer__middle .footer-menu .footer-menu__block {
	width : calc((100% - 16px) / 2);
}
.footer__middle .footer-menu .footer-menu__item {
	margin-bottom : 16px;
}
.footer__middle .footer-menu .footer-menu__item:last-child {
	margin-bottom : 0;
}
.footer__middle .footer-menu .footer-menu__heading {
	font-size : 12px;
	font-size : 1.2rem;
	margin-bottom : 8px;
}
.footer__middle .footer-menu .footer-menu__heading + .footer-menu__heading {
	margin-top : 16px;
}
.footer__middle .footer-menu .menu--footer {
	font-size : 10px;
	font-size : 1rem;
}
.footer__middle .footer-menu .menu--footer > li {
	margin-bottom : 4px;
}
.footer__middle .footer-menu .menu--footer > li:last-child {
	margin-bottom : 0;
}
.footer__middle .footer-menu .menu__sub-menu {
	margin-top : 4px;
	padding-left : 1em;
}
.footer__middle .footer-menu .menu__sub-menu > li {
	margin-bottom : 4px;
	text-indent : -1.35em;
	padding-left : 1.35em;
	font-weight : normal;
}
.footer__middle .footer-menu .menu__sub-menu > li:last-child {
	margin-bottom : 0;
}
.footer__middle .footer-menu .menu__sub-menu > li:before {
	content : "-";
	margin-right : 0.35em;
}
@media screen and (min-width: 750px) {
	.footer__middle .footer-menu {
		-moz-column-gap : 56px;
		     column-gap : 56px;
	}
	.footer__middle .footer-menu .footer-menu__block {
		display : flex;
		-moz-column-gap : 56px;
		     column-gap : 56px;
		width : auto;
	}
	.footer__middle .footer-menu .footer-menu__item {
		margin-bottom : 0;
	}
	.footer__middle .footer-menu .footer-menu__heading {
		font-size : 16px;
		font-size : 1.6rem;
	}
	.footer__middle .footer-menu .menu--footer {
		font-size : 11px;
		font-size : 1.1rem;
	}
}

/* footer-bottom
--------------------------------------------------------- */
.footer__bottom {
	display : flex;
	justify-content : flex-start;
}

/* copyright
--------------------------------------------------------- */
/* single
--------------------------------------------------------- */
.single {
	position : relative;
	padding-top : 26px;
	*zoom : 1;
}
.single:after {
	display : block;
	clear : both;
	content : "";
}
.single__header {
	margin-bottom : 24px;
}
.single__category {
	font-weight : bold;
	color : #23315b;
	font-size : 11px;
	font-size : 1.1rem;
	margin-bottom : 10px;
	font-size : 18px;
	font-size : 1.8rem;
	margin-bottom : 8px;
	display : flex;
	flex-wrap : wrap;
	gap : 4px 4px;
}
.single__category > .list--category {
	margin-top : 4px;
	font-weight : normal;
}
.single__category > .list--category a {
	color : #393939;
}
.single__page-title {
	font-size : 22px;
	font-size : 2.2rem;
	line-height : 1.4;
	color : #000000;
	margin-bottom : 8px;
}
.single__lead {
	font-size : 16px;
	font-size : 1.6rem;
}
.single__update {
	color : #7e7e7e;
	font-size : 14px;
	font-size : 1.4rem;
}
.single__content {
	line-height : 1.8;
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 45px;
}
.single__content a {
	color : #393939;
}
.single__content a:hover {
	color : #2c67a9;
}
.single__content p,
.single__content ul,
.single__content ol,
.single__content dl,
.single__content table {
	margin-bottom : 2em;
}
.single__content .title-lg {
	font-size : 18px;
	font-size : 1.8rem;
	font-weight : bold;
	margin-top : 1.5em;
	margin-bottom : 1.5em;
	line-height : 1.5;
}
.single__content .title-md {
	font-size : 16px;
	font-size : 1.6rem;
	margin-top : 1.5em;
	margin-bottom : 0.5em;
	font-weight : bold;
	line-height : 1.5;
}
.single__content .title-sm {
	font-size : 15px;
	font-size : 1.5rem;
	margin-top : 1.5em;
	font-weight : bold;
	margin-bottom : 0.5em;
	line-height : 1.5;
}
.single__content .title-xs {
	font-size : 14px;
	font-size : 1.4rem;
	font-weight : bold;
	margin-top : 1.5em;
	margin-bottom : 0.5em;
	line-height : 1.5;
}
.single__content .panel > .title-lg {
	margin : 0.5em 0;
}
.single__content .panel > .title-md {
	margin : 0.5em 0;
}
.single__content .panel > .title-sm {
	margin : 0.5em 0;
}
.single__content .panel > .title-sm + .title-lg {
	margin : 1em 0 0.5em;
}
.single__content .title-border {
	border-left : 3px solid #3483cd;
	padding-left : 10px;
}
.single__content .title-line {
	position : relative;
	padding : 0 1.5em;
}
.single__content .title-line:before {
	content : "";
	position : absolute;
	top : 0.75em;
	display : inline-block;
	width : 1em;
	height : 1px;
	background-color : black;
	left : 0;
}
.single__content dl {
	display : table;
}
.single__content dt {
	display : table-cell;
	word-break : keep-all;
	padding-right : 1em;
	font-weight : bold;
}
.single__content dd {
	display : table-cell;
}
.single__content .title-lg + dl,
.single__content .title-md + dl,
.single__content .title-sm + dl,
.single__content .title-xs + dl {
	margin-top : 2em;
}
.single__content__inner {
	padding-right : 20px;
	padding-left : 20px;
	margin-left : auto;
	margin-right : auto;
}
.single__content__inner > .title-lg:first-child,
.single__content__inner > .title-md:first-child,
.single__content__inner > .title-sm:first-child,
.single__content__inner > .title-xs:first-child,
.single__content__inner > .panel:first-child {
	margin-top : 0;
}
.single__content__inner .paragraph {
	margin-top : 3.2rem;
	margin-bottom : 3.2rem;
}
.single__content--panel {
	background-color : #f1f1f1;
	margin-bottom : 0;
}
.single__content--panel .single__content__inner {
	background-color : #ffffff;
	padding-top : 30px;
	padding-bottom : 30px;
	border-left : 4px solid #f1f1f1;
	border-right : 4px solid #f1f1f1;
	border-top : 4px solid #f1f1f1;
	line-height : 1.7;
}
.single .single__content--panel.single__content--bottom {
	width : 100%;
}
.single .single__content--panel.single__content--bottom p,
.single .single__content--panel.single__content--bottom ul,
.single .single__content--panel.single__content--bottom ol,
.single .single__content--panel.single__content--bottom dl,
.single .single__content--panel.single__content--bottom table {
	margin-bottom : 0;
}
.single .single__content--panel.single__content--bottom > .single__content__inner {
	padding : 18px 0;
}
.single__time {
	color : #7e7e7e;
}
.single__time .icon {
	color : #3485cf;
}
.single__pager {
	display : flex;
	justify-content : space-between;
	width : 100%;
	margin-top : 0;
	font-size : 12px;
	font-size : 1.2rem;
}
.single__pager > li a {
	display : block;
}
@media screen and (min-width: 750px) {
	.single {
		padding-top : 70px;
	}
	.single__header {
		margin-bottom : 50px;
	}
	.single__category {
		font-size : 18px;
		font-size : 1.8rem;
		margin-bottom : 8px;
	}
	.single__update {
		margin-top : 16px;
		font-size : 16px;
		font-size : 1.6rem;
	}
	.single__page-title {
		font-size : 40px;
		font-size : 4rem;
		margin-bottom : 16px;
	}
	.single__lead {
		font-size : 16px;
		font-size : 1.6rem;
		margin-top : 24px;
	}
	.single__content {
		margin-bottom : 56px;
		font-size : 16px;
		font-size : 1.6rem;
	}
	.single__content p,
	.single__content ul,
	.single__content ol,
	.single__content dl,
	.single__content table {
		margin-bottom : 1.5em;
	}
	.single__content .title-lg {
		font-size : 24px;
		font-size : 2.4rem;
	}
	.single__content .title-md {
		font-size : 20px;
		font-size : 2rem;
	}
	.single__content .title-sm {
		font-size : 18px;
		font-size : 1.8rem;
	}
	.single__content .title-xs {
		font-size : 17px;
		font-size : 1.7rem;
	}
	.single__content .panel > .title-lg {
		margin : 1em 0;
	}
	.single__content .panel > .title-md {
		margin : 1em 0 1.5em;
	}
	.single__content .panel > .title-sm {
		margin : 1em 0 1.5em;
	}
	.single__content .title-border {
		padding-left : 12px;
	}
	.single__content .lead {
		font-size : 18px;
		font-size : 1.8rem;
	}
	.single__content dl {
		display : block;
	}
	.single__content dl:after {
		display : block;
		clear : both;
		content : "";
	}
	.single__content dt {
		display : block;
		float : left;
	}
	.single__content dd {
		display : block;
		margin-bottom : 1em;
		overflow : hidden;
	}
	.single__content--panel {
		padding-top : 18px;
		margin-bottom : 0;
	}
	.single__content--panel .single__content__inner {
		padding : 60px 80px;
		border-left : 0;
		border-right : 0;
		border-top : 0;
		width : 1100px;
	}
	.single__content--panel .single__content__inner:after {
		display : block;
		clear : both;
		content : "";
	}
	.single .single__content--panel.single__content--bottom {
		padding-top : 4px;
	}
	.single .single__content--panel.single__content--bottom > .single__content__inner {
		padding : 30px 0;
	}
	.single__content--panel .single__content--left {
		padding : 0 60px 40px 0;
		margin : 0 auto;
		width : 50%;
		display : table-cell;
	}
	.single__content--panel .single__content--right {
		border-left : 1px solid #f1f1f1;
		padding : 0 0 40px 60px;
		margin : 0 auto;
		width : 50%;
		display : table-cell;
	}
	.single__pager {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.single--publication .single__header {
	display : none;
}
@media screen and (max-width: 749px) {
	.single--research .single__lead {
		margin-top : 20px;
		font-size : 12px;
		font-size : 1.2rem;
	}
}

.single--movie .single__content a:not([class]) {
	text-decoration : underline;
	color : #414c6e;
}
.single--movie .single__content a:not([class]):hover {
	text-decoration : none;
	color : #2c67a9;
}

.single__btn--movie {
	text-align : center;
	margin : 20px 0;
}
@media screen and (min-width: 750px) {
	.single__btn--movie {
		margin : 32px 0;
	}
}

@media screen and (max-width: 749px) {
	.js-no-bg .single {
		padding-top : 55px;
	}
}

/* archive
--------------------------------------------------------- */
.archive {
	position : relative;
	margin : 27px auto;
}
@media screen and (min-width: 750px) {
	.archive {
		margin : 70px auto;
	}
}
.archive__header {
	margin-bottom : 28px;
}
@media screen and (min-width: 750px) {
	.archive__header {
		margin-bottom : 48px;
	}
}
.archive__page-title {
	font-size : 22px;
	font-size : 2.2rem;
	line-height : 1.4;
	color : #000000;
}
@media screen and (min-width: 750px) {
	.archive__page-title {
		font-size : 28px;
		font-size : 2.8rem;
	}
}
.archive__page-title-link {
	font-size : 12px;
	font-size : 1.2rem;
	margin-top : 4px;
}
@media screen and (min-width: 750px) {
	.archive__page-title-link {
		font-size : 14px;
		font-size : 1.4rem;
		position : absolute;
		top : 0;
		right : 0;
		margin-top : 0px;
	}
}
.archive__item {
	border-bottom : 1px solid #ececec;
	position : relative;
	padding-top : 20px;
	padding-bottom : 20px;
	background-color : #ffffff;
	overflow : hidden;
	transition : all 0.3s ease;
}
@media screen and (min-width: 750px) {
	.archive__item {
		padding : 24px 20px;
	}
}
.archive__list > .archive__item:first-child {
	border-top : 1px solid #ececec;
}
.archive__item:hover {
	background-color : #f8fafc;
}
.archive__item:after {
	content : "";
	clear : both;
}
.archive__link {
	height : 100%;
	left : 0;
	position : absolute;
	top : 0;
	width : 100%;
	border-top : 2px solid #ffffff;
	border-bottom : 2px solid #ffffff;
}
.archive__title {
	font-size : 14px;
	font-size : 1.4rem;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.archive__title {
		font-size : 20px;
		font-size : 2rem;
		margin-bottom : 8px;
	}
}
@media screen and (min-width: 750px) {
	.archive__title + .archive__number {
		margin-top : -8px;
	}
}
.archive__sub-title {
	font-size : 11px;
	font-size : 1.1rem;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.archive__sub-title {
		font-size : 16px;
		font-size : 1.6rem;
	}
}
.archive__item:hover .archive__title {
	color : #2c67a9;
}
.archive__img {
	width : 115px;
	float : right;
	margin-left : 10px;
}
@media screen and (min-width: 750px) {
	.archive__img {
		width : 130px;
		margin-left : 20px;
	}
}
.archive__img--left {
	width : 115px;
	float : left;
	margin-right : 10px;
}
@media screen and (min-width: 750px) {
	.archive__img--left {
		width : 130px;
		margin-right : 20px;
	}
}
.archive__text {
	overflow : hidden;
}
.archive__summary {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7a7a7a;
	margin-bottom : 1.0666666667%;
}
@media screen and (min-width: 750px) {
	.archive__summary {
		font-size : 16px;
		font-size : 1.6rem;
		margin-bottom : 8px;
	}
}
.archive__date {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7a7a7a;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.archive__date {
		font-size : 14px;
		font-size : 1.4rem;
		margin-bottom : 0px;
	}
}
.archive__number {
	font-size : 12px;
	font-size : 1.2rem;
	color : #7a7a7a;
	margin-bottom : 4px;
}
@media screen and (min-width: 750px) {
	.archive__number {
		font-size : 14px;
		font-size : 1.4rem;
		margin-bottom : 0px;
	}
}
.archive__category {
	position : relative;
	z-index : 100;
}
.archive__tab {
	margin-bottom : 28px;
}
.archive__tab .text--note {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	.archive__tab {
		margin-bottom : 70px;
	}
	.archive__tab .text--note {
		font-size : 12px;
		font-size : 1.2rem;
		text-align : right;
	}
}
.archive__panel {
	margin-bottom : 28px;
}
.archive__panel .text--note {
	font-size : 10px;
	font-size : 1rem;
}
@media screen and (min-width: 750px) {
	.archive__panel {
		margin-bottom : 70px;
	}
	.archive__panel .text--note {
		font-size : 12px;
		font-size : 1.2rem;
		text-align : right;
	}
}

@media screen and (max-width: 749px) {
	.js-no-bg .archive {
		padding-top : 55px;
	}
}

/* ---------------------------------------------------------
 Utility
--------------------------------------------------------- */
/* clear - utility
--------------------------------------------------------- */
.clearfix {
	*zoom : 1;
}
.clearfix:after {
	display : block;
	clear : both;
	content : "";
}

/* vertical-align - utility
--------------------------------------------------------- */
.vertical-align-t {
	vertical-align : top !important;
}

.vertical-align-m {
	vertical-align : middle !important;
}

.vertical-align-b {
	vertical-align : bottom !important;
}

/* border - utility
--------------------------------------------------------- */
/* border-radius */
.border-radius-0 {
	border-radius : 0px;
}

.border-radius-4 {
	border-radius : 4px;
}

.border-radius-8 {
	border-radius : 8px;
}

.border-radius-12 {
	border-radius : 12px;
}

.border-radius-16 {
	border-radius : 16px;
}

.border {
	border : 1px solid #dbdbdb;
}

.border-t--s {
	border-top : 1px solid #dbdbdb;
}

.border-r--s {
	border-right : 1px solid #dbdbdb;
}

.border-b--s {
	border-bottom : 1px solid #dbdbdb;
}

.border-l--s {
	border-left : 1px solid #dbdbdb;
}

@media screen and (min-width: 750px) {
	.border-t--l {
		border-top : 1px solid #dbdbdb;
	}

	.border-r--l {
		border-right : 1px solid #dbdbdb;
	}

	.border-b--l {
		border-bottom : 1px solid #dbdbdb;
	}

	.border-l--l {
		border-left : 1px solid #dbdbdb;
	}
}
/* border-none */
.border-0 {
	border : none !important;
}

.border-t-0 {
	border-top : none !important;
}

.border-r-0 {
	border-right : none !important;
}

.border-b-0 {
	border-bottom : none !important;
}

.border-l-0 {
	border-left : none !important;
}

/* display - utility
--------------------------------------------------------- */
.sp-only {
	display : block;
}
@media screen and (min-width: 750px) {
	.sp-only {
		display : none;
	}
}

.pc-only {
	display : none;
}
@media screen and (min-width: 750px) {
	.pc-only {
		display : block;
	}
}

.display-tb {
	display : table !important;
}

.display-tbc {
	display : table-cell !important;
}

.display-b {
	display : block !important;
}

.display-ib {
	display : inline-block !important;
}

.display-n {
	display : none !important;
}

.display-fl {
	display : flex !important;
}

.display-tb-sp-only {
	display : table !important;
}

.display-tbc-sp-only {
	display : table-cell !important;
}

.display-b-sp-only {
	display : block !important;
}

.display-ib-sp-only {
	display : inline-block !important;
}

.display-n-sp-only {
	display : none !important;
}

.display-fl-only {
	display : flex !important;
}

@media screen and (min-width: 750px) {
	.display-tb-pc-only {
		display : table !important;
	}

	.display-tbc-pc-only {
		display : table-cell !important;
	}

	.display-b-pc-only {
		display : block !important;
	}

	.display-ib-pc-only {
		display : inline-block !important;
	}

	.display-n-pc-only {
		display : none !important;
	}

	.display-fl-pc-only {
		display : flex !important;
	}
}
/* float - utility
--------------------------------------------------------- */
.float-l {
	float : left !important;
}

.float-r {
	float : right !important;
}

/* font-size - utility
--------------------------------------------------------- */
.font-size-8 {
	font-size : 8px;
	font-size : 0.8rem;
}

.font-size-9 {
	font-size : 9px;
	font-size : 0.9rem;
}

.font-size-10 {
	font-size : 10px;
	font-size : 1rem;
}

.font-size-11 {
	font-size : 11px;
	font-size : 1.1rem;
}

.font-size-12 {
	font-size : 12px;
	font-size : 1.2rem;
}

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

.font-size-14 {
	font-size : 14px;
	font-size : 1.4rem;
}

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

.font-size-16 {
	font-size : 16px;
	font-size : 1.6rem;
}

.font-size-17 {
	font-size : 17px;
	font-size : 1.7rem;
}

.font-size-18 {
	font-size : 18px;
	font-size : 1.8rem;
}

.font-size-19 {
	font-size : 19px;
	font-size : 1.9rem;
}

.font-size-20 {
	font-size : 20px;
	font-size : 2rem;
}

.font-size-21 {
	font-size : 21px;
	font-size : 2.1rem;
}

.font-size-22 {
	font-size : 22px;
	font-size : 2.2rem;
}

.font-size-23 {
	font-size : 23px;
	font-size : 2.3rem;
}

.font-size-24 {
	font-size : 24px;
	font-size : 2.4rem;
}

.font-size-25 {
	font-size : 25px;
	font-size : 2.5rem;
}

.font-size-26 {
	font-size : 26px;
	font-size : 2.6rem;
}

.font-size-27 {
	font-size : 27px;
	font-size : 2.7rem;
}

.font-size-28 {
	font-size : 28px;
	font-size : 2.8rem;
}

.font-size-29 {
	font-size : 29px;
	font-size : 2.9rem;
}

.font-size-30 {
	font-size : 30px;
	font-size : 3rem;
}

.font-size-31 {
	font-size : 31px;
	font-size : 3.1rem;
}

.font-size-32 {
	font-size : 32px;
	font-size : 3.2rem;
}

.font-size-33 {
	font-size : 33px;
	font-size : 3.3rem;
}

.font-size-34 {
	font-size : 34px;
	font-size : 3.4rem;
}

.font-size-35 {
	font-size : 35px;
	font-size : 3.5rem;
}

.font-size-36 {
	font-size : 36px;
	font-size : 3.6rem;
}

.font-size-37 {
	font-size : 37px;
	font-size : 3.7rem;
}

.font-size-38 {
	font-size : 38px;
	font-size : 3.8rem;
}

.font-size-39 {
	font-size : 39px;
	font-size : 3.9rem;
}

.font-size-40 {
	font-size : 40px;
	font-size : 4rem;
}

/* font-color - utility
--------------------------------------------------------- */
.font-color-black {
	color : #000000 !important;
}

.font-color-primary {
	color : #26385e !important;
}

.font-color-highlight {
	color : #2c67a9 !important;
}

/* margin - utility
--------------------------------------------------------- */
/* auto margin */
.margin-c {
	margin-right : auto !important;
	margin-left : auto !important;
}

.margin-l-auto {
	margin-left : auto !important;
}

.margin-r-auto {
	margin-left : auto !important;
}

/* Top margin */
.margin-t-0 {
	margin-top : 0px !important;
}

.margin-t-8 {
	margin-top : 8px !important;
}

.margin-t-16 {
	margin-top : 16px !important;
}

.margin-t-24 {
	margin-top : 24px !important;
}

.margin-t-32 {
	margin-top : 32px !important;
}

.margin-t-40 {
	margin-top : 40px !important;
}

.margin-t-48 {
	margin-top : 48px !important;
}

.margin-t-56 {
	margin-top : 56px !important;
}

.margin-t-64 {
	margin-top : 64px !important;
}

.margin-t-72 {
	margin-top : 72px !important;
}

.margin-t-80 {
	margin-top : 80px !important;
}

/* Bottom margin */
.margin-b-0 {
	margin-bottom : 0px !important;
}

.margin-b-8 {
	margin-bottom : 8px !important;
}

.margin-b-16 {
	margin-bottom : 16px !important;
}

.margin-b-24 {
	margin-bottom : 24px !important;
}

.margin-b-32 {
	margin-bottom : 32px !important;
}

.margin-b-40 {
	margin-bottom : 40px !important;
}

.margin-b-48 {
	margin-bottom : 48px !important;
}

.margin-b-56 {
	margin-bottom : 56px !important;
}

.margin-b-64 {
	margin-bottom : 64px !important;
}

.margin-b-72 {
	margin-bottom : 72px !important;
}

.margin-b-80 {
	margin-bottom : 80px !important;
}

/* Right margin */
.margin-r-0 {
	margin-right : 0px !important;
}

.margin-r-8 {
	margin-right : 8px !important;
}

.margin-r-16 {
	margin-right : 16px !important;
}

.margin-r-24 {
	margin-right : 24px !important;
}

.margin-r-32 {
	margin-right : 32px !important;
}

.margin-r-40 {
	margin-right : 40px !important;
}

.margin-r-48 {
	margin-right : 48px !important;
}

.margin-r-56 {
	margin-right : 56px !important;
}

.margin-r-64 {
	margin-right : 64px !important;
}

.margin-r-72 {
	margin-right : 72px !important;
}

.margin-r-80 {
	margin-right : 80px !important;
}

/* Left margin */
.margin-l-0 {
	margin-left : 0px !important;
}

.margin-l-8 {
	margin-left : 8px !important;
}

.margin-l-16 {
	margin-left : 16px !important;
}

.margin-l-24 {
	margin-left : 24px !important;
}

.margin-l-32 {
	margin-left : 32px !important;
}

.margin-l-40 {
	margin-left : 40px !important;
}

.margin-l-48 {
	margin-left : 48px !important;
}

.margin-l-56 {
	margin-left : 56px !important;
}

.margin-l-64 {
	margin-left : 64px !important;
}

.margin-l-72 {
	margin-left : 72px !important;
}

.margin-l-80 {
	margin-left : 80px !important;
}

/* padding - utility
--------------------------------------------------------- */
/* auto padding */
.padding-c {
	padding-right : auto !important;
	padding-left : auto !important;
}

/* Top padding */
.padding-t-0 {
	padding-top : 0px !important;
}

.padding-t-8 {
	padding-top : 8px !important;
}

.padding-t-16 {
	padding-top : 16px !important;
}

.padding-t-24 {
	padding-top : 24px !important;
}

.padding-t-32 {
	padding-top : 32px !important;
}

.padding-t-40 {
	padding-top : 40px !important;
}

.padding-t-48 {
	padding-top : 48px !important;
}

.padding-t-56 {
	padding-top : 56px !important;
}

.padding-t-64 {
	padding-top : 64px !important;
}

.padding-t-72 {
	padding-top : 72px !important;
}

.padding-t-80 {
	padding-top : 80px !important;
}

/* Bottom padding */
.padding-b-0 {
	padding-bottom : 0px !important;
}

.padding-b-8 {
	padding-bottom : 8px !important;
}

.padding-b-16 {
	padding-bottom : 16px !important;
}

.padding-b-24 {
	padding-bottom : 24px !important;
}

.padding-b-32 {
	padding-bottom : 32px !important;
}

.padding-b-40 {
	padding-bottom : 40px !important;
}

.padding-b-48 {
	padding-bottom : 48px !important;
}

.padding-b-56 {
	padding-bottom : 56px !important;
}

.padding-b-64 {
	padding-bottom : 64px !important;
}

.padding-b-72 {
	padding-bottom : 72px !important;
}

.padding-b-80 {
	padding-bottom : 80px !important;
}

/* Right padding */
.padding-r-0 {
	padding-right : 0px !important;
}

.padding-r-8 {
	padding-right : 8px !important;
}

.padding-r-16 {
	padding-right : 16px !important;
}

.padding-r-24 {
	padding-right : 24px !important;
}

.padding-r-32 {
	padding-right : 32px !important;
}

.padding-r-40 {
	padding-right : 40px !important;
}

.padding-r-48 {
	padding-right : 48px !important;
}

.padding-r-56 {
	padding-right : 56px !important;
}

.padding-r-64 {
	padding-right : 64px !important;
}

.padding-r-72 {
	padding-right : 72px !important;
}

.padding-r-80 {
	padding-right : 80px !important;
}

/* Left padding */
.padding-l-0 {
	padding-left : 0px !important;
}

.padding-l-8 {
	padding-left : 8px !important;
}

.padding-l-16 {
	padding-left : 16px !important;
}

.padding-l-24 {
	padding-left : 24px !important;
}

.padding-l-32 {
	padding-left : 32px !important;
}

.padding-l-40 {
	padding-left : 40px !important;
}

.padding-l-48 {
	padding-left : 48px !important;
}

.padding-l-56 {
	padding-left : 56px !important;
}

.padding-l-64 {
	padding-left : 64px !important;
}

.padding-l-72 {
	padding-left : 72px !important;
}

.padding-l-80 {
	padding-left : 80px !important;
}

/* position - utility
--------------------------------------------------------- */
.position-a {
	position : absolute !important;
}

.position-r {
	position : relative !important;
}

/* text-align - utility
--------------------------------------------------------- */
.text-align-l {
	text-align : left !important;
}

.text-align-c {
	text-align : center !important;
}

.text-align-r {
	text-align : right !important;
}

/* text-decoration - utility
--------------------------------------------------------- */
.font-weight-n {
	font-weight : normal !important;
}

.font-weight-b {
	font-weight : bold !important;
}

.text-decoration-u {
	text-decoration : underline !important;
}

/* width - utility
--------------------------------------------------------- */
.width-auto {
	width : auto !important;
}

.width-full {
	max-width : 100% !important;
}

.width-half {
	max-width : 50% !important;
}

/* line-height - utility
--------------------------------------------------------- */
.line-height-0 {
	line-height : 0;
}

/* br - utility
--------------------------------------------------------- */
.br-sp-only {
	display : block;
}
@media screen and (min-width: 750px) {
	.br-sp-only {
		display : none;
	}
}

.br-pc-only {
	display : none;
}
@media screen and (min-width: 750px) {
	.br-pc-only {
		display : block;
	}
}

/* hr - utility
--------------------------------------------------------- */
.hr {
	border-top : 1px solid #dbdbdb;
}

.line {
	border-top-color : #393939;
	border-top-style : solid;
	border-top-width : 1px;
	margin-top : 2em;
	margin-bottom : 2em;
}

.line--dotted {
	border-top-style : dotted;
}

.line--dashed {
	border-top-style : dashed;
}

.line--bold {
	border-top-width : 3px;
}

.line--blue {
	border-top-color : #3485cf;
}

.line--50 {
	width : 50%;
}

.line--50.line--center {
	margin-left : auto;
	margin-right : auto;
}
