﻿.form-btn {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.form-btn.form-btn-top {
	padding-bottom: 20px
}
.form-btn.form-btn-bottom {
	padding-top: 10px
}
.form-btn .form-btn-submit, .form-btn .form-btn-reset {
	margin: 0;
	-ms-flex-preferred-size: calc((100% - 20px) / 2);
	flex-basis: calc((100% - 20px) / 2);
	max-width: calc((100% - 20px) / 2)
}
.form-btn-submit, .form-btn-reset {
	padding: .8392857143em;
	border: none;
	outline: none;
	font-size: .875rem;
	font-size: 1.4rem;
	line-height: 1.75;
	letter-spacing: .18em;
	text-indent: .18em;
	text-align: center;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	-o-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear
}
.form-btn-submit {
	background-color: #2874b4;
	color: #fff
}
.form-btn-submit:hover, .form-btn-submit:focus, .form-btn-submit:active {
	background-color: #2b417f
}
.form-btn-reset {
	background-color: #ddd;
	color: #000
}
.form-btn-reset:hover, .form-btn-reset:focus, .form-btn-reset:active {
	background-color: #ccc
}
.input-group {
	margin-bottom: .625em
}
.form-label {
	display: block;
	margin-bottom: .25em;
	font-weight: 500;
	line-height: 1.75
}
.form-select {
	display: inline-block;
	width: 100%;
	height: 1.875em;
	padding: 0 34px 0 22px;
	background: #fff no-repeat right 10px center;
	background-size: 12px 12px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpolygon points='6 9.207 0.646 3.854 1.354 3.146 6 7.793 10.646 3.146 11.354 3.854 6 9.207'/%3E%3C/svg%3E");
	border: none;
	border-radius: 0;
	color: inherit;
	font-weight: 500;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}
.form-select-wrap {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.form-select-wrap .form-select {
	width: calc((100% - 2em) / 2)
}
.form-checkbox-wrap {
	margin-bottom: .625em;
	padding: 30px 25px;
	background-color: #fff
}
.form-checkbox-label {
	display: block;
	font-size: .875rem;
	font-size: 1.4rem;
	line-height: 1.75
}
.form-checkbox-label + .form-checkbox-label {
	margin-top: .3928571429em
}
.form-checkbox-label input[type=checkbox] {
	width: 1.2142857143em;
	height: 1.2142857143em;
	margin-top: -.2142857143em;
	vertical-align: middle;
	background-color: rgba(0, 0, 255, 0.2);
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: no-repeat left bottom;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cdefs%3E%3Cstyle%3E.box%7Bfill:%23fff%3B%7D.color%7Bfill:%23213f7e%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='box'%3E%3Crect y='4' width='13' height='13'/%3E%3C/g%3E%3Cg class='color'%3E%3Cpath class='a86f913e-9947-4bb3-9bbe-fa21b7c981b6' d='M12.25 4.75v11.5H.75V4.75h11.5M13 4H0V17H13V4Z'/%3E%3C/g%3E%3C/svg%3E")
}
.form-checkbox-label input[type=checkbox]:checked {
	background-size: contain, contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cdefs%3E%3Cstyle%3E.color%7Bfill:%230070ae%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='color'%3E%3Cpolygon points='5.957 14.194 2 8.918 4 7.418 6.043 10.142 14.033 0.376 15.967 1.959 5.957 14.194'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cdefs%3E%3Cstyle%3E.box%7Bfill:%23fff%3B%7D.color%7Bfill:%23213f7e%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='box'%3E%3Crect y='4' width='13' height='13'/%3E%3C/g%3E%3Cg class='color'%3E%3Cpath class='a86f913e-9947-4bb3-9bbe-fa21b7c981b6' d='M12.25 4.75v11.5H.75V4.75h11.5M13 4H0V17H13V4Z'/%3E%3C/g%3E%3C/svg%3E")
}
.search {
	width: 100%;
	padding: 30px 20px;
	background-color: #fafafa;
	font-size: 1rem;
	font-size: 1.6rem;
	letter-spacing: .08em
}
.search .search-ttl {
	margin-bottom: 1.25em;
	color: #2874b4;
	font-size: 1rem;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: .08em
}
.search .search-ttl i {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .3em;
	background: no-repeat center center / contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cdefs%3E%3Cstyle%3E.color%7Bfill:%232874b4%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='color'%3E%3Cpath d='M14.29388 12.57862h-.90337l-.32018-.30875a7.67882 7.67882 0 0 0 .51514-9.20461 5.43116 5.43116 0 0 0-1.98114-1.91763c-7.16971-4.02768-14.48438 3.287-10.4567 10.4567a5.43116 5.43116 0 0 0 1.91763 1.98114 7.67882 7.67882 0 0 0 9.20461-.51514l.30875.32018v.90337L18.29617 20 20 18.29617ZM10.71619 11.555c-5.23556 3.35442-10.76-2.17-7.40555-7.40555a2.79811 2.79811 0 0 1 .83881-.83881c5.23556-3.35443 10.76 2.17 7.40555 7.40555A2.79811 2.79811 0 0 1 10.71619 11.555Z'/%3E%3C/g%3E%3C/svg%3E");
	vertical-align: middle
}
.search.fancybox-content {
	width: 330px;
	max-width: calc(100vw - 40px)
}
.search.fancybox-content .search-ttl {
	font-size: 1.25rem;
	font-size: 2rem;
	letter-spacing: .08em;
	text-indent: .08em;
	text-align: center
}
.search.fancybox-content .form-btn-top {
	display: none
}
.search .fancybox-button {
	color: #2874b4
}

.separate::after {
	content: "";
	display: block;
	clear: both
}
.separate .left-column {
	float: left;
	width: 330px
}
.separate .right-column {
	float: right;
	width: calc(100% - 370px)
}
@media (max-width: 799.98px) {
	.separate .left-column {
		display: none
	}
	.separate .right-column {
		width: 100%
	}
}
.header-column .header {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 20px
}
.header-column .h3-ttl {
	margin: 0;
	font-size: 1.75rem;
	font-size: 2.8rem;
	letter-spacing: .18em
}
.header-column .search-result {
	letter-spacing: .18em
}
.header-column .syllabary {
	margin-bottom: 1.375em;
	margin-right: -20px;
	padding-right: 20px;
	overflow: auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	-ms-overflow-style: none;
	scrollbar-width: none
}
@supports (margin: max(0px, env(safe-area-inset-right))) {
	.header-column .syllabary {
		margin-right: -20px;
		margin-right: calc(max(20px, env(safe-area-inset-right, 20px)) * -1)
	}
}
@supports (padding: max(0px, env(safe-area-inset-right))) {
	.header-column .syllabary {
		padding-right: 20px;
		padding-right: max(20px, env(safe-area-inset-right, 20px))
	}
}
.header-column .syllabary::-webkit-scrollbar {
	display: none
}
.header-column .syllabary ul {
	/*
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	margin-right: 20px
	*/
	display: flex;
	flex-wrap: wrap;
}
.header-column .syllabary ul li {
	margin: 0
}

.header-column .syllabary ul li span {
	display: inline-block;
	width: 3.875em;
	padding: .375em;
	line-height: 1.75;
	text-align: center
}

.header-column .syllabary ul li a {
	display: inline-block;
	width: 3.875em;
	padding: .375em;
	color: #2874b4;
	line-height: 1.75;
	text-align: center
}
.header-column .syllabary ul li a:hover, .header-column .syllabary ul li a:focus, .header-column .syllabary ul li a:active {
	background-color: #2874b4;
	color: #fff;
	opacity: 1
}
@media (max-width: 799.98px) {
	.header-column .syllabary {
		margin-left: -20px;
		padding-left: 20px
	}
	@supports (margin: max(0px, env(safe-area-inset-left))) {
		.header-column .syllabary {
			margin-left: -20px;
			margin-left: calc(max(20px, env(safe-area-inset-left, 20px)) * -1)
		}
	}
	@supports (padding: max(0px, env(safe-area-inset-left))) {
		.header-column .syllabary {
			padding-left: 20px;
			padding-left: max(20px, env(safe-area-inset-left, 20px))
		}
	}
}
.search-trigger {
	display: none;
	padding-bottom: 50px
}
.big-btn {
	width: 100%;
	padding: .875em;
	border: none;
	outline: none;
	font-size: 1.25rem;
	font-size: 2rem;
	line-height: 1.75;
	letter-spacing: .08em;
	text-indent: .08em;
	text-align: center;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	-o-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	background-color: #2874b4;
	color: #fff
}
.big-btn:hover, .big-btn:focus, .big-btn:active {
	background-color: #2b417f
}
.big-btn i {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: no-repeat center center / contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cdefs%3E%3Cstyle%3E.color%7Bfill:%23fff%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='color'%3E%3Cpath d='M14.29388 12.57862h-.90337l-.32018-.30875a7.67882 7.67882 0 0 0 .51514-9.20461 5.43116 5.43116 0 0 0-1.98114-1.91763c-7.16971-4.02768-14.48438 3.287-10.4567 10.4567a5.43116 5.43116 0 0 0 1.91763 1.98114 7.67882 7.67882 0 0 0 9.20461-.51514l.30875.32018v.90337L18.29617 20 20 18.29617ZM10.71619 11.555c-5.23556 3.35442-10.76-2.17-7.40555-7.40555a2.79811 2.79811 0 0 1 .83881-.83881c5.23556-3.35443 10.76 2.17 7.40555 7.40555A2.79811 2.79811 0 0 1 10.71619 11.555Z'/%3E%3C/g%3E%3C/svg%3E");
	vertical-align: middle
}
.result-column {
	padding-bottom: 100px
}
.result {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: flex-start;
	margin-top: -5px;
	padding-top: 5px
}

.result .expert-card {
	-ms-flex-preferred-size: calc((100% - 30px) / 3);
	flex-basis: calc((100% - 30px) / 3);
	max-width: calc((100% - 30px) / 3);
	padding: 20px;
	margin: 5px;

}

@media (max-width: 989.98px) {
	.result .expert-card {
		-ms-flex-preferred-size: calc((100% - 8px) / 2);
		flex-basis: calc((100% - 8px) / 2);
		max-width: calc((100% - 8px) / 2);
		margin: 5px 2px; /* 8.2 */
	}
}
@media (max-width: 599.98px) {
	.result .expert-card {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%
	}
}

.pagination ul {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-left: -7.5px;
	margin-right: -7.5px;
	margin-top: .5em;
	margin-bottom: .5em
}
.pagination ul li {
	margin: 0;
	padding: 0 7.5px
}
.pagination ul li.active {
	pointer-events: none
}
.pagination ul li.active a {
	color: #2874b4
}
.search-menu {
	position: fixed;
	bottom: 60px;
	display: none;
	width: 100%;
	height: 0;
	opacity: 0;
	z-index: 999
}
@media (max-width: 799.98px) {
	.search-menu {
		display: block
	}
}
.pagetop-show #pagetop {
	visibility: visible
}
.no-pagetop-visible .search-menu {
	-webkit-animation: fadeOut 0.3192s ease-out 0s 1 normal both;
	animation: fadeOut 0.3192s ease-out 0s 1 normal both
}
.pagetop-visible .search-menu {
	-webkit-animation: fadeIn 0.3192s ease-out 0s 1 normal both;
	animation: fadeIn 0.3192s ease-out 0s 1 normal both
}
.search-menu .search-btn {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 50px;
	height: 50px;
	border: none;
	border-radius: 25px;
	outline: none;
	font-size: .75rem;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.1666666667;
	letter-spacing: .08em;
	text-indent: .08em;
	text-align: center;
	white-space: nowrap;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	-o-transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	transition: opacity 0.2s linear, background-color 0.2s linear, broder-color 0.2s linear, color 0.2s linear;
	background-color: #2874b4;
	color: #fff
}
.search-menu .search-btn:hover, .search-menu .search-btn:focus, .search-menu .search-btn:active {
	background-color: #2b417f
}
@supports (bottom: max(0px, env(safe-area-inset-bottom))) {
	.search-menu .search-btn {
		bottom: 10px;
		bottom: max(10px, env(safe-area-inset-bottom, 10px))
	}
}
@supports (right: max(0px, env(safe-area-inset-right))) {
	.search-menu .search-btn {
		right: 10px;
		right: max(10px, env(safe-area-inset-right, 10px))
	}
}
.search-menu .search-btn i {
	display: block;
	width: 1em;
	height: 1em;
	margin: auto;
	margin-bottom: .2em;
	background: no-repeat center center / contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cdefs%3E%3Cstyle%3E.color%7Bfill:%23fff%3B%7D%3C/style%3E%3C/defs%3E%3Cg class='color'%3E%3Cpath d='M14.29388 12.57862h-.90337l-.32018-.30875a7.67882 7.67882 0 0 0 .51514-9.20461 5.43116 5.43116 0 0 0-1.98114-1.91763c-7.16971-4.02768-14.48438 3.287-10.4567 10.4567a5.43116 5.43116 0 0 0 1.91763 1.98114 7.67882 7.67882 0 0 0 9.20461-.51514l.30875.32018v.90337L18.29617 20 20 18.29617ZM10.71619 11.555c-5.23556 3.35442-10.76-2.17-7.40555-7.40555a2.79811 2.79811 0 0 1 .83881-.83881c5.23556-3.35443 10.76 2.17 7.40555 7.40555A2.79811 2.79811 0 0 1 10.71619 11.555Z'/%3E%3C/g%3E%3C/svg%3E");
	vertical-align: middle
}
@media (max-width: 799.98px) {
	#footer .footer-content {
		padding-bottom: 138px
	}
}
@media (max-width: 799.98px) {
	.header-column .header {
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center
	}
	.header-column .h3-ttl {
		margin-bottom: .6363636364em;
		font-size: 1.375rem;
		font-size: 2.2rem;
		letter-spacing: .18em;
		text-indent: .18em
	}
	.header-column .search-result {
		display: none
	}
	.search-trigger {
		display: block
	}
}
.fancybox-bg {
	background-color: #3c4043
}
.fancybox-is-open .fancybox-bg {
	opacity: .3
}
.fancybox-is-open {
	-webkit-backdrop-filter: saturate(180%) blur(6px);
	backdrop-filter: saturate(180%) blur(6px)
} /*! Built by PIXBATON pixbaton.jp */



#header .gnav-menu .gnav-main li:nth-child(2) a {
	background-color: #010044;
	color: #fff;
}
#header .gnav-menu .gnav-main li:nth-child(2) a:hover {
	background-color: #2874b4;
	color: #fff;
}


/* 2024 */

.expert-card .expert-card-header-area {
    padding: 0!important;
}

.expert-card-label h3{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2em;
	transform: rotate(0.03deg);
}

.expert-card-label h3 small {
    display: inline-block;
    font-size: .6666666667rem;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: .08em;
}

.position {
	font-size: 1.14rem;
	font-weight: 500;	
	line-height: 1.4;
	height: 2.7em; /* 2行分 */
	transform: rotate(0.03deg);
	word-break: break-all;
	margin-bottom: 5px;
}


.p-experts .h1-ttl {
    text-align: center;
    font-size: 2.8rem;
    font-family: inherit;
    letter-spacing: .14em;
    text-indent: 0.14em;
    font-weight: 500;
    margin-bottom: 4rem;
}

.p-experts .syllabary {
	margin-bottom: 1.375em; 
	margin-right: -20px;
	padding-right: 20px;
	overflow: auto;
	overflow-y: auto;
}

@supports (margin: max(0px, env(safe-area-inset-right))) {
	.p-experts .syllabary {
		margin-right: -20px;
		margin-right: calc(max(20px, env(safe-area-inset-right, 20px)) * -1)
	}
}
@supports (padding: max(0px, env(safe-area-inset-right))) {
	syllabary {
		padding-right: 20px;
		padding-right: max(20px, env(safe-area-inset-right, 20px))
	}
}

.p-experts .syllabary::-webkit-scrollbar {
	display: none
}

.p-experts .syllabary ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 810px;
    margin: 0 auto;
}

@media (max-width: 979.98px) {
	.p-experts .syllabary ul {
		width: 100%;
	}
}

.p-experts .syllabary ul li {
	margin: 0
}

.p-experts .syllabary ul li span {
	display: inline-block;
	width: 3.875em;
	padding: .375em;
	line-height: 1.75;
	text-align: center
}

.p-experts .syllabary ul li a {
	display: inline-block;
	width: 3.875em;
	padding: .375em;
	color: #2874b4;
	line-height: 1.75;
	text-align: center
}

.p-experts .syllabary ul li.nolink {
	display: inline-block;
	width: 3.875em;
	padding: .375em;
	color: #000;
	line-height: 1.75;
	text-align: center
}


.p-experts .syllabary ul li a:hover, .header-column .p-experts .syllabary ul li a:focus, .header-column .p-experts .syllabary ul li a:active {
	background-color: #2874b4;
	color: #fff;
	opacity: 1
}

@media (max-width: 799.98px) {
	.p-experts .h1-ttl {
		margin-top: 2rem;
	}

	.p-experts .syllabary {
		margin-left: -20px;
		padding-left: 20px
	}
	@supports (margin: max(0px, env(safe-area-inset-left))) {
		.p-experts .syllabary {
			margin-left: -20px;
			margin-left: calc(max(20px, env(safe-area-inset-left, 20px)) * -1)
		}
	}
	@supports (padding: max(0px, env(safe-area-inset-left))) {
		.p-experts .syllabary {
			padding-left: 20px;
			padding-left: max(20px, env(safe-area-inset-left, 20px))
		}
	}
}
