@charset "utf-8";
/* CSS Document */

.catch {
	margin: 0 0 40px 0;
}
@media screen and (max-width:768px){
	.catch {
		margin-bottom: 20px;
	}
}

/*----------------------------------------
	.page-desc
----------------------------------------*/
.page-desc .wrap {
	text-align: center;
	border-bottom: solid 3px #015c99;
}
.page-desc {
	
}
.page-desc .title-large {
	font-weight: bold;
	line-height: 1;
	color: #015c99;
	letter-spacing: 0.05em;
}
.page-desc h2 {
	color: #015c99;
}
.page-desc .textBox p {
	font-weight: bold;
	color: #015c99;
	line-height: 1.5;
}
.page-desc .textBox p.small {
	font-size: 14px;
	font-weight: normal;
}
@media print, screen and (min-width: 769px){
	.page-desc .wrap {
		padding: 30px 0;
	}
	.page-desc .wrap {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		position: relative;
	}
	.page-desc .titleSpc {
		width: 30%;
	}
	.page-desc .title-large {
		font-size: 48px;
	}
	.page-desc h2 {
		font-size: 22px;
	}
	.page-desc .textBox {
		width: 70%;
	}
	.page-desc .textBox p {
		font-size: 28px;
		font-weight: bold;
		color: #015c99;
	}

/* .style-ex01 */
	.style-ex01 .titleSpc {
		width: 100%;
	}
	.style-ex01 .textBox {
		position: absolute;
		right: 0;
		bottom: 30px;
		width: auto;
		text-align: right;
	}
	.style-ex01 .textBox p {
		font-size: 18px;
		font-weight: normal;
	}

/* キャッチ画像なし */
	.page-desc.no-catch {
		margin: 0 0 40px 0;
	}
}

@media screen and (max-width:768px){
	.page-desc .titleSpc {
		background: #e3edf4;
		padding: 10px 1em;
	}
	.page-desc .textBox {
		padding: 15px 20px 15px;
	}
	.page-desc .title-large {
		font-size: 24px;
	}
	.page-desc h2 {
		font-size: 14px;
	}
	.page-desc .textBox p {
		line-height: 1.5;
	}
	.page-desc .textBox p.small {
		font-size: 12px;
	}
/* キャッチ画像なし */
	.page-desc.no-catch {
		margin-bottom: 20px;
	}

}
/*----------------------------------------
	.copySpc
----------------------------------------*/
.copySpc {
	text-align: center;
}
.copySpc p {
	font-weight: bold;
	color: #015b99;
	line-height: 1.5;
}

@media print, screen and (min-width: 769px){
	.copySpc p .large {
		font-size: 36px;
	}
	.copySpc .textBox {
		margin: 40px 0 0 0;
	}
	.copySpc .textBox p {
      font-size: 15px;
      color: inherit;
      font-weight: normal;
 }
}

@media screen and (max-width:768px){
	.copySpc p .large {
		font-size: 18px;
	}
	.copySpc .textBox {
		margin: 20px 0 0 0;
		text-align: left;
	}
	.copySpc .textBox p {
		font-weight: normal;
		color: inherit;
	}
}

/*----------------------------------------
	.contents
----------------------------------------*/
.contents .title-area {
	margin: 0 0 20px 0;
	text-align: center;
}
.contents .title-area.MB-ex {
	margin-bottom: 50px;
}
.contents .title-large,
.contents h2 {
	color: #015b99;
	letter-spacing: 0.1em;
}
.contents .title-large {
	font-weight: bold;
	line-height: 1.2;
}
.contents .textBox .text {
	margin: 0 0 15px 0;
}
.contents .cont-wrap {
		display: flex;
		flex-wrap: wrap;
}
.contents .detail {
		width: 33.33333%;
		text-align:  center;
}

.contents .cont-desc {
	margin: 0 0 40px 0;
	text-align: center;
}
.contents .cont-desc p {
	font-weight: bold;
	color: #015b99;
}
.contents .cont-detail .dBox {
	margin: 0 0 40px 0;
}
.contents .cont-detail .dBox:last-of-type {
	margin-bottom: 0;
}
.contents .cont-detail .dBox h3 {
	background: #f1f1f1;
	padding: 5px 15px;
	margin: 0 0 30px 0;
	/* border-left: solid 8px #015b99; */
	font-size: 18px;
}
.contents .cont-detail .dBox .textSpc {
	padding: 0px 15px;
	word-break: break-all;
}
@media print, screen and (min-width: 769px){
	.contents .title-large {
		font-size: 48px;
	}
	.contents h2 {
		font-size: 22px;
	}
	.contents .cont-desc p {
		font-size: 1.2em;
	}
}
@media screen and (max-width:768px){
	.contents .inBox {
		padding: 0 1em;
	}
	.contents .title-area {
		margin: 0 0 10px 0;
		text-align: center;
		padding: 0 15px;
	}
	.contents .title-area.MB-ex {
		margin-bottom: 30px;
	}
	.contents .title-large {
		font-size: 22px;
	}
	.contents h2 {
		font-size: 14px;
	}
	.contents .cont-detail .dBox h3 {
		font-size: 15px;
		margin-bottom: 20px;
	}
	.contents .cont-desc {
		margin: 0 0 30px 0;
		padding: 0 1em
	}
	.contents .cont-detail .dBox {
		margin: 0 0 30px 0;
	}
}
@media screen and (max-width:480px){
	.contents .detail {
			width: 100%;
			text-align:  left;
	}
	.contents .cont-desc {
		text-align: left;
	}
}

/*----------------------------------------
	.floatBox
----------------------------------------*/
.contents .floatBox {
	padding: 0 1em;
}
.contents .floatBox .textSpc {
	float: left;
	width: auto;
}
.contents .floatBox .textSpc h3 {
	font-weight: normal;
	color: #015b99;
	line-height: 1.5;
}
.contents .floatBox .imgSpc {
	float: right;
	width: 35%;
}
@media print, screen and (min-width: 769px){
	.contents .floatBox .textSpc {
		width: 65%;
		padding: 0 60px;

	}
	.contents .floatBox .textSpc .title {
		margin: 0 0 30px 0;
	}
	.contents .floatBox .textSpc h3 {
		font-size: 32px;
	}
}
@media screen and (max-width:768px){
	.contents .floatBox .textSpc {
		float: none;
	}
	.contents .floatBox .imgSpc {
		margin: 0 0 1em 1em;	
	}
	.contents .floatBox .textSpc .title {
		margin: 0 0 10px 0;
	}
	.contents .floatBox .textSpc h3 {
		font-size: 18px;
		font-weight: bold;
	}
}