@charset "UTF-8";

/* outline
---------------------------------------------------------------------------*/
#outlineContents section.box-border-top {
	width: 940px;
	margin: 0 auto 60px;
	padding: 65px 50px 50px;
}

#outlineContents .sec-center {
	margin: -5px auto 40px;
}

#outlineContents .sec-center h2 {
	margin-bottom: 14px;
	font-size: 18px;
	letter-spacing: 0.14em;
}

#outlineContents .sec-center p {
	font-size: 21px;
}

#outlineContents .pnav {
	margin-bottom: 100px;
}

#outlineContents .box-border-top .lead {
	position: relative;
	margin: 0 0 35px 20px;
}

#outlineContents .box-border-top .lead:has(p) {
	margin-bottom: 50px;
}

#outlineContents .box-border-top .lead h2 {
	color: #EA5504;
	font-size: 24px;
	letter-spacing: 0.12em;
}

#outlineContents .box-border-top .lead:has(p) h2 {
	margin-bottom: 28px;
}

#outlineContents .box-border-top .lead p {
	font-size: 16px;
	letter-spacing: 0.08em;
}

#outlineContents .box-border-top .lead .link-list {
	position: absolute;
	top: 0;
	right: 0;
}

/* .outline-npo
------------------------------------*/
.outline-npo .dl-common > div.pd {
	padding-top: 24px;
  padding-bottom: 25px;
}

.outline-npo .dl-common > div > dt {
	width: 135px;
	min-width: 135px;
	font-size: 16px;
}

.outline-npo .dl-common > div > dd p {
	font-size: 15px;
	letter-spacing: 0.08em;
}

.outline-npo .dl-wrap {
	display: flex;
	justify-content: space-between;
}

.outline-npo .dl-m {
	display: flex;
	justify-content: space-between;
}

.outline-npo .dl-s {
	margin-right: 45px;
}

.outline-npo .dl-r .dl-s {
	margin-right: 44px;
}

.outline-npo .dl-s dl {
	display: flex;
	margin-bottom: 2px;
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.outline-npo .dl-r dl {
	justify-content: space-between;
}

.outline-npo .dl-s dt {
	min-width: 65px;
	padding-right: 15px;
	color: #86693F;
}

.outline-npo .dl-r dt {
	min-width: 62px;
	padding-right: 10px;
}

.outline-npo .dl-s dt span {
	display: block;
	margin-top: -2px;
	font-size: 13px;
}

.outline-npo .dl-r dd {
	text-align: right;
}

.outline-npo .dl-s dd p span {
	padding-left: 8px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.outline-npo dd .list-attention {
	margin: 10px 0 0 -2px;
}

.outline-npo dd .list-attention li {
	display: inline-block;
	margin-right: 6px;
	font-size: 13px;
}

/* .outline-message
------------------------------------*/
.outline-message {
	background-color: #FAF8EF;
	border-radius: 10px;
	box-sizing: border-box;
	width: 800px;
	margin: 60px auto 0;
	padding: 50px 42px 46px;
}

.outline-message h3 {
	margin-bottom: 20px;
	color: #EA5504;
	font-size: 20px;
	letter-spacing: 0.08em;
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3em;
}

.outline-message-list .inner {
	display: flex;
	justify-content: space-between;
	border-bottom: 3px solid #FFFFFF;
	padding: 42px 15px 38px 10px;
}

.outline-message-list .inner:last-of-type {
	border-bottom: none;
	padding-bottom: 0;
}

.outline-message-list figure {
	align-self: flex-start;
	position: relative;
	overflow: hidden;
	border: 6px solid #DEDAC7;
	border-radius: 50%;
	width: 156px;
	min-width: 156px;
	height: 156px;
}

.outline-message-list figure img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.outline-message-list .txt {
	margin: 4px 0 0 40px;
}

.outline-message-list h4 {
	margin: 0 0 20px;
}

.outline-message-list h4 em {
	display: block;
	margin-bottom: 12px;
	color: #EA5504;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.08em;
}

.outline-message-list h4 em span {
	padding-left: 2px;
	font-size: 12px;
}

.outline-message-list h4 strong {
	display: inline-block;
	margin-right: 12px;
	font-size: 17px;
	letter-spacing: 0.08em;
}

.outline-message-list h4 > span {
	display: inline-block;
	color: #86693F;
	font-size: 12px;
	letter-spacing: 0.08em;
}

.outline-message-list p {
	font-size: 14px;
	line-height: 2.1;
	letter-spacing: 0.04em;
	text-align: justify;
}

/* .outline-service
------------------------------------*/
.outline-service .inner {
	position: relative;
	border-top: 1px solid #EBE8DA;
	padding: 30px 0 47px 47px;
}

.outline-service .inner h3 {
	position: relative;
	margin-bottom: 25px;
	color: #EA5504;
	font-size: 21px;
	line-height: 1.65;
	letter-spacing: 0.1em;
}

.outline-service .inner h3 i {
	display: block;
	position: absolute;
	top: 4px;
	left: -25px;
	font-size: 16px;
}

.outline-service .inner .list-dot li {
	margin-bottom: 8px;
	font-size: 15px;
}

.outline-service .inner .list-dot li a {
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.1em;
}

.outline-service .inner .list-dot li em {
	display: block;
	margin-top: 10px;
	color: #EA5504;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.outline-service .inner .list-dot li:has(em):before {
	top: -2px;
}

.outline-service .inner .list-dot li span {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.outline-service .inner .list-dot li i,
.outline-service .inner p.attention i {
	color: #EA5504;
}

.outline-service .inner p.attention {
	position: absolute;
	bottom: 55px;
	right: 30px;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.outline-service .inner figure {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 120px;
}

.outline-service .inner figure img {
	width: 100%;
	border-radius: 5px;
}

.outline-service .bnr-report {
	margin-top: 15px;
	margin-bottom: 20px;
}

/* .outline-history
------------------------------------*/
.outline-history-inner {
	display: flex;
	justify-content: space-between;
	padding-right: 20px;
}

.history-list {
	margin: 0 60px 20px 20px;
}

.history-list > dl {
	display: flex;
}

.history-list > dl:not(:last-child) {
	margin-bottom: 16px;
}

.history-list dt {
	width: 75px;
	min-width: 75px;
  padding: 6px 0 0;
	color: #EA5704;
	font-size: 15px;
  letter-spacing: 0.08em;
}

.history-list dd,
.history-list dd p {
	font-size: 15px;
	letter-spacing: 0.02em;
}

.history-list dd p a {
	color: #4E2F14;
}

.history-list dd .link-list {
	margin: 14px 0 10px;
}

.outline-history .img {
	width: 250px;
	min-width: 250px;
}

.outline-history .img figure:not(:last-child) {
	margin-bottom: 24px;
}

.outline-history .img figure img {
	width: 100%;
}

.outline-history .img figcaption {
	margin-top: 8px;
	font-size: 13px;
}

/* .outline-info
------------------------------------*/
.outline-info .dl-common > div > dt {
	width: 295px;
	min-width: 295px;
}

.outline-info .dl-common > div > dd p a {
	color: #4E2F14;
}