@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#gHeader {
	margin: 0;
}
#gNavi {
	background-color: #096BCC;
}
#gNavi .naviBox {
	margin: 0 auto;
	width: 1079px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#gNavi .naviBox ul {
	display: flex;
}
#gNavi .naviBox .naviList li a {
	padding: 27px 50px 23px;
	display: block;
	position: relative;
	color: #FFF;
	font-size: 1.7rem;
}
#gNavi .naviBox .naviList li a::before {
	content: "";
	position: absolute;
	height: calc(100% - 48px);
	width: 1px;
	top: 25px;
	left: 0;
	background-color: #FFF;
}
#gNavi .naviBox .naviList li a:hover {
	position: relative;
}
#gNavi .naviBox .naviList li a:hover::after {
	content: "";
	position: absolute;
	height: 8px;
	width: calc(100% - 2px);
	left: 0;
	bottom: 0;
	background-color: #FFF;
}
#gNavi .naviBox .naviList .liStyle01 a {
	padding: 27px 34px 23px 33px;
}
#gNavi .naviBox .naviList .liStyle02 a {
	padding: 27px 40px 23px 42px;
}
#gNavi .naviBox .naviList {
	position: relative;
}
#gNavi .naviBox .naviList::after {
	content: "";
	position: absolute;
	height: calc(100% - 48px);
	width: 1px;
	top: 25px;
	right: 0;
	background-color: #FFF;
}
#gNavi .naviBox .linkBox {
	width: 351px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#gNavi .naviBox .linkBox .linkList li {
	margin-right: 28px;
	width: 24px;
}
#gNavi .naviBox .linkBox .linkList li a:hover {
	opacity: 0.7;
}
#gNavi .naviBox .linkBox .linkList li:last-child {
	margin-right: 0;
}
#gNavi .naviBox .linkBox .comBtn02 {
	margin-bottom: 4px;
	width: 225px;
}
#gNavi .naviBox .linkBox .comBtn02 a {
	padding: 14px 20px 13px;
	font-size: 1.7rem;
}
@media all and (-ms-high-contrast:none) {
	#gNavi .naviBox .linkBox .comBtn02 a  {
		padding: 17px 20px 10px
	}
	#gNavi .naviBox .linkBox .comBtn02 a span {
		background-position: left top -2px;
	}
}
#gNavi .naviBox .linkBox .comBtn02 a span {
	padding-left: 55px;
}
.mainVisual {
	position: relative;
}
.mainVisual .slider li {
	height: calc(100vh - 77px);
	vertical-align: top;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.mainVisual .slick-dots {
	padding: 0 33px;
	width: 100%;
	display: flex;
	justify-content: flex-end;
	position: absolute;
	height: auto;
	bottom: 24px;
	right: 0;
	box-sizing: border-box;
}
.mainVisual .slick-dots li {
	margin: 0 7px;
	height: auto !important;
}
.mainVisual .slick-dots li button {
	width: 30px;
	height: 5px;
	font-size: 0;
	border: 0;
	background-color: #096BCC;
}
.mainVisual .slick-dots li.slick-active button {
	background-color: #FFF;
}

.mainVisual h1 {
	width: 85vh;
	position: absolute;
	top: 20.2vh;
	left: 80px;
}
.mainVisual h1 a {
	display: block;
}
.mainVisual h2 {
	width: 61vh;
	position: absolute;
	bottom: 32.1vh;
	left: 81px;
}
#main {
	margin-bottom: 130px;
}
#main .politicalBox {
	margin-bottom: 131px;
	padding-top: 130px;
}
#main .politicalBox ul {
	margin-bottom: 44px;
	display: flex;
	justify-content: space-between;
}
#main .politicalBox p {
	line-height: 2.33;
}
#main .promise {
	padding: 115px 0 148px;
	background: url(../img/index/bg01.jpg)no-repeat bottom center / cover;
}
#main .promise ul {
	margin-top: -51px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .promise ul li {
	margin-top: 51px;
	padding: 42px 29px 87px;
	width: 449px;
	border: 5px solid #096BCC;
	border-radius: 10px;
	box-sizing: border-box;
	background-color: #FFF;
}
#main .promise ul .liStyle01 {
	padding: 35px 29px 39px;
}
#main .promise ul .liStyle02 {
	padding-bottom: 39px;
}
#main .promise ul .liStyle01 .ttl {
	margin-bottom: 18px;
}
#main .promise ul li .ttl {
	margin: 0 -20px 25px;
	color: #0972CC;
	font-size: 3rem;
	line-height: 1.33;
	text-align: center;
}
#main .promise ul li p {
	font-size: 1.3rem;
	line-height: 1.61;
	letter-spacing: -0.02em;
}
#main .profile {
	padding: 118px 0 129px;
}
#main .profile .imgBox {
	display: flex;
	justify-content: space-between;
}
#main .profile .imgBox .photoBox {
	width: 538px;
}
#main .profile .imgBox table {
	margin: -1px 23px 0 0;
	width: 540px;
	border-collapse: collapse;
	border-top: 2px solid #096BCC;
}
#main .profile .imgBox th,
#main .profile .imgBox td {
	padding: 21px 26px 15px;
	color: #0972CC;
	font-size: 1.5rem;
	width: 118px;
	line-height: 2;
	word-break: break-all;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	border-bottom: 2px solid #096BCC;
} 
#main .profile .imgBox td {
	margin-right: -35px;
	width: 422px;
	text-align: left;
}
#main .profile .imgBox .trStyle th,
#main .profile .imgBox .trStyle td {
	vertical-align: top;
}
#main .profile .imgBox td p {
	margin: 0 -55px 15px 0;
}
#main .profile .imgBox td .txt {
	margin-bottom: 0;
}
#main .profile .imgBox td span {
	margin-left: 29px;
}
#main .profile .imgBox td .area {
	margin-left: 94px;
}
#main .activity {
	padding: 117px 0 130px;
	background: url(../img/index/bg02.jpg)no-repeat bottom center / cover;
}
#main .activity .content03 {
	width: 1079px;
} 
#main .activity .headLine06 {
	margin-bottom: 53px;
	color: #FFF;
	font-size: 5rem;
}
#main .activity ul {
	margin-bottom: 89px;
	display: flex;
	justify-content: space-between;
}
#main .activity ul li {
	padding: 29px 36px 26px 40px;
	width: 328px;
	border: 3px solid #096BCC;
	box-sizing: border-box;
	background-color: #FFF;
}
#main .activity ul li .pho {
	margin-bottom: 25px;
}
#main .activity ul li p {
	margin-bottom: 28px;
	color: #0972CC;
	font-size: 2rem;
	text-align: center;
	line-height: 2;
}
#main .activity ul li .day {
	margin-bottom: 7px;
	color: #74ACE8;
	font-size: 1.5rem;
}
#main .activity ul li .link {
	margin: 0 auto;
	width: 176px;
	border-bottom: 2px solid #096BCC;
}
#main .activity ul li .link a {
	padding: 0 0 13px 8px;
	display: block;
	position: relative;
	color: #0972CC;
	font-size: 1.4rem;
	letter-spacing: 0.145em;
	font-family: 'Roboto Condensed', sans-serif;
}
#main .activity ul li .link a:hover {
	opacity: 0.7;
}
#main .activity ul li .link a::before {
    width: 5px;
    height: 5px;
    position: absolute;
	right: 0;
    top: 10px;
    border-right: 1px solid #096BCC;
    border-bottom: 1px solid #096BCC;
    transform: rotate(-45deg);
    content: "";
}
#main .activity .comBtn01 {
	width: 383px;
}
#main .activity .comBtn01 a {
	padding-top: 26px;
	font-size: 2.5rem;
	border-radius: 15px;
	letter-spacing: -0.02em;
	background-color: #000;
}
@media all and (-ms-high-contrast:none) {
	#main .activity .comBtn01 a {
		padding-top: 28px;
	}
}
#main .gallery.content03 {
	padding: 117px 0 0;
	width: 1078px;
}
#main .gallery .headLine06 {
	margin-bottom: 53px;
}
#main .gallery ul {
	margin: -35px 0 72px;
	display: flex;
	justify-content: space-between;
}
#main .gallery li {
	margin-top: 35px;
	width: 516px;
}
#main .gallery .comBtn01 {
	width: 383px;
}
#main .gallery .comBtn01 a {
	padding: 26px 24px 24px;
	font-size: 2.5rem;
	border-radius: 15px;
	background-color: #0972CC;
}
@media all and (-ms-high-contrast:none) {
	#main .gallery .comBtn01 a {
		padding: 30px 24px 20px;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		width: 100%;
		position: absolute;
		top: 53px;
		left: 0;
	}
	.mainVisual h1 {
		width: auto;
	}
	.mainVisual h2 {
		width: 233px;
		left: 36px;
		top: 168px;
	}
	#main {
		margin-bottom: 91px;
	}
	#main .politicalBox {
		padding-top: 50px;
	}
	#main .politicalBox ul {
		display: block;
	}
	#main .politicalBox ul li {
		margin-bottom: 20px;
	}
	#main .politicalBox ul li:last-child {
		margin-bottom: 0;
	}
	#main .promise {
		padding: 80px 0 100px;
	}
	#main .promise ul {
		margin: 0;
		display: block;
	}
	#main .promise ul li {
		margin: 0 0 25px;
		width: auto;
	}
	#main .promise ul li .ttl {
		font-size: 1.8rem;
	}
	#main .profile {
		padding: 80px 20px 100px;
	}
	#main .profile .imgBox {
		display: block;
	}
	#main .profile .imgBox .photoBox {
		margin-bottom: 50px;
		width: auto;
	}
	#main .profile .imgBox table {
		margin: 0;
		width: 100%;
		border-top: none;
	}
	#main .profile .imgBox th, 
	#main .profile .imgBox td {
		padding: 15px;
		width: 100%;
		display: block;
		font-size: 1.3rem;
	}
	#main .profile .imgBox td {
		margin-bottom: 35px;
	}
	#main .profile .imgBox td p {
		margin: 20px 0 0;
	}
	#main .profile .imgBox td span {
		margin-left: 0;
		display: block;
	}
	#main .profile .imgBox td .area {
		margin-left: 0;
	}
	#main .activity {
		padding: 37px 0 60px;
	}
	#main .activity .content03 {
		width: auto;
	}
	#main .activity .headLine06 {
		margin-bottom: 30px;
		font-size: 4rem;
	}
	#main .activity ul {
		margin-bottom: 50px;
		display: block;
	}
	#main .activity ul li {
		margin-bottom: 35px;
		width: auto;
	}
	#main .activity ul li:last-child {
		margin-bottom: 0;
	}
	#main .activity ul li .pho img {
		width: 100%;
	}
	#main .activity ul li p {
		font-size: 1.8rem;
		line-height: 1.8;
	}
	#main .activity ul li .link {
		width: auto;
	}
	#main .activity .comBtn01 {
		width: auto;
	}
	#main .activity .comBtn01 a {
		font-size: 2rem;
	}
	#main .gallery.content03 {
		padding: 50px 20px 0;
		width: auto;
	}
	#main .gallery ul {
		margin: 0 0 50px;
		display: block;
	}
	#main .gallery ul li {
		margin-bottom: 35px;
		width: auto;
	}
	#main .gallery ul li:last-child {
		margin-bottom: 0;
	}
	#main .gallery .comBtn01 {
		width: auto;
	}
	#main .gallery .comBtn01 a {
		font-size: 2rem;
	}
}

/* naguchi adjust 20220330 */
#main .gallery video {
	width: 100%;
	height: 100%;
}
main .gallery ul {
	align-items: flex-start;
}
main .gallery li:last-child {
	position: relative;
	/* aspect-ratio: 16/9; */
	border: 1px solid #9B9898;
}
main .gallery li:last-child::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
main .gallery li:last-child img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* naguchi adjust 20220405 */
@media all and (max-width: 599px) {
	#gHeader {
		top: 23px;
		left: -16px;
	}
	#gHeader .hBox h1 {
		width: 260px;
	}
	#gHeader .menu {
		top: -14px;
		right: 0;
	}
	.mainVisual h2 {
		width: 213px;
		top: 128px;
		left: 20px;
	}
}

/* added 20220419 */
#main .newsBox {
	padding-top: 130px;
}
#main .newsBox .headLine07 {
	margin-bottom: 32px;
	color: #0972CC;
	font-size: 3rem;
	text-align: center;
}
#main .newsBox__list {
	border-top: 1px solid #3F4346;
	border-bottom: 1px solid #3F4346;
}
#main .newsBox__item {
	display: flex;
	align-items: center;
	padding: 16px 12px;
	border-bottom: 1px dashed #3F4346;
}
#main .newsBox__item:last-of-type {
	border-bottom: none;
}
#main .newsBox__date {
	margin-right: 40px;
	color: #8C9093;
	font-size: 12.5px;
}
#main .newsBox__title a:hover {
	text-decoration: underline;
}
@media (max-width: 896px) {
	#main .newsBox {
		padding-top: 50px;
	}
	#main .newsBox .headLine07 {
		font-size: 2.4rem;
	}
	#main .newsBox__item {
		flex-direction: column;
		align-items: flex-start;
	}
}