@charset "utf-8";

/* ============================================================ */
/* contents */
/* ============================================================ */
.contents {
	width: 100%;
	position: relative;
	z-index: 1;
	padding: 90px 0 120px;
}

.contents__inner {
	max-width: 1260px;
	margin: 0 auto;
	padding: 0 30px;
}

.contents._col2_ .contents__inner {
	display: flex;
	justify-content: space-between;
}

.contents__body {
	flex: 0 1 960px;
	margin: 0 60px 0 0;
	overflow: hidden;
	order: 1;
}

.contents__side {
	flex: 0 1 340px;
	order: 2;
}

.pre {
	overflow: auto;
  word-wrap: break-word;
	width: 100%;
}

.box__inner {
	max-width: 1260px;
	margin: 0 auto 120px;
	padding: 0 30px;
}

.box__inner:last-child {
	margin-bottom: 0;
}


/* ============================================================ */
/* .breadcrumb */
/* ============================================================ */
.breadcrumb {
	font-size: 1.6rem;
	text-align: left;
	line-height: 1.0;
	font-weight: 400;
	margin: 0 0 40px;
}

.breadcrumb__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.breadcrumb__item {
	letter-spacing: 1.6px;
}

.breadcrumb__item:last-child {
	margin: 0;
	padding: 0;
	background: none;
}

.breadcrumb__item::after {
	margin: 0 10px;
	content: "\e90e";
	font-family: 'icomoon';
	font-size: 1.2rem;
}

.breadcrumb__item:last-child::after {
	display: none;
}

.breadcrumb__link {
  background: linear-gradient(0deg, var(--white), var(--white)) no-repeat right bottom / 0 var(--bg-h2);
  transition: background-size 350ms;
  padding-bottom: 1px;
	color: var(--white);
	text-shadow: 0 0 10px rgba(0, 0, 0, 1);
	display: inline-block;
}

.breadcrumb__link:hover ,
.breadcrumb__link:focus-visible {
  background-size: 100% var(--bg-h2);
  background-position-x: left;
}


/* ============================================================ */
/* .contact-block */
/* ============================================================ */
.contact-block {
	padding: 130px 30px 0;
	max-width: 1260px;
	margin: 0 auto;
}

.contact-block__box {
	background: var(--white);
	padding: 40px 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: var(--black);
}

@media only screen and (min-width: 768px) and (max-width: 1200px) {
	.contact-block__box {
		flex-direction: column;
		justify-content: center;
		padding: 40px;
	}
}

.contact-block__ttl {
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 2.4px;
	display: flex;
	align-items: center;
}

@media only screen and (min-width: 768px) and (max-width: 1200px) {
	.contact-block__ttl {
		margin: 0 0 20px;
	}
}

.contact-block__ttl .__ico {
	font-size: 3.0rem;
	margin: 0 10px 0 0;
}

.contact-block-right {
	display: flex;
	justify-content: space-between;
}

.contact-block-right__tel {
	font-size: 1.2rem;
	letter-spacing: 1.2px;
	line-height: 1.6;
}

.contact-block-right__tel .__link {
	min-width: 360px;
	min-height: 72px;
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: 2.8px;
	cursor: default !important;
}

.contact-block-right__btn {
	margin: 0 0 0 20px;
}

.contact-block-right__btn .btn-arrow {
	min-height: 72px;
}

.contact-block-right__btn .btn-arrow:hover {
	border: 1px solid var(--blue); 
}


/* ============================================================ */
/* テキストスタイル */
/* ============================================================ */
.txt_center {
	text-align: center;
}

.txt_right {
	text-align: right;
}

.txt_left {
	text-align: left;
}


/* ============================================================ */
/* h1 */
/* ============================================================ */
.h1 {
	background: url("../../img/news/bg_ttl_news.jpg") center center no-repeat;
	height: 720px;
	background-size: cover;
	font-size: 6.0rem;
	line-height: 1.2;
	color: var(--white);
	font-weight: 600;
	margin: -110px 0 0;
	z-index: 1;
	position: relative;
	letter-spacing: 9px;
}

.h1._contact_ {
	background: url("../../img/contact/bg_ttl_contact.jpg") center center no-repeat;
	background-size: cover;
}

.h1._news_ {
	background: url("../../img/news/bg_ttl_news.jpg") center center no-repeat;
	background-size: cover;
}

.h1._event_ {
	background: url("../../img/news/bg_ttl_event.jpg") center center no-repeat;
	background-size: cover;
}

.h1._service_ {
	background: url("../../img/service/bg_ttl_service.jpg") center center no-repeat;
	background-size: cover;
}

.h1._about_ {
	background: url("../../img/about/bg_ttl_about.jpg") center center no-repeat;
	background-size: cover;
}

.h1._office_ {
	background: url("../../img/office/bg_ttl_office.jpg") center center no-repeat;
	background-size: cover;
}

.h1._recruit_ {
	background: url("../../img/recruit/bg_ttl_recruit.jpg") center center no-repeat;
	background-size: cover;
}

.h1__inner {
	max-width: 1260px;
	height: 100%;
	margin: 0 auto;
	padding: 0 30px 65px;
	display: flex;
	justify-content: flex-end;
	flex-direction: column;
}

.h1__ttl {
	display: flex;
	flex-direction: column;
}

.h1__ttl .__jp {
	text-shadow: 0 0 10px rgba(0, 0, 0, .7);
	margin: 0 0 10px;
}

.h1__ttl .__jp::before {
	content: "\e900";
	font-family: 'icomoon';
	font-size: 4.5rem;
	margin: 0 10px 0 0;
	font-weight: 400;
}

.h1__ttl .__en {
	text-transform: uppercase;
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 1.8px;
}


/*----- h2 -----*/
.h2 {
	margin: 0 0 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	font-size: 6.0rem;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: 9px;
}

.h2 .__jp {
	margin: 0 0 10px;
}

.h2 .__jp::before {
	content: "\e900";
	font-family: 'icomoon';
	font-size: 5.0rem;
	margin: 0 10px 0 0;
	font-weight: 400;
}

.h2 .__en {
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 1.8px;
}

.h2._left_ {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	text-align: left;
}


/*----- h3 -----*/
.h3 {
	margin: 0 0 45px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	font-size: 4.0rem;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: 6px;
}

.h3 .__txt {
}

.h3 .__txt::before {
	content: "\e900";
	font-family: 'icomoon';
	font-size: 3.5rem;
	margin: 0 10px 0 0;
	font-weight: 400;
}

.h3._left_ .__txt {
	padding: 0 0 0 55px;
  position: relative;
	text-align: left;
}

.h3._left_ .__txt::before {
	position: absolute;
	top: 4px;
	left: 0;
	margin: 0;
}

.h3._left_ .__en {
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 1.4px;
	text-align: left;
	margin: 5px 0 0;
}

.h3._blue_ {
	color: var(--blue);
}


/*----- h4 -----*/
.h4 {
	margin: 0 0 20px;
	color: var(--white);
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 3.6px;
}

.h4._blue_ {
	color: var(--blue);
}


/*----- h5 -----*/
.h5 {
	margin: 0 0 30px;
	padding: 0 0 0 20px;
	color: var(--white);
  border-left: 3px solid var(--white);
	font-size: 2.0rem;
	font-weight: 600;
}


/*----- h6 -----*/
.h6 {
	margin: 0 0 20px;
	font-size: 1.8rem;
	line-height: 1.2;
	font-weight: 600;
	color: var(--blue);
}



/* ============================================================ */
/* インデントスタイル */
/* ============================================================ */
.indent {
	display: table;
}

.indent__item {
	display: table-cell;
	white-space: nowrap;
}

.indent._space_ .__item {
	padding-right: 1em;
}


/* ============================================================ */
/* flexスタイル */
/* ============================================================ */
.al-fc {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.al-fc > * {
	flex: 0 0 auto;
}

.al-fr {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.al-fl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

._no-wrap_ {
	flex-wrap: nowrap;
}

.al-fl2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.al-fb {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.al-fa{
	display: flex;
	justify-content: space-around;
	align-items: center;
}

._flex1_ {
	flex: 1;
	width: auto;
}


/* ============================================================ */
/* table */
/* ============================================================ */
.table {
	font-size: 1.6rem;
	line-height: 2.0;
	width: 100%;
	word-break: break-all;
	word-wrap: break-word;
	border-collapse: collapse;
	border-spacing: 0;
}

.table th,
.table td {
	padding: 25px 20px;
	border-top: 1px solid rgba(255,255,255,0.5);
	border-bottom: 1px solid rgba(255,255,255,0.5);
	background-clip: padding-box;
	text-align: left;
	vertical-align: middle;
}

.table._no-border_ th ,
.table._no-border_ td {
	border-top: none;
	border-bottom: none;
	padding: 0 0 35px;
}

.table._border_ th ,
.table._border_ td {
	border-top: 1px solid var(--gray);
	border-bottom: 1px solid var(--gray);
}

.table ._bb-0_ {
	border-bottom: none;
}

.table th {
	font-weight: bold;
	font-size: 1.8rem;
}

.table td {
	font-weight: 400;
}

.table ._blue_ {
	background: var(--blue);
	color: var(--white);
}

.table ._al-l_ {
	text-align: left;
}

.table ._al-r_ {
	text-align: right;
}

.table ._al-c_ {
	text-align: center;
}

.table ._va-t_ {
	vertical-align: top;
}

.table ._nowrap_ {
	white-space: nowrap;
}


/* ============================================================ */
/* labelスタイル */
/* ============================================================ */
.label {
	display: inline-block;
	text-align: center;
	padding: 0 5px;
	margin: 0 10px;
	min-width: 40px;
	box-sizing: border-box;
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: 1.2px;
	border-radius: 4px;
}

.label._blue_ {
	background: #4B77B7;
	color: var(--white);
}

.label._outline_ {
	border: 1px solid var(--white);
	background: none;
	color: var(--white);
}


/* ============================================================ */
/* accordion */
/* ============================================================ */
.accordion ,
.accordion-sp {
	cursor: pointer;
	position: relative;
	color: var(--white);
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: 1px solid var(--white);
	padding: 8px 40px;
	border-radius: 4px;
	transition: all .3s;
}

.accordion._active_ ,
.accordion-sp._active_ {
	border: 1px solid var(--white);
	background: var(--white);
	color: var(--blue);
	border-radius: 4px 4px 0 0;
}

.accordion__hide {
	display: none;
	background: var(--white);
	color: var(--blue);
	border-radius: 0 0 4px 4px;
	padding: 0 40px 10px;
}

.accordion .__txt ,
.accordion-sp .__txt {
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 3px;
}

.accordion .__ico ,
.accordion-sp .__ico {
	font-size: 1.7rem;
	line-height: 1.0;
}

.accordion._active_ .__ico ,
.accordion-sp._active_ .__ico {
	transform: rotate(180deg);
}


/* ============================================================ */
/* btn */
/* ============================================================ */
.btn ,
.btn-arrow {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	min-width: 200px;
	min-height: 48px;
	padding: 0 30px;
	margin: 0 10px;
	border: 1px solid transparent;
	text-align: center;
	text-decoration: none;
	line-height: 1.4;
	font-size: 1.6rem;
	z-index: 1;
	cursor: pointer;
	box-sizing: border-box;	
	border-radius: 48px;
	letter-spacing: 1.6px;
	transition: all .3s;
}

.btn .__txt ,
.btn-arrow .__txt {
	font-weight: 600;
	background: none;
}

.btn:hover ,
.btn-arrow:hover {
	cursor: pointer;
	opacity: 1;
}

.btn-arrow .__ico {
	position: absolute;
  top: 50%;
  transition: all 0.3s ease;
}

.btn-arrow .__ico:first-child {
	left: 0;
	transform: translateX(28px) translateY(-50%);
}

.btn-arrow .__ico:last-child {
	right: 0;
	transform: translateX(-25px) translateY(-50%);
}

.btn-arrow .__ico {
}

.btn-arrow:hover .__ico {
	transform: translateX(-15px) translateY(-50%);
}

.btn-arrow:hover .__ico:first-child {
	transform: translateX(18px) translateY(-50%);
}

.btn-arrow:active .__ico {
  transform: scale(0.9);
}

.btn._m0_ ,
.btn-arrow._m0_ {
	margin: 0;
}


/* 青ボタン */
.btn._blue_ ,
.btn-arrow._blue_ {
	background: var(--blue);
	color: var(--white);
}

.btn._blue_:hover ,
.btn-arrow._blue_:hover {
	background: var(--white);
	color: var(--blue);
}

/* ネイビーボタン */
.btn._navy_ ,
.btn-arrow._navy_ {
	background: #4B77B7;
	color: var(--white);
}

/* 白ボタン */
.btn._white_ ,
.btn-arrow._white_ {
	background: var(--white);
	color: var(--blue);
}

.btn._white_:hover ,
.btn-arrow._white_:hover {
	background: #4B77B7;
	color: var(--white);
}

/* ボーダーボタン */
.btn._outline_ ,
.btn-arrow._outline_ {
	background: var(--white);
	border: 1px solid var(--gray);
	color: rgba(0,0,0, .5);
}

.btn._outline_:hover ,
.btn-arrow._outline_:hover {
	background: var(--gray);
	color: var(--black);
}


/* グラデーションボタン */
.btn._gradation_ ,
.btn-arrow._gradation_ {
	background: linear-gradient(270deg, #005C9F 0%, rgba(0, 167, 234, 0) 49.51%), var(--blue);
	color: var(--white);
	border: none;
	background-position: 50% 50%;
	background-size: 200% auto;
	transition: all 0.3s ease-out;
}

.btn._gradation_:hover ,
.btn-arrow._gradation_:hover {
	background-position: 99% 50%;
}

.btn._gradation_ .__txt ,
.btn-arrow._gradation_ .__txt {
	font-weight: 500;
}


/* サイズ大きめボタン */
.btn._w-l_ ,
.btn-arrow._w-l_ {
	min-width: 318px;
	height: 70px;
	padding: 0 30px;
	font-size: 2.0rem;
}

.btn._w-xl_ ,
.btn-arrow._w-xl_ {
	min-width: 350px;
	padding: 0 16px;
}

/* サイズ小さめボタン */
.btn._w-s_ ,
.btn-arrow._w-s_ {
	min-width: 180px;
	font-size: 1.7rem;
}

.btn._w-xs_ ,
.btn-arrow._w-xs_ {
	min-width: 166px;
	font-size: 1.2rem;
}

/* サイズ中ボタン */
.btn._w-m_ ,
.btn-arrow._w-m_ {
	min-width: 250px;
}




/* ============================================================ */
/* フォームスタイル */
/* ============================================================ */
.form-text {
	display: inline-block;
	width: 100%;
	padding: 8px 15px;
	border: none;
	color: var(--black-text);
	border-radius: 4px;
	background: #EEE;
	box-sizing: border-box;
	font-size: 1.6rem;
}

.form-text._w-m_ {
	max-width: 365px;
}

.form-text._w-s_ {
	max-width: 100px;
}

.form-text._w-l_ {
	max-width: 715px;
}

.form-text._w-a_ {
	width: auto;
}

.form-text::placeholder {
	color: #aaa;
}

.form-text::-webkit-input-placeholder {
	color: #aaa;
}

.form-text::-moz-placeholder {
	color: #aaa;
	opacity: 1;
}

.form-text:-ms-input-placeholder {
	color: #aaa;
}

/*----- アピアランス非表示 -----*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}
input[type="date"] {
	position: relative;
}
input[type="date"]::-webkit-calendar-picker-indicator {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
}

/*----- textarea -----*/
.form-textarea {
	display: inline-block;
	width: 100%;
	height: 240px;
	padding: 8px 15px;
	border: none;
	color: var(--black-text);
	border-radius: 4px;
	background: #EEE;
	box-sizing: border-box;
	font-size: 1.6rem;
	resize: vertical;
}

.form-textarea::placeholder {
	color: #aaa;
}

.form-textarea::-moz-placeholder {
	color: #aaa;
	opacity: 1;
}

.form-textarea:-ms-input-placeholder {
	color: #aaa;
}

.form-textarea::-webkit-input-placeholder {
	color: #aaa;
}


/*----- radio -----*/
.mwform-radio-field .__elem {
	line-height: 1.8;
	margin: 0 0 3px;
	padding: 0;
	display: none;
}

input[type="radio"]:checked + .mwform-radio-field-text::after {
	opacity: 1;
}

input[type="radio"]:checked + .mwform-radio-field-text::before {
	border: 2px solid #D0D0D0;
}

input[type="radio"]:disabled + .mwform-radio-field-text {
	color: #7A7A7A !important;
}

.mwform-radio-field .mwform-radio-field-text {
	position: relative;
	padding: 0 0 0 30px;
	cursor: pointer;
	font-weight: bold;
}

.mwform-radio-field .mwform-radio-field-text::before {
	left: 0;
	content: '';
	border: 2px solid #D0D0D0;
	position: absolute;
	top: 50%;
	width: 18px;
	height: 18px;
	transform: translate(0, -50%);
	border-radius: 50%;
}

.mwform-radio-field .mwform-radio-field-text::after {
	position: absolute;
	top: 50%;
	left: 6px;
	width: 10px;
	height: 10px;
	transform: translate(0, -50%);
	border-radius: 50%;
	background: var(--blue);
	content: "";
	opacity: 0;
}



/*----- check -----*/
.mwform-checkbox-field {
	display: inline-flex;
	align-items: center;
}

.mwform-checkbox-field .__elem {
	line-height: 1.8;
	padding: 0;
	display: none;
}

input[type="checkbox"]:checked + .mwform-checkbox-field-text::after {
	opacity: 1;
}

input[type="checkbox"]:checked + .mwform-checkbox-field-text::before {
	border: none;
}

.mwform-checkbox-field .mwform-checkbox-field-text {
	position: relative;
	padding: 0 0 0 40px;
	cursor: pointer;
}

.mwform-checkbox-field .mwform-checkbox-field-text::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	width: 18px;
	height: 18px;
	border-radius: 4px;
	border: 1px solid #D0D0D0;
	background: var(--white);
	content: "";
}

.mwform-checkbox-field .mwform-checkbox-field-text::after {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	width: 16px;
	height: 18px;
	padding: 0 0 0 2px;
	opacity: 0;
	content: '\e910';
	display: inline-flex;
	vertical-align: middle;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	border: 1px solid var(--blue);
	color: var(--white);
	background: var(--blue);
	line-height: 1.0;
	font-family: 'icomoon';
	font-size: 1.6rem;
	font-weight: 600;
}


/*----- select -----*/
.form-select {
	display: inline-block;
	padding: 8px 30px 8px 15px;
	border: none;
	color: var(--black-text);
	border-radius: 4px;
	background: #EEE;
	-webkit-appearance: none;
 	appearance: none;
	font-size: 1.6rem;
	width: 100%;
	position: relative;
	background-image: url("../../img/common/arrow_select.svg");
	background-position: right 10px center;
	background-repeat: no-repeat;
	background-size: 14px 7px;
}

.form-select::-ms-expand {
  display: none;
}

.form-select._w-l_ {
	min-width: 330px;
}

.form-select._w-s_ {
	min-width: 170px;
}

.form-select._w-m_ {
	min-width: 235px;
}

.form-select._w100_ {
	width: 100%;
}

.form-select:disabled {
	color: #757578;
	opacity: 1;
}

.form-select::placeholder {
	color: #aaa;
}

.form-select::-moz-placeholder {
	color: #aaa;
	opacity: 1;
}

.form-select:-ms-input-placeholder {
	color: #aaa;
}

.form-select::-webkit-input-placeholder {
	color: #aaa;
}



/* ============================================================ */
/* iframeスタイル */
/* ============================================================ */
.iframe {
	position: relative;
	padding-bottom: 40%;
	height: 0;
	overflow: hidden;
}

.iframe > iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* ============================================================ */
/* boxスタイル */
/* ============================================================ */
.box {
	padding: 15px;
}

.box._white_ {
	background: var(--white);
}

.box._outline_ {
	border: 1px solid #D0D0D0;
}

.box._gray_ {
	background: var(--gray);
}

.box._radius_ {
	border-radius: 4px;
}

.box._error_ {
	background: rgba(209,45,38,0.1);
	color: var(--red);
	font-weight: 600;
}

.box._error_ .icon-error {
	font-size: 2.0rem;
	margin: 0 10px 0 0;
	line-height: 1.0;
}


/* ============================================================ */
/* listスタイル */
/* ============================================================ */
.list {
}

.list__item {
	margin: 0 0 20px;
}

.list__item:last-of-type {
	margin: 0;
}


/* list-circle */
.list._list-circle_ {
}

.list._list-circle_ .list__item {
	position: relative;
	margin-bottom: 5px;
	padding-left: 20px;
}

.list._list-circle_ .list__item::before {
	position: absolute;
	top: 16px;
	left: 0;
	display: block;
	content: '';
	background: var(--white);
	width: 5px;
	height: 5px;
	border-radius: 50%;
	line-height: 1.0;
}

.list._list-circle_._blue_ .list__item::before {
	background: var(--blue);
}


/* list-number */
.list-number {
	counter-reset: number 0;
}

.list-number .list-number__item {
	counter-increment: number; 
	position: relative;
	padding: 0 0 0 20px;
	margin: 0 0 15px;
}

.list-number .list-number__item:last-child {
	margin: 0;
}

.list-number .list-number__item::before {
	content: counter(number)".";
	position: absolute;
	top: 6px;
	left: 0;
	line-height: 1.2;
}

/* list-alpha */
.list-alpha {
  list-style: none;
  padding-left: 0;
}

.list-alpha > .list-alpha__item {
  counter-increment: count-ex03;
  position: relative;
	padding: 0 0 0 25px;
}

.list-alpha .list-alpha__item {
	counter-increment: count-ex03;
}

.list-alpha .list-alpha__item::before {
 	content: counter(count-ex03, lower-alpha) "）" ;
	position: absolute;
	top: 0;
	left: 0;
}


/* ============================================================ */
/* archiveスタイル */
/* ============================================================ */
.archive__list {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	gap:80px 60px;
	margin-bottom: 80px;
}
.archive__list .archive__item {
	width: calc((100% / 3) - 40px);
}
.archive__list .archive__item:nth-child(1) {
	width: calc(60% + 60px);
}

.archive__list .news__img {
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	aspect-ratio: 1 / 0.75;
	margin: 0 0 15px;
}
.archive__list .news__img .news__link {
	display: block;
	width: 100%;
}
.archive__list .news__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 1s all;
}
.archive__list .news__img .news__link:hover img {
	transform: scale(1.2, 1.2);
	transition: 1s all;
}

.archive__list .news__date {
	color: #4B77B7;
	font-size: 1.4rem;
	line-height: 1.75;
	letter-spacing: 0.1em;
}
.contents._event_ .archive__list .news__date {
	color: var(--white);
}
.archive__list .news__detail .label {
	margin-left: 0;
}
.archive__list .news__title {
	color: var(--white);
	font-weight: 700;
	font-size: 2.4rem;
}
.archive__list .news__content {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: 20px;
	color: var(--white);
}

.archive-cate__list {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap:20px;
	margin-bottom: 120px;
}
.archive-cate__link,
.current .archive-cate__link:hover {
	display: block;
	width: 240px;
	padding: 15px;
	background: transparent;
	border-radius: 24px;
	border: var(--white) 2px solid;
	box-sizing: border-box;
	text-align: center;
	color: var(--white);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.1em;
	transition: .4s;
}
.archive-cate__link:hover,
.current .archive-cate__link {
	color: #4B77B7;
	background: var(--white);
}


/* ============================================================ */
/* singleスタイル */
/* ============================================================ */
.single__title {
	line-height: 1.75;
	letter-spacing: 0.1em;
}
.single__title::after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	margin-bottom: 64px;
	background: linear-gradient(270deg, #005C9F 0%, rgba(0, 167, 234, 0.00) 100%), #00A7EA;
}
.contents._event_ .single__title::after {
	background: var(--white);
}

.single__title .news__date {
	color: #4B77B7;
	font-size: 1.8rem;
}
.contents._event_ .single__title .news__date {
	color: var(--white);
}

.single__title .news__title {
	margin: 8px 0 24px;
	font-size: 2.8rem;
	font-weight: 700;
}
.single__title .news__title .label {
	margin-left: 0;
}

.single__content {
	padding-bottom: 80px;
	margin-bottom: 80px;
	border-bottom: #81939A solid 2px;
}
.contents._event_ .single__content {
	border-color: #88CFEE;
}
.single__content p {
	margin-bottom: 1em;
	line-height: 175%;
	letter-spacing: 0.1em;
}

.single__thumbnail {
	max-width: 100%;
	margin-bottom: 64px;
}


/* ============================================================ */
/* paginationスタイル */
/* ============================================================ */
.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
}

.page-numbers:first-child {
	margin-left: 0;
}

.page-numbers:last-child {
	margin-right: 0;
}

.page-numbers {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	line-height: 1.6;
	font-size: 3.2rem;
	color: var(--white);
	font-weight: 500;
	margin: 0 10px;
	letter-spacing: 4.8px;
  background: linear-gradient(0deg, var(--blue), var(--blue)) no-repeat right bottom / 0 var(--bg-h2);
  transition: background-size 350ms;
  padding-bottom: 1px;
	text-align: center;
}

a.page-numbers:hover ,
a.page-numbers:focus-visible {
  background-size: 100% var(--bg-h2);
  background-position-x: -5px;
}

.page-numbers:hover {
	color: var(--blue);
	opacity: 1;
}

.pagination._navy_ .page-numbers:hover {
	color: var(--bg-navy);
	opacity: 1;
}

.page-numbers._nolink_:hover {
	color: var(--white);
}

.page-numbers.current {
	color: var(--blue);
  background-size: 100% var(--bg-h2);
	background-position-x: -5px;
}

.pagination._navy_ .page-numbers.current {
	color: var(--bg-navy);
  background-size: 100% var(--bg-h2);
	background-position-x: -5px;
}


/* ============================================================ */
/* pagerスタイル */
/* ============================================================ */
.pager {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	gap: 0 5px;
	grid-template-areas: "prev list next";
	margin: 30px 0 0;
	line-height: 1.4;
}

.pager__item {
	display: flex;
}

.pager__item._prev_ {
	grid-area: prev;
	justify-content: flex-start;
}
.pager__item._next_ {
	grid-area: next;
	justify-content: flex-end;
}
.pager__item._list_ {
	grid-area: list;
	justify-content: center;
}

.pager__link {
	display: inline-flex;
	justify-content: center;	
	align-items: center;
	text-decoration: none;
	border-radius: 100px;
	background: var(--blue);
	color: var(--white);
	flex-wrap: wrap;
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.0;
	transition: all .4s;
	letter-spacing: 1.6px;
	position: relative;
	max-width: 100%;
	min-width: 200px;
	min-height: 48px;
	padding: 0 30px;
}

.pager__link._white_ {
	background: var(--white);
	color: var(--blue);
}

.pager__link:hover{
	opacity: 1;
	color: var(--blue);
	background: var(--white);
}

.pager__link._white_:hover{
	opacity: 1;
	background: #4B77B7;
	color: var(--white);
}

.pager__link .__ico {
	position: absolute;
  top: 50%;
  transition: all 0.3s ease;
}

.pager__link .__ico:first-child {
	left: 0;
	transform: translateX(28px) translateY(-50%);
}

.pager__link .__ico:last-child {
	right: 0;
	transform: translateX(-25px) translateY(-50%);
}

.pager__link .__ico {
}

.pager__link:hover .__ico {
	transform: translateX(-15px) translateY(-50%);
}

.pager__link:hover .__ico:first-child {
	transform: translateX(18px) translateY(-50%);
}

.pager__link:active .__ico {
  transform: scale(0.9);
}

/*.pager__item._list_ .pager__link {
	background: var(--white);
	border: 1px solid var(--line-gray2);
	color: var(--black-text);
}

.pager__item._list_ .pager__link:hover{
	color: var(--white);
	background: var(--orange);
	border: 1px solid var(--orange);
}*/

.pager__link .__txt {
	background: none;
}


/* ============================================================ */
/* columnスタイル */
/* ============================================================ */
.column {
	display: flex;
	flex-wrap: wrap;
}

.column >* {
	margin-bottom: 15px;
}

.column > * * {
	max-width: 100%;
}

.column > * img {
	outline: 1px solid transparent;
}

.column1 > *,
.column > * img:not([class*=wd-a]) {
	width: 100%;
}

.column2 {
	margin-left: -20px;
	margin-right: -20px;
}

.column2 > * {
	margin-left: 20px;
	margin-right: 20px;
	width: calc(50% - 40.5px);
}

.column3 {
	margin-left: -12px;
	margin-right: -12px;
}

.column3 > * {
	margin-left: 12px;
	margin-right: 12px;
	width: calc((100% - 72px) / 3);
}

.column4 {
	margin-left: -20px;
	margin-right: -20px;
}

.column4 > * {
	margin-left: 20px;
	margin-right: 20px;
	width: calc(25% - 40px);
}

.column5 {
	margin-left: -5px;
	margin-right: -5px;
}

.column5 > * {
	margin-left: 5px;
	margin-right: 5px;
	width: calc(20% - 10.2px);
}

.column6 {
	margin-left: -5px;
	margin-right: -5px;
}

.column6 > * {
	margin-left: 5px;
	margin-right: 5px;
	width: calc(16.66667% - 10.16667px);
}

.flex-column {
	display: flex;
	justify-content: space-between;
}

.flex-column >* {
	flex: 0 0 auto;
}

.flex-column > * * {
	max-width: 100%;
}
