﻿

/*------------------------------------------------------------

	汎用スタイル

------------------------------------------------------------*/

/* 81-lxh */

/* clearfix */

 html {

	margin: 0;

	padding: 0;

}
.clearfix:after {content: "";display: block;clear: both;}

/* flex */

.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}

.flexA {justify-content: space-around;}

.flexB {justify-content: space-between;}

.flexC {justify-content: center;}

/*------------------------------------------------------------

	common

------------------------------------------------------------*/
.m {
	max-width: 1920px;
	width: 100%;
	padding: 0 10rem;
	height: 100%;
	margin: 0 auto;
	display: block;
	position: relative
}
/* comLink */

.comLink a {

	font-size: 1.6rem;

	font-weight: 700;

	letter-spacing: 0.01em;

}

.comLink img {

	margin: -0.3rem 0.7rem 0 0;

	width: 2.1rem;

	display: inline-block;

	vertical-align: middle;

}

@media all and (min-width: 769px) {

	.comLink a:hover {

		color: #046ee4;

	}

}



/* languageTxt */

.lang-switcher {

	display: flex;

	justify-content: flex-end;

	letter-spacing: 0.01em;

	position: relative;

}

.languageTxt {

	margin-bottom: 1.6rem;

	display: flex;

	justify-content: flex-end;

	letter-spacing: 0.01em;

	position: relative;

}

.lang-switcher a,

.languageTxt a {

	font-size: 1.2rem;

	font-weight: 700;

	margin-left: 1.7rem;

	display: inline-block;

}

.languageTxt .en02 {

	margin-top: 1px;

}

.languageTxt img {

	margin: 0.2rem -0.6rem 0 0;

	width: 1.7rem;

	height: 17px;

	display: inline-block;

	vertical-align: middle;

}

.languageTxt .on,

.lang-switcher .current-lang a{

	color: #046ee4;

}

@media all and (min-width: 769px) {

	.lang-switcher a:hover ,

	.languageTxt a:hover {

		color: #046ee4;

	}

}



#gHeader .rightBox {

  flex: 1;

  margin: -0.7rem 0.5rem 0 0;

}



.rightBox .topBox {

  display: flex; /* フレックスボックスを使用 */

  justify-content: flex-end; /* 右端に配置 */

  align-items: center; /* 垂直方向に中央揃え */

  margin-bottom: 1rem; /* btmBoxとの間にマージンを追加 */

}



.languageTxt, .search-block {

  display: inline-block; /* インラインブロックに変更 */

  vertical-align: top; /* 上揃え */

  margin-left: 1rem; /* 適切なマージンを追加 */

}



.languageTxt {

  display: flex; /* フレックスボックスを使用 */

  align-items: center; /* 垂直方向に中央揃え */

	margin: 0;

  letter-spacing: 0.01em;

  position: relative;

	margin-right: 1rem;

}



.lang-switcher {

  display: flex;

  justify-content: flex-end;

  position: relative;

}



.search-block {

	display: flex;

	align-items: center;

	overflow: hidden;

	border-radius: 3px;

}



.search-form-block {

	display: flex;

	align-items: center;

	overflow: hidden;

	border-radius: 3px;

}



.search-input {

	width: 80px;

	height: 20px;

	padding: 3px 6px;

	border: none;

	border-radius: 3px 0 0 3px;

	box-sizing: border-box;

	background-color: #f2f2f2;

	font-size: 0.75em;

	outline: none;

}



.search-input::placeholder {

	color: #777777;

}



.search-submit {

	display: flex;

	justify-content: center;

	align-items: center;

	width: 25px;

	height: 20px;

	border: none;

	border-radius: 0 3px 3px 0;

	background-color: #046ee4;

	cursor: pointer;

}



@media (min-width: 769px) and (max-width: 1023px) {

	.search-input {

			width: 90px;

			height: 22px;

	}

	.search-submit {

			width: 28px;

			height: 22px;

	}

}



@media (min-width: 1024px) {

	.search-input {

			width: 110px;

			height: 25px;

	}

	.search-submit {

			width: 32px;

			height: 25px;

	}

}



@media all and (max-width: 768px) {

	.languageTxt {

		margin-bottom: 1.6rem;

		margin-right: 0;

	}

}





/* pageTitle */

.pageTitle {

	margin-bottom: 5.6rem;

	background-color: #F3F7FA;

}

.pageTitle .innerBox {

	display: flex;

	flex-direction: column-reverse;

	align-items: flex-start;

	justify-content: flex-end;

	margin: 0 auto;

	padding-bottom: 1rem;

	max-width: calc(100% - 20rem);

	height: 25rem;

	width: 100%;

}

.pageTitle .headLine01 {

	width: 100%;

	height: 75%;

}

.pageTitle #pagePath {

	width: 100%;

	height: 25%;

	display: flex;

	align-items: flex-end;

	margin-bottom: 10px;

}

@media all and (max-width: 768px) {

	.pageTitle .innerBox {

		width: auto;

		padding: 2.9rem 1.9rem 1rem;

		max-width: inherit;

		margin: 0;

		display: block;

		height: 15rem;

	}

	.pageTitle .headLine01 {

		width: auto;

		height: auto;

	}

	.pageTitle #pagePath {

		display: none;

	}

}

@media all and (max-width: 768px) {

	.pageTitle {

		margin-bottom: 3.6rem;

	}

}





/* headLine01 */

.headLine01 {

	font-size: 3.6rem;

}

.headLine01 .en {

	margin-top: 0.4rem;

	font-size: 1.4rem;

	font-weight: 400;

	display: block;

}

@media all and (max-width: 768px) {

	.headLine01 {

		font-size: 2.4rem;

	}

	.headLine01 .en {

		margin-top: 0.2rem;

		font-size: 1.4rem;

	}

}



/* headLine02 */

.headLine02 {

	margin-bottom: 3.2rem;

	padding-left: 4.3rem;

	position: relative;

	color: #193342;

	font-size: 3.2rem;

	font-weight: 700;

}

.headLine02::before {

	width: 2.8rem;

	height: 0.4rem;

	position: absolute;

	left: 0;

	top: calc(50% - 0.2rem);

	content: '';

	background-color: #046ee4;

}

@media all and (max-width: 768px) {

	.headLine02 {

		margin-bottom: 2.3rem;

		padding-left: 2.8rem;

		font-size: 2.2rem;

	}

	.headLine02::before {

		width: 2rem;

		height: 0.3rem;

	}

}





/* #pagePath */

#pagePath ul {

	display: flex;

	flex-wrap: wrap;

	justify-content: flex-start;

	color: #046ee4;

	font-weight: 700;

	font-size: 1.44rem;

}

#pagePath ul a {

	color: #193342;

	font-weight: 400;

}

#pagePath ul li {

	margin-left: 2.4rem;

	position: relative;

}

#pagePath ul li:first-child {

	margin-left: 0;

}

#pagePath ul li:after {

	margin-top: 0.1rem;

	width: 0.8rem;

	height: 1px;

	position: absolute;

	top: 50%;

	right:-1.6rem;

	background-color: #193342;

	content: "";

}

#pagePath ul li:last-child::after {

	display: none;

}



#pagePath ul .separator {

	color: black;

	padding: 0rem 0.3rem;

  font-size: 1.35rem;

  letter-spacing: -1px;

}



@media all and (min-width: 769px) {

	#pagePath ul a:hover {

		color: #046ee4;

	}

}

@media all and (max-width: 768px) {

	#pagePath ul {

		justify-content: flex-start;

		font-size: 1.12rem;

	}

	#pagePath ul li {

		margin-left: 1.6rem;

	}

	#pagePath ul li::after {

		margin-top: 0;

		width: 0.8rem;

		height: 1px;

		right: -1.2rem;

	}

	#pagePath ul .separator {

    font-size: 1.04rem;

  }

}



/* content */

.content {

	margin: 0 auto;

	max-width: 108rem;

}

@media all and (max-width: 768px) {

	.content {

		margin: 0 2rem;

		max-width: inherit !important;

	}

}





/* sideBar */

#sideBar {

	width: 18rem;

	position: sticky;

	top: 12rem;

	left: 0;

	background-color: #fff;

	float: left;

}

#sideBar .sideTtl {

	margin-bottom: 1.6rem;

	color: #046ee4;

	font-weight: 700;

	letter-spacing: 0.032em;

	font-size: 1.6rem;

}

#sideBar * + .sideTtl {

	margin-top: 4.4rem;

}

@media all and (max-width: 768px) {

	#sideBar {

		margin-bottom: 4rem;

		width: auto;

		position: static;

		top: auto;

		left: auto;

		float: none;

	}

	#sideBar .sideTtl {

		font-size: 1.4rem;

		margin-bottom: 0.7rem;

	}

	#sideBar * + .sideTtl {

		margin-top: 1.6rem;

	}

}



/* conts */

#conts {

	padding-top: 0.4rem;

	float: right;

	width: calc(100% - 24rem);

}

@media all and (max-width: 768px) {

	#conts {

		padding-top: 0;

		float: none;

		width: auto;

	}

}



/* comSideUl */

.comSideUl li {

	border-bottom: 1px solid #C0CDD7;

	line-height: 1;

}

.comSideUl li:last-child {

	border-bottom: none;

}

.comSideUl a {

	padding: 1.5rem 1.5rem 1.6rem;

	display: block;

	position: relative;

	cursor: pointer;

}

.comSideUl a::before {

	width: 1.2rem;

	height: 2px;

	position: absolute;

	top: 2.1rem;

	left: 1.5rem;

	background-color: #046ee4;

	content: "";

	opacity: 0;

	transition: 0.3s;

}

.comSideUl .on a {

	padding-left: 3.3rem;

	font-weight: 700;

}

.comSideUl .on a::before {

	opacity: 1;

}

@media all and (min-width: 769px) {

	.comSideUl a:hover {

		color: #046ee4;

	}



}





/* comTypeBox */

.comTypeBox {

	border: 1px solid #C0CDD7;

}

@media all and (min-width: 769px) {

	.comTypeBox .comSideUl {

		display: block !important;

	}

}

@media all and (max-width: 768px) {

	.comTypeBox {

		position: relative;

		border: none;

	}

	.comTypeBox.zIn {

		z-index: 10;

	}

	.comTypeBox .comSideUl {

		width: 100%;

		position: absolute;

		top: 100%;

		left: 0;

		background-color: #fff;

		display: none;

		border: 1px solid #C0CDD7;

		border-top: none;

	}

	.comTypeBox .typeTxt {

		padding: 1.2rem 3rem 1.2rem 1.5rem;

		color: #193342;

		border: 1px solid #C0CDD7;

		position: relative;

	}

	.comTypeBox .typeTxt::after {

		margin-top: -0.5rem;

		width: 1.2rem;

		height: 1.2rem;

		position: absolute;

		top: 50%;

		right: 1.5rem;

		background: url("../image/icon07.png") no-repeat left top / 100% 100%;

		content: "";

	}

	.comTypeBox .typeTxt.on::after {

		transform: rotate(180deg);

	}

}





/* comList02 */

.comList02 li {

	border-bottom: 1px solid #C0CDD7;

}

.comList02 li:first-child {

	border-top: 1px solid #C0CDD7;

}

.comList02 a {

	padding: 2.7rem 1rem 2.6rem 0;

	display: flex;

	width: 100%;

	align-items: center;

}

.comList02 .txt {

	flex: 1;

	font-weight: 700;

	line-height: 1.42;

	transition: 0.3s;

	display: -webkit-box;

	-webkit-line-clamp: 3;

	-webkit-box-orient: vertical;

	overflow: hidden;

}

.comList02 .left {

	padding-right: 0.5rem;

	width: 20.1rem;

	display: flex;

	flex-wrap: wrap;

	align-items: center;

}

.comList02 .time {

	width: 8.1rem;

	padding-right: 0.5rem;

	color: #9DB0BF;

}

.comList02 .lable {

	margin-top: 1px;

	padding: 0.2rem 0.2rem 0.4rem;

	width: 10rem;

	font-weight: 700;

	font-size: 1.1rem;

	text-align: center;

	border: 1px solid #C0CDD7;

	line-height: 1;

}

@media all and (min-width: 769px) {

	.comList02 a:hover .txt {

		color: #046ee4;

	}

}

@media all and (max-width: 768px) {

	.comList02 a {

		padding: 1.4rem 0 1.5rem 0;

		display: block;

	}

	.comList02 .left {

		width: auto;

		padding-right: 0;

		margin-bottom: 0.8rem;

	}

	.comList02 .lable {

		width: 9.5rem;

		font-size: 1rem;

	}

	.comList02 .txt {

		line-height: 1.6;

	}

	.comList02 .time {

		width: 6.8rem;

		padding-right: 0;

	}

}





.wp-pagenavi {

	margin-top: 6rem;

	font-size: 0;

	clear: both;

	text-align: center;

}

.wp-pagenavi a,

.wp-pagenavi span {

	min-height: 4rem;

	min-width: 4rem;

	font-size: 2rem;

	font-weight: 400;

	color: #046ee4;

	display: inline-block;

	vertical-align: top;

	text-decoration: none;

	border: 1px solid #fff;

	background-color: #fff;

	padding: 0.4rem 0.5rem 0.2rem;

	margin: 0 0.8rem;

	border-radius: 50%;

}

.wp-pagenavi span.current {

	border-color: #046ee4;

	color: #fff;

	background-color: #046ee4;

}

.wp-pagenavi .first,

.wp-pagenavi .last,

.wp-pagenavi .pages {

	display: none;

}

.wp-pagenavi .extend {

	margin: 0.3rem 2.1rem 0;

	padding: 0.3rem 0 0 0;

	min-height: 0;

	min-width: 0;

	letter-spacing: -0.07em;

	font-size: 1.7rem;

	vertical-align: middle;

}

.wp-pagenavi .comArrow {

	margin: -0.6rem 0 0 0;

	min-height: 0;

	min-width: 0;

	padding: 0;

	border: none;

	vertical-align: middle;

	background-color: transparent;

}

.wp-pagenavi .previouspostslink,

.wp-pagenavi .nextpostslink {

	margin: -0.1rem 2.3rem 0;

	border-color: #046ee4;

}

.wp-pagenavi .previouspostslink .comArrow {

	transform: rotate(180deg);

}

.wp-pagenavi .noLink {

	background-color: #C0CDD7;

	border-color: #C0CDD7;

	cursor: default;

	pointer-events: none;

}

.wp-pagenavi .noLink .comArrow::after {

	background-color: #fff;

}

.wp-pagenavi .noLink .comArrow::before {

	border-color: #fff #fff transparent transparent;

}

@media all and (min-width: 769px) {

	.wp-pagenavi a:hover .comArrow::after {

		background-color: #fff;

	}

	.wp-pagenavi a:hover .comArrow::before {

		border-color: #fff #fff transparent transparent;

	}

	.wp-pagenavi a:hover {

		border-color: #046ee4;

		color: #fff;

		background-color: #046ee4;

	}

}

@media all and (max-width: 768px) {

	.wp-pagenavi {

		margin: 4rem -2rem 0;

	}

	.wp-pagenavi a, .wp-pagenavi span {

		min-height: 3rem;

		min-width: 3rem;

		padding: 0.3rem 0.7rem;

		font-size: 1.6rem;

		margin: 0;

	}

	.wp-pagenavi .extend {

		margin: 0.3rem 0.8rem 0;

		padding: 0.3rem 0 0 0;

		letter-spacing: -0.1em;

	}

	.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink {

		margin: 0 1.8rem;

	}

}





/* comArrow */

.comArrow {

	width: 1.6rem;

	height: 1.6rem;

	display: inline-block;

	vertical-align: top;

	position: relative;

}

.comArrow::before {

	margin: -0.4rem 0 0 -0.5rem;

	width: 0.7rem;

	height: 0.7rem;

	position: absolute;

	top: 50%;

	left: 50%;

	border: 1px solid;

	border-color: #046ee4 #046ee4 transparent transparent;

	transform: rotate(45deg);

	content: "";

	transition: 0.3s;

}

.comArrow::after {

	width: 1rem;

	height: 1px;

	position: absolute;

	left: 0.2rem;

	top: 50%;

	background-color: #046ee4;

	content: "";

	transition: 0.3s;

}





/* comBtnUl */

.comBtnUl {

	display: flex;

	flex-wrap: wrap;

}

.comBtnUl li {

	margin-right: 0.8rem;

}

.comBtnUl a {

	padding-bottom: 0.2rem;

	width: 15.2rem;

	height: 4.6rem;

	color: #046ee4;

	font-weight: 700;

	border: 1px solid #046ee4;

	display: flex;

	align-items: center;

	justify-content: center;

}

.comBtnUl a.green {

	color: #fff;

	background-color: #046ee4;

}

@media all and (min-width: 769px) {

	.comBtnUl a:hover {

		color: #fff;

		background-color: #046ee4;

	}

	.comBtnUl a.green:hover {

		color: #046ee4;

		background-color: #fff;

	}

}

@media all and (max-width: 768px) {

	.comBtnUl a {

		font-size: 1.4rem;

	}

}



/* comLink02 */

.comLink02 a {

	padding-right: 2.8rem;

	font-size: 1.8rem;

	font-weight: 700;

	display: inline-block;

	position: relative;

}

.comLink02 a::after {

	width: 1.6rem;

	height: 1.6rem;

	position: absolute;

	top: 0;

	right: 0;

	content: "\e600"; /* 替换为字体图标的 Unicode */
	    font-family: "iconfont"; /* 替换为你的字体 */font-size: 2.0rem;

 

}

.comLink02 a[target="_blank"]::after {

	color: #000333;

}

@media all and (min-width: 769px) {

	.comLink02 a:hover {

		color: #046ee4;

	}

	.comLink02 a:hover::after {

		 

	}

	.comLink02 a[target="_blank"]:hover::after {

		 

	}

}

@media all and (max-width: 768px) {

	.comLink02 a::after {

		width: 1.4rem;

		height: 1.4rem;

	}

}



/* comBgBox */

.comBgBox {

	padding: 10rem 2rem;

	background-color: #F3F7FA;

}

.comBgBox.whiteBg {

	padding-bottom: 0;

	background-color: #FFF;

}

.comBgBox .headLine02 {

	margin-top: 1.4rem;

	margin-bottom: 5.2rem;

}

.comBgBox .headLine02 + p {

	margin-top: -2.4rem;

}

.comBgBox p {

	margin-bottom: 5.5rem;

	font-size: 1.6rem;

}

@media all and (max-width: 768px) {

	.comBgBox {

		padding: 6rem 2rem;

	}

	.comBgBox .content {

		margin: 0;

	}

	.comBgBox p {

		margin-bottom: 2.7rem;

		font-size: 1.4rem;

		line-height: 1.8;

	}

	.comBgBox .headLine02 {

		margin-bottom: 2.2rem;

	}

}





/* comLinkList */

.comLinkList a {

	display: block;

	border-bottom: 1px solid #D5DCE1;

}

.comLinkList .img {

	display: block;

	aspect-ratio: 254/160;

	overflow: hidden;

}

.comLinkList .img img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	transform: scale(1);

	transition: transform 0.25s ease-in;

}

.comLinkList .txt {
    padding: 1.3rem 4rem 1.3rem 2rem;
    display: flex;
    align-items: center;
    color: #193342;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.028rem;
    position: relative; /* 让 ::after 绝对定位 */
    transition: 0.3s;
}

/* 使用字体图标替换背景图片 */
.comLinkList .txt::after {
    content: "\e600"; /* 替换为字体图标的 Unicode */
    font-family: "iconfont"; /* 替换为你的字体 */
    font-size: 1.3rem; /* 图标大小 */
    color: #046ee4; /* 默认颜色 */
    position: absolute;
    right: 2.2rem; /* 保持原来 `background-position: right 2.2rem center` */
    top: 50%;
    transform: translateY(-50%);
}

/* 悬停时颜色变化 */
.comLinkList .txt:hover::after {
    color: #ff6600; /* 悬停时变色 */
}

.comLinkList .txt .num {

	margin-right: 0.5rem;

	color: #046ee4;

	font-size: 1.6rem;

	font-weight: 400;

	font-family: "Akshar", sans-serif;

}

.comLinkList .blank .txt {

	background-image: url(../image/icon04_over.png);

	background-size: 1.6rem;

	background-position: right 2rem center;

}

@media all and (min-width: 769px) {

	.comLinkList {

		margin: 0 auto;

		max-width: 108rem;

		display: flex;

		flex-wrap: wrap;

		gap: 2.1rem;

	}

	.comLinkList li {

		width: calc((100% - 2.1rem*3)/4);

	}

	.comLinkList a:hover img {

		transform: scale(1.04);

   		transition: transform 0.25s ease-out;

	}

	.comLinkList a:hover .txt {

		color: #046ee4;

	}

	.comLinkList.imgStyle {

		gap: 2.8rem 2.1rem;

	}

}

@media all and (max-width: 768px) {

	.comLinkList li:first-child a {

		border-top: 1px solid #D5DCE1;

	}

	.comLinkList.imgStyle li {

		margin-bottom: 2.4rem;

	}

	.comLinkList.imgStyle li:last-child {

		margin-bottom: 0;

	}

	.comLinkList .img {

		aspect-ratio: 670/220;

	}

	.comLinkList.imgStyle li:first-child a {

		border-top: none;

	}

	.comLinkList.imgStyle .txt {

		padding-bottom: 1rem;

	}

	.comLinkList .blank .txt {

		background-size: 1.2rem !important;

  		background-position: right 0.4rem center !important;

	}

}





.anchorLink {

	margin-bottom: 7.6rem;

	display: flex;

	flex-wrap: wrap;

	gap: 2.5rem;

}

.anchorLink a {

	color: #046ee4;

	font-size: 1.6rem;

	font-weight: 700;

	text-decoration: underline;

}

@media all and (min-width: 769px) {

	.anchorLink a:hover {

		text-decoration: none;

	}

}

@media all and (max-width: 768px) {

	.anchorLink {

		margin-bottom: 3.1rem;

		gap: 1.3rem 2rem;

	}

	.anchorLink a {

		font-size: 1.4rem;

	}

}



.headLine03 {

	margin-bottom: 3.4rem;

	font-size: 2.4rem;

	font-weight: 700;

}

@media all and (max-width: 768px) {

	.headLine03 {

		margin-bottom: 2.4rem;

		text-align: center;

		font-size: 1.8rem;

	}

}





/* comBtn */

.comBtn a {

	width: 26rem;

	height: 5.2rem;

	color: #fff;

	display: flex;

	align-items: center;

	justify-content: center;

	background: #046ee4;

	font-size: 1.6rem;

	font-weight: 700;

	position: relative;

	padding-right: 5rem;

	letter-spacing: 0.02em;

	border: 1px solid #046ee4;

}

.comBtn a::after {

	width: 2rem;

	height: 100%;

	position: absolute;

	top:6px;

	right: 2.6rem;

	 content: "\e624"; /* 替换为字体图标的 Unicode */
	    font-family: "iconfont"; /* 你的字体 */
	    font-size: 2.5rem; /* 调整图标大小 */

}

@media all and (min-width: 769px) {

	.comBtn a:hover {

		color: #046ee4;

		background-color: #fff;

	}

	.comBtn a:hover::after {

		color: #046ee4;

	}
	 

}

@media all and (max-width: 768px) {

	.comBtn a {

		margin: 0 auto;

		width: 100%;

		max-width: 34rem;

		justify-content: flex-start;

		padding-left: 2.3rem;

	}

	.comBtn a::after {

		width: 1.9rem;
		top:1px

	}
	 

}







/* comList03 */

.comList03 {

	display: flex;

	flex-wrap: wrap;

	gap: 1.9rem 0;

}

.comList03 li {

	width: 33.33%;

	padding-right: 1rem;

	font-feature-settings: "palt";

	-moz-font-feature-settings: "palt";

}

.comList03 a {

	padding-left: 2rem;

	display: inline-block;

	position: relative;

	line-height: 1.2;

}

.comList03 a::before {

	margin-top: -0.6rem;

	width: 1.2rem;

	height: 1.2rem;

	position: absolute;

	top: 50%;

	left: 0;

	background: url("../image/icon03_over.png") no-repeat left top / 100% 100%;

	content: "";

}

@media all and (min-width: 769px) {

	.comList03 a:hover {

		color: #046ee4;

	}

}

@media all and (max-width: 768px) {

	.comList03 li {

		width: auto;

		min-width: 50%;

		font-size: 1.3rem;

		line-height: 1;

		padding-right: 0;

	}

	.comList03 {

		gap: 2.2rem 0;

		align-items: center;

	}

}





/* headLine04 */

.headLine04 {

	margin-bottom: 5.8rem;

	padding-top: 3.2rem;

	position: relative;

	font-size: 1.8rem;

	font-weight: 700;

	line-height: 1;font-style: italic;

}

.headLine04 .en {

	margin: 0 0.8rem -1.4rem 0;

	font-size: 6.8rem;

	font-weight: 600;

	display: inline-block;

	vertical-align: bottom;

}

.headLine04::before {

	width: 6rem;

	height: 0.4rem;

	position: absolute;

	top: 0;

	left: 0;

	background-color: #C0CDD7;

	content: "";

}

.headLine04::after {

	width: 2rem;

	height: 0.4rem;

	position: absolute;

	top: 0;

	left: 0;

	background-color: #1D4293;

	content: "";

}

@media all and (max-width: 768px) {

	.headLine04 {

		margin-bottom: 4.1rem;

		padding-top: 2.6rem;

		font-size: 1.4rem;

	}

	.headLine04 .en {

		margin: 0 0.8rem -0.7rem 0;

		font-size: 3.6rem;

	}

}





/* comBanner */

.comBanner a {

	color: #fff;

	display: block;

	position: relative;

	aspect-ratio: 696/400;

	border-radius: 0.8rem;

	overflow: hidden;

}

.comBanner a::before {

	width: 100%;

	height: 16rem;

	position: absolute;

	bottom: 0;

	left: 0;

	background: linear-gradient(180deg, rgba(217, 217, 217, 0.00) 20%, rgba(29, 66, 147, 0.50) 110%);

	content: "";

	z-index: 10;

}

.comBanner a::after {

	width: 5rem;

	height: 5rem;

	position: absolute;

	bottom: 2.1rem;

  	right: 2rem;

	background: url("../image/icon12.png") no-repeat left top / 100% 100%;

	content: "";

	z-index: 10;

}

.comBanner img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	transform: scale(1);

	transition: transform 0.25s ease-in;

}

.comBanner .txt {

	width: 100%;

	position: absolute;

	bottom: 0;

	left: 0;

	font-size: 2.4rem;

	font-weight: 700;

	line-height: 1;

	padding: 0 2rem 2rem;

	letter-spacing: 0.02em;

	z-index: 10;

}

.comBanner .txt .en {

	margin-top: 1.1rem;

	display: block;

	font-weight: 400;

	font-size: 1.8rem;

	letter-spacing: 0.02em;

}

@media all and (min-width: 769px) {

	.comBanner a:hover img {

        transform: scale(1.04);

        transition: transform 0.25s ease-out;

    }

}

@media all and (max-width: 768px) {

	.comBanner a {

		aspect-ratio: 335/90;

		border-radius: 0.4rem;

	}

	.comBanner a::before {

		height: 100%;

		background: rgba(29, 66, 147, 0.20);

	}

	.comBanner .txt {

		padding-bottom: 2.2rem;

		font-size: 2rem;

	}

	.comBanner .txt .en {

		margin-top: 0.9rem;

		font-size: 1.6rem;

	}

	.comBanner a::after {

		width: 4rem;

		height: 4rem;

		bottom: 2.5rem;

		right: 2rem;

	}



}



/* IR individual メニュー調整 */

.page-template-page-ir-individual .comLinkList .txt {

	font-size: 1.35rem;

	letter-spacing: 0px;

	 

	padding: 1.3rem 2.5rem 1.3rem 2rem;
font-family: "iconfont"; content: "\e600"; 
}

