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

footer {
	padding-top: 16px;
}

.page_menu li a {
	color: #111;
}
.page_menu li a:hover {
	background: #111;
	color: #FFF;
}

.section_overview {
	color: #111;
	background: #FFF;
	padding-top: 120px;
}
.sec02 .section_overview {
	background: #EDEDEE;
}
.section_overview .ttl_box {
	flex: 1;
}
.section_overview .info_box {
	width: 700px;
	padding-top: 0;
}

.info_box .company_details {
	display: flex;
	flex-wrap: wrap;
	border-bottom: solid 1px #999;
	margin-bottom: 16px;
	line-height: 1.75;
}
.info_box .company_details>dt {
	padding: 24px 0;
	width: 200px;
	border-top: solid 1px #999;
}
.info_box .company_details>dd {
	padding: 24px 0;
	width: 500px;
	border-top: solid 1px #999;
	font-weight: 400;
}
.company_details .office {
	margin-bottom: 24px;
}
.company_details .office img {
	width: 100%;
	height: 100%;
	margin-bottom: 16px;
}
.company_details .office_info dt {
	font-weight: 500;
}
.company_details .office_info dd {
	font-size: 1.6rem;
	line-height: 1.75;
}
.company_details .office_info dd.note {
	color: #C33;
	line-height: 1.75;
	font-size: 1.5rem;
	margin: 16px 0;
	font-weight: 500;
}
.company_details .office .map {
	width: fit-content;
	height: 50px;
	line-height: 50px;
	display: block;
	margin-left: auto;
	font-weight: 500;
	color: #000;
	background: url( "../images/arrow_link_border.svg") no-repeat right center / 50px;
	padding-right: 66px
}
.company_details .office .map:hover {
	opacity: 0.7;
	transition: 0.3s;
}


/************** アコーディオン **************/

.accordion_item {
	margin-bottom: 16px;
}

/* checkboxを隠す */
.accordion input {
  display: none;
}

/* タイトル */
.accordion_title {
  display: flex;
	gap:0 1em;
  align-items: center;
  padding: 11px 16px;
  cursor: pointer;
	background: var(--navy);
	color: #FFF;
	font-size: 1.8rem;
	line-height: 1;
}

/* アイコン */
.icon {
  position: relative;
  width: 14px;
  height: 14px;
}
.icon::before,
.icon::after {
  content: "";
  position: absolute;
  background: #FFF;
  transition: transform .2s ease;
}
.icon::before {
  width: 14px;
  height: 2px;
  top: 6px;
  left: 0;
}
.icon::after {
  width: 2px;
  height: 14px;
  top: 0;
  left: 6px;
}

/* コンテンツ */
.accordion_content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .2s ease;
}
.accordion_inner {
  overflow: hidden;
}
.accordion_inner li {
	display: flex;
	padding: 24px 0;
}
.accordion_inner li:not(:last-child) {
	border-bottom: solid 1px #999;
}
.accordion_inner li .year {
	width: 200px;
	font-size: 4rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	color: var(--navy);
}
.accordion_inner li .incident {
	width: 700px;
}
.accordion_inner .incident dl {
	font-size: 1.6rem;
	line-height: 1.75;
}
.accordion_inner .incident dl:not(:last-of-type) {
	border-bottom: solid 1px #999;
	padding-bottom: 24px;
}
.accordion_inner .incident dl:not(:first-of-type) {
	padding-top: 24px;
}
.accordion_inner .incident dl dd {
	font-weight: 400;
}

/* 開いた状態 */
.accordion input:checked + .accordion_title + .accordion_content {
  grid-template-rows: 1fr;
}
.accordion input:checked + .accordion_title .icon::after {
  transform: scaleY(0);
}



@media screen and (min-width:768px), print{
/*----------------------------------------------------------------------
PC Style
----------------------------------------------------------------------*/


}


@media screen and (max-width:767px){
/*----------------------------------------------------------------------
SP Style
----------------------------------------------------------------------*/

.section_overview {
	padding-top: 64px;
}
.section_overview .ttl_box h2 {
	margin-bottom: 40px;
}
.section_overview .info_box {
	width: 100%;
	padding-top: 0;
}

.info_box .company_details {
	display: block;
}
.info_box .company_details>dt {
	padding: 16px 0 0;
	width: 100%;
	margin-bottom: 4px;
}
.info_box .company_details>dd {
	padding: 0 0 16px;
	width: 100%;
	border-top: none;
	line-height: 1.75;
	font-size: 1.4rem;
}
.company_details .office {
	margin-bottom: 16px;
}
.company_details .office_info dt {
	font-size: 1.8rem;
}
.company_details .office_info dd {
	font-size: 1.4rem;
	line-height: 1.75;
}
.company_details .office_info dd.note {
	font-size: 1.4rem;
	margin: 8px 0;
}
.company_details .office .map {
	width: fit-content;
	height: 50px;
	line-height: 50px;
	display: block;
	margin-left: auto;
	font-weight: 500;
	color: #000;
	background: url( "../images/arrow_link_border.svg") no-repeat right center / 50px;
	padding-right: 66px
}
.company_details .office .map:hover {
	opacity: 0.7;
	transition: 0.3s;
}







/************** アコーディオン **************/

.accordion_inner li {
	padding: 16px 0;
}
.accordion_inner li:not(:last-child) {
	border-bottom: solid 1px #999;
}
.accordion_inner li .year {
	width: 88px;
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	color: var(--navy);
}
.accordion_inner li .incident {
	flex: 1;
}

.accordion_inner .incident dl:not(:last-of-type) {
	padding-bottom: 16px;
}
.accordion_inner .incident dl:not(:first-of-type) {
	padding-top: 16px;
}
.accordion_inner .incident dl dd {
	font-size:1.4rem; 
}


}



