@charset "utf-8";

/* =====================================
   base
===================================== */
/* img */
.content img {
	max-width: 100%;
	height: auto;
}

.content h2.has-image {
	display: grid;
	gap: 7px;
	grid-template-columns: auto 1fr;
	align-items: center;
}


/* =====================================
   module
===================================== */
/* row */
@media (min-width:768px) {
	.row {
		display: grid;
		gap: 20px;
		padding: 0 30px;
	}
	.row--auto-1 {
		grid-template-columns: auto 1fr;
	}
	.row--1-1 {
		grid-template-columns: 1fr 1fr;
	}
	.row--2-1 {
		grid-template-columns: 1fr 1fr 1fr;
	}
	.row--2-1 > .row__col:nth-child(odd) {
		grid-column: 1 / 3;
	}
	.row--4-1 {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	}
	.row--4-1 > .row__col:nth-child(odd) {
		grid-column: 1 / 5;
	}
	.row__col > p,
	.row__col > ul,
	.row__col > .figure {
		padding: 0;
	}
}

/* lead */
.lead {
	font-weight: bold;
}

/* figure */
.figure {
	display: grid;
	gap: 5px;
	align-items: start;
	justify-items: center;
	margin: 0 auto 20px auto;
	padding: 0 30px;
}
.figure > .figure {
	margin: 0;
	padding: 0;
}
.figure--1-1 {
	grid-template-columns: 1fr 1fr;
}
.figure--1-1 > .figure__caption {
	grid-column: 1 / 3;
}
.figure__link {
	display: inline-grid;
	gap: 5px;
	align-items: start;
	justify-items: center;
}
.figure__caption {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 0.85714em !important;
}
.figure__link-icon {
	background-image: url(/j/shared_new/shared/images/icon_wo2@2x.png);
	background-size: 15px 15px;
	background-repeat: no-repeat;
	background-position: right 40%;
	margin: 0 4px 0 0 !important;
	padding: 0 20px 0 0 !important;
}

/* mod-btn-cmn */
.mod-btn-cmn {
	margin: 50px 0 20px 0;
	padding: 0 30px;
	text-align: center;
}
.btn-cmn {
	display: inline-block;
	padding: 10px 70px 10px 21px;
	text-align: left;
	text-decoration: none;
	background-color: #dcdcdc;
	background-image: url(/j/shared_new/shared/images/icon_arrow2@2x.png);
	background-repeat: no-repeat;
	background-position: 93% 45%;
	background-size: 6px 9px;
}
.btn-cmn:hover,
.btn-cmn:focus {
	background-color: #bfbfbf;
	background-image: url(/j/shared_new/shared/images/icon_arrow4@2x.png);
}

/* researcher-q */
.researcher-q {
	margin: 0 30px 20px 30px !important;
	padding: 0 !important;
}
.researcher-q > li {
	display: flex;
	gap: 5px;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	background: initial !important;
}

/* researcher-a */
.researcher-a {
	display: grid;
	gap: 15px;
	margin: 0 30px 20px 30px;
	padding: 15px;
	background-color: #eeeeee;
	font-size: 1.142857em;
}
.researcher-a > dt {
	display: flex;
	gap: 5px;
	align-items: center;
}
.researcher-a > dd {
	display: flex;
	gap: 5px;
	align-items: flex-start;
}
@media (min-width:768px) {
	.researcher-a {
		position: relative;
		padding-left: 105px;
	}
	.researcher-a > dt > img {
		position: absolute;
		top: 15px;
		left: 15px;
	}
}

/* balloon */
.balloon {
	display: grid;
	gap: 15px;
	grid-template-columns: auto 1fr;
	align-items: center;
	margin: 0 30px 20px 30px;
	padding: 15px;
	background-color: #eeeeee;
}
.balloon > p {
	margin-bottom: 0;
	padding: 0;
}


/* =====================================
   mokuji
===================================== */
/* mokuji-anchor */
.mokuji-anchor {
	display: flex;
	flex-wrap: wrap;
	font-size: 1em !important;
}
.mokuji-anchor > li {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}
.mokuji-anchor > li:not(:first-child)::before {
	margin: 0 0.5em;
	content: "|";
}

/* mod-btn-mokuji */
.mod-btn-mokuji {
	margin: 20px 0;
}
@media (max-width:767px) {
	.mod-btn-mokuji {
		padding: 0 30px;
		text-align: center;
	}
}

/* mokuji */
@media (min-width:768px) {
	.mokuji {
		margin-left: 0 !important;
	}
}


/* =====================================
   utility
===================================== */
/* only */
@media (min-width:768px) {
	.only-sp {
		display: none;
	}
}
@media (max-width:767px) {
	.only-pc {
		display: none;
	}
}

/* break-all */
.break-all {
	word-break: break-all;
}
