@charset "utf-8";

/*--------メインビジュアル---------*/
/*.topMainvisual {
	background-color: #b8e9e6;
}*/
/*------------サブナビ--------------*/
.subNavi li a:link {
	color: #003576;
	text-decoration: none;
}
.subNavi li a:visited {
	color: #003576;
	text-decoration: none;
}
.subNavi li a:hover {
	color: #003576;
	text-decoration: none;
	border-bottom: 3px solid #003576;
}
.subNavi li.active a {
	border-bottom: 3px solid #003576;
}
/*------------コンテンツボックス--------------*/
.contBlock02Wrap {
	background-color: #edf4ef;
}
.more_link p.next{
	margin: 5px 0 0;
}
/*------------トップのみ適用--------------*/
.contBlock h2 {
    color: #bf0000;
    font-size: 42px;
    font-weight: bold;
    line-height: 54px;
    margin-bottom: 30px;
}
/*-------------横3列ボックス-------------*/
.box3pcs dt {
	background-color: #078d48;
}
.box3pcs dl {
	border: 1px solid #078d48;
}
/*-----------------下部お問い合わせ------------------*/
.contactArea {
	background-color: #002896;
    width: 954px;
}

.clear {
    clear: both;
}
.just {
  text-align: justify;
  text-justify: inter-ideograph;
}

.merit_bg{
    margin-left: 50px;
}
#tabmenu li {
    width: 20%;
}
#tabmenu li.long {
    width: 35%;
}
/*----固定コンタクト
#btmLink {
	width: 100%;
}
#btmLink .inner {
	background: #002896;
	width: 100%;
	color: white;
	font-size: 12px;
	line-height: 1.5;
}
#btmLink .inner ul {
	width: 1120px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
}
#btmLink .inner ul li {
	float: left;
	padding-right: 11px;
	padding-top: 3px;
	padding-bottom: 2px;
}
#btmLink .inner ul .links a {
	display: block;
}
#btmLink .inner ul .links{
	margin-right:52px;
}
#btmLink .inner ul .pagetop {
	padding-top: 0px;
	padding-bottom: 0px;
	padding-right: 0px;
}
#btmLink .inner ul .pagetop a {
	display: block;
	background: #FFF;
}
#btmLink .inner li.freetel {
	font-family: arial, Helvetica, sans-serif;
	font-size: 26px;
	font-weight: bold;
	padding-right: 8px;
	margin-left: -5px;
}
#btmLink .inner li.freetel:before {
	content: url(../images/contact_icon_free2.png);
}
#btmLink .inner li span {
	font-size: 10px;
	background: white;
	color: #002896;
	font-weight: bold;
	padding: 2px;
	margin-right: 3px;
}
#btmLink .button, #btmLink .button:visited {
	color: #fff!important;
    text-align: center;
	font: bold 20px/100% "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-seri;
	border-radius: 5px;
	-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
	box-shadow: 0 1px 2px rgba(0,0,0,.2);
	width: 254px;
	letter-spacing: 3px;
	margin-top: 3px;
}
#btmLink .button:hover {
	text-decoration: none;
}
#btmLink .orange {
	border: solid 1px #ff8700;
	background-color:#ff8700;
}
-----*/

/*--------------------------*/

.callSubNaviBase {
	height: 63px;
	position: relative;
	background-color: ffffff;
	width: 100%;
}
#cloudNav {
	border-bottom: 1px solid #dadada;
	text-align: center;
	width: 100%;
	position: relative;
	top: 0px;
	left: 0px;
	background-color: #ffffff;
	z-index: 500;
}
#cloudNav.fixed {
	position: fixed;
	top: 0px;
	left: 0px;
}
#cloudNav.SubNaviWrap02 {
	border-top: 1px solid #dadada;
	border-bottom: 1px solid #dadada;
	text-align: center;/*margin-bottom: 54px;*/
}
/*---------*/
.subNavi {
	display: table;
	width: 954px;
	margin-right: auto;
	margin-left: auto;
}
/*.subNavi li {
	width: initial;
	width: auto;
}*/

li.SubNaviLogo img{
	vertical-align: middle;
	width: 109px;
}
li.SubNaviLogo{
	vertical-align: middle;
	width: 109px;
}
/*
.SubNavi li.subNaviLogo {
	padding: 10px 30px 0px 0px;
	text-align: left;
}
.subNavi li a {
	display: block;
	padding: 22px 10px;
	font-size: 15px;
	line-height: 1em;
	font-weight: bold;
	border-bottom: 3px solid #ffffff;
}
.subNavi li a:link {
	color: #303999;
	text-decoration: none;
}
.subNavi li a:visited {
	color: #303999;
	text-decoration: none;
}
.subNavi li a:hover {
	color: #ff6d00;
	text-decoration: none;
	border-bottom: 3px solid #ff6d00;
}
.subNavi li a:active {
	color: #303999;
	text-decoration: none;
}
.subNavi li.active a {

}

*/
.news_info_box {
    background-image: url(../../common/images/news_info_box.gif);
    background-repeat: no-repeat;
    background-position: 15px 5px;
    border: 1px solid #CCC;
    margin-left: auto;
    margin-right: auto;
    padding: 35px 10px 10px 10px;
    text-align:left;
    width:660px;
}
.news_info_box dl {
    border-bottom: solid 1px #CCCCCC;
    margin: 10px 15px;
    clear: both;
}
.gray_box {
    background-color: #fafafa;
    border: 1px solid #d6d6d6;
    margin-left: auto;
    margin-right: auto;
    padding: 20px;
    line-height: 1.7;
    font-size: 15px;
}

/* 20231218追記 */
.subNavi {
	display: flex;
	column-gap: 10px;
	justify-content: space-around;
}
.subNavi li {
	display: block!important;
	width: auto;
	padding: 0 1em;
}

/* モーダル関連 */
.ib {
	display: inline-block;
	text-decoration: inherit;
}

#head-lower {
	z-index: 1000 !important;
}

.mfp-hide {
	display: none;
}

.login-popup {
	background-color: #F0F6FC;
	padding: 45px 38px;
	width: 90%;
	max-width: 1126px;
	margin: 0 auto;
	position: fixed;
	z-index: 1000;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
/* .login-popup::after {
	content: '';
	position: absolute;
	width: 100vw;
	height: 100vh;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
	background-color: rgba(0,0,0,0.7);
	backdrop-filter: blur(5px);
} */

.login-popup h2 {
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 40px;
	padding: 0;
	color: #000;
}

.detail-inner-hd {
	display: flex;
	align-items: center;
	max-width: 552px;
	justify-content: flex-start;
	margin-bottom: 24px;
}

.login-popup h3 {
	color: #002896;
	font-size: 22px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 390px;
	width: 100%;
	line-height: 1;
	margin: 0;
}

.detail-inner-info {
	position: relative;
	font-size: 14px;
	font-weight: 500;
	padding-left: 20px;
}

.detail-inner-info a {
	color: #000;
	text-decoration: underline;
}

.detail-inner-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	column-gap: 15px;
	row-gap: 24px;
}

.detail-inner-wrap li {
	width: calc(33% - 15px);
	position: relative;
	min-width: 252px;
}

.detail-inner-wrap li a {
	font-size: 18px;
	font-weight: 500;
	position: relative;
	padding-left: 33px;
	color: #000;
	display: inline-block;
}

.detail-inner-wrap li a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 12px;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	background-color: #002896;
	border-radius: 50%;
}

.detail-inner-wrap li a::after {
	position: absolute;
	content: '';
	left: 6px;
	top: 12px;
	transform: translateY(-50%) rotate(45deg);
	height: 7px;
	width: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.popup-close-btn {
	position: absolute;
	top: 20px;
	right: 20px;
	color: #002896;
	font-size: 26px;
	font-weight: bold;
	cursor: pointer;
}

.mfp-wrap~#wrap #subNaviWrap.fixed #subNavi {
	padding-right: 16px;
}

.mfp-bg {
	height: 100vh !important;
	position: fixed !important;
}

.mfp-container {
	position: fixed !important;
}

.no_scroll {
	overflow: hidden;
}

body:has(.mfp-ready) {
	overflow: hidden;
}