@charset "UTF-8";
/*
 * pc_headfoot.css
 *
 *  version --- 1.0
 *  updated --- 2025/01/31
 */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* root
---------------------------------------------------------- */
:root {

--svg-icon01: url('data:image/svg+xml;utf8,<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.4716 9.50495C11.3888 8.46535 11.8474 7.12871 11.8474 5.79208C11.8474 2.59901 9.17219 0 5.88549 0C2.59879 0 0 2.59901 0 5.79208C0 8.98515 2.67522 11.5842 5.96193 11.5842C7.18489 11.5842 8.33141 11.2129 9.32506 10.5446L13.9112 15L14.9812 13.9604L10.4716 9.50495ZM10.3187 5.79208C10.3187 8.16832 8.33141 10.099 5.88549 10.099C3.43957 10.099 1.45226 8.16832 1.45226 5.79208C1.45226 3.41584 3.43957 1.48515 5.88549 1.48515C8.33141 1.48515 10.3187 3.41584 10.3187 5.79208Z" fill="%231A1A1A"/></svg>');
--svg-icon02: url('data:image/svg+xml;utf8,<svg width="17" height="15" viewBox="0 0 17 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14.3704 13.2487C14.2312 13.2487 14.0913 13.198 13.9817 13.0958C13.7532 12.8824 13.742 12.5258 13.9568 12.2987C16.5015 9.60791 16.5018 5.39208 13.9568 2.701C13.742 2.47392 13.7532 2.11725 13.9817 1.90389C14.21 1.69053 14.5693 1.70162 14.7841 1.9287C17.7383 5.05263 17.7383 9.94678 14.7841 13.0707C14.6724 13.1889 14.5214 13.2485 14.3704 13.2485V13.2487Z" fill="white"/><path d="M12.5672 11.4572C12.4388 11.4572 12.3098 11.4143 12.2038 11.3262C11.9631 11.1265 11.9308 10.771 12.1318 10.532C13.6077 8.77519 13.6077 6.2248 12.1318 4.46771C11.9308 4.22867 11.9631 3.87316 12.2038 3.67352C12.4444 3.47388 12.8022 3.50599 13.0031 3.74503C14.8308 5.92066 14.8308 9.07874 13.0031 11.2544C12.8909 11.3881 12.7296 11.4569 12.5672 11.4569V11.4572Z" fill="white"/><path d="M8.78027 0.102687L3.61499 3.66676H0.633101C0.2835 3.66676 0 4.00563 0 4.4233V10.5775C0 10.9954 0.2835 11.334 0.633101 11.334H3.61499L8.78027 14.8978C9.20243 15.1891 9.72977 14.8251 9.72977 14.2425V0.757944C9.72977 0.175655 9.20214 -0.188312 8.78027 0.102687Z" fill="white"/><defs><clipPath id="clip0_13_1816"><rect width="17" height="15" fill="white"/></clipPath></defs></svg>');
--svg-icon03: url('data:image/svg+xml;utf8,<svg width="8" height="10" viewBox="0 0 8 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.16016 4.13397C7.82682 4.51887 7.82682 5.48112 7.16016 5.86602L1.4999 9.13397C0.833235 9.51887 -9.76698e-05 9.03775 -9.76362e-05 8.26795L-9.73505e-05 1.73205C-9.73168e-05 0.96225 0.833236 0.481125 1.4999 0.866025L7.16016 4.13397Z" fill="white"/></svg>');
--svg-icon04: url('data:image/svg+xml;utf8,<svg width="7" height="8" viewBox="0 0 7 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.17773 3.56699C6.51107 3.75944 6.51107 4.24056 6.17773 4.43301L0.749531 7.56699C0.416198 7.75944 -0.000468583 7.51887 -0.000468566 7.13397L-0.000468292 0.866025C-0.000468275 0.481125 0.416198 0.240562 0.749532 0.433012L6.17773 3.56699Z" fill="black"/></svg>');
--svg-icon05: url('data:image/svg+xml;utf8,<svg width="7" height="8" viewBox="0 0 7 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.17773 3.56699C6.51107 3.75944 6.51107 4.24056 6.17773 4.43301L0.749531 7.56699C0.416198 7.75944 -0.000468583 7.51887 -0.000468566 7.13397L-0.000468292 0.866025C-0.000468275 0.481125 0.416198 0.240562 0.749532 0.433012L6.17773 3.56699Z" fill="%2300118F"/></svg>');
--svg-icon06: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="8" fill="white"/><path d="M7.12584 5.07348C7.50685 4.38767 8.49315 4.38767 8.87416 5.07348L11.1746 9.21436C11.5449 9.88089 11.063 10.7 10.3005 10.7H5.69951C4.93703 10.7 4.45506 9.88089 4.82536 9.21436L7.12584 5.07348Z" fill="%230B7F96"/></svg>');
--svg-icon07: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="8" fill="%230B7F96"/><path d="M7.12584 5.07348C7.50685 4.38767 8.49315 4.38767 8.87416 5.07348L11.1746 9.21436C11.5449 9.88089 11.063 10.7 10.3005 10.7H5.69951C4.93703 10.7 4.45506 9.88089 4.82536 9.21436L7.12584 5.07348Z" fill="white"/></svg>');

--color-b03: #0C4466;
--color-t01: #fff;

}


/* layout
---------------------------------------------------------- */
.u-hidden {
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
}
.u-container {
	max-width: 1280px;
	margin-inline: auto;
	padding-inline: 37px;
}


/* header
---------------------------------------------------------- */
.header {
	font-family: "Noto Sans JP", serif;
	font-optical-sizing: auto;
}
.header__content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 86px;
	position: relative;
	padding-top: 25px;
}
.fz01 .header__content {
	min-height: 110px;
	padding-top: 35px;
}
.fz02 .header__content {
	min-height: 120px;
	padding-top: 40px;
}
.fz03 .header__content {
	min-height: 125px;
	padding-top: 45px;
}
.fz04 .header__content {
	min-height: 130px;
	padding-top: 45px;
}
.header-logo {
	margin-top: -16px;
	margin-right: 10px;
	flex: 1;
	max-width: 219px;
	min-width: 160px;
	width: 100vw;
}
.header-logo img {
	width: 100%;
}
.header-menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 20px;
	row-gap: 5px;
	justify-content: flex-end;
}

.header-search {
	min-width: 190px;
}
.header-search .search-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	border-radius: 30px;
	border: 1px solid #DCDCDC;
	background: #F4F4F4;
	box-sizing: border-box;
}
.header-search .search-box #___gcse_0 {
	width: 100%;
}
.header-search .search-box .gsc-search-box {
	margin: 0;
}
.header-search .search-box .gsc-input-box {
	height: 100%;
	border-radius: 30px 0 0 30px;
	border: none;
	background-color: transparent;
}
.header-search .search-box table.gsc-search-box td.gsc-input {
	padding-right: 0;
}
.header-search .search-box table.gsc-search-box td {
	padding: 0;
}
.header-search .search-box input.gsc-input {
	min-height: 30px;
	padding: 0 0 0 15px !important;
	border-radius: 30px 0 0 30px;
	background-color: transparent !important;
	background-position: 15px center !important;
	box-sizing: border-box;
}
.header-search .search-box .gsc-search-button-v2 {
	width: 40px;
	min-height: 30px;
	height: 100%;
	margin-left: 0;
	padding: 0;
	cursor: pointer;
	border-radius: 0 30px 30px 0;
	border: none;
	background: var(--svg-icon01) no-repeat center center / 15px auto;
	box-sizing: border-box;
}
.header-search .search-box .gsc-search-button-v2 svg {
	display: none;
}
.header-search .search-box .gsc-search-button-v2:hover {
	border: none;
	background-color: transparent;
}

.header-fontsize {
	display: flex;
	align-items: center;
	justify-content: space-between;
	column-gap: 10px;
	min-height: 36px;
	padding: 7px 10px 7px 14px;
	color: #fff;
	font-weight: 500;
	border-radius: 4px;
	background: #0B7F96;
	box-sizing: border-box;
}
.header-fontsize dt {
	padding-right: 6px;
}
.header-fontsize dd a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 2px 8px;
	color: #000;
	line-height: 1.3;
	text-decoration: none;
	border-radius: 4px;
	background: #fff;
	box-sizing: border-box;
	transition: 0.2s;
}
.header-fontsize dd a:hover {
	background-color: var(--color-b03);
	color: var(--color-t01);
}
.header-read a,
.header-read a:visited {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 36px;
	padding: 7px 14px;
	color: #fff;
	text-decoration: none;
	font-weight: 500;
	border-radius: 4px;
	background: #0B7F96;
	box-sizing: border-box;
	transition: 0.2s;
}
.header-read a:before {
	content: "";
	display: inline-block;
	width: 17px;
	height: 15px;
	margin-right: 9px;
	background: var(--svg-icon02) no-repeat 0 0 / 100% auto;
}
.header-read a:hover {
	background-color: var(--color-b03);
	color: var(--color-t01);
}
.header-sitemap a,
.header-sitemap a:visited {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 36px;
	padding: 7px 14px;
	color: #fff;
	text-decoration: none;
	font-weight: 500;
	border-radius: 4px;
	background: #0B7F96;
	box-sizing: border-box;
}
.header-sitemap a:after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 9px;
	margin-left: 10px;
	background: var(--svg-icon03) no-repeat 0 0 / 100% auto;
}
.header-sitemap a:hover {
	background-color: var(--color-b03);
	color: var(--color-t01);
}
.header-btn {
	display: none;
}

/* gnav
---------------------------------------------------------- */
.gnav {
	font-family: "Noto Sans JP", serif;
	font-optical-sizing: auto;
	border-top: 1px solid #D8D8D8;
	border-bottom: 1px solid #D8D8D8;
	background-color: #F4F4F4;
}
.gnav__list > ul {
	display: flex;
	column-gap: 1px;
	padding-inline: 1px;
}
.gnav__list > ul > li {
	width: calc((100% - 5px) / 6);
	flex-shrink: 0;
}
.gnav__list > ul > li > a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 62px;
	padding: 0 5px;
	color: #000;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	font-size: 115%;
}
.gnav__list > ul > li > a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -1px;
	display: block;
	width: 1px;
	height: 32px;
	margin-top: -16px;
	background-color: #D8D8D8;
}
.gnav__list > ul > li:last-child > a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 1px;
	height: 32px;
	margin-top: -16px;
	background-color: #D8D8D8;
}
.gnav__list > ul > li > a > span:after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 10px;
	margin-left: 8px;
	background: var(--svg-icon04) no-repeat 0 0 / 100% auto;
}
.gnav__list ul li .sub-nav {
	position: absolute;
	left: 0;
	right: 0;
	z-index: -1;
	padding: 40px 0 70px;
	border-top: 1px solid #D8D8D8;
	background: #E1EDF6;
	opacity: 0;
  visibility: hidden;
  transition: 0.2s;
}
.gnav__list > ul > li:hover .sub-nav,
.gnav__list > ul > li.dropdown-nav .sub-nav.is-focused {
	opacity: 1;
  visibility: visible;
	z-index: 10;
}
.gnav__list > ul > li:hover > a,
.gnav__list > ul > li.is-active a,
.gnav__list > ul > li a:focus {
	background-color: #E1EDF6;
}
.gnav__list > ul > li.dropdown-nav:hover > a > span:after,
.gnav__list > ul > li.is-active > a > span:after,
.gnav__list > ul > li.dropdown-nav > a:focus > span:after {
	transform: rotate(90deg);
}
.gnav__list ul li .sub-nav p {
	margin-bottom: 40px;
	font-size: 142.85%;
	font-weight: 500;
}
.gnav__list ul li .sub-nav ul {
	display: grid;
	column-gap: 20px;
	row-gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.gnav__list ul li .sub-nav ul li {
	font-size: 115%;
}
.gnav__list ul li .sub-nav ul li a:link {
	color: #00118F;
}
.gnav__list ul li .sub-nav ul li a:after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 8px;
	margin-left: 7px;
	background: var(--svg-icon05) no-repeat 0 0 / 100% auto;
}

/* pagetop
---------------------------------------------------------- */
.pagetop {
	padding-inline: 26px;
}
.pagetop__btn a {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 24px;
	margin-left: auto;
	padding: 3px 13px 3px 39px;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-optical-sizing: auto;
	font-size: 92.86%;
	text-decoration: none;
	border-radius: 8px;
	border: 1px solid #0B7F96;
	background: var(--svg-icon06) no-repeat 17px center / 16px auto #0B7F96;
	box-sizing: border-box;
	transition: 0.2s;
	transform: translateY(50%);
}
.pagetop__btn a:hover {
	color: #0B7F96;;
	background-color: #fff;
	background-image: var(--svg-icon07);
}
.pagetop__btn a br {
	display: none;
}

/* footer
---------------------------------------------------------- */
.footer {
	font-family: "Noto Sans JP", serif;
	font-optical-sizing: auto;
	text-align: left;
}
.footer__link {
	padding-block: 24px;
	background-color: #DEDEDE;
}
.footer__sns {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	column-gap: 40px;
	row-gap: 20px;
}
.footer__sns li a {
	display: flex;
	align-items: center;
	font-size: 128.57%;
	line-height: 1.2;
}
.footer__sns .sns-x img {
	width: 22px;
	margin-left: 15px;
}
.footer__sns .sns-youtube img {
	width: 33px;
	margin-left: 22px;
}
.footer__sns .sns-mail img {
	width: 31px;
	margin-left: 13px;
}

.footer__main {
	background-color: #F4F4F4;
}
.footer__main a:link {
	color: #00118F;
}
.footer__content {
	display: flex;
	align-items: flex-start;
	padding-top: 40px;
}
.footer-group {
	width: 40%;
	padding-right: 20px;
	flex-shrink: 0;
}
.footer-logo {
	margin: 0 0 20px -10px;
}
.footer-address {
	margin-bottom: 12px;
	font-weight: 500;
	line-height: 2.3;
}
.footer-nav {
	padding-top: 20px;
	flex-grow: 1;
}
.footer-nav ul {
	display: grid;
	column-gap: 20px;
	row-gap: 30px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.footer-nav ul li {
	font-weight: 500;
}

.footer__mlit {
	padding: 19px 22px;
	text-align: right;
}
.footer__mlit img {
	width: 156px;
}

.footer__copyright p {
	padding: 10px 0 14px;
	font-weight: 500;
	text-align: center;
}

#pageTopWrap {
  display: none;
}
#g01 .gnav__list > ul > li:nth-child(1) > a,
#g02 .gnav__list > ul > li:nth-child(2) > a,
#g03 .gnav__list > ul > li:nth-child(3) > a,
#g04 .gnav__list > ul > li:nth-child(4) > a,
#g05 .gnav__list > ul > li:nth-child(5) > a,
#g06 .gnav__list > ul > li:nth-child(6) > a {
  background-color: #E1EDF6;
}
.footer__sns .sns-list-item img {
  margin-left: 15px;
}
.menuList01 .pageTop {
  display: none;
}

body:not(#g01) .header > .u-container {
  max-width: inherit;
  min-width: calc(1280px - (37px * 2));
}
body:not(#g01) .gnav,
body:not(#g01) .footer {
  min-width: 1280px;
}
body:not(#g01) .pageTitle01,
body:not(#g01) #contents,
body:not(#g01) .pagetop {
  min-width: calc(1280px - (37px * 2));
}
.pc_hide {
  display: none;
}
.header-menu > .header-lang.sp_hide {
  position: absolute;
  top: 0;
  right: 0;
}
.header-menu > .header-lang.sp_hide a {
	display: block;
	text-align: center;
  color: #000;
  text-decoration: none;
  border: 1px solid #D8D8D8;
  border-top: none;
  border-radius: 0 0 4px 4px;
  width: 100px;
  padding: 7px 14px 4px;
  background: #f4f4f4;
}
.header-menu > .header-lang.sp_hide a:after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 10px;
  margin-left: 8px;
  background: var(--svg-icon04) no-repeat 0 0 / 100% auto;
}
.header-menu > .header-lang.sp_hide a:hover {
  background-color: var(--color-b03);
  color: var(--color-t01);
}
.header-menu > .header-lang.sp_hide a:hover:after {
  background-image: url(/com/content/001861743.svg);
}

.header-search_way.sp_hide a,
.header-search_way.sp_hide a:visited {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 36px;
	padding: 7px 14px;
	color: #fff;
	text-decoration: none;
	font-weight: 500;
	border-radius: 4px;
	background: #0B7F96;
	box-sizing: border-box;
	transition: 0.2s;
}

.header-search_way.sp_hide a:after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 9px;
	margin-left: 10px;
	background: var(--svg-icon03) no-repeat 0 0 / 100% auto;
}

.header-search_way.sp_hide a:hover {
	background-color: var(--color-b03);
	color: var(--color-t01);
}