@charset "utf-8";

#areaContents
, #khContents
, .mainCol2Block03{
	font-size:16px; /* font-size:87.5%; */
}

#contents .headSection .innerBlock {
  width: 1240px;
}

#contents .subSection {
  width: 1240px;
}

#contents .subSection .subNav .layCol01,
#contents .subSection .subNav .layCol02 {
  width: 600px;
}

@media screen and (max-width: 767px) {
  #contents .headSection .innerBlock {
    width: auto;
  }
}

/* knowhow - サイドナビありのページ*/
#contents .detailsectioncol2 {
  width: 1240px;
}
#contents .mainCol2Block03 .mainColL {
  width: 960px;
}

/* new layout 2025/8 */
.tabsWrapper {
  border-bottom: 1px solid #e5e5e5;
}
.tabsWrapper .tabs{
  max-width: 1240px;
  padding: 0 0 34px;
  margin: 0 auto;
  width: calc(100% - 4%);
}
.tabs {
	width: 100%;
	margin: 15px 0 34px;
	box-sizing: border-box;
}
.tabs * {
	box-sizing: border-box;
}
.tabs ul {
	display: flex;
	flex-direction: row;
	border-radius: 4px;
	height: 96px;
}
.tabs ul li {
	width: 14.2858%;
	flex-shrink: 0;
	position: relative;
	line-height: 1.4;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
}
.tabs ul li.current, .tabs ul li a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 8px 18px 8px 63px;
}
.tabs ul li a {
	height: 100%;
}
.tabs ul li.current span, .tabs ul li a span {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.tabs ul li i {
	width: 40px;
	flex-shrink: 0;
}
.tabs ul li i img {
	width: 100%;
}
.tabs ul li:not(:first-of-type):not(.current):after {
	content: '';
	display: block;
	width: 2px;
	height: 100%;
	background: #FFFFFF;
	position: absolute;
	left: 0;
	top: 0;
}
.tabs ul li.current::before {
	position: absolute;
	content: '';
	background: url('../images/tab_active.png') no-repeat;
	width: 39px;
	height: 39px;
	top: 50%;
	transform: translateY(-50%);
	left: 18px;
}
.tabs ul li:first-child,
.tabs ul li:first-child a {
	border-radius: 4px 0 0 4px;
}
.tabs ul li:last-child,
.tabs ul li:last-child a {
	border-radius: 0 4px 4px 0;
}
.tabs ul li.current {
	background: #FFFFFF;
	box-shadow: 0 2px 0 0 #0C62B7 inset, 0 -2px 0 0 #0C62B7 inset;
	-webkit-box-shadow: 0 2px 0 0 #0C62B7 inset, 0 -2px 0 0 #0C62B7 inset;
	-moz-box-shadow: 0 2px 0 0 #0C62B7 inset, 0 -2px 0 0 #0C62B7 inset;
}
.tabs ul li:first-child.current, .tabs ul li:last-child.current {
	box-shadow: 0 0 0 2px #0C62B7 inset;
	-webkit-box-shadow: 0 0 0 2px #0C62B7 inset;
	-moz-box-shadow: 0 0 0 2px #0C62B7 inset;
}
.tabs ul li:not(:last-of-type).current + li:after {
	display: none;
}
.tabs ul li.current span,
.tabs ul li a {
	text-decoration: none;
}
.tabs ul li.current span {
	color: #0C62B7;
}
.tabs ul li a span {
	color: #FFFFFF;
}
.tabs ul li a {
	background: #0C62B7;
	position: relative;
}
.tabs ul li a:hover {
	background-color: rgba(12, 98, 183, .6);
}
.tabs ul li a::before {
	position: absolute;
	content: '';
	background: url('../images/tab_inactive.png') no-repeat;
	width: 39px;
	height: 39px;
	top: 50%;
	transform: translateY(-50%);
	left: 18px;
}
@media (max-width: 767px) {
	.tabs ul {
		height: auto;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		overflow: hidden;
	}
	.tabs ul li {
		width: 100%;
		font-size: 12px;
		line-height: 1.25;
	}
	.tabs ul li:last-child {
		grid-column: 1 / 3;
	}
	.tabs ul li:before {
		content: none;
	}
	.tabs ul li.current, .tabs ul li a {
		flex-direction: row-reverse;
		align-items: center;
		justify-content: space-between;
		padding: 8px 20px;
	}
	.tabs ul li.current:last-child, .tabs ul li:last-child a {
		justify-content: center;
		gap: 4px;
	}
	.tabs ul li.current:last-child span, .tabs ul li:last-child a span {
		flex: unset;
	}
	.tabs ul li:first-child.current {
		box-shadow: none;
		border-width: 2px 0 0 2px;
		border-style: solid;
		border-color: #0C62B7;
	}
	.tabs ul li:nth-child(2).current {
		box-shadow: none;
		border-width: 2px 2px 0 0;
		border-style: solid;
		border-color: #0C62B7;
	}
	.tabs ul li:nth-child(3).current, .tabs ul li:nth-child(5).current {
		box-shadow: none;
	}
	.tabs ul li:nth-child(3).current:after, .tabs ul li:nth-child(5).current:after {
		content: "";
		display: block;
		width: 2px;
		height: calc(100% + 2px);
		background: #0C62B7;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.tabs ul li:nth-child(4).current, .tabs ul li:nth-child(6).current {
		box-shadow: none;
	}
	.tabs ul li:nth-child(4).current:after, .tabs ul li:nth-child(6).current:after {
		content: "";
		display: block;
		width: 2px;
		height: calc(100% + 2px);
		background: #0C62B7;
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.tabs ul li:nth-child(7).current {
		box-shadow: none;
		border-width: 0 2px 2px 2px;
		border-style: solid;
		border-color: #0C62B7;
	}
	.tabs ul li:nth-child(7).current:before, .tabs ul li:nth-child(7).current:after {
		content: "";
		display: block;
		width: 2px;
		height: 100%;
		background: #0C62B7;
		position: absolute;
		top: -2px;
	}
	.tabs ul li:nth-child(7).current:before {
		left: -2px;
	}
	.tabs ul li:nth-child(7).current:after {
		right: -2px;
	}
	
 .tabs ul li:nth-child(1) a, .tabs ul li:nth-child(3) a, .tabs ul li:nth-child(5) a {
		box-shadow: -2px -2px 0 0 #fff inset;
	} 
	.tabs ul li:nth-child(2) a, .tabs ul li:nth-child(4) a, .tabs ul li:nth-child(6) a {
		box-shadow: 0 -2px 0 0 #fff inset;
	}
	.tabs ul li:not(:first-of-type):not(.current):after {
		content: none;
	}
	.tabs ul li:first-child, .tabs ul li:first-child a {
		border-radius: 4px 0 0 0;
	}
	.tabs ul li:nth-child(2), .tabs ul li:nth-child(2) a {
		border-radius: 0 4px 0 0;
	}
	.tabs ul li:last-child,.tabs ul li:last-child a {
		border-radius: 0 0 4px 4px;
	}
	.tabs ul li.current::before{
		content: none;
	}
	.tabs ul li a::before {
		content: none;
	}
}
