@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');

/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. 大枠
　02. モジュール

******************************************************************************* */
/* ==

　01. 大枠

=============================================================================== */
#main {
  padding: 60px 0 70px;
}
#main p,
#main dt,
#main dd,
#main th,
#main td,
#main ul,
#main ol { font-size: 134%; }
#main #loacalNav ul {
  font-size: 117%;
}
h1,
h2,
h3 {
  padding: 0;
  border-bottom: none;
  background: none;
}
/* ==

　02. モジュール

=============================================================================== */
/* comIndent
------------------------------------------------------------------------------- */
.comIndent {
  width: 950px;
  margin: 0 auto;
}
/* comLine
------------------------------------------------------------------------------- */
.comLine {
  min-width: 950px;
  height: 1px;
  margin: 40px 0 10px;
  border: none;
  background-color: #bbb;
}


/* サブヘッダー
------------------------------------------------------------------------------- */
.comNav_bg {
	height: 0;
}
.comNav {
	position: relative;
	min-width: 950px;
	height: 62px;
	color: #333;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
	z-index: 2;
}
.comNav_wrap {
	height: 62px;
	padding: 0 15px;
	background-color: #23436E;
	box-sizing: border-box;
}
.comNav-fix .comNav_wrap {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 950px;
	animation: labHeaderFix .4s both;
  z-index: 1100;
}
@keyframes labHeaderFix {
	0% {
		top: -22px;
	}
	100% {
		top: 48px;
	}
}
.comNav_in {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	max-width: 1240px;
	margin: 0 auto;
}
.comNav_head {
	width: 350px;
	line-height: 61px;
	font-size: 18px;
	font-weight: 700;
}
.comNav_head a {
	color: #fff;
	text-decoration: none;
}
.comNav_body {
	width: -webkit-calc(100% - 150px);
	width: calc(100% - 150px);
}
.comNav_btn {
	display: none !important;
}
.comNav_nav {
	height: 100%;
}
.comNav_nav_in {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end;
	height: 100%;
	font-size: 16px;
	font-weight: 700;
}
.comNav_item a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	height: 100%;
	padding: 0 20px;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
}
.comNav_item a span {
	width: 100%;
	font-size: 12px;
	text-align: center;
	margin: -20px -30px 0 -40px;
}
@media only screen and (max-width: 1100px) {
	.comNav_nav {
		font-size: 15px;
		letter-spacing: -0.01em;
	}
	.comNav_item a,
	.comNav_item span {
		padding: 0 18px;
	}
}
.comNav_item-current a::before,
.comNav_item-current span::before,
.d_hover .comNav_item span:hover::before,
.d_hover .comNav_item a:hover::before {
	content: '';
	display: block;
	position: absolute;
	right: 24px;
	bottom: -2px;
	left: 24px;
	height: 2px;
	background-color: #f41e46;
	z-index: 1109;
}
.comNav_item-current:last-child a::before,
.d_hover .comNav_item:last-child a:hover::before,
.comNav_item-current:last-child span::before,
.d_hover .comNav_item:last-child span:hover::before {
	right: 0;
}
.comNav_item a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 40px;
	margin: -20px 0 0;
	background-color: rgba(255, 255, 255, 0.2);
}
.comNav_item:last-child a,
.comNav_item:last-child span {
	padding-right: 0;
}
.comNav_item:last-child a::after,
.comNav_item:last-child span::after {
	content: none;
}
.comNav_hide {
	display: none !important;
}



@media screen and (max-width: 1050px) {
  .comNav_nav_in {
	  font-size: 12px;
  }
}

/* comVisual
------------------------------------------------------------------------------- */
.comVisual {
  position: relative;
  min-width: 950px;
  background-color: #333;
}
.comVisual-t1 {
  height: 260px;
}
.comVisual_in {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 90px;
  margin: -60px 0 0;
  text-align: center;
}
/*
.comVisual_in h1,
.comVisual_in p {
  line-height: 1;
  margin: 0;
  font-size: 12px;
}
*/
.comVisual_in h1 {
  line-height: 1;
  margin: 0;
  font-size: 48px;
		color:#fff;
		font-weight:200;
}
.comVisual_in h1 span {
  line-height: 1.0;
  margin: 0 0 15px;
  font-size: 41.5%;
		color:#fff;
		display:inline-block;
}
.comVisual_bg {
  width: 100%;
  height: auto;
}
.comVisual_ico {
  position: absolute;
  bottom: -30px;
  left: 50%;
  width: 950px;
  margin: 0 0 0 -475px;
  z-index: 1;
}

/* ソーシャル上部設置
------------------------------------------------------------------------------- */
#socialAreaC {
	position: absolute;
	top: -1px;
	right: 0;
	overflow: hidden;
}
#socialAreaC ul {
	float: right;
}
#socialAreaC li {
	float: left;
	line-height: 1;
	margin-right: 11px;
	vertical-align: top;
}
#socialAreaC li a {
	margin-right: 0;
	padding-right: 0;
	background: none;
}
#socialAreaC .twitter {
	width: 75px;
	height: 20px;
	overflow: hidden;
}







.cField {
	padding: 0 20px;
}
.cField_in {
	max-width: 1040px;
	margin: 0 auto 70px;
}
.cField h2 {
  line-height: 1.428;
  margin: 70px 0 42px;
  font-size: 234%;
  font-weight: 700;
  text-align: center;
}
.cField_list {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin: 50px 0 0;
}
.cField_item {
	width: 24.039%;
	max-width: 250px;
}
.cField_item a {
  color: #000;
  text-decoration: none;
}
#main .cField_txt {
  line-height: 1.333;
  margin: 0 0 17px;
  font-family: 'Lato', sans-serif;
  font-size: 30px;
  font-weight: 700;
}
.cField_txt span {
  display: inline-block;
  margin: 0 0 0 10px;
  font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
  font-size: 46.8%;
  font-weight: 500;
  vertical-align: 0.25em;
}
.cField_img {
  display: block;
}
.cField_img img {
  width: 100%;
  height: auto;
}
#main .cField_caption {
  position: relative;
  line-height: 1.75;
  margin: 20px 0 0;
  padding: 0 40px 0 0;
  font-size: 16px;
  font-weight: 700;
}
.cField_caption::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 0;
  width: 22px;
  height: 12px;
  background: url(/common/images/rn04/svg/arw_ico02.svg) left top no-repeat;
  background-size: contain;
}



/* ==

　00. トピックパス

=============================================================================== */
.r3Breadcrumbs {
	min-width: 950px;
	padding: 0 20px;
	background-color: #f4f4f4;
	color: #000;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
	box-sizing: border-box;
}
.r3Breadcrumbs .r3Breadcrumbs_nav {
	max-width: 1240px;
	line-height: 1;
	margin: 0 auto;
	padding: 15px 0 13px;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: -0.5em;
}
.r3Breadcrumbs .r3Breadcrumbs_nav li {
	display: inline-block;
	position: relative;
	margin: 0 0 0 33px;
	vertical-align: top;
	letter-spacing: normal;
}
.r3Breadcrumbs .r3Breadcrumbs_nav li:first-child {
	margin-left: 0;
}
.r3Breadcrumbs .r3Breadcrumbs_nav li::before {
	content: "";
	display: block;
	position: absolute;
	top: 0.2em;
	left: -21px;
	width: 9px;
	height: 9px;
	background: url(/common/images/rn04/svg/arw_ico15.svg) left top no-repeat;
}
.r3Breadcrumbs .r3Breadcrumbs_nav li:first-child::before {
	display: none !important;
}
.r3Breadcrumbs .r3Breadcrumbs_nav a {
	color: #000;
	text-decoration: none;
}
.r3Breadcrumbs .r3Breadcrumbs_nav a:hover {
	text-decoration: underline;
}
